CoCalc Public FilesPartages / LignesCourant.ipynbOpen with one click!
Author: Juan Carlos Bustamante
Views : 78
Compute Environment: Ubuntu 18.04 (Deprecated)
In [1]:
%display typeset

Exemple

Considérer le champ de vecteurs F(x,y)=(2(y1),3x2+4x+2)\mathbf{F}(x,y) = (2(y-1), 3x^2+ 4x+2). Tracer le champ, puis la ligne de courant passant par (0,1)(0,-1).

In [2]:
var('x,y') P(x,y) = 2*(y-1) Q(x,y) = 3*x^2+4*x+2 Champ = plot_vector_field((P(x,y), Q(x,y)), (x,-2.5,2.5), (y,-2.5,2.5), color= "blue") show(Champ, aspect_ratio = 1, figsize=6)
In [3]:
Flot = streamline_plot((P(x,y), Q(x,y)), (x,-2.5,2.5), (y,-2.5,2.5), color= "blue") show(Flot,aspect_ratio =1, figsize = 6)

Pour trouver la ligne de courant on résoud une équation différentielle. Ceci a été fait manuellement en classe, mais on peut le faire à l'ordinateur également (voir plus bas).

In [4]:
Ligne = implicit_plot(y^2-2*y -(x^3+2*x^2+2*x+3)==0, (x,-2.5,2.5),(y,-2.5,2.5), color = "red") show(Champ + Ligne)
In [5]:
show(Flot + Ligne)
In [6]:
y = function('y')(x) # Il faut faire comprendre à SAGE que dorénavant y est une fonction, pas une variable desolve(diff(y,x) == Q(x,y)/P(x,y), y, ics=[0,-1]) # ics c'est pour initial conditions.
y(x)22y(x)=x3+2x2+2x+3y\left(x\right)^{2} - 2 \, y\left(x\right) = x^{3} + 2 \, x^{2} + 2 \, x + 3
In [ ]:
In [ ]:
In [ ]: