WikiPrépaLivrets

CCINP Modélisation PC 2020Sujet, corrigé et rapport du jury

4,0(1 vote)
  • Stéréochimie et conformations
  • Mécanique du solide : moment d'inertie
  • Equation de Schrödinger de l'oscillateur harmonique
  • Résolution numérique d'équations différentielles
  • Programmation en Python

Téléchargements

Présentation du sujet

Difficile
Contribution de la rotation interne du groupe méthyle à l'entropie de la molécule d'éthane
Afficher ou masquer la section

Le sujet calcule la contribution de la rotation interne du groupe méthyle à l'entropie de la molécule d'éthane. Il part d'une étude des conformations et de l'énergie potentielle de rotation, puis résout numériquement l'équation de Schrödinger de l'oscillateur harmonique par la méthode de Numerov en langage Python, avant de comparer plusieurs modèles selon le domaine de température.

  1. 1Partie I : étude des conformations de la molécule d'éthaneAnalyser la stéréochimie de l'éthane et l'évolution de l'énergie potentielle en fonction de l'angle de rotation du groupe méthyle.
  2. 2Partie II : contribution de la rotation interne à l'entropieCalculer la contribution à l'entropie pour une rotation libre puis pour un oscillateur harmonique, résoudre numériquement l'équation de Schrödinger par la méthode de Numerov en Python, puis analyser l'évolution de l'entropie avec la température.

Difficile. Le rapport signale de sérieuses lacunes dans les outils mathématiques et numériques de base, et indique que seuls environ 2 % des candidats ont fourni l'expression correcte de la fonction d'énergie potentielle demandée en Q4.

L'épreuve en chiffres

Moyenne 10,47 / 20 · écart-type 3,45 · 4 329 présents · où vous situez-vous ?
Afficher ou masquer la section
Moyenne
10,47/ 20
Écart-type
3,45
Présents
4 329
Coefficient
10
Durée
4 h
moyenne 10,4705101520
Deux tiers des copies environ (moyenne ± écart-type)

Votre note sur 20 à ce sujet, en conditions de concours.

Source : document officiel du concours, épreuve du 4 juillet 2020. Notes publiées par le concours (après harmonisation le cas échéant). Courbe : estimation par une loi normale.

Ce qu'a observé le jury

5 erreurs relevées
Fonction d'énergie potentielle mal exprimée · Développements limités peu rigoureux · Confusion entre algorithme et code
Afficher ou masquer la section

Le sujet n'était pas très long et les résultats à démontrer étaient souvent donnés pour ne pas pénaliser les candidats. Les corrections révèlent toutefois de sérieuses lacunes dans les outils mathématiques et numériques de base, ainsi qu'un manque de rigueur scientifique et rédactionnelle dans de nombreuses copies.

Les erreurs les plus sanctionnées

  1. 1
    Fonction d'énergie potentielle mal expriméeQ4

    Seuls environ 2 % des candidats ont fourni l'expression correcte de la fonction représentant l'évolution de l'énergie potentielle en fonction de l'angle de torsion.

  2. 2
    Développements limités peu rigoureuxQ14

    L'écriture des développements limités manque souvent de rigueur, avec l'omission fréquente du symbole o() ou O(), notamment pour établir la formule de récurrence de Numerov.

  3. 3
    Confusion entre algorithme et codeQ27

    La notion d'algorithme ne semble pas claire pour une majorité de candidats, qui fournissent une portion de code à la place, en particulier en Q27.

    « La notion d'algorithme ne semble pas bien connue des candidats qui ont donné à la place des portions de code. »
  4. 4
    Unités manquantes ou faussesQ7, Q8, Q9

    Les erreurs sur les unités sont récurrentes dans plusieurs questions de calcul numérique, notamment aux questions 7 à 9.

  5. 5
    Lien entre entropie et désordre non faitQ30

    Bon nombre de candidats observent l'augmentation de l'entropie avec la température sans la relier à la notion de désordre.

Ce qui a été bien réussi

  • Les questions Q2, Q3, Q5 et Q6 ont été bien traitées dans l'ensemble
  • L'augmentation de l'entropie avec la température a été observée par une grande majorité des candidats (Q30)

Conseils du jury

  • Respecter la numérotation des questions imposée par l'énoncé.
  • Soigner l'utilisation du brouillon pour éviter les ratures dans les démonstrations.
  • Utiliser un vocabulaire scientifique précis plutôt que des successions de mots-clefs.
  • Commenter le code écrit et respecter les consignes de codage imposées, sans modifier les portions de code fournies.
  • Préciser le domaine de température associé à chaque recommandation ou modèle proposé.

