天天看點

Matalb 存儲 結構體 struct 仿真過程資料 到 .mat 檔案

來源

仿真過程中,使用不同參數進行仿真,為便于後續檢視,希望吧資料存儲。主要遇到的是 struct 變量存儲到.mat 檔案遇到問題。

方法

data 變量是一個結構體

save(filename,variables)
save filename

save(‘A.mat’, 'data')
save('A.mat', '-v7.3', '-struct', 'data')
save filename data
           

使用 command syntax

此時注意直接寫 檔案名稱,如果檔案名稱是一個字元數組啥的是不行的,改用函數形式使用

save()

使用 function syntax

此時可以把檔案儲存的日期加到檔案名中,便于後續檢視時比較檔案先後。

filename = ['Opt_Force_Ctrl_F', num2str(Desired_Force), 'N_L', num2str(min(Len)), '_',...
    num2str(max(Len)), '_date_', replace(char(datetime),{':', '-', ' '},'_'),'.mat'];
save(string(filename), 'data')
           

其中

replace(char(datetime),{':', '-', ' '},'_'),'.mat']

使用

datetime

函數傳回目前日期和時間,

replace

函數替換 日期中的連字元,時間中的冒号,還有兩者之間的空格。

此外,在save函數中使用 string 函數 強制把 char 類型的 filename 轉string。沒轉的時候 報錯,具體原因未查。

繼續閱讀