In [1]:
# on peut zoomer et faire tourner avec la souris
In [311]:
f(x,y)=(-x)/(1+y)+2*x
show(html("<h4>fonction a : col vert</h4>"))    

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -1,4), (y, -4, 4), (z, -4, 3),color="green",adaptive=True,mesh=True,region=lambda x,y,z: y<=-1.1 or y>=-0.96)

fonction a

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ 2 \, x - \frac{x}{y + 1}\)
grad f= \(\left[\frac{2 \, y + 1}{y + 1}, \frac{x}{y^{2} + 2 \, y + 1}\right]\)
H= \(\left(\begin{array}{rr} 0 & \frac{1}{{\left(y + 1\right)}^{2}} \\ \frac{1}{{\left(y + 1\right)}^{2}} & -\frac{2 \, x}{{\left(y + 1\right)}^{3}} \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(-\frac{1}{2}\) ) \(\left(\begin{array}{rr} 0 & 4 \\ 4 & 0 \end{array}\right)\)
Out[311]:
In [312]:
f(x,y)=x/(1+y)+2*x
show(html("<h4>fonction b : col vert</h4>"))    

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -1,4), (y, -4, 4), (z, -4, 3),color="green",adaptive=True,mesh=True,region=lambda x,y,z: y<=-1.1 or y>=-0.96)

fonction b

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ 2 \, x + \frac{x}{y + 1}\)
grad f= \(\left[\frac{2 \, y + 3}{y + 1}, -\frac{x}{y^{2} + 2 \, y + 1}\right]\)
H= \(\left(\begin{array}{rr} 0 & -\frac{1}{{\left(y + 1\right)}^{2}} \\ -\frac{1}{{\left(y + 1\right)}^{2}} & \frac{2 \, x}{{\left(y + 1\right)}^{3}} \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(-\frac{3}{2}\) ) \(\left(\begin{array}{rr} 0 & -4 \\ -4 & 0 \end{array}\right)\)
Out[312]:
In [304]:
f(x,y)=x^2-x*y+y^2
show(html("<h4>fonction c : panier bleu…</h4>"))    

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -4,4), (y, -4, 4), (z, -0.5, 5),hue=(random()),adaptive=True,mesh=True)

fonction c

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{2} - x y + y^{2}\)
grad f= \(\left[2 \, x - y, -x + 2 \, y\right]\)
H= \(\left(\begin{array}{rr} 2 & -1 \\ -1 & 2 \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(0\) ) \(\left(\begin{array}{rr} 2 & -1 \\ -1 & 2 \end{array}\right)\)
Out[304]:
In [317]:
f(x,y)=sin(x)+y^2-2*y+1
show(html("<h4>fonction d : boîte à œufs…</h4>"))    

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -10,10), (y, -4, 4), (z, -1.5, 5),color="orange",adaptive=True,mesh=True)

fonction d : boîte à œufs…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ y^{2} - 2 \, y + \sin\left(x\right) + 1\)
grad f= \(\left[\cos\left(x\right), 2 \, y - 2\right]\)
H= \(\left(\begin{array}{rr} -\sin\left(x\right) & 0 \\ 0 & 2 \end{array}\right)\)
points critiques
( x = \(\frac{1}{2} \, \pi + \pi z_{123858}\) ; y = \(1\) ) \(\left(\begin{array}{rr} -\sin\left(\frac{1}{2} \, \pi + \pi z_{123858}\right) & 0 \\ 0 & 2 \end{array}\right)\)
Out[317]:
In [321]:
f(x,y)=(x-y)^2+x

show(html("<h4>fonction f : bobsleigh rouge…</h4>"))    

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -4,4), (y, -4, 4), (z, -0.5, 5),color="red",adaptive=True,mesh=True)