Synthèse rédigée par WikiPrépa à partir du rapport officiel du jury (à télécharger en PDF). Les citations sont extraites du rapport.

Ces sujets peuvent vous intéresser

Lecture du sujet en ligne

L'énoncé complet, avec les formules et les figures, sans ouvrir le PDF.
Afficher ou masquer la section

ÉPREUVE MUTUALISÉE AVEC E3A-POLYTECH ÉPREUVE SPÉCIFIQUE - FILIÈRE PC

MODÉLISATION DE SYSTÈMES PHYSIQUES OU CHIMIQUES

Mercredi 6 mai : 8 h-12 h

Abstract

N.B. : le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut lui sembler être une erreur d'énoncé, il le signalera sur sa copie et devra poursuivre sa composition en expliquant les raisons des initiatives qu'il a été amené à prendre.

RAPPEL DES CONSIGNES

  • Utiliser uniquement un stylo noir ou bleu foncé non effaçable pour la rédaction de votre composition ; d'autres couleurs, excepté le vert, peuvent être utilisées, mais exclusivement pour les schémas et la mise en évidence des résultats.
  • Ne pas utiliser de correcteur.
  • Écrire le mot FIN à la fin de votre composition.

Les calculatrices sont autorisées

Le sujet est composé de deux parties (pages 1 à 13)

et d'une annexe (pages 14 à 15).

Calcul de la contribution de la rotation interne du groupe méthyle à l'entropie de la molécule d'éthane

Présentation du problème

Le calcul des propriétés chimiques de systèmes moléculaires est aujourd'hui facilité par le développement de logiciels basés sur les lois fondamentales de la mécanique quantique. Ce type de logiciels permet par exemple de trouver la géométrie pour laquelle l'énergie d'une molécule est minimale, de calculer son énergie et ses fréquences de vibration.
Même si la plupart des étapes de calcul des données thermodynamiques des molécules sont automatisées, il est parfois nécessaire de réaliser des corrections manuellement pour obtenir des valeurs en accord avec l'expérience.
C'est le cas lorsque l'on souhaite calculer précisément la valeur de l'entropie d'une molécule qui possède des groupes méthyles. Une des molécules se trouvant dans ce cas est la molécule d'éthane (C_2 H_6) dont la structure est donnée à la figure 1.
Figure 1 - Structure de la molécule d'éthane
La rotation du groupe méthyle autour de la liaison entre les deux atomes de carbone peut être représentée par différents modèles simples. Le choix du modèle est dicté par la hauteur de la barrière d'énergie potentielle à franchir lors de la rotation du groupe méthyle autour de la liaison entre les deux atomes de carbone. Parmi ces modèles, on trouve celui de la rotation libre, le modèle de l'oscillateur harmonique et le modèle de la rotation empêchée.
La première partie de l'épreuve concerne l'étude des conformations de l'éthane. Une attention particulière est portée aux informations que l'on peut tirer de l'évolution de l'énergie potentielle associée à la rotation du groupe méthyle. La partie suivante est relative au calcul de la contribution de la rotation interne du groupe méthyle à l'entropie de la molécule d'éthane en considérant différents modèles pour représenter la rotation.

Partie I - Étude des conformations de la molécule d'éthane

