i am trying to find omega using while

2 visualizaciones (últimos 30 días)
Casper Stroem
Casper Stroem el 3 de Dic. de 2017
Comentada: Casper Stroem el 3 de Dic. de 2017
I need to determine omega.
I came so far to think that i need a while loop to do so but I get an error, so want to check my syntax is correct.
%Exercise 3
m=[3.3e2 3.3719e2 2.7564e2 2.2902e2 1.9140e2 1.6692e2 1.5947e2...
8.4519e1 4.7877e1 3.3029e1 2.5357e1 1.9990e1]; %constants given
py_guess=zeros(1,length(x));
pz_guess=zeros(1,length(x));
py_guess(2:length(x))=100;
pz_guess(2:length(x))=100;
tolerance=0.001;
while
omega=sqrt(pz_guess(12)/(u_zGuess(12)*m(12)))
if
omega_old=omega
break
else
[u_yGuess,u_zGuess]=UyUzCalcGuess(x,py_guess,pz_guess,EI1,EI2,B);
end
end
my function runs as it should.
Assignment3
Error: File: Assignment3.m Line: 210 Column:
6
Expression or statement is incomplete or
incorrect.

Respuesta aceptada

Walter Roberson
Walter Roberson el 3 de Dic. de 2017
The syntax for while is
while CONDITION
...
end
If you want your loop to run until you break, then use
while true
...
end
  5 comentarios
Walter Roberson
Walter Roberson el 3 de Dic. de 2017
You have
omega_old=sqrt((pz_guess(12)/(u_zGuess(12)*m(12))));
which assigns to omega_old. Then you have
omega_old=omega
which assigns a different value to omega_old . Meanwhile, you have not assigned a value to omega .
omega_old = -inf;
omega = 0;
while omega_old <= omega
omega_old = omega;
omega = ....
end
Casper Stroem
Casper Stroem el 3 de Dic. de 2017
thank you! it is running now and i am getting values, however it is not converging before i get an error with matrix exceeds index

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by