fonction f : bobsleigh rouge…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ {\left(x - y\right)}^{2} + x\)
grad f= \(\left[2 \, x - 2 \, y + 1, -2 \, x + 2 \, y\right]\)
H= \(\left(\begin{array}{rr} 2 & -2 \\ -2 & 2 \end{array}\right)\)
points critiques
\[\newcommand{\Bold}[1]{\mathbf{#1}}\verb|pas|\phantom{\verb!x!}\verb|de|\phantom{\verb!x!}\verb|points|\phantom{\verb!x!}\verb|critiques|\]
Out[321]:
In [328]:
f(x,y)=x^3+x*y
show(html("<h4>fonction g : vague rose…</h4>"))    
lacouleur="pink"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction g : panier bleu…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{3} + x y\)
grad f= \(\left[3 \, x^{2} + y, x\right]\)
H= \(\left(\begin{array}{rr} 6 \, x & 1 \\ 1 & 0 \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(0\) ) \(\left(\begin{array}{rr} 0 & 1 \\ 1 & 0 \end{array}\right)\)
Out[328]:
In [ ]:
 
In [336]:
f(x,y)=y/x^2+x*y

show(html("<h4>fonction h : ample châle…</h4>"))    
lacouleur='aliceblue'
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -3,2), (y, -2, 2), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction h : ample châle…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x y + \frac{y}{x^{2}}\)
grad f= \(\left[\frac{{\left(x^{3} - 2\right)} y}{x^{3}}, \frac{x^{3} + 1}{x^{2}}\right]\)
H= \(\left(\begin{array}{rr} \frac{6 \, y}{x^{4}} & -\frac{2}{x^{3}} + 1 \\ -\frac{2}{x^{3}} + 1 & 0 \end{array}\right)\)
points critiques
( x = \(-1\) ; y = \(0\) ) \(\left(\begin{array}{rr} 0 & 3 \\ 3 & 0 \end{array}\right)\)
Out[336]:
In [338]:
f(x,y)=x*y+x^2+y^2

show(html("<h4>fonction j : offrande…</h4>"))    
lacouleur="antiquewhite"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction j : panier bleu…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{2} + x y + y^{2}\)
grad f= \(\left[2 \, x + y, x + 2 \, y\right]\)
H= \(\left(\begin{array}{rr} 2 & 1 \\ 1 & 2 \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(0\) ) \(\left(\begin{array}{rr} 2 & 1 \\ 1 & 2 \end{array}\right)\)
Out[338]:
In [340]:
f(x,y)=x^4+x*y
show(html("<h4>fonction k : surf…</h4>"))    
lacouleur="aqua"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction k : surf…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{4} + x y\)
grad f= \(\left[4 \, x^{3} + y, x\right]\)
H= \(\left(\begin{array}{rr} 12 \, x^{2} & 1 \\ 1 & 0 \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(0\) ) \(\left(\begin{array}{rr} 0 & 1 \\ 1 & 0 \end{array}\right)\)
Out[340]:
In [342]:
f(x,y)=x^3+y^3+x-y
show(html("<h4>fonction l : fauteuil de Poséidon…</h4>"))    
lacouleur="aquamarine"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction l : fauteuil de Poséidon…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{3} + y^{3} + x - y\)
grad f= \(\left[3 \, x^{2} + 1, 3 \, y^{2} - 1\right]\)
H= \(\left(\begin{array}{rr} 6 \, x & 0 \\ 0 & 6 \, y \end{array}\right)\)
points critiques
\[\newcommand{\Bold}[1]{\mathbf{#1}}\verb|pas|\phantom{\verb!x!}\verb|de|\phantom{\verb!x!}\verb|points|\phantom{\verb!x!}\verb|critiques|\]
Out[342]:
In [344]:
f(x,y)=(x+y)^3+y+x
show(html("<h4>fonction m : vertige oblique…</h4>"))    
lacouleur="automatic"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction m : fauteuil de Poséidon…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ {\left(x + y\right)}^{3} + x + y\)
grad f= \(\left[3 \, x^{2} + 6 \, x y + 3 \, y^{2} + 1, 3 \, x^{2} + 6 \, x y + 3 \, y^{2} + 1\right]\)
H= \(\left(\begin{array}{rr} 6 \, x + 6 \, y & 6 \, x + 6 \, y \\ 6 \, x + 6 \, y & 6 \, x + 6 \, y \end{array}\right)\)
points critiques
( x = \(r_{163}\) ; y = \(-r_{163} + \frac{1}{3} i \, \sqrt{3}\) ) \(\left(\begin{array}{rr} 2 i \, \sqrt{3} & 2 i \, \sqrt{3} \\ 2 i \, \sqrt{3} & 2 i \, \sqrt{3} \end{array}\right)\)
( x = \(r_{164}\) ; y = \(-r_{164} - \frac{1}{3} i \, \sqrt{3}\) ) \(\left(\begin{array}{rr} -2 i \, \sqrt{3} & -2 i \, \sqrt{3} \\ -2 i \, \sqrt{3} & -2 i \, \sqrt{3} \end{array}\right)\)
Out[344]:
In [348]:
f(x,y)=exp(-y^2)+x^4-x^2
show(html("<h4>fonction n : skate park…</h4>"))    
lacouleur="azure"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -2, 2), (z, -8, 8),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction n : skate park…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{4} - x^{2} + e^{\left(-y^{2}\right)}\)
grad f= \(\left[4 \, x^{3} - 2 \, x, -2 \, y e^{\left(-y^{2}\right)}\right]\)
H= \(\left(\begin{array}{rr} 12 \, x^{2} - 2 & 0 \\ 0 & 4 \, y^{2} e^{\left(-y^{2}\right)} - 2 \, e^{\left(-y^{2}\right)} \end{array}\right)\)
points critiques
( x = \(0\) ; y = \(0\) ) \(\left(\begin{array}{rr} -2 & 0 \\ 0 & -2 \end{array}\right)\)
( x = \(-\frac{1}{2} \, \sqrt{2}\) ; y = \(0\) ) \(\left(\begin{array}{rr} 4 & 0 \\ 0 & -2 \end{array}\right)\)
( x = \(\frac{1}{2} \, \sqrt{2}\) ; y = \(0\) ) \(\left(\begin{array}{rr} 4 & 0 \\ 0 & -2 \end{array}\right)\)
Out[348]:
In [353]:
f(x,y)=x^4+y^4-4*x*y
show(html("<h4>fonction p : Dabogert…</h4>"))    
lacouleur="beige"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction p : Dabogert…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{4} + y^{4} - 4 \, x y\)
grad f= \(\left[4 \, x^{3} - 4 \, y, 4 \, y^{3} - 4 \, x\right]\)
H= \(\left(\begin{array}{rr} 12 \, x^{2} & -4 \\ -4 & 12 \, y^{2} \end{array}\right)\)
points critiques
( x = \(-1\) ; y = \(-1\) ) \(\left(\begin{array}{rr} 12 & -4 \\ -4 & 12 \end{array}\right)\)
( x = \(1\) ; y = \(1\) ) \(\left(\begin{array}{rr} 12 & -4 \\ -4 & 12 \end{array}\right)\)
( x = \(0\) ; y = \(0\) ) \(\left(\begin{array}{rr} 0 & -4 \\ -4 & 0 \end{array}\right)\)
Out[353]:
In [ ]:
 
