Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
teaching:progappchim:matplotlib_gallery:potentiel_morse [2015/05/08 09:51] – créée villersd | teaching:progappchim:matplotlib_gallery:potentiel_morse [2020/02/25 10:04] (Version actuelle) – villersd | ||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
Code source : | Code source : | ||
- | <sxh python; title : potentiel_Morse-04.py> | + | <code python potentiel_Morse-04.py> |
#! / | #! / | ||
# -*- coding: utf-8 -*- | # -*- coding: utf-8 -*- | ||
Ligne 25: | Ligne 25: | ||
return D_e * (a*(r-r_e))**2. | return D_e * (a*(r-r_e))**2. | ||
- | a=19.3E9 # en unité m-1 # paramètre de contrôle de la largeur du potentiel | + | a = 19.3E9 # en unité m-1 # paramètre de contrôle de la largeur du potentiel |
- | r_e=74.1E-12 # en unité m # distance interatomique d' | + | r_e = 74.1E-12 # en unité m # distance interatomique d' |
- | #a=19.3E-3 # en unité pm-1 | + | #a = 19.3E-3 # en unité pm-1 |
- | #r_e=74.1 # en unité pm | + | #r_e = 74.1 # en unité pm |
D_e = 7.6E-19 # J # énergie de dissociation | D_e = 7.6E-19 # J # énergie de dissociation | ||
- | NA=6.02214129E23 | + | NA = 6.02214129E23 |
- | h=1.054571726E-34 | + | h = 1.054571726E-34 |
- | mH=1.007825E-3/ | + | mH = 1.007825E-3/ |
- | nu0=(a/ | + | nu0 = (a/ |
hnu0 = h * nu0 # quantum d' | hnu0 = h * nu0 # quantum d' | ||
plt.figure(figsize=(12, | plt.figure(figsize=(12, | ||
plt.title(u" | plt.title(u" | ||
- | r=np.linspace(10., | + | r = np.linspace(10., |
- | u, | + | u,uh = V(r),Vh(r) |
plt.plot(r, | plt.plot(r, | ||
plt.plot(r, | plt.plot(r, | ||
- | xmax=400.E-12 | + | xmax = 400.E-12 |
plt.xlim(0., | plt.xlim(0., | ||
- | ymax=1.E-18 | + | ymax = 1.E-18 |
plt.ylim(-0.5e-19, | plt.ylim(-0.5e-19, | ||
plt.xlabel(u" | plt.xlabel(u" | ||
plt.ylabel(u" | plt.ylabel(u" | ||
# annotations des courbes | # annotations des courbes | ||
- | xy_annoth=(r_e+np.sqrt(ymax*0.85/ | + | xy_annoth = (r_e+np.sqrt(ymax*0.85/ |
plt.annotate(r' | plt.annotate(r' | ||
xy=xy_annoth, | xy=xy_annoth, | ||
xytext=(+40, | xytext=(+40, | ||
arrowprops=dict(arrowstyle=" | arrowprops=dict(arrowstyle=" | ||
- | xy_annotm=(xmax*0.95, | + | xy_annotm = (xmax*0.95, |
plt.annotate(r' | plt.annotate(r' | ||
xy=xy_annotm, | xy=xy_annotm, | ||
Ligne 68: | Ligne 68: | ||
# niveaux de vibrations de l' | # niveaux de vibrations de l' | ||
for v in range(10): | for v in range(10): | ||
- | E=hnu0*(v+0.5) | + | E = hnu0*(v+0.5) |
- | dr=np.sqrt(E/ | + | dr = np.sqrt(E/ |
plt.plot([r_e-dr, | plt.plot([r_e-dr, | ||
# niveaux de vibrations du potentiel de Morse : | # niveaux de vibrations du potentiel de Morse : | ||
- | # | + | #vmax = int((2.*D_e-hnu0)/ |
- | vmax=8 # compromis pour la représentation | + | vmax = 8 # compromis pour la représentation |
for v in range(vmax): | for v in range(vmax): | ||
- | E=hnu0*(v+0.5) - (hnu0*(v+0.5))**2/ | + | E = hnu0*(v+0.5) - (hnu0*(v+0.5))**2/ |
- | r1, | + | r1,r2 = r_e-np.log(1.+np.sqrt(E/ |
plt.plot([r1, | plt.plot([r1, | ||
# description de l' | # description de l' | ||
Ligne 87: | Ligne 87: | ||
# numérotation des niveaux de vibration | # numérotation des niveaux de vibration | ||
plt.text(r2*1.05, | plt.text(r2*1.05, | ||
- | #print v,E | + | #print(v,E) |
plt.show() | plt.show() | ||
- | </sxh> | + | </code> |
Figure : | Figure : | ||
Ligne 104: | Ligne 104: | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
- | * | + | * Article original : [[http:// |