このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
FORTRAN使いが優しくコメントを返しますが、
お礼はFORTRANの布教と初心者の救済と次期Fortran2008規格でのCOMEFROM文採用をお願いします。
●注意事項
・質問する前にGoogle等の検索サイトで検索しましょう。
・回答者にわかりやすい様に、質問内容はできる限り詳しく書きましょう。
・エラーの場合は起きた状況、環境(OS・コンパイラ・バージョン)、エラーメッセージも詳しく書きましょう。
●前スレ
くだすれ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/
くだすれFORTRAN(超初心者用)その6
レス数が1000を超えています。これ以上書き込みはできません。
2012/08/16(木) 20:58:00.31
952デフォルトの名無しさん
2019/01/25(金) 12:51:00.49ID:A2tc5P4M Lapackでええやん
953デフォルトの名無しさん
2019/01/25(金) 13:01:21.60ID:e9L7JHld LAPACKは使うけどコードは最適化されてて汚い
954デフォルトの名無しさん
2019/01/25(金) 21:25:43.75ID:5qMgZ1Mp Matrix Computationsに載ってるよ。
955デフォルトの名無しさん
2019/01/26(土) 02:23:28.24ID:Z89DHn3T 質問です。
ファイル名 *.f90 とは別に、プログラム名 program * がありますが、この二つが同じ名前だと、何らかの不具合・不便に繋がったりするのでしょうか。
私は、修正前後を比較するためにバージョン違いを作るような場合を除き、基本的に両者を同じ名前にしているのですが……
ファイル名 *.f90 とは別に、プログラム名 program * がありますが、この二つが同じ名前だと、何らかの不具合・不便に繋がったりするのでしょうか。
私は、修正前後を比較するためにバージョン違いを作るような場合を除き、基本的に両者を同じ名前にしているのですが……
956デフォルトの名無しさん
2019/01/26(土) 11:12:15.29ID:yVAkGzul むしろ同じにしといた方が無難
957デフォルトの名無しさん
2019/01/26(土) 13:43:45.62ID:Z89DHn3T >>956
安心しました、ありがとうございます。
安心しました、ありがとうございます。
958デフォルトの名無しさん
2019/01/26(土) 13:53:32.02ID:6SK3WITg ファイルシステムの無い時代、例えばパンチの名残だろうかね
959デフォルトの名無しさん
2019/02/08(金) 00:44:25.09ID:YfKMGwNZ 環境はCygwin、f90、gfortranです。
open文のaction指定子に関する質問です。
ミス防止のため、念には念を入れて
「readもwriteもするファイルでも、場面に応じてaction='read'と'write'を切り替える」
と理想的なんじゃないだろうか、とふと思いまして、
open(100,file='foo.dat',status='old',action='read')
〜
open(100,action='write',position='append')
〜
close(100)
という記述を試してみたのですが、実行時にエラーになってしまいました。
(Fortran runtime error: Cannot change ACTION parameter in OPEN statement)
「open文で既に開いているファイルを開き直してもよい」って仕様はこういう用途のためのものではないんですね……
一度closeすれば事は足るのですが、それだと今度は「同じfile名を二回記述しなければならない」という無駄が解消できず……
何か、巧い方法はないのでしょうか。
open文のaction指定子に関する質問です。
ミス防止のため、念には念を入れて
「readもwriteもするファイルでも、場面に応じてaction='read'と'write'を切り替える」
と理想的なんじゃないだろうか、とふと思いまして、
open(100,file='foo.dat',status='old',action='read')
〜
open(100,action='write',position='append')
〜
close(100)
という記述を試してみたのですが、実行時にエラーになってしまいました。
(Fortran runtime error: Cannot change ACTION parameter in OPEN statement)
「open文で既に開いているファイルを開き直してもよい」って仕様はこういう用途のためのものではないんですね……
一度closeすれば事は足るのですが、それだと今度は「同じfile名を二回記述しなければならない」という無駄が解消できず……
何か、巧い方法はないのでしょうか。
960デフォルトの名無しさん
2019/02/08(金) 01:15:11.98ID:YfKMGwNZ すみません、一応自己解決しました。
指定子に文字型の変数を与えることができる、ということに先ほど気づきました。
なので「一度closeする」で問題ありませんでした。
name1 = 'foo.dat'としておいて、
open文に file=name1 とでも書けば済む話でした(つまるところ、ファイル名変更時の手間が一番の問題だと考えていたので)。
指定子に文字型の変数を与えることができる、ということに先ほど気づきました。
なので「一度closeする」で問題ありませんでした。
name1 = 'foo.dat'としておいて、
open文に file=name1 とでも書けば済む話でした(つまるところ、ファイル名変更時の手間が一番の問題だと考えていたので)。
961Linux ペンギン
2019/02/08(金) 23:01:52.12ID:DyJ7QOpE lapack インスコ方法教えてんか?
962デフォルトの名無しさん
2019/02/28(木) 02:25:49.99ID:43+kEwYn963デフォルトの名無しさん
2019/02/28(木) 13:08:32.71ID:43+kEwYn >>956
遅レスだけど、program名って何か意味あるんかね?
program書かないでも動くし(endは必要)、programは他から呼ばれないし
moduleやsubroutineの名前は呼ぶのに大事だけど
ファイル名はinclude "fname"で使うから意味ある
遅レスだけど、program名って何か意味あるんかね?
program書かないでも動くし(endは必要)、programは他から呼ばれないし
moduleやsubroutineの名前は呼ぶのに大事だけど
ファイル名はinclude "fname"で使うから意味ある
964デフォルトの名無しさん
2019/05/02(木) 22:03:24.81ID:bI33l//4 他人が作ったコードで、
real*4 宣言を全部real*8に書き換えたら、
計算結果がNaNになっちゃったんだけど、
どんな原因が考えられますか?
real*4 宣言を全部real*8に書き換えたら、
計算結果がNaNになっちゃったんだけど、
どんな原因が考えられますか?
965デフォルトの名無しさん
2019/05/03(金) 14:28:23.81ID:3Vz/qKoh 色々
教えて欲しかったらソース出せ
教えて欲しかったらソース出せ
966デフォルトの名無しさん
2019/06/19(水) 04:49:42.26ID:tVNS+22r 【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
967デフォルトの名無しさん
2019/06/22(土) 10:06:49.78ID:ecTKxvDL Fortranは1956年?だかに作られたそうだけど
当初からクラス設計とかあったの?
当初からクラス設計とかあったの?
968デフォルトの名無しさん
2019/06/22(土) 10:33:22.05ID:fiI8bn9U データベースに合わせたORMみたいな
メンバーとか何かあった気がするが
クラスは無いんじゃね
メンバーとか何かあった気がするが
クラスは無いんじゃね
969デフォルトの名無しさん
2019/07/15(月) 18:22:34.81ID:totsCoub970デフォルトの名無しさん
2019/09/20(金) 07:30:20.40ID:TGCjU1pt Moduleで継承みたいなことってできないんでしょうか?
module mod1
integer,parameter :: val1 = 20
end
module mod2
use mod1
end
program main
use mod2
print *, val1
end
みたいな
このままだとエラーですけど
module mod1
integer,parameter :: val1 = 20
end
module mod2
use mod1
end
program main
use mod2
print *, val1
end
みたいな
このままだとエラーですけど
971デフォルトの名無しさん
2019/09/20(金) 09:23:13.89ID:Y6O3yJb6 >>970
gfortran8.1で試したけど普通に動くよ
gfortran8.1で試したけど普通に動くよ
972デフォルトの名無しさん
2019/09/20(金) 11:49:11.89ID:TGCjU1pt973デフォルトの名無しさん
2019/12/05(木) 20:26:57.24ID:5HmbMnOR 今更fortran使う必要が出たんですけど宣言全部冒頭でやらなきゃいけないとか読みにくいにもほどがあるなこの言語……
ただdllでもない生のCファイル普通に使えるのちょっと強すぎじゃない。何これ
ただdllでもない生のCファイル普通に使えるのちょっと強すぎじゃない。何これ
974デフォルトの名無しさん
2019/12/06(金) 10:25:38.93ID:uUae0oO6 JULIAやれ
975デフォルトの名無しさん
2019/12/09(月) 23:37:38.73ID:PezMDr0C C++に移植する作業をしてるんだが、fortranは配列が1スタートなのと行優先なのまじで糞だと思う
976デフォルトの名無しさん
2019/12/10(火) 06:15:05.25ID:ehgh8Gwn 配列の下限もレイアウトも両方オプションで変更できるっしょ
977デフォルトの名無しさん
2019/12/10(火) 13:53:20.70ID:48kVELqA openglも行優先だっけ
978デフォルトの名無しさん
2019/12/14(土) 01:16:23.48ID:llZnx091 read/writeの装置番号というのに衝撃を受けたんだけど
いや整数を振るって……えぇ……他の言語でこんなん見たことねぇよ……
いや整数を振るって……えぇ……他の言語でこんなん見たことねぇよ……
979デフォルトの名無しさん
2019/12/14(土) 02:29:00.89ID:U3Y+OMfv ここで言語仕様に文句言ってもどうしようもないだろ……
整数型の変数も使えるから自分で値を付けれるハンドルと考えれば良い
整数型の変数も使えるから自分で値を付けれるハンドルと考えれば良い
980デフォルトの名無しさん
2019/12/14(土) 10:56:06.61ID:oHNLq8G6 Cでもstdin=0,stdout=1,stderr=2とかやってるやん?
981デフォルトの名無しさん
2019/12/14(土) 19:35:25.64ID:ygJNOGBg ハンドルを整数値で管理するなんて普通だろ。
982デフォルトの名無しさん
2019/12/15(日) 02:31:50.39ID:XiowEuWl subroutineとfunctionの使い分けってどうしてます?FORTRANのコード規約みたいなのがあまり見当たらなくてわかんなくて
たとえばnameとageを持ったpersonタイプを作るとしてsubroutine getperson(name, age, person) intent(in)name, age intent(out)person
なのかgetname(name, age)ファンクションを定義してperson = getPerson(name, age)みたいなのがいいのか
他の言語の言い方になるけど前者は参照渡し的というか。今いじってるのがほぼ全部subroutineで処理してるからこういうのがfortranの書き方なのかなぁって
個人的には後者の方がいいのではと思うんですよね
たとえばnameとageを持ったpersonタイプを作るとしてsubroutine getperson(name, age, person) intent(in)name, age intent(out)person
なのかgetname(name, age)ファンクションを定義してperson = getPerson(name, age)みたいなのがいいのか
他の言語の言い方になるけど前者は参照渡し的というか。今いじってるのがほぼ全部subroutineで処理してるからこういうのがfortranの書き方なのかなぁって
個人的には後者の方がいいのではと思うんですよね
983デフォルトの名無しさん
2019/12/15(日) 08:10:55.00ID:ZURMU7Y0 副作用が無いならfunction、あるならsubroutine
例えばsinやcosはfunctionだけどrandom_numberは内部状態を書き換えるのでsubroutine
例えばsinやcosはfunctionだけどrandom_numberは内部状態を書き換えるのでsubroutine
984デフォルトの名無しさん
2019/12/15(日) 12:59:16.65ID:o9m7qUoD 戻り値の有無やろ
985デフォルトの名無しさん
2019/12/15(日) 13:03:16.56ID:PY/OteEv 返り値が複数かどうかだろ
986デフォルトの名無しさん
2019/12/15(日) 20:36:28.41ID:AalVXpZd 副作用はpure修飾で区別するのでは
987デフォルトの名無しさん
2019/12/15(日) 23:49:42.99ID:BpbcQxvZ 前提として初心者がどちらにするか迷った時の話で
非pure関数を同じ文中で複数呼んだら評価順の影響を受けて悩みの種になるというのがあるから
副作用があれば全部subroutineぐらいの割り切りでいいと思う
非pure関数を同じ文中で複数呼んだら評価順の影響を受けて悩みの種になるというのがあるから
副作用があれば全部subroutineぐらいの割り切りでいいと思う
988デフォルトの名無しさん
2019/12/16(月) 08:12:12.88ID:CEJg7/0A >985
複数の返り値を構造体にすれば、関数でいけるのではないでしょうかね
複数の返り値を構造体にすれば、関数でいけるのではないでしょうかね
989デフォルトの名無しさん
2020/01/09(木) 14:06:43.45ID:Rw5gLjBx cigwin64ターミナルでコンパイルしようとすると
Winmain関数への定義がされてないって言われるんだけどどうしたらいいですか?
Winmain関数への定義がされてないって言われるんだけどどうしたらいいですか?
990デフォルトの名無しさん
2020/01/10(金) 22:03:41.01ID:odrNzs9Z Winmain関数を定義したらよいのでは。
991mac
2020/02/01(土) 22:13:14.55ID:Q+QKuWIk macのOSをCatalinaにしてからfortranでコンパイルできなくなりました。
大学の宿題ができなくて困っています。助けてくだいさい!
gfortran main.f90 でコンパイル後のエラー文は以下です。
dyld: Library not loaded: /usr/local/opt/isl/lib/libisl.21.dylib
Referenced from: /usr/local/Cellar/gcc/9.1.0/libexec/gcc/x86_64-apple-darwin18/9.1.0/f951
Reason: image not found
gfortran: internal compiler error: Abort trap: 6 signal terminated program f951
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://github.com/Homebrew/homebrew-core/issues> for instructions.
大学の宿題ができなくて困っています。助けてくだいさい!
gfortran main.f90 でコンパイル後のエラー文は以下です。
dyld: Library not loaded: /usr/local/opt/isl/lib/libisl.21.dylib
Referenced from: /usr/local/Cellar/gcc/9.1.0/libexec/gcc/x86_64-apple-darwin18/9.1.0/f951
Reason: image not found
gfortran: internal compiler error: Abort trap: 6 signal terminated program f951
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://github.com/Homebrew/homebrew-core/issues> for instructions.
992デフォルトの名無しさん
2020/02/02(日) 14:51:51.31ID:5oKX1F3M >>991
エラーログよく読めよカスガキ
エラーログよく読めよカスガキ
993mac
2020/02/03(月) 06:48:44.07ID:lEGOKPCQ 読んでみました。
libisl.21.dylib を読み込もうとしているのですが、
libisl.22.dylib におそらく対応ファイルが変わってしまったようです。
読み込み先を libisl.21.dylib → libisl.22.dylib に変更するにはどうしたら良いのでしょうか?
libisl.21.dylib を読み込もうとしているのですが、
libisl.22.dylib におそらく対応ファイルが変わってしまったようです。
読み込み先を libisl.21.dylib → libisl.22.dylib に変更するにはどうしたら良いのでしょうか?
994デフォルトの名無しさん
2020/02/03(月) 11:41:24.71ID:62FLJlST libisl.22.dylib を libisl.21.dylib に rename
995mac
2020/02/04(火) 13:54:57.85ID:5KrL780U コンパイルできるようになりました!
ありがとうございます!
ありがとうございます!
996デフォルトの名無しさん
2020/02/05(水) 02:53:14.67ID:hA2ZuT5R 並列計算のコマンドを do loop 内に入れると,配列ごとに計算できないのね。。。
なんか妙案あるのかな
なんか妙案あるのかな
997デフォルトの名無しさん
2020/02/27(木) 21:39:58.16ID:LK+QpBx6 ifortで-ipoを指定すると謎のセグフォが発生する
998デフォルトの名無しさん
2020/04/06(月) 04:39:32.64ID:D5KfSo1y うめ
999デフォルトの名無しさん
2020/04/06(月) 04:39:41.11ID:D5KfSo1y うめ
1000デフォルトの名無しさん
2020/04/06(月) 04:39:53.59ID:D5KfSo1y うめ
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2789日 7時間 41分 53秒
新しいスレッドを立ててください。
life time: 2789日 7時間 41分 53秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 中国国営メディア「沖縄は日本ではない」… ★5 [BFU★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」★2 [ぐれ★]
- 【速報】 高市政権、「日本版DOGE」を立ち上げ 米国で歳出削減をした「政府効率化省(DOGE)」になぞらえたもの [お断り★]
- 台湾声明 「台湾は独立した主権国家、中国は台湾を統治したことがなく、中国は口出しする権利ない」 中国が高市首相に抗議で ★7 [お断り★]
- 日本が「世界で最も魅力的な国」1位に!✨「魅力的な都市」では東京が2位 「魅力的な地域」は北海道が7位に [煮卵★]
- 【速報】 日経平均の下落率3%超す、財政懸念で長期金利上昇 [お断り★]
- 高市政権「中国さん、日本はいつでも対話に応じるで」 [834922174]
- 吉村はん「高市さんは発言を撤回する必要ないですよ。中国の大阪総領事が謝罪すべき」 [256556981]
- 中国「高市が謝罪撤回しないとこれ全部なくなるけどどうする?」 [931948549]
- 日経平均、49000円割れ 国賊高市を許すな [402859164]
- 【悲報】青森県、今日だけで60cm雪が積もってとうとう100cm越えてしまうwwwww
- 東浩紀「日本はいままさに駆け引きをしている。」高市有事にピシャリ [834922174]
