2007年の冬に接近した、マックノート彗星は天候に恵まれず見る事ができませんでした。 池谷関彗星の再来のような大彗星だったのですが。非常に心残りです。
現在の愛機
このカメラはグリップ部が経年劣化でベタ付いて使えなくなっちゃいました。 またカビが生えてきたので残念ながら廃棄しました。。
MFはファインダーが見やすくて良いです。ゼミ旅行の時になるとこのカメラを 何故か持ち出したくなる。多分フィルム15本ぐらいしか撮影してない。
MF専用レンズは50mm f/1.2Sを一本しか持ってません。 明るい単焦点レンズでMFのを買えるうちに買っておこうと思いまして、 2011年になってから購入しました。MFのレンズはいつディスコンになって も不思議でないですので。
2018/7に久々に取り出してみたらケースにカビが生えてました。うぐぐ。 運良く本体には影響なかったですが、ケースは外しておいたほうが良いみたいです。
それはさておき、D3100はちょっとチープなところがありましたが、D90なみの性能で 使えてよいです。
某処で話題になっていたので、暇潰しに作成。
遅いですよ。 ソースコード
全ての約数を生成するには、1〜nまで割っていくアルゴリズムが一番やさしい ですが、それはさておき、 以下のような素因数分解の値が渡された時にその情 報を使って全ての約数を生成するプログラムです。
3 * 3 * 2 * 2 * 2 = 3^2 * 2^3 = 36再帰を使えば簡単に実装できますが、ループ版が欲しかったので作ってみた。
ネットで探してもみつからなかったので公開。
しかしループに展開した後のコードは実質デバグ不可能なレベルの奇怪なコードですねぇ。 アルゴリズム辞典などを見るとループに展開した後のコードだけが掲載されている事があり ますが、あとで学習者が解読したいと思っても実質不可能だにょなぁ。。
以下の記事のプログラム
プログラムのコンパイルはCentOS6.X/64bitでgccで試してます。
!!間違いがたくさんあります!!
改訂5.1版(2016/11/10)/HTML (細微な修正。改訂5版から掲載公式に変更なし)以下は旧版です。
改訂5版(2016/11/3)/HTML
改訂4版(2015/1/14)/文字コードUTF-8日本語
改訂3版(2014/11/20)/文字コードUTF-8日本語
改訂2版(2000/3/23)/文字コードEUC-JP
改訂版(1998/12/3)/文字コードEUC-JP
旧版(1996/5/8)/文字コードEUC-JP
以下に4,5,6項式を掲載しています。ファイルの形式は上記の要約をご覧ください。
なお、2,3項式は上記要約に掲載したのが既知の公式のすべてです。
4項式ベスト1000 (2016/10/31)注: 評価値nを整数に四捨五入して順番を並べてるので順番に誤差があります。 例えばn=999.8とn=1000.1が同順位になっています。
5項式ベスト1000 (2016/10/31)
6項式ベスト1000 (2016/10/31)
次に、7項より公式を掲載しています。7項より大きい公式は、数が多いため、 制限された条件でしか探索していません。
次の4つのファイルは各行の先頭に項の数が挿入してあります。
7項式以上ベスト1000 (2016/10/31) (注2)
全公式でベスト1000 (2016/10/31) (注2)
全公式でベスト1000、ただしa(1/107)を除外 (2016/10/31) (注2)
全公式でベスト1000、ただしa(1/X)でXが2^32以上を除外 (2016/10/31)
注2: 非常に長い式が含まれます。エディタによっては閲覧時にクラッシュする恐れがあります。
素数リストにpseudoと記載してあるのは擬似素数を使って公式を検証したという意味です。
2項式ベスト100 (整数の逆数以外) (2016/10/31)次のファイルは各行の先頭に項の数が挿入してあります。(中身はすべて4項式ですが。。)
3項式ベスト100 (整数の逆数以外) (2016/10/31)
4項式ベスト100 (整数の逆数以外) (2015/1/14)
4項以下のベスト100 (整数の逆数以外) (2015/1/14)
注意: 評価値nは整数の逆数以外が混在する場合 は 再検討の余地がありますが、上記の表では考慮していません。
!!非常に大きなファイルです。ブラウザやエディタなどで閲覧するとOSがクラッシュする可能性があります。!!
動作確認OSとしてLinux (CentOS7.X)とPARI/GP(2.7.6)を用いています。
本プログラムを使って上記掲載の既知の全公式を可読性の良い旧形式(2014年以 前)に変換できます。変換方法はプログラム中のコメントを参照ください。
ただし、旧形式に含まれる素数リストの生成には非常に時間がかかるため、 擬似素数を採用しています。
以下に上記プログラムのサンプルを掲載しておきます。
補足: 共通の素数を目印にarctan関係式の探索のプログラムを作成される方は、上記のプログラムと、
トライ木というデータ構造が役にたつかもしれません。
この表を基に新しいarctangent関係式を見つけて公開される場合は、データ出典として
http://www.pluto.ai.kyutech.ac.jp/~matumoto/syumi.html#piを記載いただけると幸いです。
Arctan関係式の探索に用いる「x^2+1」の素因数分解の表です。
共通の素因数を目印に探索を行う事ができます。
かなりファイルが大きいため、ご注意ください。
gzipで圧縮してあります。解凍すると以下のようなテキストファイルになります。
一行めの「2:5.」は「2^2+1 = 5」、二行目の「3:2,5.」は「3^2+1 = 2 * 5 」という意味です。2:5. 3:2,5. 4:17. 5:2,13. 6:37. 7:2,5,5. 8:5,13. 9:2,41. 10:101.
結果の再チェックは行っていません。
ファイル名に入っている 「e数字」は「10^数字」の意味です。
本データの作成には九州工業大学情報科学センターが主催している
「九大研究用計算機システム利用支援」に補助をいただいた
Ref: 「計算効率の良いarctan関係式の探索の試み (2009/3/05)
1種類: 102個, 2種類: 3036個, 3種類: 61196個。とりあえず探索を試してみようかという方はこのデータを使ってみてください。
50704203401:2,4261,4261,36209,36209,54001.大きいxは発見できませんでした。検索範囲を2^64以上にするとわかりませんが。。
コンパクトな公式(項数の少なくて、arctanの引数が整数の逆数公式)の探索は、
このあたりで頭打ち感が出てきます。
nC3-e256-p32-m3740.dat : 素因数3740以下なお、素因数65536以下のデータは前述の「nC3_64k-64bit-sort.dat」
nC3-e256-p32-m65536.dat : 素因数65536以下
arctan(1/x) = arcntan(1/(x+d) + arctan(1/(x + (x^2+1)/d))左辺の「x^2+1」と右辺の「(x+d)^2+1」には共通の素因数が含まれます。
d は x^2+1の約数
注意: ここに掲載したデータは素因数分解のミスや漏れがある可能性があります。
普通に計算するとかなり計算時間がかかるため、少々エラーを犠牲にした方法を使っています。