In [354]:
f(x,y)=x^2-2*x*y+4*y
show(html("<h4>fonction q : pont des âmes…</h4>"))    
lacouleur="bisque"
leratio=(1,1,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,5), (y, -2, 5), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction q : pont des âmes…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x^{2} - 2 \, x y + 4 \, y\)
grad f= \(\left[2 \, x - 2 \, y, -2 \, x + 4\right]\)
H= \(\left(\begin{array}{rr} 2 & -2 \\ -2 & 0 \end{array}\right)\)
points critiques
( x = \(2\) ; y = \(2\) ) \(\left(\begin{array}{rr} 2 & -2 \\ -2 & 0 \end{array}\right)\)
Out[354]:
In [357]:
f(x,y)=x*y-ln(y+x)
show(html("<h4>fonction r : flèche roquette express…</h4>"))    
lacouleur="black"
leratio=(1,1/2,1/4)

# calculs généraux
from sage.manifolds.operators import *
E.<x,y> = EuclideanSpace()
F = E.scalar_field(f)
H=f(x,y).hessian()
show(html("<h5>paramètres généraux</h5>"))
T=table([["f",f],["grad f=",grad(F)[:]],["H=",H]],frame=True,align='center')
show(T)

# calcul des points critiques
Cr= solve([grad(f)[0]==0,grad(f)[1]==0],[x,y],solution_dict=True)
liste=[]
for critique in Cr:
    x_et_y_reels=(x(critique).imag()==0 and y(critique).imag()==0)
    x_et_y_avec_parametre=(len(x(critique).variables())>0 or len(y(critique).variables())>0)
    if(x_et_y_reels or x_et_y_avec_parametre): 
        liste.append(["(","x","=",x(critique),";","y","=",y(critique),")",H(critique)])        
show(html("<h5>points critiques</h5>"))
if (len(liste)!=0):
    show(table(liste))
else :
    show("pas de points critiques")
    
# graphique
h(x,y,z)=f(x,y)-z
implicit_plot3d(h, (x, -2,2), (y, -4, 4), (z, -10, 10),color=lacouleur,aspect_ratio=leratio,adaptive=True,mesh=True)

fonction r : flèche roquette express…

paramètres généraux
f \(\left( x, y \right) \ {\mapsto} \ x y - \log\left(x + y\right)\)
grad f= \(\left[\frac{x y + y^{2} - 1}{x + y}, \frac{x^{2} + x y - 1}{x + y}\right]\)
H= \(\left(\begin{array}{rr} \frac{1}{{\left(x + y\right)}^{2}} & \frac{1}{{\left(x + y\right)}^{2}} + 1 \\ \frac{1}{{\left(x + y\right)}^{2}} + 1 & \frac{1}{{\left(x + y\right)}^{2}} \end{array}\right)\)
points critiques
( x = \(-\frac{1}{2} \, \sqrt{2}\) ; y = \(-\frac{1}{2} \, \sqrt{2}\) ) \(\left(\begin{array}{rr} \frac{1}{2} & \frac{3}{2} \\ \frac{3}{2} & \frac{1}{2} \end{array}\right)\)
( x = \(\frac{1}{2} \, \sqrt{2}\) ; y = \(\frac{1}{2} \, \sqrt{2}\) ) \(\left(\begin{array}{rr} \frac{1}{2} & \frac{3}{2} \\ \frac{3}{2} & \frac{1}{2} \end{array}\right)\)
Out[357]:
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:

In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]: