フィルターのクリア

Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Cant get the equation to work

3 ビュー (過去 30 日間)
Clara Ghattas
Clara Ghattas 2018 年 11 月 28 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
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 件のコメント
Clara Ghattas
Clara Ghattas 2018 年 11 月 28 日
even then, it says that the left and right sides have different number if elements so it cant work
Jan
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
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));

この質問は閉じられています。

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by