将matlab代码转换为c

时间:2013-10-03 10:16:23

标签: c matlab

我有一个matlab函数,它读取一个大矩阵并计算奇异值分解SVD。然而,我需要在Linux系统上运行它而不需要在每个新系统上安装matlab,所以id喜欢将它转换为c源代码。代码非常简单:

function singular(m)
load c:\som\matlab.txt
[U,S,V]=svd(matlab);
m = str2num(m);
U1=U(:,1:floor(sqrt(m)));
V1=V';
Vt=V1(1:floor(sqrt(m)),:);
S1=S(1:floor(sqrt(m)),1:floor(sqrt(m)));
matlab1=U1*S1*Vt;
matlab2=abs(matlab1);
save c:\som\matlab1.txt matlab1 -ascii
save c:\som\matlab2.txt matlab2 -ascii

1 个答案:

答案 0 :(得分:0)

您可以使用Matlab coder,但我建议您手动设置,因为某些功能无法转换,性能并不比手动配置好得多。

手动制作svd:SVD