くだすれFORTRAN(超初心者用)その7
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです.
FORTRAN使いが優しくコメントを返します.
●注意事項
・質問する前にGoogle等の検索サイトで検索しましょう。
・回答者にわかりやすい様に、質問内容はできる限り詳しく書きましょう。
・エラーの場合は起きた状況、環境(OS・コンパイラ・バージョン)、エラーメッセージも詳しく書きましょう。
●前スレ
くだすれFORTRAN(超初心者用)その6
https://mevius.5ch.net/test/read.cgi/tech/1345118280/l50
●過去スレ
くだすれFORTRAN(超初心者用)その5
http://toro.2ch.net/test/read.cgi/tech/1269704830/
くだすれFORTRAN(超初心者用)その4
http://pc12.2ch.net/test/read.cgi/tech/1232789521/
くだすれ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/ 書式指定でeの代わりにesを指定すると1≦仮数部<10になる
Fortranの入出力書式はいろいろあるから、後は自分で調べてくれ Do loop 中に
if (hoge) then
処理1
exit
elseif (hogehoge)
処理2
cycle
Endif
と言った同じ処理内容が100近くいくつもあるので、if -endif部分をサブルーチン化したいなと思ったのですが、exit やcycleが入ってると怒られます。
何か他にいい方法がありますか? >>9
そんなことはできないので諦めろ
むしろfortran使うなよ… >>5
whereとかall/someとかmaskとかめっちゃ便利そう!
学部教養用に広く使われているであろう某90/95数値解析本やってるけど、普通にループで回してやがる
まあアルゴリズムの理解のため、意図的にそうしてるんだろうと思うけど isoやcの型を一貫性なくuseしてたり、構造体を共有するなら必要なら型モジュールが必要なのは分かるけど
ひたすらdp=kind(0.d0)みたいな基本型かつ命名慣習のあるもので数値計算しててモジュールに集めてuseするべきなのかな? Fortran の詳しい参考書で何かあります?
森北出版の青本が一番良さげだけど、細かい機能解説載ってないのよね。
一体どこ見ればええんやろ ろくな書籍がないのでメーカー製コンパイラのマニュアルを見るのが無難(探せばネット上で見つかる)
洋書を買う気があるならModern Fortran explainedとか 2008以降でAmazon検索した事あるけど30冊〜くらい英書は引っかかったと思う
だいたい学術出版社なので万超えるが
あとcoarrayとかcuda fortranとか狙い撃ちしてるので教科書的でないのが多いかと
日本語でも数冊引っかかったと思う、見送ったのであんまりよろしくない感じかもしれん
遠い記憶なので気になったら調べ直してね >>13
基本型までモジュールにまとめる利点は一斉に精度切り替えられるくらいじゃない
そんなケースでこそサフィックスが_dpなのにdpじゃないとか紛らわしいし
ポータビリティ的には0.0d0から環境ローカルの型を取得するのは望ましいかもしれんが、個人的には環境によって変な結果が出る方が恐ろしい
どうせuseするなら明示的にiso_fortran_envのrealnn型を使いたい、対応してないなら落ちてくれた方がマシ
もしかして桁落ちするかもってところに_wp(wideのつもり)とか書いてseleted_real_kindのパラメータ振って検証したり、もしかして桁落ちするかもってところに_wp(wideのつもり)とか書いて定義を変えるとかはありじゃないかな module変数を保存したい場合はsaveを使うけどtype::クラス名のメンバ変数にはsave使用不可
fortranでメンバ変数の値を保存したい(あるインスタンスで行った変更が次に生成したインスタンスにも初期値的に引き継がれるようにしたい)時ってどうすればいいんでしょう? fortranでインラインアセンブラみたいに振る舞いたいのですがどうすればいいのです?
初心者ですいません
ネットにあるようでしたら調べに行きます ヤッホー!、Fortran,ラン, ラン♪ ヤッホ, フォートー ランのラン, ヤッホホ!