Peeping in Python, pas de mécanique quantique effrayante 1: Potentiel infini de type puits

Cible

Je pense que le contenu convient à ceux qui ont appris la mécanique quantique en classe ou qui l'ont appris par eux-mêmes. S'agit-il d'étudiants de premier cycle en sciences? C'est encore mieux si vous aimez la programmation! Ce n'est pas pour les gens qui ne connaissent pas du tout la mécanique quantique, alors n'ayez pas peur ...

Résumé

En ce qui concerne les cours de mécanique quantique, je pense qu'il y a beaucoup de gens qui disent: «J'ai fini avec beaucoup de calculs terribles et je ne pouvais pas comprendre le concept.» J'étais probablement l'un d'eux.

Il existe deux types de mécanique quantique, le «mur des concepts» et le «mur des mathématiques», livre du professeur Maeno 81% 8F% E3% 82% 8F% E3% 81% 8B% E3% 82% 8B% E9% 87% 8F% E5% AD% 90% E5% 8A% 9B% E5% AD% A6-% E5% 89 % 8D% E9% 87% 8E-% E6% 98% 8C% E5% BC% 98 / dp / 4489020961) Je pense que c'est vrai, il est certainement difficile de s'habituer au concept de mécanique quantique. C'est une pause. Je pense que c'est comme lire beaucoup de manuels et enfin les comprendre. Cependant, dans le processus, le «mur mathématique» fait obstacle. C'est très gênant pour les débutants. Donc, en essayant d'aller au-delà des «mathématiques», le «concept» me saute souvent la tête. À l'inverse, si seulement «math» ou «concept» est utilisé, c'est incroyablement gênant. Non [^ 1]. ** De plus, la base des mathématiques en mécanique quantique est l'algèbre linéaire apprise à l'école de premier cycle. **

Alors, comment cette simple algèbre linéaire se transforme en ce calcul horrible, c'est parce que "** J'essaye de résoudre l'équation de Schroedinger **". Mais ce calcul n'est pas l'essence de la physique après tout. L'important est

  1. Les équations gérées par la mécanique quantique sont «l'équation de Schroedinger stationnaire» et «l'équation de Schroedinger dépendant du temps» [^ 2]

  2. La première est une "équation aux valeurs propres" et la seconde est une "équation différentielle linéaire"

