看板 Fortran 關於我們 聯絡資訊
大家好 想請教大家如何宣告一個長度不同的矩陣 一般來說矩陣都是宣告成n*n*n... 我今天有一組資料,裡面各組的長度並不相同 例如3組資料,每組各有2,3,4個數值 請問要如何使用allocate呢? 我第一次有這樣需求 目前只有最笨的方法,應該是直接開一個遠大於資料長度的矩陣 比如例子中使用a(10,3) 請問大家有別種作法嗎? 謝謝大家不吝指教! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.104.107 ※ 文章網址: https://www.ptt.cc/bbs/Fortran/M.1488472653.A.5FE.html
physbook: 要開夠大,其他放NaN。可以先用NaN(10, 3)把矩陣開好再 03/03 10:26
physbook: 填入資料。 03/03 10:26
physbook: 欸幹,沒注意到我在fortran板.....上面atlab的解法請自 03/03 10:27
physbook: 動忽略.......@@ 03/03 10:27
physbook: fortran的話,一樣開足夠大的矩陣,或是你可以先分析過 03/03 10:28
physbook: 資料看看最大長度有多長,矩陣的變數改成allocatable, 03/03 10:28
physbook: 在再allocate成最大長度的大小 03/03 10:28
rex0707: 可以用linked list省記憶體空間 03/03 13:17
blc: pointer ? 03/03 21:39
rex0707: 可以試試看compressed row storage的做法 03/04 10:55
daumda: 謝謝大家的意見,我來研究看看再回報 03/04 17:24