Q1. Rappeler à quel type d'isomérie s'apparentent des espèces dont la structure diffère par la rotation autour des liaisons simples. Rappeler le nom que l'on donne à ce type d'isomères.
L'ensemble des conformations de la molécule d'éthane est obtenu par rotation des deux groupes méthyles autour de la liaison simple entre les deux atomes de carbone.
Q2. Donner les projections de Cram et de Newman correspondant aux deux conformations remarquables dites décalée et éclipsée (en précisant bien de laquelle il s'agit).
Dans un modèle simple, en considérant l'un des deux groupes méthyles immobile, l'évolution de l'énergie potentielle associée à la rotation du second groupe méthyle autour de la liaison C − C de la molécule d'éthane en fonction de l'angle de rotation θ (aussi appelé angle de torsion) est sinusoïdale comme le montre le graphe de la figure 2.
Figure 2 - Évolution de l'énergie potentielle associée à la rotation d'un groupe méthyle de la molécule d'éthane en fonction de l'angle de rotation
Q3. Indiquer à quelles conformations correspondent les minima et maxima observés sur la courbe. Expliquer brièvement l'origine de la variation de l'énergie potentielle de la molécule d'éthane en fonction de l'angle de rotation θ.
Le passage d'une conformation stable à l'autre nécessite le franchissement d'une barrière d'énergie potentielle qui sera notée V_(max). En raison de la symétrie du groupe méthyle, on constate que cette barrière d'énergie potentielle est franchie plusieurs fois de manière périodique lors d'un tour complet.
Q4. À partir du graphe de la figure 2, relever la valeur de la barrière d'énergie potentielle. Indiquer la périodicité du phénomène. Donner l'expression de la fonction V(θ, V_(max)) permettant de représenter l'évolution de l'énergie potentielle en fonction de l'angle de rotation θ.

Partie II - Contribution de la rotation interne du groupe méthyle à l'entropie de la molécule d'éthane

Comme indiqué dans l'introduction, la rotation interne du groupe méthyle par rapport à l'autre apporte une contribution à l'entropie de la molécule d'éthane. Le calcul de cette contribution dépend du type de rotation considérée. On distingue deux cas :
  • la rotation est libre. C'est le cas si l'énergie potentielle V_(max) (en joule par molécule) est inférieure au produit k_B × T où k_B est la constante de Boltzmann et T la température ;
  • la rotation est empêchée. C'est le cas si V_(max) est supérieure au produit k_B × T.
Q5. Conclure quant à la liberté de la rotation à très basse température, 100 K , puis à très haute température : 2000 K . On donne k_B = 1, 38064852 ⋅ 10^(− 23) J K^(− 1) et la constante d'Avogadro N_A = 6, 022 ⋅ 10^(23) mol^(− 1).

II. 1 - Calcul de la contribution à l'entropie pour une rotation libre

Dans le cas d'une rotation libre, le calcul de la contribution de la rotation interne à l'entropie S_(ri) peut être effectué dans le cadre d'un modèle simple. Le résultat dépend d'un petit nombre de paramètres :
S_(ri) = R[1/2 + ln((√(8π^3 × I_(int) × k_B × T))/(σ_(int) × h))],
avec R la constante des gaz parfaits, h la constante de Planck, σ_(int) le nombre de symétries internes du groupe méthyle égal à 3 et I_(int) le moment d'inertie réduit du groupe méthyle en rotation par rapport à l'autre groupe méthyle. Rappelons que l'expression du moment d'inertie réduit est :
I_(int) = (I_A × I_B)/(I_A + I_B),
avec I_A et I_B les moments d'inertie des deux groupes méthyles (on a I_A = I_B dans le cas de l'éthane). Le moment d'inertie du groupe méthyle en rotation autour de l'axe matérialisé par la liaison entre les deux atomes de carbone de la molécule d'éthane est :
I = ∑_i(m_i × r_i^2),
avec m_i la masse de l'atome i et r_i la distance entre l'atome i et sa projection orthogonale sur l'axe de rotation du groupe méthyle considéré.
Q6. Expliquer pourquoi la contribution de l'atome de carbone au moment d'inertie du groupe méthyle en rotation autour de la liaison matérialisée par les deux atomes de carbone de la molécule d'éthane est nulle.
Q7. Calculer le moment d'inertie (dans les unités du Système International) pour un groupe méthyle à partir des données suivantes :
  • masse d'un atome d'hydrogène : 1, 6737 ⋅ 10^(− 27) kg
  • longueur des liaisons C-H : 0, 1094 nm
  • valeur des angles C-C-H : 111, 4^∘
Q8. En déduire la valeur du moment d'inertie réduit dans les unités du Système International.
Q9. Calculer la contribution à l'entropie dans le cas de la rotation libre à 298, 15 K dans les unités du Système International avec le nombre de chiffres significatifs adéquats.
On donne R = 8, 314 J mol^(− 1) K^(− 1) et h = 6, 62607004 ⋅ 10^(− 34) J s.

II. 2 - Calcul de la contribution à l'entropie pour un oscillateur harmonique

Dans le cas où la rotation est empêchée, on peut utiliser en première approximation le modèle de l'oscillateur harmonique pour obtenir la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane. Le graphe de la figure 3 donne l'évolution de l'énergie potentielle associée à la rotation du groupe méthyle autour de la liaison C − C dans la molécule d'éthane et l'énergie potentielle de l'oscillateur harmonique. Cette dernière peut se mettre sous la forme suivante :
V(θ) = 1/2Kθ^2,
avec K une constante et θ l'angle de rotation du groupe méthyle autour de la liaison C − C dans la molécule d'éthane.
Figure 3 - Approximation de la rotation interne du groupe méthyle par le modèle de l'oscillateur harmonique

Traitement quantique de l'oscillateur harmonique

La détermination de la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane peut être réalisée à partir du traitement quantique de l'oscillateur harmonique. Cette méthode nécessite la résolution de l'équation de Schrödinger dans le cas de l'oscillateur harmonique unidimensionnel. La fonction d'onde à laquelle on s'intéresse est celle du proton de l'élément hydrogène.
L'équation de Schrödinger stationnaire en coordonnées cylindriques peut se mettre sous la forme suivante :
− (ℏ^2)/(2m)ΔΨ + V(θ)Ψ = EΨ,
avec m la masse d'un atome d'hydrogène, ℏ la constante de Planck réduite ( ℏ = h/2π ), Ψ la fonction d'onde associée à un état propre, E la valeur propre associée et V(θ) l'énergie potentielle à laquelle est soumise l'atome d'hydrogène lorsque le groupe méthyle tourne autour de la liaison C − C dans la molécule d'éthane ( E et V(θ) sont exprimées en joule, θ est l'angle de de rotation). ΔΨ est le Laplacien de la fonction d'onde Ψ dont l'expression en coordonnées cylindriques est :
ΔΨ = 1/r∂/(∂r)(r(∂Ψ)/(∂r)) + 1/(r^2)(∂^2 Ψ)/(∂θ^2) + (∂^2 Ψ)/(∂z^2).
Q10. Simplifier l'expression du Laplacien de la fonction d'onde dans le cas de la rotation d'un atome d'hydrogène autour de l'axe matérialisé par la liaison entre les deux atomes de carbone confondu avec l'axe ( OZ ) dans un repère ( O, r, θ, Z ). On supposera que le groupe méthyle est indéformable lors de sa rotation autour de l'axe (Oz). Donner alors l'expression de l'équation de Schrödinger stationnaire en cordonnées cylindriques, que l'on mettra sous la forme :
GΨ = [E − V(θ)]Ψ,
avec G un opérateur dont l'expression est à déterminer et V(θ) l'énergie potentielle donnée par l'équation (4).
Pour simplifier la résolution de l'équation simplifiée tirée de l'équation (6), on souhaite la réécrire sous la forme adimensionnelle suivante :
(∂^2 Ψ)/(∂ξ^2) = − 2[ε − 1/2ξ^2]Ψ,
avec ε un paramètre discuté plus loin, ξ = √((mω)/ℏ)rθ et ω = √(K/(mr^2)) où ω est la pulsation propre de l'oscillateur.
Q11. Établir l'expression du paramètre ε qui intervient dans la forme adimensionnelle de l'équation de Schrödinger (équation (7)) et déterminer sa dimension.
Q12. Donner la dimension de ξ. Dans la suite, ξ sera appelée abscisse réduite et sera notée x.

Résolution numérique par la méthode de Numerov

