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] } $$
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 } $$
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 } $$
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) } $$
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) } $$
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$.
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} } $$
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)}} } $$
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)
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}} } $$
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} } $$
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)} } $$
g = Graphics() # crée un objet graphique vide
for n in [1..20]:
g = g + plot(f(n,x), x, 0, 1)
g.show()
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 } $$
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 } $$
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
Table of Contents | t |
---|---|
Exposé | ESC |
Full screen slides | e |
Presenter View | p |
Source Files | s |
Slide Numbers | n |
Toggle screen blanking | b |
Show/hide slide context | c |
Notes | 2 |
Help | h |