Borrar filtros
Borrar filtros

What is the correct equation?

1 visualización (últimos 30 días)
Kevin Chapman
Kevin Chapman el 30 de En. de 2019
Editada: Jim Riggs el 30 de En. de 2019
w1=104; s=0.3; u=1;
>> w2=w1*(1-(s^2))^(1/2)
w2 =
99.2097
>> y=(s)/(1-(s^2))
y =
0.3297
>> t=linspace(0,0.2,100);
>> x=u*(1-exp(-s*w1*t)*(cos(w2*t)-y*sin(w2*t)));
Error using *
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches the
number of rows in the second matrix. To perform elementwise multiplication, use '.*'.
This is the equation I am trying to input:
x(t)=u[1-e^(-sw1t)*(cos(w2t)-ysin(w2t))]
What is the correct equation for x?

Respuesta aceptada

Ollie A
Ollie A el 30 de En. de 2019
You have a variable t in your equation which is a vector. In order to multiply vectors in MATLAB you must use the syntax .*. In your case, the equation should be:
x=u*(1-exp(-s*w1*t).*(cos(w2*t)-y*sin(w2*t)));
I believe that should fix it.

Más respuestas (2)

Walter Roberson
Walter Roberson el 30 de En. de 2019
x=u*(1-exp(-s*w1*t).*(cos(w2*t)-y*sin(w2*t)));

Jim Riggs
Jim Riggs el 30 de En. de 2019
Editada: Jim Riggs el 30 de En. de 2019
Variable t is a vector. If you want to perform element-wise multiplication on t, use .* in stead of *
try
x=u.*(1-exp(-s.*w1.*t).*(cos(w2.*t)-y.*sin(w2.*t)));

Categorías

Más información sobre Matrices and Arrays en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by