On peut résoudre numériquement l'équation (7) pour trouver les valeur de Ψ pour le niveau d'énergie ε par la méthode de Numerov. Il s'agit d'une méthode permettant de réaliser l'intégration d'équations différentielles ordinaires du deuxième ordre de la forme :
(d^2 y)/(dx^2) = − g(x)y(x) + s(x).
Q13. Donner les expressions des fonctions g(x), y(x) et s(x) en procédant par identification à partir des équations (7) et (8).
Pour discrétiser l'équation différentielle (8), on effectue des développements limités. L'intervalle des abscisses x est divisé en un nombre fini de points régulièrement espacés de Δx, le pas d'espace. On utilisera l'indice i pour repérer la position des différents points sur l'abscisse discrétisée.
Q14. Donner les étapes permettant d'obtenir l'expression discrétisée suivante (équation (9)) en précisant à quel ordre ont été effectués les développements limités :
y_(i + 1) + y_(i − 1) = 2y_i + y_i^(′′) × (Δx)^2 + y_i^(′′′′) × ((Δx)^4)/(12),
avec x_i l'abscisse au point i, y_(i + 1) = y(x_i + Δx) et y_(i − 1) = y(x_i − Δx) pour Δx petit, y^(′′)(x) = (d^2 y)/(dx^2) et y^(′′′′)(x) = (d^4 y)/(dx^4).
Pour simplifier l'équation (9), on pose λ_i = y_i^(′′).
Q15. Montrer, en précisant les étapes intermédiaires, que l'on peut exprimer y_i^(′′′′) de la façon suivante :
y_i^(′′′′) = (λ_(i + 1) + λ_(i − 1) − 2λ_i)/((Δx)^2).
L'équation (9) peut se mettre sous la forme factorisée suivante (équation (11)) où a et b sont des scalaires et g_i une fonction de y_i et λ_i dont l'expression est obtenue à partir de l'équation (8):
y_(i + 1)(1 + a × g_(i + 1)((Δx)^2)/(12)) = 2y_i(1 − b × g_i((Δx)^2)/(12)) − y_(i − 1)(1 + a × g_(i − 1)((Δx)^2)/(12)).
Q16. À l'aide de l'équation (8), donner l'expression de g_i en fonction de λ_i et y_i. Déterminer les valeurs des scalaires a et b.
D'un point de vue pratique, on introduit une fonction intermédiaire f telle que : f_i = 1 + g_i((Δx)^2)/(12).
Q17. Démontrer alors la formule de récurrence suivante :
y_(i + 1) = ((12 − 10f_i)y_i − f_(i − 1)y_(i − 1))/(f_(i + 1))
L'intégration de l'équation (8) à l'aide de la formule de récurrence (12) établie à la question précédente nécessite de connaître les valeurs des premiers termes de la suite : y_0 et y_1. Les valeurs de ces deux paramètres seront discutées plus loin. Pour résoudre numériquement l'équation (7) par la méthode de Numerov, on prendra g_i = 2[ε − 1/2x_i^2] avec ε le paramètre de l'équation (7) dont l'expression est établie à la Q11.

Algorithme général de résolution du problème

Note : les codes numériques demandés au candidat devront être réalisés dans le langage Python. On supposera la bibliothèque «numpy » chargée. Une annexe présentant les fonctions usuelles de Python est disponible pages 14 et 15 . Les commentaires suffisants à la compréhension du programme devront être apportés et des noms de variables explicites devront être utilisés lorsque ceux-ci ne sont pas imposés.
Pour résoudre numériquement ce problème et obtenir simultanément les valeurs de la fonction d'onde Ψ_n(x) et l'énergie réduite ε_n correspondant à l'état quantique n, ( n est un entier positif ou nul), on souhaite développer une méthode par dichotomie pour approcher la valeur de l'énergie réduite ε_n.
Il existe des fonctions d'onde Ψ(x) satisfaisant à l'équation (7) pour toute valeur de ε. Cependant toutes ne vérifient pas les conditions aux limites. Les conditions aux limites ne sont satisfaites que pour un ensemble discret de valeurs de ε.
Les solutions discrètes sont repérées par un indice n qui représente le nombre de zéros de la fonction (défini comme le nombre de points d'intersection entre la fonction d'onde et l'axe des abscisses). Il est donc nécessaire de trouver une condition permettant de s'assurer que la fonction d'onde puisse satisfaire les conditions aux limites et donc que l'énergie obtenue corresponde bien à un état quantique. Cette condition peut porter par exemple sur le nombre de nœuds de la fonction d'onde Ψ_n(x).
Q18. À partir de l'allure des fonctions d'onde Ψ_n(x) associées aux premiers niveaux d'énergie de l'oscillateur harmonique quantique unidimensionnel de la figure 4, déterminer la condition portant sur le nombre de nœuds de la fonction d'onde Ψ_n(x) qui doit être satisfaite pour une énergie réduite ε_n (on supposera par la suite que cette condition est valable pour tout niveau d'énergie).
Figure 4 - Allure des fonctions d'onde Ψ_n(x) associées aux premiers niveaux d'énergie de l'oscillateur harmonique quantique unidimensionnel
Q19. À l'aide de l'allure des courbes de la figure 4, on supposera qu'il est possible de restreindre l'intervalle d'intégration aux seules valeurs positives. Donner la relation unique entre Ψ_n(x) et Ψ_n(− x). On supposera par la suite que cette hypothèse est valable pour tout niveau d'énergie.
Le graphe de la figure 5 illustre sur un exemple (pour n = 2 ) ce que l'on obtient lorsqu'on résout numériquement l'équation de Schrödinger pour une énergie réduite ε qui ne correspond pas à une valeur propre. On observe que la fonction d'onde diverge au lieu de tendre vers 0 quand on s'éloigne de l'origine.
Q20. Préciser l'observation supplémentaire qui peut être réalisée sur le nombre de nœuds de la fonction d'onde Ψ_2(x) dans le cas où ε est supérieure à la valeur propre ε_2. Dans la suite, on supposera que cette observation est valable pour tout n.
Figure 5 - Allures de la fonction d'onde Ψ_2(x) sur l'intervalle positif pour la valeur propre ε_2, pour une énergie réduite ε supérieure à ε_2 et pour une énergie réduite ε inférieure à ε_2. Les trois courbes se superposent jusque vers x = 5
L'algorithme général de résolution du problème par une méthode dichotomique est donc le suivant :
  • choix d'une valeur de n;
  • choix de deux valeurs limites de ε(ε_(min) et ε_(max)) qui contiennent ε_n.
