
Problema ode 45
Publicado por Ivan (1 intervención) el 16/12/2014 11:25:36
hola,
estoy intentando resolver un circuito RLCD (con diodo) a través de matlab.
tengo sacadas las dos ecuaciones diferenciales, el sistema es no lineal debido al diodo.
los parámetros para todas las variables han sido calculadas analíticamente.
Me gustaria plotear el comportamiento y el diagrama de bifurcaciones pero el ode 45 no me saca ningún resultado, directamente se queda "pillado" y no me da ningún resultado.
os pongo mi código
espero que me podáis ayudar,
es una desesperacion total.
mil gracias
estoy intentando resolver un circuito RLCD (con diodo) a través de matlab.
tengo sacadas las dos ecuaciones diferenciales, el sistema es no lineal debido al diodo.
los parámetros para todas las variables han sido calculadas analíticamente.
Me gustaria plotear el comportamiento y el diagrama de bifurcaciones pero el ode 45 no me saca ningún resultado, directamente se queda "pillado" y no me da ningún resultado.
os pongo mi código
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Is=1E-10;
Ud0= 5E-3;
R= 1;
C= 1.5E-20;
L= 1E-6;
T=2;
%Initial Conditions
xo(1)=5;
xo(2)=1;
xo=[xo(1) xo(2)];
tspan=[0:0.1:T];
%definition ode functions
Fhand = @(t,x) [x(1);(-(R*x(1))/L)-((x(2)/C*L))-((Ud0/L)*log(1+(x(1)/Is)))];
%Use of the ode45 solver
options=odeset('AbsTol',0.001,'RelTol',0.001);
[t,y]=ode45(Fhand,tspan,xo,options);
%ploting the results
plot(t,y);
xlabel ('t');
ylabel ('dQ,dI');
title ('diferential equations');
r=y(:,1); %obtengo la columna 2
x=y(:,2); %obtengo la columna 3
%graficamos y vs x
plot(r,y);
espero que me podáis ayudar,
es una desesperacion total.
mil gracias
Valora esta pregunta


0