Solve symbolic equation system
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Lu Zhao
am 26 Feb. 2021
Kommentiert: Lu Zhao
am 2 Mär. 2021
There is a symbolic equation system like this and wonder if any one could help me out by solving this equation system symbolically:
- 4 equations with 4 unknown variables [u ̂ , v ̂, w ̂, p ̂ ]. (u^, v^, w^, p^ are function of "r", namely, u(r), v(r), w(r), p(r))
- All other symbolic parameters are known variables, i.e., A, r, m, alpha, U(r), V(r), W(r) ).
Here are the equations:
Objective :
- Combine the 4 equations into 1 single equation in terms of u^ only, namely, cancel out v ̂, w ̂, p ̂ .
- Find expressions of v ̂, w ̂, p ̂ in terms of u^ : i.e., find expression of v^ in termed of u^, v^=f (u^). Same for expressions of w^ and p^, in terms of u^.
Here is a short program I made and I know it is not even close to the answer:
clc
clear
syms U(r) V(r) W(r) u(r) v(r) w(r) p(r) A r m alpha
% f(u, v, w, p)
eqn1=A*u+diff(U,r)*v+alpha*p==0; % f(u, v, p)=0
eqn2=-A*v-2*W/r*w+diff(p,r)==0; % f( v, w, p)=0
eqn3=(diff(W,r)+W/r)*v+A*w+m/r*p==0; % f( v, w, p)=0
eqn4=alpha*u+v/r+diff(v,r)+m/r*w==0; % f(u, v, w )=0
solve([eqn1,eqn2,eqn3,eqn4],[v w p])
The above program doesn solve for "v" w" "p" in terms of "u". I wondered is there anyway to do it? I really appreciate your time and help.
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 26 Feb. 2021
That is a series of ODE. You will not be able to solve it with solve(). You could try it with
dsolve([eqn1, eqn2, eqn3, eqn4])
but the reality is that you will get back emptiness.
There is a trivial solution with u, v, r, and p all being constant 0s. Other than that there does not appear to be any closed form solutions.
Any time you have an unknown function involved U(r), V(r), W(r) then you are not going to get a closed form solution except possibly trivial solutions (like the constant zeros.)
5 Kommentare
Walter Roberson
am 2 Mär. 2021
Why would du/dr appear in the final equation? You do not have du/dr anywhere in the original equations.
syms U(r) V(r) W(r) u(r) v(r) w(r) p(r) A r m alpha
eqn1=A*u+diff(U,r)*v+alpha*p==0;
eqn2=-A*v-2*W/r*w+diff(p,r)==0;
eqn3=(diff(W,r)+W/r)*v+A*w+m/r*p==0;
eqn4=alpha*u+v/r+diff(v,r)+m/r*w==0;
syms pr vr wr
temp = subs([eqn1(r); eqn2(r); eqn3(r); eqn4(r)], [p(r), v(r), w(r)],[pr,vr,wr])
PR = solve(temp(1),pr)
temp2 = subs(temp(2:end), pr, PR)
VR = solve(temp2(1),vr)
temp3 = subs(temp2(2:end), vr, VR)
WR = solve(temp3(1), wr)
single_ode = subs(temp3(2:end), wr, WR)
None of p, v, w are differentiated, so I do not see any reason why following the steps would introduce du/dr ?
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!