How to solve differential equation of 3 order analytically
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I would like to solve a system of differential equaions
x''[t] == -a0*(a1 - b*z'[t])*cos[w*t], x[to] == 0, x'[to] == 0
z''[t] == -a0*b*x'[t]*cos[w*t], z[to] == 0, z'[to] == 0
It reduces to a third order equation
z'''[t] == a*(1-c*z'[t])*cos^2[w*t]-tan(w*t)*w*z''[t], z[to] == 0, z'[to] == 0
syms u(x) a c w d
Du = diff(u, x);
D2u = diff(u, x, 2);
u(x) = dsolve(diff(u, x, 3) == a*(1-c*Du)*(cos(x))^2-tan(x)*d*D2u, u(to) == 0, Du(to) == 0)
Does not give solution. How to solve it in steps, maybe first for z'?
0 Kommentare
Antworten (1)
Star Strider
am 9 Jul. 2016
I would keep it as the original system (and change ‘to’ to 0):
syms x(t) z(t) a0 a1 b w
Dz = diff(z);
D2z = diff(z,2);
Dx = diff(x);
D2x = diff(x,2);
Eq1 = D2x == -a0 * (a1 - b*Dz) * cos(w*t);
Eq2 = D2z == -a0 * b * Dx * cos(w*t);
Soln = dsolve(Eq1, Eq2, x(0) == 0, Dx(0) == 0, z(0) == 0, Dz(0) == 0);
X = Soln.x;
Z = Soln.z;
X = simplify(X, 'steps', 20)
Z = simplify(Z, 'steps', 20)
This gives you two ‘solutions’ involving integrals, that it transformed with dummy variable ‘y’:
X =
-(a1*int(sin((a0*b*sin(w*y))/w), y, 0, t))/b
Z =
-(a1*int(exp(-(a0*b*sin(w*y)*1i)/w)*(exp((a0*b*sin(w*y)*1i)/w) - 1)^2, y, 0, t))/(2*b)
This is likely as close as you can get to an analytic solution.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Quadratic Programming and Cone Programming finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!