const int N = 100;
const double q = 10.0, dt = 0.00001, Dm = 30.0, t0 = 2.0, K = 1.0, pi = 3.141592, f = 3.0;
double C[N], dC[N];
double dx = q/N;
for (int i = 0; i < N; ++i) C[i] = 0; // 初期条件
for (double t = 0; t < t0; t += dt) {
C[0] = 0; // 境界条件1
C[N - 1] = K*sin(2*pi*f*t); // 境界条件2
for (int i = 1; i < N - 1; ++i) dC[i] = (Dm*(C[i + 1] - 2*C[i] + C[i - 1])/(dx*dx))*dt;
for (int i = 1; i < N - 1; ++i) C[i] += dC[i];
}
for (int i = 0; i < N; ++i) cout << C[i] << endl; // t = t0
このプログラムをfortranに変換できる方いますか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
だいたい,このくらいです。
処理系によっては,配列の添字は1以上で,0はダメかもしれません。
INTEGER N,IT
DOUBLE Q,dt,DM,T0,K,PI,F,dx
DATA N/100/,Q/10/,dt/0.00001/,DM/30/,T0/2.0/,K/1.0/,pi/3.141592,/F/3.0/
DOUBLE C(100),DC(100)
dx=Q/N
* 初期条件
DO 10 I=1,N-1
C(I)=0
10 CONTINUE
DO 20 IT=1,T0/dt-1
t=IT*dt
C(0)=0
* 境界条件
C(N-1)=K*sin(2.0*pi*f*t)
* 境界条件2
DO 30 I=1,N-2
dC(I) = (Dm*(C(I + 1) - 2*C(I) + C(I - 1))/(dx*dx))*dt
30 CONTINUE
DO 40 I=1,N-2
C(I)=C(I)+ dC(I)
40 CONTINUE
20 CONTINUE
DO 60 I=0,N-1
write(*,*) C(I)
60 CONTINUE
* t=T0
この回答への補足
もう。。。なんて言ったらよいか。。。本当にありがとうございます。
これを基本ベースにして様々な応用をしていきたいと思います!!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
d^2r/dt^2の意味
-
なぜ力積を時間に関して積分す...
-
運動方程式の成分表示
-
電流の時間微分、電圧の時間微分
-
Debug.Printで表示される内容を...
-
v^2-v0^2=2ax 今日この式を習っ...
-
①運動量ベクトルをpとしてニュ...
-
運動方程式と積分
-
非マルコフ過程をマルコフ過程...
-
電磁気学 インダクタンスに関...
-
物理
-
Noyes-Whitneyの式のdC/dtについて
-
高校物理、位置、速度、加速度...
-
質量流量の記号「・ の読み方を...
-
物理学 おそらく剛体の問題です
-
ラグランジアンLが L=exp(√mx')...
-
EXCEL上の数字を自動で振り分け...
-
万有引力を受けて運動する質点...
-
加速度 a=dv/dt = (d^2 x) /dt^2
-
この関数て
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
d^2r/dt^2の意味
-
電流の時間微分、電圧の時間微分
-
この関数て
-
オイラーの運動方程式の導出に...
-
v^2-v0^2=2ax 今日この式を習っ...
-
質量流量の記号「・ の読み方を...
-
非マルコフ過程をマルコフ過程...
-
Debug.Printで表示される内容を...
-
EXCEL上の数字を自動で振り分け...
-
物理の計算で m×dv/dt×v=d/dt{...
-
d/dx=dt/dx * d/dt =d/dt * dt/...
-
機械力学の問題です!!!
-
最後のdv/dtは何でしょうか。
-
ポテンシャルエネルギーから力...
-
雨滴の運動質量が変化する落体...
-
運動量をtで微分すると力になる...
-
加速度 a=dv/dt = (d^2 x) /dt^2
-
高校物理 授業でこういうのをや...
-
運動方程式を求めてください
-
力学の問題を教えてください
おすすめ情報