Fortran
Fortran は1950年代から過去との互換性を重視して、あまり機能を削らずに進化を続けたために、進化の過程で取り残された意味不明な命令がたくさんあります。メモ帳代わりに書いておきます。 DIM 関数 (DIMINISHING function) DIM 関数とは、DIM(x, y) x - y …
正月なので随想をば思いつくままに書きます。Modern Fortran において留意すべき点として、FORTRAN77 まではソースコード上で区別されていなかった繰り返し構造を、概念的に大きく二つに分けて記述できる点にあると思います。その二つの区分の呼び名として適…
かつてはハードウェア毎に浮動小数フォーマットが異なっていて、汎用性のある数値計算プログラムを作るのが困難でした。Fortran90ではそのような問題を解決するために、浮動小数に関する情報を得るための命令がたくさん用意されました。もっともFortran90が…
「FORTRAN ぬりえ」という本がかつてあったようです。実際は塗り絵ではなく、Dr.Suess(スース先生)風の絵入り本のようです。wikipedia http://en.wikipedia.org/wiki/Dr._Seuss 出版年が70年代末なので、FORTRAN66で書かれていると思われます。 http://www…
http://software.intel.com/en-us/articles/tutorial-introduction-to-intel-visual-fortran
今週末に米国感謝祭の黒字の金曜セール、日本の初売りみたいなのがありますが、その週明けの月曜はリアル店舗で買いそびれた人がネット店舗に押し掛けるサイバー月曜とされています。元々はドイツの癖に Springer も参戦するようです。 Steve Lionel のTweet…
A Comparison of 12 Parallel Fortran Dialects http://dl.acm.org/citation.cfm?id=624571.624759 を斜め読みしたのですが、四半世紀前に並列プログラミングの問題点として挙げられたことが、今とさして変わらないことが分かりました。 共有メモリー型にお…
カナ文字FORTRAN FORTRAN by Japanese Letters http://ci.nii.ac.jp/naid/110002718257ぴゅう太に先立つこと18年。命令のセンスも似てる・・・ ぴゅうた カナBASIC http://ja.wikipedia.org/wiki/%E3%81%B4%E3%82%85%E3%81%86%E5%A4%AA G-BASICの主なステ…
Cray で PGAS 言語の chapel を開発している人の並列計算言語に対する意見。今のところ Part 1..7 まであります。(全8回の予定の模様)HPFについては Part 2 で、Co-Array Fortran については Part 7で述べてあります。 記事内の引用リンクが狂っているの…
Intel の Steve Lionel が最近の Fortran について語っています。インタビュアーが HPC 関係の人なので、MPI, CoArray, GPU サポート等などにも話が及んでいます。 http://www.rce-cast.com/Podcast/rce-74-modern-fortran.html http://www.rce-cast.com/med…
http://nldr.library.ucar.edu/collections/technotes/asset-000-000-000-047.pdf 先年亡くなられた Jeanne C. Adams おばちゃんのルーツはこの辺にあったのですね。
Fortran と C++, Matlab, Python の比較。 Why (and Why Not) to Use Fortran - Instead of C++, Matlab, Python, etc. Nick Maclaren, Computing Service, University of CambridgeNick Maclaren, Computing Service, University of Cambridge http://www.f…
そろそろ出る頃かと予想されていましたが、確かに出ました。 しかし、期待はずれなことに Fortran2003 の実装はほとんど Ver.12 と変わらず、Fortran2008 の方も大した進展もなく、ほぼ Windows8/VS2012 向け対応が入っただけのようです。CoArray 実行はオプ…
最近、幼女の間で Ruby が大人気と耳にしました。 そこで、Fortran でも幼女向けの入門書が必要なのではないかと思い構想を練り始めましたが、ネットを検索していたところすでに1972年にアメリカで同趣旨の本が出版されていることを知りました。 http://losp…
http://www.fortran.bcs.org/2007/jubileeprog.php Bugs I Have Known and Loved - Ron Bell, AWE Aldermaston http://www.fortran.bcs.org/2007/jubilee/bugs.pdf 常数も変数のようにメモリー上に置かれ、かつ最適化すると共有されてしまいます。ところが、…
Fortran2003 機能の拡張は無いようです。update では対応せず、次の Version で一気に残りを片付けるのではないかと思います。最近では、CRAY、IBM、PGI が Fortran2003 完全対応をうたっているので、そろそろ Intel や NAG 先生にも頑張っていただきたいと…
日本 NAG のサイトでやっている Fortran 検定(http://www.nag-j.co.jp/fortran/exam/index.html)をやってみました。文字列がらみの問題を軒並み間違ってしまいました。色々勘違いしている。ヤヴァイwww 文字変数は読み込み時は左詰め、書き出し時は右詰めw …
いつもメールで通知が来る少し前に上がっているような気がします。今回は主に bug fix で、新しい機能などは入らなかったようです。updateも10まで来たので、そろそろヴァージョン番号が上がって Fortran2003 完全対応になる日も近いでしょうかね?
暇つぶしにネットにあったコネクションマシンのCM-Fortranのマニュアルを見ていたら、array constructor の節に A = [1:10:2] に類する記述がありました。よもやと思って Intel Fortran で試したところ通るwww 前々から出来たらいいなと思っていた機能な…
前回のものに比べて、必要なワーク配列を減らしました。ここでは最悪の場合に必要になるサイズ、すなわち並べ替えるデータと同じ大きさの整数配列二つを用意しています。しかし、実験的に調べてみると。ランダムなデータの場合、並べ替える数が十分に増える…
NaNを入力とする時の関数の出力は、規格上の仕様が定まっていないらしくベンダー依存のようです。Intel Fotranの場合、ほとんどの関数はNaNが出力になるようですが、SIGN関数は符号ビットだけをみているようで、NaNから実数へよみがえることができるようです…
非標準関数 LOC(x) を標準関数で表すには iaddress = TRANSFER(C_LOC(x), iaddress)。 eps? 1行目 %!PS-Adobe-3.0 EPSF-3.0 GhostView OPTIONS->EPS CLIP
昔懐かしい XY-plotter 方式(ペンアップ・ペンダウン・直線移動)で作図するようにすれば、デバイスによらないで共通の絵が描けるはずです。字のフォントを用意するのが面倒ですが、我慢して作りました。アルファベットは10画以内、ギリシア文字は15画…
いつの間にか、http://www.sourcelair.com/ がModuleにも対応していました。 入門用に最適なものの気がします。
結論から言うと Fortran95 を基本として、Fortran2003 や Fortran2008 の機能をつまみ食い的に使うのが現実的な気がします。Fortran95 に完全に対応したコンパイラは、リリースされてから年月も経ってこなれてきています。一方 Fortran2003 は、未だ Cray と…
Norman S. ClermanoとWalter Spectorによる新刊「Modern Fortran: Style and Usage」をざっと斜め読みしたので感想をば。著者の一人は光学設計をやっていて、もう一人はCrayに勤めていた人のようです。202条ばかりのコーディングルールを示し、その一つ一…
web上でGFortran等でコンパイル&実行出来ます。オンラインコンパイラは最近の流行のようです。 Source Liar online compiler.net ideone.com 発売になったようです。なにげにFortran2008の新刊も出るようです。
組み込み関数 CMPLX() は REAL(4) がデフォールト値なので、引数が倍精度でも第二引数で KIND を倍精度に指定しないと、単精度で変換されます。 実行結果 ソース・プログラム program Complex implicit none complex (kind = 8) :: c real (kind = 4) :: a r…
FORTRAN66 では DO LOOP 終了後の DO LOOP 変数の値は不定ですが、FORTRAN77 以降は終了時の値です。
日本からもイケるのか分かりませんが、Stieve Lionel の webinar を見ると、Intel Fortran の更新ライセンスが2割引きで買えるようです。セミナーはここから。 http://t.co/JJJ5x8eJ 滑舌が悪いw TechXtendがパキスタンに聞こえた私は糞耳w