Sage après le bac
Partie 1

Presenter Notes

Sage parle le Python

Sage utilise le langage Python.

for i in range(3):
    print 'ligne ', i

$$ \color{blue}{ \begin{equation} \rm{ligne\ 0} \\ \rm{ligne\ 1} \\ \rm{ligne\ 2} \end{equation} } $$

Donc les listes en compréhension.

[2*n+1 for n in range(5)]

$$\color{blue}{ [1,3,5,7,9] } $$

Presenter Notes

Calcul exact ou approché

Une valeur exacte de $\cos\left(\frac{\pi}{12}\right)$

cos(pi/12)

$$\color{blue}{ \frac{1}{12} \, {\left(\sqrt{3} + 3\right)} \sqrt{6} } $$

et une valeur approchée

cos(pi/12).n(digits=10)

$$\color{blue}{ 0.9659258263 } $$

Presenter Notes

Assignation

u = sqrt(5) + sqrt(3) ; v = sqrt(5) - sqrt(3)
y = u/v + v/u ; y

$$\color{blue}{ -\frac{\sqrt{3} - \sqrt{5}}{\sqrt{3} + \sqrt{5}} - \frac{\sqrt{3} + \sqrt{5}}{\sqrt{3} - \sqrt{5}} } $$

Sage peut simplifier cette expression

y.simplify_radical()

$$\color{blue}{ 8 } $$

Presenter Notes

Expressions symboliques

var('x, y')
z = sin(x^2/y) ; z

$$\color{blue}{ \sin\left(\frac{x^{2}}{y}\right) } $$

Pour remplacer x et y dans z, on utilise la syntaxe de substitution :

z(x=-1, y=2)

$$\color{blue}{ \sin\left(\frac{1}{2}\right) } $$

Presenter Notes

Fonctions

On peut aussi définir une fonction

var('x, y')
f(x, y) = sin(x^2/y)
f

$$\color{blue}{ (x, y) \ \mapsto \ \sin\left(\frac{x^2}{y}\right) } $$

Puis

f(-1, 2)

$$\color{blue}{ \sin\left(\frac{1}{2}\right) } $$

Presenter Notes

Calcul d'une limite

Enoncé

Soit $0<x\frac{\pi}{2}$. D'après ma formule de Taylor-Mac Laurin-Lagrange, il existe un nombre réel $\theta$, $0<\theta<1$, dépendant de $x$, tel que : $$ \cos(x)=1-\frac{x^2}{2}+\frac{x^4}{24}\cos(\theta x) $$ Calculons $\lim\limits_{x\to 0^{+}}\theta$.

Presenter Notes

Calcul d'une limite

Solution

var('x,theta')
eq = cos(x) == 1 - x^2/2 + x^4/24*cos(theta*x)
s = solve(eq, theta) ; s    # résout l'équation par rapport à theta

$$\color{blue}{ \left[\theta = \frac{\arccos\left(\frac{12}{x^{2}} + \frac{24 \, \cos\left(x\right)}{x^{4}} - \frac{24}{x^{4}}\right)}{x}\right] } $$

z = s[0].rhs() ; z     # extrait le membre de droite de s[0]

$$\color{blue}{ \frac{\arccos\left(\frac{12}{x^{2}} + \frac{24 \, \cos\left(x\right)}{x^{4}} - \frac{24}{x^{4}}\right)}{x} } $$

z.limit(x=0, dir='plus')     # ou : limit(z, x=0, dir='plus')

$$\color{blue}{ \frac{1}{15} \, \sqrt{15} } $$

Presenter Notes

Approximation de la tangente

Enoncé

  • Trouver une fonction $f$ de la forme $x\mapsto\frac{ax^3+bx}{x^2+c}$ qui “ressemble” le plus possible à la fonction tangente au voisinage de 0 (i.e. même développement de Taylor à l’ordre 5).
  • Tracer en superposition les graphes de $f$ et de la fonction tangente.

Presenter Notes

Approximation de la tangente

Solution

var('a,b,c,x')
y = (a*x^3 + b*x)/(x^2 + c)
t1 = taylor(tan(x), x, 0, 5)
t2 = taylor(y, x, 0, 5)
print 'dev. de tan :', t1
print 'dev. de f :', t2

$$\color{blue}{ \begin{align} \rm{dev.\ de\ tan} &:& \frac{2}{15} \, x^{5} + \frac{1}{3} \, x^{3} + x \\ \rm{dev.\ de\ f} &:& -\frac{{\left(a c - b\right)} x^{5}}{c^{3}} + \frac{{\left(ac - b\right)} x^{3}}{c^{2}} + \frac{b x}{c} \end{align} } $$

