\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath, amsthm}
\usepackage[frenchb]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{sagetex}
\begin{document}
Le package Sage\TeX{} permet de faire des calculs avec Sage en plaçant automatiquement les résultats dans un document \LaTeX.
\section{Des généralités}
Le nombre de partitions qu'un entier a est plutôt grand.
On commence par déclarer une valeur, le code sage ne sera pas affiche car on utilise \verb|sagesilent| (voir le .tex).
\begin{sagesilent}
n=2017
\end{sagesilent}
Soit $ n = \sage{n}$. Par exemple, l'entier $\sage{n}$ admet un nombre assez grand de partitions $N = \sage{number_of_partitions(n)}$. Ce qui est drôle est d'avoir les facteurs premiers de $N$ : $$N= \sage{factor(number_of_partitions(n))}$$
Le résultat de ce calcul est affiché sans que vous ayez à le calculer vous-même ou même à le copier-coller dans votre document.
Un peu de code Sage (qui sera affiché cette fois):
\begin{sageblock}
f(x) = exp(x) * sin(2*x)
\end{sageblock}
La dérivée seconde de $f$ est
\[
\frac{\mathrm{d}^{2}}{\mathrm{d}x^{2}} \sage{f(x)} =
\sage{diff(f, x, 2)(x)}.
\]
Voici enfin le graphe de la fonction $f : x \mapsto \sage{f(x)}$ sur $[-\pi/2,\pi/2]$:
\begin{center}
\sageplot{plot(f, -pi/2, pi/2, figsize = 4, axes_labels=['$x$','$y$'], axes_labels_size = 1, tick_formatter = [pi,2])}
\end{center}
\section{Des courbes orthogonales}
Une famille de courbes orthogonales : on veut tracer la famille de courbes orthogonales aux courbes $y = c \sin x$. Ceci se fait en résolvant une équation différentielle que tout étudiant ayant fait la premie moitié de MAT324 devrait savoir poser.
\begin{sageblock}
y=function('y')(x)
eq = diff(y,x)==-tan(x)/y
\end{sageblock}
La solution est $\sage{desolve(eq,y,show_method=True)}$.
On voit notamment qu'il s'agit d'une équation à variables séparables.
Voyons la figure résultante. Les courbes dont il est question ont pour équation $y^2+2\cdot \ln{|\sec{x}|} = K$. Trouvez comment ceci est fait avec la commande \verb|implicit_plot|, ci-bas.
Le code produit une figure, sauvagardée dans un fichier, puis elle est incluse à même \LaTeX. On pourrait peaufiner contrôlant un peu mieux la taille des caractères, par exemple.
\begin{sagesilent}
var('c,x,y')
F1=[plot(c*sin(x),(x,-2*pi,2*pi),color='darkgreen', aspect_ratio=1) for c in sxrange(-4,4.5,.5)]
F2=[implicit_plot(y^2+2*log(abs(sec(x)))-c,(x,-2*pi,2*pi),(y,-5,5),color='red',aspect_ratio=1) for c in sxrange(-10,10,1)]
Fig = sum(F2)+sum(F1)
Fig.save("Figure.png")
\end{sagesilent}
\begin{figure}[h!]
\centering
\includegraphics[width = 4.5in, height = 3.5in]{Figure.png}
\end{figure}
\end{document}