ordinary differential equation
Mostrar comentarios más antiguos
i have an equation d(theta)/dt=((P*L^2)/(E*I))*sin(theta*D/L)
L=55.863; D=15.484; E=200*10^9; I=138; P=440*10^6
The initial theta at 1198 years is 0.010degrees.
i have to find theta from the year 1198 to 1990
can someone please help me.its urgent
Respuestas (1)
Grzegorz Knor
el 29 de Sept. de 2011
Use ode45:
L=55.863; D=15.484; E=200*10^9; I=138; P=440*10^6;
ode45(@(t,theta)((P*L^2)/(E*I))*sin(theta*D/L),[1198 1990],0.01)
7 comentarios
12ar.af
el 29 de Sept. de 2011
Grzegorz Knor
el 29 de Sept. de 2011
Just add two output arguments, and colon in tspan:
[T THETA] = ode45(@(t,theta)((P*L^2)/(E*I))*sin(theta*D/L),[1198:1990],0.01)
Grzegorz Knor
el 29 de Sept. de 2011
I don't recomend you inline function, but solution is as follows:
fun = inline('((440*10^6*55.863^2)/(200*10^9*138))*sin(theta*15.484/55.863)','t','theta');
ode45(fun,[1198 1990],0.01)
12ar.af
el 29 de Sept. de 2011
Grzegorz Knor
el 29 de Sept. de 2011
Solve your equation from 1198 to 1990+200:
[T Y] = ode45(@(t,theta)((P*L^2)/(E*I))*sin(theta*D/L),[1198 1990+200],0.01);
disp(sprintf('year: %i, theta: %.3d',T(end),Y(end)))
12ar.af
el 29 de Sept. de 2011
Grzegorz Knor
el 29 de Sept. de 2011
Yes, read one of my comment above.
[T THETA] = ode45(@(t,theta)((P*L^2)/(E*I))*sin(theta*D/L),[1198:1990],0.01);
disp([T THETA])
Categorías
Más información sobre Ordinary Differential Equations en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!