why is not possible to do the logic also why not display

2 visualizaciones (últimos 30 días)
Milan Sumegi
Milan Sumegi el 15 de Dic. de 2018
Editada: madhan ravi el 15 de Dic. de 2018
Hi
I dont know why I cant display my logick code also an error message on it as well
>> u=symunit;
L= input('Lenght of the wind turbine blade in meter: ')*u.m;
L=unitConvert(L,u.mm);
W=8500*u.N;
E=42000 *u.N/u.mm^2;
I=10*(10^6)*u.mm^4;
D=vpa((W*L^3)/(8*E*I));
Limit= L*0.1;
if D<=Limit disp('Maximum deflexion is tolerable')
else disp('Maximum deflexion will be exceeded')
end
Lenght of the wind turbine blade in meter: 10
Conversion to logical from sym is not possible.

Respuesta aceptada

madhan ravi
madhan ravi el 15 de Dic. de 2018
Editada: madhan ravi el 15 de Dic. de 2018
P.S - you get an error because L is of symbolic class because you have added (u.mm) unit which belongs symbolic math toolbox , just the numerical value should be used in the if statement , lookup removeUnits() but I guess it works only for user defined functions not for predefined functions.
You need to add tolerance to satisfy the condition because your D is a float number , type floating-point as a tag in this forum to understand more about working with float numbers
if abs(D-Limit)<=1e-4

Más respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox 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