Visual fortran-鯨魚演算法已刪文

看板Fortran作者 (woody )時間5年前 (2019/01/08 15:50), 編輯推噓8(8011)
留言19則, 4人參與, 5年前最新討論串1/1
各位大大,小妹我正在用visual fortran寫鯨魚演算法 但,已碰壁兩個多月 真的希望能夠有神人可以點通我這夢中人 目前只希望能夠把簡單的主程式先跑出值後再帶題目進去 —-主程式—- https://i.imgur.com/haAXihw.jpg
其中,除錯部分沒有出錯, 但執行卻跑出一個視窗 https://i.imgur.com/0cUdVhx.jpg
想請問神人,能夠怎麼樣修改一下程式呢? 我先跪了,謝謝能夠解答我疑惑的大大們 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.168.238 ※ 文章網址: https://www.ptt.cc/bbs/Fortran/M.1546933839.A.EF8.html

01/08 20:51, 5年前 , 1F
PGbest 沒有給初始值,GROUP 及 NVAR 應宣告為 integer
01/08 20:51, 1F

01/08 21:35, 5年前 , 2F
因為裡面的實變數都是以real(kind=8)型態運算,參與
01/08 21:35, 2F

01/08 21:35, 5年前 , 3F
計算的數字也要以double precision 形式較好,如 1 改
01/08 21:35, 3F

01/08 21:35, 5年前 , 4F
為1.0d0
01/08 21:35, 4F

01/08 21:40, 5年前 , 5F
不然像1/2會得到0,1.0/2.0才會得到0.5
01/08 21:40, 5F

01/08 21:48, 5年前 , 6F
1.0d0也可以寫成1.0_8
01/08 21:48, 6F

01/08 23:57, 5年前 , 7F
我把pbest的值加上去了,但您說的group,nvar要宣告成
01/08 23:57, 7F

01/08 23:57, 5年前 , 8F
整數,我嘗試過了,還是一樣的問題
01/08 23:57, 8F

01/09 00:33, 5年前 , 9F
反正他是說 array bounds exceeded
01/09 00:33, 9F

01/09 00:34, 5年前 , 10F
就一行一行write 看看是哪一個變數的index超出
01/09 00:34, 10F

01/09 14:51, 5年前 , 11F
指數函數exp(1)看起來好像exp(l)
01/09 14:51, 11F

01/09 14:53, 5年前 , 12F
原本就是exp(l)吧
01/09 14:53, 12F

01/09 16:38, 5年前 , 13F
如樓上所說,試試在內層的do loop最後把i,j,x_(I,j)值
01/09 16:38, 13F

01/09 16:38, 5年前 , 14F
寫出來,compiler時則加上 /CB 選項(check bounds),若
01/09 16:38, 14F

01/09 16:38, 5年前 , 15F
有問題compiler會過,但執行時會停在出錯處
01/09 16:38, 15F

01/09 16:39, 5年前 , 16F
compile
01/09 16:39, 16F

01/10 12:09, 5年前 , 17F
是exp(L)沒錯哦,好的,謝謝!我後來開file把數據放進
01/10 12:09, 17F

01/10 12:09, 5年前 , 18F
去之後就跑的出來數據了!感謝你耐心的解答!
01/10 12:09, 18F

01/17 03:06, 5年前 , 19F
你的程式碼沒有縮排,令人看得很辛苦。
01/17 03:06, 19F
文章代碼(AID): #1SD5PFxu (Fortran)
文章代碼(AID): #1SD5PFxu (Fortran)