Puis débute la boucle conditionnelle (condition portant sur un critère de convergence) :
  • résolution de l'équation : intégration de Ψ_n(x) en partant de x = 0 par valeurs croissantes à l'aide de la formule de récurrence (équation (12)) pour ε = (ε_(min) + ε_(max))/2;
  • on compare le nombre de nœuds avec le nombre quantique n :
  • si le nombre de nœuds est supérieur à n, alors ε > ε_n et dans ce cas on itère en affectant à ε_(max) la valeur de ε;
  • sinon on itère en affectant à ε_(min) la valeur de ε;
  • on calcule la différence entre ε_(max) et ε_(min). Si celle-ci est inférieure au critère de convergence choisi suffisamment petit, on arrête les itérations.

Codage de l'algorithme

Pour réaliser l'intégration numérique de l'équation (7), il faut tout d'abord définir Δx le pas d'intégration. L'abscisse réduite est comprise entre les valeurs xmin = 0 et xmax = 6. On souhaite diviser le segment en 100 intervalles de même longueur. On appelle imax le nombre de valeurs des abscisses comprises entre xmin et xmax.
Q21. Donner la valeur numérique de imax. Donner ensuite le code permettant de calculer le pas de position Δx (noté dx ) en fonction de xmin, xmax et imax.
Q22. Donner le code permettant de calculer les valeurs du vecteur xmesh qui contient les valeurs des abscisses réduites et du vecteur vpot qui contient les valeurs du potentiel V_i = V(x_i) = 0, 5x_i^2 pour chaque pas d'intégration.
L'intégration numérique de l'équation de Schrödinger nécessite le choix des valeurs des termes y_0 et y_1. Celui-ci dépend de la parité de la fonction d'onde Ψ_n(x) :
  • si n est impair, alors y_0 = 0 et y_1 peut prendre n'importe quelle valeur finie (on prendra pour le code y_1 = 1 );
  • si n est pair, alors y_0 peut prendre n'importe quelle valeur finie (on prendra pour le code y_0 = 1 ) et y_1 est obtenu par la formule de Numerov (équation (12)): y_1 = ((12 − 10f_0)y_0)/(2f_1).
Q23. Démontrer l'expression y_1 = ((12 − 10f_0)y_0)/(2f_1) dans le cas où n est pair.
On suppose dans la suite que le nombre quantique n a déjà été défini par l'utilisateur. On note nodes la variable correspondant au nombre quantique n qui est aussi le nombre de nœuds de la fonction d'onde et y le vecteur contenant les valeurs de la fonction d'onde. On suppose également que les valeurs ε_(min) et ε_(max) ont été définies (elle seront notées emin et emax). On prendra ε_(min) = 0 et pour ε_(max) la valeur maximale du vecteur vpot.
Q24. Écrire le code de la fonction calcul_f(e) qui permet de calculer et de retourner les valeurs de la fonction f de l'algorithme de Numerov pour chaque valeur de x. La variable e correspond à l'énergie réduite ε.
On souhaite maintenant développer une fonction calcul_y_noeuds (nodes, f ) qui renvoie y le vecteur contenant les valeurs de la fonction d'onde et ncross le nombre de nœuds. Sa structure est fournie dans le code suivant (page 11), il est incomplet et les portions à compléter sont demandées dans les questions suivantes.
#Fonction ayant pour objet de calculer les valeurs de la fonction
d'onde et du nombre de nœuds
def calcul_y_noeuds(nodes,f):
    #Calcul des valeurs initiales y0 et y1
    #Initialisation de la variable y
    y =
    #Nombre pair de nœuds
    if ___-_-__ == nodes:
        y[0] =
        y[1] =
    #Nombre impair de nœuds
    else:
        y[0] =
        y[1] =
    #Intégration et comptage du nombre de nœuds
    #Initialisation de la valeur de ncross
    #Boucle de calcul des valeurs de y et du nombre de nœuds
    for i in range (__________):
        #Calcul la valeur de y[i]
        y[i] =
        #Calcul du nombre de nœuds
        -----------
        -----------
    #Arguments de sortie de la fonction calcul_y_noeuds
    return
