matlab - kron 的替代方法

标签 matlab

我正在MATLAB进行CDMA扩频。尽管我升级了 RAM、预分配数组等,但 MATLAB 仍然出现内存不足错误。

是否有替代方法 kron ( Kronecker tensor product ) 在 MATLAB 中?这是我的代码:

tempData = kron( Data, walsh); 

Data 是一个 M x 1 矩阵,walsh(扩展码)是一个 8 x 1 矩阵。

我的数据由实部和虚部组成,例如: double 格式的 0.000 + 1.000i1.000 + 0.000i

最佳答案

对 kron 的调用不是内存密集型的。我知道,你的问题看起来很微不足道。但是,您没有告诉我们 M 是什么。对于非常大的 M 值,您只是试图创建太大的数组以适应内存。人们很容易忘记您的计算机并不是无限大或无限快。当我们在一切事物面前看到“giga”时,我们会被宠坏。

如果您绝对必须对 M 值执行此操作,那么您可能需要 64 位版本的 MATLAB,并且一旦执行此操作,更多内存总是会有所帮助。

如果您能承受精度损失,另一种选择是使Data为单精度。这至少会给你一个额外的因子2。为了提供最好的帮助,我们需要知道M的大小。

关于matlab - kron 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2302455/

相关文章:

matlab - 将常量传递给 fminsearch

matlab - 删除重复项 - ** 仅当重复项按顺序出现时

algorithm - 最短路径算法

Python numpy 更简单的语法?

python - 安装 pymatbridge

image - 在 Matlab 中生成灰度热图

r - R 和 MATLAB 上的多维数组的算术平均值 : drastic difference of performances

matlab - 使用matlab选择矩阵中的元素

c - 如何调试通过mex(psychtoolbox)调用的dll?

Matlab-元胞矩阵中给定列的运算