今天寫程序的時候有個問題,因為一個函數會同時在8個進程里運行,在這個函數內部會創建巨大的矩陣,而matlab默認的zeros函數和ones函數創建的矩陣數據類型都是double,對內存的壓力比較大。考慮到我又不需要這么高的精度,於是想創建整型矩陣來降低內存占用,查了一下發現可以這樣寫。
dataLen = signal.dataLen;
factorVector = zeros(dataLen,1,'int8');
這里的factorVector就是我想要的系數矩陣
其中int8可以替換為matlab其他的數據類型
不過非常不幸,matlab不支持整型變量和復數變量相乘,所以我還是得用double類型的矩陣,不然會提示
錯誤使用_*_
不支持復整數算術運算。