在MATLAB中的for循环中使用多个值的符号进行矢量化

时间:2016-03-14 10:14:57

标签: matlab for-loop vectorization symbols equation

我想将一个等式为2的等式的答案导出到一个向量中。输入为R01,变量为n 问题是我想在i的每一步“加倍”符号,我得到以下错误:

  

在作业A(I)= B中,B和I中的元素数必须是   相同。

如果我不使用for循环,则不会出错。我的错误是什么?如何修改它我可以将数据作为矩阵或向量。

R01=[0.07941 0.07942 0.07952 0.07946 0.07951 0.07947]

syms n 
for i=1:length(R01)
    eq3=((1+n)^2)*R01(i)-(n-1)^2
    sol1=solve([eq3]);
    nsol(i)=double(sol1);
end

1 个答案:

答案 0 :(得分:1)

解决问题的有效方法(丹尼尔):

syms n 
for i=1:length(R01)
    eq3=((1+n)^2)*R01(i)-(n-1)^2
    sol1=solve([eq3]);
    nsol(i,:)=double(sol1);
end