Solve system of differential equations
    4 views (last 30 days)
  
       Show older comments
    
I am facing problem in solving the differential equation
 is a vector (
 is a vector ( ) as shown in code and
) as shown in code and  is also a vector (
 is also a vector ( ). x11=[x1,y1]. I want to solve
). x11=[x1,y1]. I want to solve  , where
, where  represents derivative with respect to time.  Can any one help me to find out x11 vs time. (Note
 represents derivative with respect to time.  Can any one help me to find out x11 vs time. (Note  and x11 are the same.) (Preferably use fsolve as I tried using it).
 and x11 are the same.) (Preferably use fsolve as I tried using it).close all
clear all
clc
x01=-5;y01=-7;
x0=[x01,y01]';
beta=25;
syms x1 y1 t
x11=[x1,y1]';
c1=(1/2)*(x1-i*sin(t))^2+(3/2)*(y1-i*cos(t))^2;
row=100*exp(0.1*t);
g1=y1-x1-cos(t);
L1=c1-(1/row)*log(1-row*g1);
grad1 = gradient(L1,x11');
hess1 = hessian(L1,x11');
phi1=-(hess1)^(-1)*(grad1+diff(grad1,t));
u1=-beta*(hess1)^(-1)*x11+phi1
2 Comments
  Torsten
      
      
 on 16 May 2022
				u1 is a 2x2 matrix, x11 is a  2x1 vector. 
What do you mean by 
x11dot = u1
 ? 
Maybe you mean 
x11dot = u1*x1
 ?
Accepted Answer
  Torsten
      
      
 on 16 May 2022
        x01=-5;y01=-7;
x0=[x01,y01]';
beta=25;
syms x1 y1 t
x11=[x1,y1]';
c1=(1/2)*(x1-i*sin(t))^2+(3/2)*(y1-i*cos(t))^2;
row=100*exp(0.1*t);
g1=y1-x1-cos(t);
L1=c1-(1/row)*log(1-row*g1);
grad1 = gradient(L1,x11');
hess1 = hessian(L1,x11');
phi1=-(hess1)^(-1)*(grad1+diff(grad1,t));
u1=-beta*(hess1)^(-1)*x11+phi1
fun = matlabFunction(u1,'Vars',{t,x1,y1})
fun = @(t,y)fun(t,x1,y1);
y0 = [x01,y01];
tspan = [0 1]
[T,Y] = ode45(fun,tspan,y0)
plot(T,[real(Y),imag(Y)])
More Answers (0)
See Also
Categories
				Find more on Symbolic Math Toolbox in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