Si vous savez qu'il s'agit d'une «équation de valeur propriétaire» et d'une «équation différentielle linéaire», vous n'avez pas besoin d'apprendre à la résoudre (si ce n'est pas un test). Il est plus important d'y réfléchir: si vous pouvez comprendre la physique et saisir le scénario, vous serez en mesure de comprendre le processus des mathématiques.

Empruntons la puissance de Python pour comprendre cette physique. "Equation de valeur inhérente" et "Equation différentielle linéaire" ne dépendent pas de la forme. ** Le calcul numérique peut être résolu par le même algorithme. ** "Equation de valeur inhérente" Utilise numpy (scipy) .linalg.eigh," équation différentielle linéaire "utilise scipy.integrate.odeint, scipy.fftpack.fft, ifft, etc. "Comment résoudre ce problème de manière analytique? Remettons cela à plus tard, résolvons-le d'abord numériquement, puis réfléchissons-y physiquement.

Même si vous ne comprenez pas Python, je pense que ce n'est pas grave si vous comprenez raisonnablement le langage C. À propos de la méthode de calcul numérique en Python

Accélération du calcul numérique avec NumPy: Basics Accélération du calcul numérique à l'aide de NumPy / SciPy: Application 1 Accélération du calcul numérique à l'aide de NumPy / SciPy: Application 2

Si vous regardez de telles choses, vous pourrez peut-être saisir les nuances.

Où viser

  1. Quelle est l'équation à résoudre
  2. Essayez de résoudre par calcul numérique
  3. Considérez en regardant la valeur / le graphique
  4. Comparaison avec une solution analytique

Je vais procéder dans l'ordre de. Je n'entrerai pas dans la méthode d'analyse si profondément. Veuillez vous référer au manuel. ** J'espère que la mécanique quantique pourra être avancée en préconisant une simple algèbre linéaire ** [^ 3].

Potentiel infini de type de puits

Considérez l'énergie d'une particule confinée dans un espace à une dimension. Ce que vous devez résoudre est l'équation stationnaire de Schroedinger, l'équation des valeurs propres:

H\psi_\ell(x) = \left(-\frac{\hbar^2}{2m}\frac{d^2}{dx^2} + V(x)\right)\psi_\ell(x) = E_\ell\psi_\ell(x)\\
V(x) = \begin{cases}
0 & 0 < x < L\\
\infty & otherwise
\end{cases}

Puisque $ x = 0, L $ a une paroi infiniment haute, la particule est un système qui ne peut exister que dans $ 0 <x <L $. À $ 0 <x <L $, elle se comporte comme une particule libre. Le potentiel est comme ça. Ne:

figure15.png

Quoi qu'il en soit, résolvons cela numériquement.

Différenciation

(Les détails de la différenciation peuvent être trouvés dans Accélérer le calcul numérique à l'aide de NumPy / SciPy: Application 1)

Définissons la taille du système sur $ \ left [0, L \ right] $. Il ne peut y avoir de fonction d'onde en dehors de cela.

H\psi = (K + V)\psi = \frac12
\begin{pmatrix}
\frac{2}{\Delta q^2} + V(0)&\frac{-1}{\Delta q^2}&0&\cdots&0\\ 
\frac{-1}{\Delta q^2}&\frac{2}{\Delta q^2} + V(\Delta q) &\frac{-1}{\Delta q^2}&&0\\
0 & \frac{-1}{\Delta q^2}&\frac{2}{\Delta q^2} + V(2\Delta q)&& \vdots\\
\vdots&&&\ddots&\frac{-1}{\Delta q^2}\\
0& \cdots& 0 &\frac{-1}{\Delta q^2}& \frac{2}{\Delta q^2} + V(L)
\end{pmatrix}
\begin{pmatrix}
\psi_0\\
\psi_1\\
\vdots\\
\psi_{n-1}\\
\psi_n
\end{pmatrix} = E_\ell\psi

Vous pouvez obtenir des valeurs propres et des fonctions propres en lançant ceci à numpy.linalg.eigh.

la mise en oeuvre

import numpy as np
from scipy.integrate import simps
import matplotlib.pyplot as plt
import seaborn

## set parameters
L, N = 1, 200
x, dx = np.linspace(0, L, N), L / N

## set kinetic matrix
K = np.eye(N, N)
K_sub = np.vstack((K[1:], np.array([0] * N)))
K = dx**-2 * (2 * K - K_sub - K_sub.T)

V = np.diag([0] * N)

## set Hamiltonian
H = (K + V) / 2

## solve igenvalue equation
w, v = np.linalg.eigh(H)

## plot
plt.plot(x, v.T[0] / simps(v.T[0]**2, x)**0.5, label="ground state")
plt.plot(x, v.T[1] / simps(v.T[1]**2, x)**0.5, label="1st excited state")
plt.plot(x, v.T[2] / simps(v.T[2]**2, x)**0.5, label="2nd excited state")
plt.plot(x, 2 * np.sin(np.pi * x /L) / np.sqrt(2 * L), '--', label="analytic(ground)")
plt.plot(x, -2 * np.sin(2 * np.pi * x /L) / np.sqrt(2 * L), '--', label="analytic(1st)")
plt.plot(x, -2 * np.sin(3 * np.pi * x /L) / np.sqrt(2 * L), '--', label="analytic(2nd)")
plt.show()

** Nous continuerons à résoudre l'équation des valeurs propres presque de la même manière que ci-dessus. Seul le potentiel dépend du système. ** $ m = \ hbar = L = 1 $, qui est sans dimension, est appliqué au graphique. Il est normalisé à l'époque.

figure16.png

Regardons également la valeur spécifique de l'énergie

n = np.arange(1, 11)
plt.plot(w[:10], label='numerical')
plt.plot(n**2 * np.pi**2 / (2 * L**2), '--', label='analytic')
plt.show()

figure17.png

Je les ai connectés avec une courbe, mais l'axe horizontal est le nombre quantique $ n $, donc c'est un graphe discret. Encore une fois, ** Bien qu'il soit différencié, je viens de résoudre l'équation des valeurs propres hamiltoniennes. ** Juste C'est une algèbre linéaire.

Interprétation

En considérant la fonction d'onde comme une «vague», quelle est la fonction d'onde et l'énergie autorisées lorsque le hajiko est fixe (extrémité fixe)? Et j'ai calculé cela. Et l'énergie est devenue discontinue. C'était l'une des caractéristiques de la mécanique quantique. [^ 4]. Penser $ \ psi $ comme une simple particule (c'est-à-dire la mécanique classique) ) C'est une conclusion qui ne sort jamais.