Q25. On souhaite que le comptage du nombre de nœuds, ncross, soit intégré à la boucle de calcul des valeurs de la fonction d'onde y. Donner une méthode simple permettant de réaliser le comptage (le code n'est pas demandé dans cette question).
Q26. Recopier et compléter le code de la fonction calcul_y_noeuds (nodes, f) fourni. Les informations manquantes et attendues concernent :
  • l'initialisation de la variable y;
  • le calcul des valeurs initiales y [0] et y[1] avec la condition permettant de considérer le cas pair ;
  • l'initialisation de la variable ncross ;
  • les instructions de début et de fin pour la boucle de calcul des valeurs de y et du nombre de nœuds ;
  • le calcul des valeurs y [i] ;
  • le calcul du nombre de nœuds ;
  • les arguments de sortie de la fonction calcul_y_noeuds.
Pour obtenir une valeur de ε_n suffisamment précise par dichotomie, il est nécessaire d'intégrer les fonctions calcul_f(e) et calcul_y_noeuds (nodes, f) dans une boucle de type «while» avec une condition portant sur un critère de convergence. La condition de convergence porte sur la différence ε_(max) − ε_(min) qui doit être inférieure à une valeur suffisamment petite, par exemple 10^(− 10).
Q27. On suppose que la valeur de ncross a été calculée dans les étapes précédentes du code. Donner l'algorithme (le code est demandé à la question suivante) permettant de calculer la valeur de ε, notée e pour l'itération suivante et la valeur du critère de convergence, noté critere.
Q28. Donner le code correspondant à la boucle permettant d'obtenir la valeur de ε_n par dichotomie. Elle doit faire intervenir les deux fonctions calcul_f(e) et calcul_y_noeuds (nodes, f ).
La résolution numérique de l'équation de Schrödinger stationnaire pour l'oscillateur harmonique donne les valeurs suivantes pour les niveaux d'énergie (tableau 1) :
Niveau n Energie ε_n (sans dimension)
0 0,5
1 1,5
2 2,5
3 3,5
4 4,5
5 5,5
Tableau 1 - Évolution de l'énergie ε_n en fonction de n.
Q29. Proposer une expression permettant de déterminer la valeur de ε_n en fonction de n pour tout n compris entre 0 et 5 .
Le calcul de l'entropie à partir des énergies déterminées précédemment ne sera pas abordé ici. La contribution que l'on obtiendrait à la température de 298, 15 K serait égale à 6, 1 J mol^(− 1) K^(− 1).

II. 3 - Comparaison des différents traitements de la rotation interne du groupe méthyle

Le tableau 2 donne les valeurs de la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane pour les différents modèles et pour plusieurs températures. Les modèles utilisés pour le calcul sont le modèle de la rotation libre, celui de l'oscillateur harmonique et celui de la rotation empêchée qui correspond à la résolution de l'équation de Schrödinger avec le potentiel V déterminé à la question Q4.
Température 100 K 298, 15 K 500 K 1000 K
Modèle de l'oscillateur harmonique 0,7 6,1 10,0 15,6
Modèle de la rotation libre 7,5 12,0 14,2 17,1
Modèle de la rotation empêchée 0,7 6,8 11,2 16,1
Tableau 2 - Valeurs de la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane (unité : Jmol^(− 1) K^(− 1) ).
Q30. Commenter l'évolution globale avec la température de la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane. Justifier de manière qualitative la tendance observée.
Q31. En admettant que le modèle de la rotation empêchée fournit la meilleure estimation de la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane quelle que soit la température, émettre des recommandations quant à la possible utilisation des deux autres modèles.
Q32. Justifier de manière qualitative l'ordre des valeurs de la contribution de la rotation du groupe méthyle à l'entropie de la molécule d'éthane obtenue pour les trois modèles (S_(ri)( rotation libre ) ≥ S_(ri)( rotation empêchée ) ≥ S_(ri)( oscillateur harmonique )).

