くだすれFORTRAN(超初心者用)その4
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/01/24(土) 18:32:01もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
FORTRAN使いが優しくコメントを返しますが、
お礼はFORTRANの布教と初心者の救済と次期Fortran2008規格でのCOMEFROM文採用をお願いします。
●注意事項
・質問する前にGoogle等の検索サイトで検索しましょう。
・回答者にわかりやすい様に、質問内容はできる限り詳しく書きましょう。
・エラーの場合は起きた状況、環境(OS・コンパイラ・バージョン)、エラーメッセージも詳しく書きましょう。
●前スレ
くだすれFORTRAN(超初心者用)その3
http://pc11.2ch.net/test/read.cgi/tech/1196384126/
くだすれFORTRAN(超初心者用)その2
http://pc11.2ch.net/test/read.cgi/tech/1164121236/
くだすれFORTRAN(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1138063703/
●関連スレ
FORTRAN �W
http://pc11.2ch.net/test/read.cgi/tech/1163319215/
0002デフォルトの名無しさん
2009/01/24(土) 21:22:49スレ立て乙です
0003デフォルトの名無しさん
2009/01/25(日) 21:38:41まとめがあった。
ttp://www.ifremer.fr/ditigo/molagnon/fortran90/f90col.html
たとえば、以下のような場合
CALL( A )
CALL( A(:) ) −> ALLOCATE( TMP(SIZE(A)) ) ; TMP = A ; CALL (TMP) ; A = TMP ;DEALLOCATE(TMP)
ソースの意味的には同じだが、下の書き方だと、コンパイラが一度テンポラリに
Aの中身をコピーしてテンポラリを読んだりする実装がされたりする。
最近は少し賢くなったようだw
0004デフォルトの名無しさん
2009/01/26(月) 01:32:560005デフォルトの名無しさん
2009/01/26(月) 06:57:57allocateして動的にメモリの空きを探して確保してコピーして、って
素で考えると手間がかかるだけな気がするけど、わざわざそうするということは
何か別な利得が発生するのかな?
00065
2009/01/26(月) 06:59:41a(:)が添字範囲全部の場合も、一部だけの場合でも両方対応するようにしたけど、
範囲全部の場合だけ別にする事を忘れただけなのかな?
0007デフォルトの名無しさん
2009/01/26(月) 12:03:14出ているコンパイラやOSを見る限り。
0008デフォルトの名無しさん
2009/01/26(月) 16:23:180009デフォルトの名無しさん
2009/01/27(火) 21:09:52if(条件式) then
endif
done
と
do I = 1 , N
if( ! 条件式) cycle
done
は、やってることは等価だけど、速さも同じ?
0010デフォルトの名無しさん
2009/01/28(水) 00:00:36まあ、コンパイラにもよるから自分で試してみてくれ。
0011デフォルトの名無しさん
2009/01/28(水) 01:53:01「ifortl」というコマンドを使うように指示されたのですがうまくいきません
どなたかわかる方いらっしゃいませんでしょうか?
環境は
OS Linux バージョン不明
コンパイラ Intel Fortaran 10.0
MKL Intel MKL9.1
コンパイラの購入時に「ifortl」コマンドを使うと自動でMKLのリンクが張られる〜
のような説明を受けたらしいのですが、使用すると引用したモジュールが見つかりません
という旨のエラーメッセージがでます。
リンクオプションをきちんと記述するとコンパイルできます
MKLへのリンクの環境変数が通っていないんだと思うのですが、
設定方法がわからない状態です
■ このスレッドは過去ログ倉庫に格納されています