Solution analytique

La solution analytique de la fonction d'onde et de l'énergie intrinsèque


\psi(x) = \sqrt{\frac{2}{L}}\sin\left(\frac{n\pi x}{L}\right), \hspace{1cm} E_n = \frac{n^2 \pi^2 \hbar^2}{2mL^2}

J'ai déjà vu le graphique ci-dessus, mais la ligne brisée est la solution analytique, elle correspond très bien.

Pour le trouver, définissez la condition aux limites $ \ psi (0) = \ psi (L) = 0 $ et résolvez l'équation différentielle. Grâce à cette condition aux limites, le nombre quantique $ n $ apparaît et excite. L'état peut être considéré, puis la raison pour laquelle l'équation des valeurs propres est remplacée par l'équation différentielle est qu'il est difficile de la résoudre analytiquement avec l'équation des valeurs propres telle qu'elle est [^ 5].

** S'il vous plaît pensez que c'est la racine du calcul compliqué qui sortira à l'avenir. Il est difficile de résoudre analytiquement avec l'équation des valeurs propres telle qu'elle est, alors remplacez-la par une équation différentielle. Et cela se transforme en mathématiques difficiles. * *

Cependant, il n'y a pas une telle difficulté dans le calcul numérique. Il suffit de résoudre le problème des valeurs propres. C'est la forme originale de la mécanique quantique [^ 6]. N'est-il pas facile de le penser?

en conclusion

La barrière mathématique en mécanique quantique est due aux efforts de nos prédécesseurs qui ont réussi à résoudre le problème analytiquement. Cependant, le calcul peut être fait en regardant les formules. "Je veux juste résoudre l'équation des valeurs propres. Si vous comprenez cela, alors vous savez que les mathématiques ne sont pas l'essence de la physique. Et vous devriez essayer de comprendre les mathématiques comme des mathématiques. Ainsi, le «mur des concepts» et le «mur des mathématiques» Le «mur» peut être séparé. Félicitations, mais continuez ensuite.

Peeking in Python, not effary quantum Mechanics 2: finite well-type potential

[^ 1]: Je pense que certaines personnes pensent que "la mécanique quantique ne peut être comprise qu'en liant mathématiques et concepts!" Je pense que oui, mais en comprenant les deux en même temps. Sera difficile.

[^ 2]: "Il y a aussi une équation de Heisenberg" est passé parce que c'est équivalent.

[^ 3]: Certaines personnes peuvent se mettre en colère, mais je serais heureux si vous pouviez l'ignorer.

[^ 4]: L'énergie devient discrète lorsqu'elle est dans un état contraint, et c'est comme si elle était continue, par exemple, une particule libre uniforme.

[^ 5]: Une des raisons est que la matrice et l'opérateur sont des concepts différents.L'équation des valeurs propres peut être résolue car elle ne l'est que dans l'oscillateur harmonique.

[^ 6]: Je ne manque pas de respect pour les calculs analytiques. Les calculs numériques n'ont aucun sens sans les calculs analytiques (y compris les calculs approximatifs).

Recommended Posts

Peeping in Python, pas de mécanique quantique effrayante 1: Potentiel infini de type puits
Peeping en Python, pas de mécanique quantique effrayante 2: potentiel de type puits fini
Première physique computationnelle: mécanique quantique et algèbre linéaire avec python.
Générateur principal infini en Python3
Puissance totale en Python (en utilisant functools)
[Calcul scientifique / technique par Python] Résolution de l'équation de Schrödinger unidimensionnelle à l'état stationnaire par méthode de tir (1), potentiel de type puits, mécanique quantique
Python / dictionary> setdefault ()> Ajouter si pas dans le dictionnaire
Tkinter n'a pas pu être importé en Python
[Calcul scientifique / technique par Python] Résolution d'une équation de Schrödinger unidimensionnelle en régime permanent par méthode de tir (2), potentiel d'oscillateur harmonique, mécanique quantique