我得到這些錯誤:功能手柄未進行轉換 - MATLAB
Conversion to function_handle from double is not possible.
已經搜索一下,並試圖改變我的代碼,但沒有sucess。你能幫忙嗎?由於
A=[99.23;100.05;91;107.71;104.1];
B=[3441 3441 301720.5;68750 1068750 0;170040 13085020 0;229350 229350 5729350;34194000 0 0];
N=[300000;1000000;13000000;5500000;32800000];
E=[-0.00302;-0.00261;-0.00208];
[c3,r3]=size(A);
[c4,r4]=size(B);
x=sym ('x',[1 c3]);
x=transpose(x);
for i=1:c3
Valor(i,1)=0;
for j=1:r4
Valor(i,1)[email protected](x){(Valor(i,1)/((1+E(j,1)+x(j,1))^j))+(B(i,j)/((1+E(j,1)+x(j,1))^j))};
end
end
我要的是找出X因爲我已經有一個載體Valorantigo,我將使用應用解決載體。
Valorantigo(1:c3,1)=A(1:c3,1).* N(1:c3,1) ./100;
eqn=Valor(1:c3,1)==Valorantigo(1:c3,1);
[solx, param, cond] = solve(eqn, x, 'ReturnConditions', true);
基本上X將是
- Valorantigo(1,1)= 3441 /(1-0.00302 + X1)+ 3441 /(1-0.00261 + X1)^ 2 + 301720.5的溶液/(1-0.00208+x1)^3
- Valorantigo(2,1)= 68750 /(1-0.00302 + X2)+ 1068750 /(1-0.00261 + X2)^ 2 + 0 /(1-0.00208 + X2 )^ 3
- Valorantigo(3,1)= 170040 /(1-0.00302 + X3)+ 13085020 /(1-0.00261 + X3)^ 2 + 0 /(1-0.00208 + X3)^ 3
- 的其他線路相同...
你有什麼triying一起acomplish'= @(X){....}'?只是填滿陣列'Valor'?然後就刪除,並留下內側 –
@AnderBiguri是的,我想填滿基勇氣。我把「{...}」放在了一邊,因爲我認爲這是解決我的錯誤的方法之一。即使我抹去我有一些錯誤。 –
@AnderBiguri已經詳細說明了。你能幫忙嗎?我這個工作,因爲週五和無法找到一個辦法來解決我的代碼 –