作者darrenmm (mm)
看板Fortran
標題[問題] 有關於變化質量
時間Thu Apr 3 21:23:06 2014
想請問一下
如果原本我有一個程式
是在計算 有一個球 質量是常數,然後給一些條件
可以列出他在空中每一秒 不同的位置
然後我現在想改寫 他的質量會隨時間每一秒變化
請問可否給小弟一些靈感 應該怎麼去寫嗎?
目前是想說把質量抓出來寫一個子程式,但是不知道
1.該如何把質量設定每一秒增加多少
2.該如何把這個子程式應用到主程式 讓主程式將每一秒的質量代入計算求位置
謝謝幫忙!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.26.246
※ 文章網址: http://webptt.com/m.aspx?n=bbs/Fortran/M.1396531389.A.DC8.html
※ 編輯: darrenmm (111.240.241.195), 04/03/2014 21:47:37
1F:→ ll3:這問題... 跟FORTRAN的關係在於? 04/03 21:55
2F:→ blc:try function 04/03 21:59
SORRY 沒有講清楚
因為程式是fortran寫的 所以想問有沒有人用fortran寫過類似的狀況
可以指導一下小弟 讓小弟參考一下
感激不盡
3F:→ Cypresslin:你的第一個問題應該看你要算什麼吧? 04/04 01:52
4F:→ ll3:這擺明就是作業嘛 最少也自己做過 有錯在來問哪邊錯了 04/06 08:27
您好 是期末專題沒錯
不過請不要誤會
我只是想請教 有沒有人有經驗該怎麼去架構這種程式(我也一直有在思考)
絕非直接想請人幫忙做(如果是的話 我就會把code放上來請版友幫忙改了)
5F:→ ll3:乖乖回去看書吧 連這基本的也想撿現成 04/06 16:47
您好,請問這很基本嗎?
我當然知道質量要變成時間的變數直接寫成類似
(例如時間為1~100秒 且每一秒增加1單位)
do i=1,100
m=m+1
end do
但是把一個上萬行的程式,要把原來質量=constant改成質量等於隨時間變化的變數
而且在"其他的每一個計算中"也要把"質量為時間的變數"套進去考慮
這算是很基本的問題嗎?
可否給小弟一點方向,我翻了滿多書的都沒有類似的題目
可否給小弟一些書籍或是關鍵字讓我去研究一下
我目前想到可行的方法是在每一個計算迴圈中都把質量變數加進去
讓每一次迭代時質量也一起改變
但是迴圈有上百個耶 難道每個都要加嗎==
6F:→ wenni:期末專題的話 code也是教授提供的 那應該會有小改就work的路 04/06 21:59
7F:→ wenni:而且既然是期末專題 改個上百個迴圈也不算過份吧? 04/06 21:59
8F:→ wenni:這是我自己的經驗 也許觀察一下質量變數 然後用global變數作 04/06 22:01
我知道最直接的方法就是
每一個計算迴圈中都把質量變數加進去
讓每一次迭代時質量也一起改變
但只是想問有沒有更聰明一點的方法
還是就只有這種方法呢?
因為我覺得這種方法似乎不是一個好方法
例如如果之後質量變化率要改函數 豈不是每一個迴圈又要逐條審查@@
9F:→ wenni:所以我才說要觀察一下程式 應該是有地方可以只改他其他全變 04/06 22:12
10F:→ wenni:書查不太到是因為是程式架構跟coding技巧 先弄清楚架構吧 04/06 22:15
11F:→ roythepigmy:用一個大迴圈把原本的迴圈全部包住? 04/07 01:51
12F:→ roythepigmy:新迴圈用來處理質量隨時間變化的問題 04/07 01:51
13F:→ roythepigmy:因為聽起來原本的質量是constant 04/07 01:52
14F:→ roythepigmy:把CONSTANT改為變數, 給個初始值 04/07 01:53
15F:→ roythepigmy:呃...因為沒看到原始碼, 我是用猜的, 參考就好 04/07 01:54
16F:→ rex0707:我覺得這跟fortran本身比較沒關係欸 應該跟程式撰寫的架構 04/07 18:15
17F:→ rex0707:有關吧 04/07 18:15
18F:→ wenni:推樓上 04/07 18:25
謝謝各位的幫忙!我已經有一些想法了
這幾天會來試試看!
※ 編輯: darrenmm (111.251.136.242), 04/07/2014 21:26:26