\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}

\usepackage{caption}
\DeclareCaptionFormat{nocaption}{}
\captionsetup{format=nocaption,aboveskip=0pt,belowskip=0pt}

\usepackage{float}
\floatplacement{figure}{H} % forces figures to be placed at the correct location
\usepackage{xcolor} % Allow colors to be defined
\usepackage{enumerate} % Needed for markdown enumerations to work
\usepackage[left=2mm, right=2mm, top=2mm, bottom=2mm]{geometry} % Used to adjust the document margins
\usepackage{amsmath} % Equations
\usepackage{amssymb} % Equations
\usepackage{textcomp} % defines textquotesingle
\usepackage{hyperref}

% Setup hyperref package
\hypersetup{
  breaklinks=true,  % so long urls are correctly broken across lines
  colorlinks=true,
  urlcolor=urlcolor,
  linkcolor=linkcolor,
  citecolor=citecolor,
}
% Slightly bigger margins than the latex defaults

\geometry{verbose,tmargin=1.5cm,bmargin=1.5cm,lmargin=1cm,rmargin=1cm}

% Document parameters
% Document title
\title{Python : Exercices}
\date{Préparation Agrégation -- 2023-2024}

    
    

\begin{document}

    \maketitle
    
    

    
    \hypertarget{statistiques-sur-le-covid-19}{%
\section{Statistiques sur le
COVID-19}\label{statistiques-sur-le-covid-19}}

Le fichier \texttt{data\_exo\_1.dat} contient trois colonnes : la
première est la date, la seconde le nombre cumulé de décès en hôpital
liés au COVID-19 et la troisième le nombre cumulé de décès en EHPAD liés
au COVID-19.

Le fichier commence le lundi 2 mars 2020. C'est l'origine de nos dates
(jour 0). Dans la suite, on entend par date ou numéro du jour le nombre
de jours écoulés depuis le 2 mars 2020. Ce fichier a été extrait de la
base de donnée en janvier 2021 (il ne comprend donc que la première et
début de la deuxième vague).

\begin{itemize}
\tightlist
\item
  Lire ce fichier à l'aide de la commande loadtxt, et extraire les trois
  colones dans trois variables.
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Tracer le graphe du nombre de décès cumulé en hôpital et en EHPAD en
  fonction de la date.
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Ajouter sur le même graph le nombre total de décés cumulé
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Au cours des 30 premiers jours, le nombre cumulé de décès en hôpital
  suit une loi proche d'une exponentielle. Tracer cette courbe en
  échelle semi-logarithmique.
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Au cours de ces 30 premiers jours, le nombre de décès peut s'écrire
  \(N(j) = N_0(1+a)^{j-j_0}\). Tracer cette courbe avec les paramètres
  pour lesquels elle s'ajuste bien à l'œil. Quelle est la valeur de
  \(a\)? (Nous ne demandons pas dans cette question de faire un
  ajustement, mais simplement de superposer les deux courbes).
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Calculer le tableau du nombre quotidien de décès en hôpital et en
  EHPAD en fonction de la date. Et tracer la courbe pour l'hôpital.
  (Remarque, il est possible de faire cette opération sans boucle )
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Quel jour a connu le plus grand nombre de décès en hôpital ? (on
  utilisera la fonction \texttt{argmax})
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Combien de jours ont connu plus de 50 décés en EHPAD ?
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Comment extraire en une ligne le nombre de décés pour un jour donné ?
\end{itemize}

    \begin{itemize}
\tightlist
\item
  Calculer et tracer le nombre total de décès en hôpital par jour de la
  semaine. Pour quel jour de la semaine enregistre-t-on le moins de
  décès ?
\end{itemize}

    On considère un pendule de masse \(m\), longueur \(l\) qui oscille dans
le champ de gravité \(g\) entre \(\pm \theta_0\).

Pour les applications numériques, on prendra \(m=100~\mathrm{g}\),
\(l = 70~\mathrm{cm}\) et \(g = 9.806~\mathrm{m/s^2}\)

\hypertarget{formule-de-borda}{%
\section{Formule de Borda}\label{formule-de-borda}}

\begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\tightlist
\item
  Dans la limite des petites oscillations, la période du pendule est
  donnée par \(T_0 = 2\pi\sqrt{\frac lg}\). Calculez numériquement
  \(T_0\)