# mise en équations du problème et résolution :
eqs = [t1.coeff(x, i) == t2.coeff(x, i) for i in [0..5]]
vars = a, b, c
s = solve(eqs, vars, solution_dict=True) ; s

$$\color{blue}{ \left[\left\{c : 0, b : 0, a : r_{3}\right\}, \left\{c : -\frac{5}{2}, b : -\frac{5}{2}, a : \frac{1}{6}\right\}\right] } $$

sol = y(s[1]) ; sol   # c'est l'expression cherchée

$$\color{blue}{ \frac{x^{3} - 15 \, x}{3 \, {\left(2 \, x^{2} - 5\right)}} } $$

Presenter Notes

Approximation de la tangente

Tracé

g1 = plot(tan, -4, 4, detect_poles=True, hue=0.7)
g2 = plot(sol, -4, 4, detect_poles=True, hue=0.0, linestyle='--')
show(g1+g2, ymin=-4, ymax=4, aspect_ratio=1)

tangente

Presenter Notes

Séries numériques

Convergence

Pour la convergence de la série de terme général $(1+\sqrt{n})^{-n}$ , on applique le critére de d’Alembert :

var('n')
u = (1 + sqrt(n))^(-n)
limit(u(n=n+1)/u, n=infinity)

$$\color{blue}{ 0 } $$

Pour la convergence de la série de terme général $\frac{1}{n}+\ln(1-\frac{1}{n})$

var('n')
u = 1/n + ln(1-1/n)
u.taylor(n, infinity, 2)

$$\color{blue}{ -\frac{1}{2 \, n^{2}} } $$

Presenter Notes

Séries numériques

Calcul de sommes

Calculons la somme partielle $\sum_{n=1}^{n=N} \frac{1}{n(n+4)}$.

var('n, N')
s = sum(1/(n*(n+4)), n, 1, N) ; s

$$\color{blue}{ \frac{25 \, N^{4} + 202 \, N^{3} + 515 \, N^{2} + 410 \, N}{48 \, {\left(N^{4} + 10 \, N^{3} + 35 \, N^{2} + 50 \, N + 24\right)}} } $$

Puis pour $N=20$, cela donne

s(N=20)

$$\color{blue}{ \frac{80975}{170016} } $$

Et la somme de la série

sum(1/(n*(n+4)), n, 1, infinity)

$$\color{blue}{ \frac{25}{48} } $$

Presenter Notes

Suites de fonctions

Définition

Soit la suite de fonctions $(f_n)$ définies par $f_n(x)=nx^2e{-nx}$ sur $[0~;~1]$.

var('n, x')
f(n, x) = n*x^2*exp(-n*x)
f

$$\color{blue}{ \left( n, x \right) \ {\mapsto} \ n x^{2} e^{\left(-n x\right)} } $$

Presenter Notes

Suites de fonctions

Visualisation

g = Graphics()             # crée un objet graphique vide
for n in [1..20]:
    g = g + plot(f(n,x), x, 0, 1)
g.show()

suite de fonctions

Presenter Notes

Suites de fonctions

Limite simple

limit(f(n,x), n=infinity)

$$\color{blue}{ \rm{Is\ x\ positive,\ negative,\ or\ zero?} } $$

assume(x>0)
limit(f(n,x), n=infinity)

$$\color{blue}{ 0 } $$

forget(x>0)
assume(x==0)
limit(f(n,x), n=infinity)

$$\color{blue}{ 0 } $$

Presenter Notes

Suites de fonctions

Convergence uniforme

forget()
df = f(n, x).diff(x) ; df    # expression de la dérivée par rapport à x

$$\color{blue}{ -n^{2} x^{2} e^{\left(-n x\right)} + 2 \, n x e^{\left(-n x\right)} } $$

s = solve(df==0, x) ; s

$$\color{blue}{ \left[x = \frac{2}{n}, x = 0\right] } $$

xn = s[0].rhs()
maxfn = f(n, xn) ; maxfn

$$\color{blue}{ \frac{4 \, e^{\left(-2\right)}}{n} } $$

limit(maxfn, n=infinity)

$$\color{blue}{ 0 } $$

Presenter Notes

Source

Cette présentation est très fortement inspiré des travaux dirigés avec Sage dont l'auteur est Olivier Marguin diponibles via la page

ou la page

Presenter Notes