Solving system of 2 nonlinear higher order coupled equation
2 views (last 30 days)
Show older comments
syms w u2(x0) u0(x0) a A1 A2 Y
syms t om nu h a1 a2 p1
i=sqrt(-1);
% om=0.4;
% nu=0.1;
% h=1;
% a1=2;
% a2=0;
% p1=1;
% t=1;
U1(x0)=(i*p1/om)*((cosh(sqrt(i*om/nu)*x0))/(cosh(sqrt(i*om/nu)*h))-1)*exp(i*om*w*t);
A=w-om+(a1^2+a2^2)*i*nu;
B=A+a1*U1;
C= a1*diff(U1, x0);
D=i*a1*a2*U1-i*a2*A;
E=i*nu;
F=i*nu*a2;
G=(-nu/a1);
H=A*i/a1-i*nu*a1;
I=i*U1;
J=i*diff(U1,x0,2)+i*a1*A;
K=(i*nu*a2/a1);
L=A*a2/a1+a2*U1;
M=a2*diff(U1,x0);
eq1 = E*diff(u2,x0,3)-B*diff(u2,x0)-C*diff(u0,x0,2)+D*u0 == 0;
eq2 = G*diff(u0,x0,4)-H*diff(u0,x0,2)-I*diff(u0,x0)+J*u0-K*diff(u2,x0,3)+L*diff(u2,x0)+M*u2 == 0;
eq = [eq1; eq2];
bc1 = diff(u0,x0);
bc2 = diff(u0,x0,2);
bc3 = diff(u0,x0,3);
bc4 = diff(u2,x0);
bc5 = diff(u2,x0,2);
bc= [u2(1)==0; u2(-1)==0; u0(1)==0; u0(-1)==0; bc1(1)==0; bc2(1)==0; bc3(1)==0; bc4(1)==0;
bc5(1)==0; bc1(-1)==0; bc2(-1)==0; bc3(-1)==0; bc4(-1)==0; bc5(-1)==0];
var = dsolve([eq;bc])
[VF,Sbs] = odeToVectorField(eq);
odfcn = matlabFunction(VF, 'Vars',{x0,w,Y})
I don't know where I'm actually doing mistake. I need the equation u0 and u2 as a function of w. for other's you can put any value.
0 Comments
Answers (1)
Torsten
on 30 Mar 2022
You won't get an analytical solution for this problem using "dsolve".
Use bvp4c instead.
4 Comments
Torsten
on 30 Mar 2022
Edited: Torsten
on 30 Mar 2022
I don't think it has any issue with real and complex part,...
I also don't think that this makes the ODE more difficult to solve, but I'm not sure whether bvp4c can handle complex-valued ODEs directly or if you have to split in real and imaginary part manually.
If I somehow manage to decouple above two equation, then it will be much easy to solve, I think.
Maybe, but I don't think you can resolve the coupling.
Which seems obvious for me is that this system cannot be solved symbolically.
Make an attempt with bvp4c - I think this is the ony way that promises success.
See Also
Categories
Find more on Assumptions in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!