Solving Ordinary Differential Equations
显示 更早的评论
Problem - Solve the system of equations and determinate x(t) and y(t):
Equation 1: mv * A * L* y'' + 2 * mv * A * g * y = - mv * A * B * sin (wf * t)
Equation 2: ( M+ mv * A * L ) * x'' + mv * A * B * y'' + M * ws^2 * x= - (M + mv * A * L) * sin (wf * t)
Constants: mv=1; A=7.5*10^-4; B=20*10^-2; L=50*10^-2; g=9.81; wf=5.3; ws=5.3; M=(0.373+0.306/3+0.306/3)*10^-3;
It´s a engineering problem, there are motion equations and x and y are, respectively, the horizontal and vertical displacement. Anyone can help me solve this system? Already have the Symbolic Math Toolbox.
回答(1 个)
Walter Roberson
2012-1-23
In Maple it is
dsolve([mv*A*L*(diff(y(t), t, t))+2*mv*A*g*y(t) = -mv*A*B*sin*wf*t, (M+mv*A*L)*(diff(x(t), t, t))+mv*A*B*(diff(y(t), t, t))+M*ws^2*x(t) = -(M+mv*A*L)*sin*wf*t])
and you should be able to use a quite similar syntax with the symbolic toolbox.
You have the second derivative of x and the second derivative of y, so you would need at least 4 equations to resolve all the constants of integrations (the boundary conditions). Maple's answer leaves four constants of integration undefined.
3 个评论
Igor
2012-1-23
Walter Roberson
2012-1-23
At the MATLAB command line, try
S = dsolve('mv*A*L*(diff(y(t), t, t))+2*mv*A*g*y(t) = -mv*A*B*sin*wf*t', '(M+mv*A*L)*(diff(x(t), t, t))+mv*A*B*(diff(y(t), t, t))+M*ws^2*x(t) = -(M+mv*A*L)*sin*wf*t');
Snum = subs(S);
The first line tries to solve the pair of differential equations completely symbolically, and the second line substitutes in the numeric values for the various constants.
Igor
2012-2-8
类别
在 帮助中心 和 File Exchange 中查找有关 Programming 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!