- ベストアンサー
FORTRANについての質問
FORTRANで次の式のプログラミングを書くという課題がでたのですが、どのようにかけばよいですか?? d~2x/dt~2+a~2x=0 本当にわかりません!!! よろしくお願いします。。。
- みんなの回答 (6)
- 専門家の回答
みんなが選んだベストアンサー
#1です。 「Runge-Kutta法で数値計算をする」というのだったら (1)そのプログラムに何を与えると (2)どういう計算式を使って (3)何が得られるのか これらを明確に述べてください。それができないようならFORTRANが分からないといった問題ではなく、Runge-Kutta法が分かりませんので教えてくださいと言う問題になる。
その他の回答 (5)
- Tacosan
- ベストアンサー率23% (3656/15482)
「FORTRANをまともに勉強していなくて」というなら諦めて今度「まともに勉強」すればいい. 学生ならそれで通る. もしくは, 「たまたま FORTRAN では (まともに勉強していないので) 書けないけど他の言語でなら書ける」ということなら「他の言語」で書いておいて FORTRAN に翻訳すればいい. だいたい, 調べれば「ルンゲクッタ法を使って FORTRAN で常微分方程式を解くプログラム」の例くらいでてくるんだけどね. ああ, (2階以上の) 高階常微分方程式は微係数をそれぞれ個別の従属変数とみなして連立 1階常微分方程式に落としてから数値解法にかけることが普通かな. この辺は Fortran だと楽なんだけどねぇ.
- prophetok
- ベストアンサー率44% (13/29)
#3です。 今の大学生は幸せだよね。 もう、30年近く前になってしまうけど。 僕が大学、大学院在学自体に使っていた、当時スーパーコンピュータ呼ばれていたマシン、より遙かにすごい性能を持つマシンを誰もが個人で扱える。当時は、文献をしらみつぶしに調べなければ分からなかった情報が、ググれば手に入る。 ルンゲクッタ法でググればmいくらでも、情報でてくるだろ。 それでも、さっぱり分からなければ、少なくともエンジニアの素質はないので、あきらめて、他の仕事を探しましょう。
- prophetok
- ベストアンサー率44% (13/29)
C/C++なのになんでこのジャンル? ・d~2x/dt~2+a~2x=0 この式自体が意味不明 というつっこみは置いておいて 好意的に~2が2のスーパースクリプトと解釈すると 単純な二階常微分線形方程式だよね。 まともな知能と知識をもつ理科系大学生(および卒業生)なら瞬時に C1sin(at)+C2cos(at) (C1,C2は境界条件に応じた定数) が解だと導けるはず。 これを数値解析を使って解けという課題なのか。 初等数学で解けない場合は、オイラー法、ルンゲクッタ法などの数値解析を行うが、このケースは簡単に解けてしまうので、何を求めているのか分からない。 課題を出した教官に聞くとともに、あんたもうちょっと勉強しなよ。
- Tasuke22
- ベストアンサー率33% (1799/5383)
うーん。この課題までに完全に落ちこぼれてる雰囲気ですね。 課題の意味さえ掴めてないし。頑張って取り返してね。 ・プログラミングを書く このような言葉はありません。 中学1年の英語を思い出しましょう。 ・d~2x/dt~2+a~2x=0 方程式ですが、どの数字が与えられて、どの数字を求める のですか?プログラム以前に、数学としての意味は何ですか? 数学的な意味が分からないのにいきなりプログラムは書けません。
補足
回答ありがとうございます。 二階常微分方程式なんですけど、これをルンゲクッタ法を用いて数値計算をするという課題でした。 d^2x/dt^2+a^2x=0 どのようなプログラムになるのでしょうか?? よろしくおねがいします。。
- f272
- ベストアンサー率46% (8627/18452)
「次の式のプログラミング」とは何のことでしょうか? そのプログラムに何を入れると、何が答えとして返ってくることを期待しているのでしょう?
補足
返事が遅くなり申し訳ありません。 補足説明させていただきます!! この式をRunge-Kutta法で数値計算をするという課題でした。 ご理解いただけますでしょうか??
補足
回答ありがとうございます。 ご理解いただけて幸いです。 そうなんです!二階常微分線形方程式なんですけどこれをルンゲクッタ法で数値解析を行うというのが課題なんです。 FORTRANをまともに勉強していなくて。 このプログラムはどのようになるのでしょうか??