\end{enumerate}

    La formule de Borda nous dit que, à l'ordre 2 :

\[ \frac T{T_0} = 1 + \frac{\theta_0^2}{16}\]

\begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{1}
\tightlist
\item
  Tracez la formule de Borda pour \(\theta_0\) entre \(0\) et \(\pi/2\)
\end{enumerate}

    \hypertarget{analyse-de-donnuxe9es}{%
\section{Analyse de données}\label{analyse-de-donnuxe9es}}

Vous venez de faire des mesures de la période du pendule pour différents
angles. Pour cela, vous avez mesuré à l'aide d'un chronomètre la durée
totale de N oscillations. Voici les résultats des mesures:

\begin{longtable}[]{@{}lll@{}}
\toprule
\(\theta_0\)(°) & N & T(s) \\
\midrule
\endhead
10 & 20 & 37.70 \\
20 & 15 & 28.28 \\
30 & 15 & 28.46 \\
40 & 20 & 38.71 \\
50 & 25 & 49.50 \\
15 & 20 & 37.64 \\
\bottomrule
\end{longtable}

\begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\tightlist
\item
  Rentrez ces données dans un tableur (e.g.~libre office), sauvegardez
  les dans un fichier csv et importez les données avec Python
  (\texttt{np.loadtxt}).
\end{enumerate}

    \begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{1}
\tightlist
\item
  Tracez la periode en fonction de \(\theta_0\)
\end{enumerate}

    \begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{2}
\tightlist
\item
  On estime que l'intertitude dans la mesure de T est de 200 ms. Tracez
  les points avec des barres d'erreurs (fonction errorbar)
\end{enumerate}

    \begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{3}
\tightlist
\item
  A l'aide de la fonction \texttt{curve\_fit} du module
  \texttt{scipy.optimize}, ajustez les données par la fonction
  \(T(\theta) = T_0(1 + \beta\theta^2)\). Pour cela il faudra commencer
  par écrire une fonction \texttt{periode(theta,\ T\_0,\ beta)}.

  \begin{itemize}
  \tightlist
  \item
    Tracez les données avec l'ajustement,
  \item
    Quelle est la longueur du pendule,
  \item
    Quelle est l'incertitude sur cette longueur?
  \end{itemize}
\end{enumerate}

    \hypertarget{calcul-numuxe9rique}{%
\section{Calcul numérique}\label{calcul-numuxe9rique}}

\begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\item
  Dans le cas général, on peut démontrer que la période du pendule est
  donnée par:

  \[ \frac T{T_0} = \frac 2\pi \int_0^{\pi/2} \frac{d\phi}{\sqrt{1-k^2\sin^2\phi}} \]

  où \(k=\sin\frac{\theta_0}2\). Calculez \(T\) pour
  \(\theta_0 = \frac\pi4\). On utilisera la fonction \texttt{quad} du
  package scipy.integrate
\end{enumerate}

    \begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{1}
\tightlist
\item
  Tracez avec des points la valeurs de \(T(\theta_0)/T_0\) pour une
  dizaine de points entre \(0\) et \(\pi/2\).
\end{enumerate}

    \begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{2}
\tightlist
\item
  Tracez la formule de Borda sur le même graphe pour comparer.
\end{enumerate}

    \begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\setcounter{enumi}{3}
\tightlist
\item
  Vérifiez numériquement le coefficient \(\frac 1{16}\) de la formule de
  Borda.
\end{enumerate}

    \hypertarget{equation-diffuxe9rentielle}{%
\section{Equation différentielle}\label{equation-diffuxe9rentielle}}

\begin{itemize}
\item
  En utilsant la fonction \texttt{solve\_ivp} du package
  \texttt{scipy.integrate}, résoudre l'équation différentielle associée
  au pendule : \[l \ddot\theta = -g \sin \theta\]. On prendra comme
  condition initiale \(\theta(t=0) = \frac{3\pi}4\) et
  \(\dot\theta(t=0) = 0\).
\item
  Tracer l'évolution au cours du temps.
\item
  Vérifier graphiquement que la période correspond à celle calculée dans
  la partie précédente
\end{itemize}


    % Add a bibliography block to the postdoc
    
    
    
\end{document}
