twee-dimensionale lineaire systemen

2241 days ago by Marnix.VanDaele

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=-1 tau=0 init=[0.5,1] sr=srange(0,0.5,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('zadel.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
-1/4*e^(-x) + 3/4*e^x
-1/4*e^(-x) + 3/4*e^x

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=1 tau=0 init=[0.5,1] sr=srange(0,10,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('centra.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
1/2*cos(x) + sin(x)
1/2*cos(x) + sin(x)

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=1 tau=1 init=[-0.1,0.1] sr=srange(0,6,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('instabielbrandpunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
1/10*sqrt(3)*e^(1/2*x)*sin(1/2*sqrt(3)*x) -
1/10*cos(1/2*sqrt(3)*x)*e^(1/2*x)
1/10*sqrt(3)*e^(1/2*x)*sin(1/2*sqrt(3)*x) - 1/10*cos(1/2*sqrt(3)*x)*e^(1/2*x)

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=1 tau=-1 init=[-1,1] sr=srange(0,10,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('stabielbrandpunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
1/3*sqrt(3)*e^(-1/2*x)*sin(1/2*sqrt(3)*x) -
cos(1/2*sqrt(3)*x)*e^(-1/2*x)
1/3*sqrt(3)*e^(-1/2*x)*sin(1/2*sqrt(3)*x) - cos(1/2*sqrt(3)*x)*e^(-1/2*x)

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=1 tau=4 init=[-0.1,0.1] sr=srange(0,1,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('instabielknooppunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(soll) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
1/20*((sqrt(3) - 1)*e^(2*sqrt(3)*x + 2*x) - (sqrt(3) +
1)*e^(2*x))*e^(-sqrt(3)*x)
1/20*((sqrt(3) - 1)*e^(2*sqrt(3)*x + 2*x) - (sqrt(3) + 1)*e^(2*x))*e^(-sqrt(3)*x)

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=1 tau=-4 init=[-1,1] sr=srange(0,20,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('stabielknooppunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
-1/6*sqrt(3)*e^(sqrt(3)*x - 2*x) + 1/6*sqrt(3)*e^(-sqrt(3)*x - 2*x) -
1/2*e^(sqrt(3)*x - 2*x) - 1/2*e^(-sqrt(3)*x - 2*x)
-1/6*sqrt(3)*e^(sqrt(3)*x - 2*x) + 1/6*sqrt(3)*e^(-sqrt(3)*x - 2*x) - 1/2*e^(sqrt(3)*x - 2*x) - 1/2*e^(-sqrt(3)*x - 2*x)

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=1 tau=2 init=[-0.1,0.05] sr=srange(0,3,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('grensinstabielbrandpuntknooppunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
3/20*x*e^x - 1/10*e^x
3/20*x*e^x - 1/10*e^x

 
       
from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=0 tau=1 init=[-0.4,0.5] sr=srange(0,3,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('grenszadelinstabielknooppunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
1/2*e^x - 9/10
1/2*e^x - 9/10

from sage.calculus.desolvers import desolve_odeint x,y=var('x,y') delta=0 tau=-1 init=[-0.4,0.5] sr=srange(0,3,0.1) f=[-delta*y,x+tau*y] p1=plot_vector_field(f,(x,-2,2),(y,-2,2)) sol=desolve_odeint(f,init,sr,[x,y]) p2=line(zip(sol[:,0],sol[:,1])) show(p1+p2) p=p1+p2 #p.save('grenszadelstabielknooppunt.eps') g=function('g')(x) soll=desolve(diff(g,x,2)-tau*diff(g,x,1)+delta*g==0,g,[0,init[0],init[1]]).simplify_full() print(expand(soll)) line(zip(sr,sol[:,0]))+line(zip(sr,sol[:,1])) 
       
-1/2*e^(-x) + 1/10
-1/2*e^(-x) + 1/10