09/10/08 22:23:20
むしろ消滅すべきはC++だろう・・・
355:名無しさん@5周年
09/10/08 23:30:18
>>353
開発資源の分散だと思う。
でも、科学計算系のみんながFortranにくれば無問題なのにな。
356:名無しさん@5周年
09/10/09 02:09:40
Fortranは一応下位互換があるから
77ベース固定書式に90以降の機能を混ぜて使うことができるのがいい。
357:名無しさん@5周年
09/10/16 02:26:08
結局プログラムを書くのは、今でも人間なわけで、
価値のある(行数を稼ぐだけではない)プログラムを
書けて複雑な応用問題が解ける人間は希少資源。
そのために、情報科学者が思いつきで便利だろうとかいって
安易に濫造する便利で高機能な新言語はなかなか普及しない。
なぜなら言語は定義されコンパイラが実現しただけでは
道はまだ半分にもなっておらず、そういった希少資源である
人間がその新言語なるものをうまく使いこなす方法を
発見発明していかなければならないからだ。その期間に
稀少な頭脳は停滞する。また過去の旧言語で書かれたコード
は、言語が古くなっても重要な価値が残っており、それらは
新言語で書き直しが完了して完全に旧言語でかかれたプログラムの
保守が停止しないうちは、棄てられないのだ。
ただし、教育の問題で、C言語に洗脳された学生や教師ばかりに
なってしまい、Fortranプログラマは今や人材不足で、絶滅しかねない
状況だ。これは非常に残念なことだ。Fortran77からFortran90への
以降の期間の長い停滞が実にボディブローのように効いたと言える。
358:名無しさん@5周年
09/10/16 08:56:53
フォートランの無料のコンパイラ得られず
Cだとポインタ絡み面倒でアルゴリズム書けず
C#で組んでおっそいの作ってPCで動かすとorz
359:名無しさん@5周年
09/10/16 10:34:12
gfortran じゃだめ? F77,90いけるよ。たぶん95もいける・・とおもうよ。
Win(のDos窓)でもLinuxでもあるよ。使ってないからわからないけどMac版もあったと思うよw
少なくとも openMP ならちゃんと2コア使う実行ファイルを吐いてくれるよ。
360:名無しさん@5周年
09/10/16 18:46:01
Mac だと Fink で gfortran と g95 の両方がインストールできる。FORTRAN77 しか
使ったことが無いので、ボチボチ Fortran90 の勉強でもしようかと思ってる。
g95 は公式サイトにバイナリ置いてるよ。
URLリンク(www.g95.org)
361:名無しさん@5周年
09/10/16 19:25:17
g95だと、装置番号に対応するファイル名の指定を実行シェルからできるけど、OpenMP使えない。
gfortranはその逆で、ファイルを実行シェルから指定できないけど、OpenMPがつかえる。
無料コンパイラの代表格であるし、どちらか早く対応して欲しい。
(学校のクラスターにはpgf90が入っているから、研究では困らんのだけど)
362:名無しさん@5周年
09/12/26 23:02:16
test
363:名無しさん@5周年
09/12/26 23:18:43
Fortran90/95いいね~
fftw3+lapack95+OpenMPで高速計算手軽にできるじゃん
これでファイル出力にHDF5が使えりゃ文句無いのだけど
資料が見つからないorz
これからは
計算のメイン部分:Fortran90/95
テストプログラム作成/データ解析/必要なら初期データ作成:Matlab/Octave
で分担すれば個人でもかなりの事が簡単にできるよこれ
364:363
09/12/27 23:25:07
>これでファイル出力にHDF5が使えりゃ文句無いのだけど
>資料が見つからないorz
日本語の資料が1件だけヒットした
要望があればテスト結果報告する
365:名無しさん@5周年
09/12/28 14:24:07
HDF5ってことは気象・海洋関係の方ですかね?
366:名無しさん@5周年
10/01/13 01:18:01
>>365
残念ながら違います
fortranのバイナリだと機種やコンパイラに依存するんでこの際だから
HDF5にしようと考えた次第です
Rやmatlab/octaveもサポートしてるし自分が使ってる計算アプリもHDF5形式でデータを吐くので
勉強しようという意味もあるんですが
日本語の資料
URLリンク(airex.tksc.jaxa.jp)
サンプルは既にファイルがある場合なのでそのまま実行するとエラーorz
ファイルが無い場合は h5*create_f 系でファイルやデータセットを新規作成
詳しくは reference manual を参照
URLリンク(hdfgroup.org)
あと
URLリンク(hdfgroup.com)
のサンプルプログラム h5_write.f90 とか
使用時はモジュール追加
use hdf5
コンパイル時オプション
-lhdf5_hl -lhdf5 -lhdf_fortran -lz
で行けました
367:363
10/01/13 01:24:43
>>365
改行が多すぎますと出たので続き
環境は Ubuntu9.10 64bit Desktop版
HDF5 は既存のライブラリを入れても hdf5.mod が無かったので
URLリンク(www.hdfgroup.org)
から最新のソースを取ってきて checkinstall で deb 形式にしてインストール
Fedra11 だと既存のライブラリに hdf5.mod が存在するので
そちらでもテストする予定
以上
368:363
10/01/13 01:32:36
失礼
367の
>>365 は >>366 の間違いです
369:名無しさん@5周年
10/01/13 13:55:01
HDFの4の方を使ってる・・・というかコンパイルがうまくいった4から
移動するのが億劫なだけ。
>>363-367
4と比べて5のメリットってどんなのがあるの?
370:名無しさん@5周年
10/01/13 15:39:03
>fortranのバイナリだと機種やコンパイラに依存するんでこの際だから
確かに機種依存は厄介だよなぁ
もっとも、昔と違ってメジャーなFortranコンパイラは絞られてきたけど
国内だとHDF5使ってる主なところは、宇宙・気象・海洋系とJAXAぐらいかな
自分の聞く限りでは
俺もHDF使おうかなぁ・・・と言っても大したコード書いてないけど
371:363
10/01/13 18:15:08
>>369
HDF4は使った事がないので正確には答えられないかもですが
URLリンク(www.hdfgroup.org) の
Are there limitations to HDF4 files? にある幾つかの問題は
解決されていると考えます
例えば、HDF5では多次元配列もそのまま扱えます
自分は4次元配列データの入出力を行っています
あとはメリットというかデメリットとして
HDF6が出た場合にHDF4のサポートがどうなるかというのがありますね
>>370
自分が使おうと考えた理由の一つに
HDF View
URLリンク(www.hdfgroup.org)
で中身が数値や画像として見られるので
誰が何の目的で作ったかわからないようなデータを
大量に作成してしまうのはある程度避けられるのではないか
というのもあります
372:名無しさん@5周年
10/01/13 18:46:09
>>371
HDFViewは自分のコード用じゃないけど使ったことあります
ただ、ローカルで使うには重くてかなりしんどかった
>>366のJAXAの例みたいに、データ、データベースシステム、可視化、クライアント用Web
という感じで上手く階層構造にしてやらんと、でかいデータ扱うのは絶対無理っぽいね
373:369
10/01/14 03:35:28
>>371
ありがとう。版数あがってるだけあってやっぱり5の方がいいのかな・・
>>366
ちなみに・・・HDF4では
-lmfhdf -ldf -lsz -ljpeg -lz
だった。設定次第でこのへんは違うかもしれないけど。jpegとszip圧縮使ってるのね。
374:363
10/02/04 23:10:29
Fedora11 でもようやく試せたのでレポートです
gfortran, hdf5 は既存の rpm をインストールすればOK
BLAS, LAPACK, ATLAS も rpm でインスコできるけどそれらを使うなら
ソースからコンパイルし直すか ACML や MKL, GotoBLAS の方がいいでしょう
で, fortran90 の自作アプリが吐き出した HDF5 データを Octave で読み込ませたら
ヘッダのバージョンが 1.8.2
ライブラリのバージョンが 1.8.3
で違うと怒られて Octave が落ちました(笑
.bashrc に
export HDF5_DISABLE_VERSION_CHECK=1
を加えて反映させるとまだ Octave に怒られますが
一応HDF5データの読み込みは成功しました
結論としては Fedora11 の方が敷居は低かったです
以上