Info
この質問は閉じられています。 編集または回答するには再度開いてください。
Cant get the equation to work
3 ビュー (過去 30 日間)
古いコメントを表示
clc
num_values=11;
first_val=0;
time=zeros(1,num_values);
z(1)=first_val;
s=zeros(1,11);
time(1)=first_val;
t=sym('t');
TU(1)=5*pi/180;
TU(2)=7*pi/180;
TU(3)=6*pi/180;
TU(4)=9*pi/180;
TU(5)=12*pi/180;
TU(6)=17*pi/180;
TU(7)=19*pi/180;
TU(8)=27*pi/180;
TU(9)=33*pi/180;
TU(10)=36*pi/180;
TU(11)=45*pi/180;
for n=2:11
time(n)=(n-1)*15;
z(n)=(-z(n-1)+((2*(TU(n)-TU(n-1)))/(time(n)-time(n-1))));
sprintf('z= %.05f \n',z)
end
for n=2:10;
s(n)=((z(n)-z(n-1))/(2*(time(n)-time(n-1)))) * ((t-time(n-1)).^2) + z(n-1)*(t-time(n-1))+TU(n-1);
end
Im trying to get the values from the equation with s using the values of the equation with z and i dont know how. In the workspaces it says that s is a 1x11 matrix but i think it should be 1x10
4 件のコメント
Jan
2018 年 11 月 28 日
"it says" - who is it? Please post the complete error message, such that the readers do not have to guess, which line fails with which message.
回答 (1 件)
Areej Varamban Kallan
2018 年 12 月 7 日
編集済み: Areej Varamban Kallan
2018 年 12 月 7 日
Hi Clara,
I have executed your code and the error message I get is "Unable to convert expression into double array". The variable 's' is defined to be a double matrix and the variable 't' is defined to be a symbolic variable. In the second for loop you are doing certain computations using the symbolic variable 't'. The results of such computations will be of symbolic type. As a result your code is attempting to assign a symbolic value to a double matrix. This is not valid.
Please redine s as:
s=sym(zeros(1,11));
0 件のコメント
この質問は閉じられています。
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!