ANNEXE Fonctions de Python

Bibliothèque numpy de Python

Dans les exemples ci-dessous, la bibliothèque numpy a préalablement été importée à l'aide de la commande : import numpy as np.
On peut alors utiliser les fonctions de la bibliothèque, dont voici quelques exemples :

np.array(liste)

Description : fonction permettant de créer une matrice (de type tableau) à partir d'une liste. Argument d'entrée : une liste définissant un tableau à 1 dimension (vecteur) ou 2 dimensions (matrice).
Argument de sortie : un tableau (matrice).
Exemples: np.array([4,3,2])
⇒ [4, 3, 2]
np.array([[5],[7],[1]])
⇒ [[5]
[7]
[1]]
np.array([[3,4,10],[1,8,7]])
⇒ [[3, 4, 10]
[1187]]
A[i, j].
Description : fonction qui retourne l'élément ( i + 1, j + 1 ) de la matrice A. Pour accéder à l'intégralité de la ligne i + 1 de la matrice A, on écrit A[i, : ]. De même, pour obtenir toute la colonne j + 1 de la matrice A, on utilise la syntaxe A[ :, j].
Arguments d'entrée : une liste contenant les coordonnées de l'élément dans le tableau A.
Argument de sortie : l'élément (i + 1, j + 1 ) de la matrice A.
ATTENTION: en langage Python, les lignes d'un tableau A de dimension n × m sont numérotées de 0 à n-1 et les colonnes sont numérotées de 0 à m-1
Exemple : A = np.array ([[3, 4, 10], [1, 8, 7]])
A[0,2]
⇒ 10
A[1, : ]
⇒ [1, 8, 7]
A[:,2]
⇒ [10 7]

np.zeros((n,m))

Description : fonction créant une matrice (tableau) de dimensions n × m dont tous les éléments sont nuls.
Arguments d'entrée : un tuple de deux entiers correspondant aux dimensions de la matrice à créer.
Argument de sortie : un tableau (matrice) d'éléments nuls.
Exemple: np.zeros((3,4))
⇒ [0, 0, 0, 0]
[llll]
[llll]

np.linspace(Min,Max,nbElements)

Description: fonction créant un vecteur (tableau) de nbElements nombres espacés régulièrement entre Min et Max. Le 1^(er) élément est égal à Min, le dernier est égal à Max et les éléments sont espacés de (Max-Min)/(nbElements - 1).
Arguments d'entrée : un tuple de 3 entiers.
Argument de sortie : un tableau (vecteur).
Exemple : np.linspace(3,25,5)
⇒ [3, 8.5, 14, 19.5, 25]

np.loadtxt('nom_fichier',delimiter='string',usecols=[n])

Description : fonction permettant de lire les données sous forme de matrice dans un fichier texte et de les stocker sous forme de vecteurs.
Arguments d'entrée : le nom du fichier qui contient les données à charger, le type de caractère utilisé dans ce fichier pour séparer les données (par exemple un espace ou une virgule) et le numéro de la colonne à charger (ATTENTION, la première colonne porte le numéro 0 ).
Argument de sortie : un tableau.
Exemple : data = np.loadtxt('fichier.txt',delimiter=' ',usecols=[0])
#dans cet exemple data est un vecteur qui correspond à la première #colonne de la matrice contenue dans le fichier 'fichier.txt'.

Questions fréquentes

3 questions
Sur quoi porte le sujet de modélisation CCP PC 2020 ?
Afficher ou masquer la section

Sur quoi porte le sujet de modélisation CCP PC 2020 ?

Il porte sur le calcul de la contribution de la rotation interne du groupe méthyle à l'entropie de la molécule d'éthane, avec une résolution numérique en Python par la méthode de Numerov.

Quelles erreurs le jury a-t-il le plus relevées ?

Une expression erronée de l'énergie potentielle de rotation, des développements limités peu rigoureux, une confusion entre algorithme et code, et des unités manquantes ou fausses.

Ce sujet de modélisation PC est-il difficile ?

Le rapport signale de sérieuses lacunes dans les outils mathématiques et numériques de base chez une trop grande majorité de candidats, ce qui en fait un sujet exigeant.

Pas de description pour le moment