MATLAB Answers

Two-Point Boundary Value Problem

조회 수: 45(최근 30일)
Ketav Majumdar
Ketav Majumdar 2 Dec 2016
댓글: Torsten 5 Dec 2016
Hi there, I am currently trying to solve a two point boundary value problem for a system of 2 ordinary linear differential equation.
dx/dt=A(x/t)+By dy/dt=C(x/t^2)+D(y/t)
B.C y at 1=10 and y at 2=0
I have terrible matlab experience and knowledge.
This is my code so far (It doesnt work)
if true
% %Mechanical Properties of Material
E=200e9;
nu=0.3;
P=100E6;
%Constants A,B,C,D in the Equations
a11= (1/E);
a12= (-nu/E);
a33= (1/E);
A= (a12)/(a11+a12);
B= ((a33)-((2*a12^2)/(a11+a12)));
C= (a11)/(a11^2-a12^2);
D= (2*a12+a11)/(a11+a12);
%Defining the System of 2ODES
syms x(t) y(t)
t=1;
eqns = [diff(x,t)==A*(x/t)+B*y, diff(y,t)==-C*(x/t^2)-D*y];
cond = [y(0) == 0, y(1.2)==-P];
withSimplifications = dsolve(eqns, cond)
withoutSimplifications = dsolve(eqns, cond, 'IgnoreAnalyticConstraints', false)
[xSol(t), ySol(t)] = dsolve(eqns, cond)
end
Would anyone be able to give me any solutions to this problem?

  댓글 수: 6

표시 이전 댓글 수: 3
Bill Greene
Bill Greene 3 Dec 2016
Exactly what problem did you have solving these equations with bvp4c? Can you post your code using bvp4c? (I would have thought it could easily solve this system.) Beyond that, the description of your boundary conditions in the original post don't appear to be consistent with the cond variable you pass to dsolve. Can you clarify precisely the problem you are trying to solve?
Torsten
Torsten 5 Dec 2016
with
U=2-D-A and V=-D+A*D-B*C
gives the solution for y.
Then
x = 1/C*t^2*dy/dt-D/C*t*y
gives the solution for x.
Best wishes
Torsten.

로그인 to comment.

답변(1개)

Tamir Suliman
Tamir Suliman 3 Dec 2016
You will have to differneitate then solve Since
x'=A(x/t)+By --- differnetiate A(x/t)+By for y relative to t
Y' = A*(x *-1/t^2 +1/t*x' ) + BY'
at t= 1 Y =10 at t =2 y = 0
(1-B)*C(x/t^2) + D (y/t) = A*(x *-1/t^2 +1/t*x' )
sub y =10 then solve for t =1 again sub y = 0 then solve for t =2
then use diff and dsvolve with t = 1 and t =2

  댓글 수: 0

로그인 to comment.

이 질문에 답변하려면 로그인을(를) 수행하십시오.


Translated by