Describing the motion of a composite body using system of differential equations
조회 수: 1 (최근 30일)
이전 댓글 표시
I am trying to solve a system of differential equations analytically using the following code, but although they correctly describe the motion of a body Matlab returns a message stating it is unable to find an explicit solution. Is there a way to fix this problem or an alternate method I can use to solve the system of differential equations?
syms y(t) z(t)
Dy = diff(y,t); Dz = diff(z,t);
eqns = [diff(y,t,2) == (29.4*cos(z)+4*Dz*Dz)*sin(z)/(1+3*sin(z)*sin(z)), diff(z,t,2) == -3*(19.62+2*Dz*Dz*cos(z))*sin(z)/(2*(1+3*sin(z)*sin(z)))];
[ySol(t),zSol(t)] = dsolve(eqns)
댓글 수: 0
채택된 답변
Stephan
2020년 3월 19일
Solve numeric:
syms y(t) z(t)
Dy = diff(y,t);
Dz = diff(z,t);
eqns = [diff(y,t,2) == (29.4*cos(z)+4*Dz*Dz)*sin(z)/(1+3*sin(z)*sin(z)),...
diff(z,t,2) == -3*(19.62+2*Dz*Dz*cos(z))*sin(z)/(2*(1+3*sin(z)*sin(z)))];
fun = matlabFunction(odeToVectorField(eqns),'Vars',{'t','Y'});
tspan = [0 10]; % Time interval for integration
y0 = [0 1 0 1]; % initial conditions
[t,y] = ode45(fun,tspan,y0);
plot(t,y)
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Numerical Integration and Differential Equations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!