diff --git a/dev/.documenter-siteinfo.json b/dev/.documenter-siteinfo.json index 6cb5abe..58bac92 100644 --- a/dev/.documenter-siteinfo.json +++ b/dev/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.10.2","generation_timestamp":"2024-03-28T18:30:53","documenter_version":"1.3.0"}} \ No newline at end of file +{"documenter":{"julia_version":"1.10.2","generation_timestamp":"2024-03-28T18:47:03","documenter_version":"1.3.0"}} \ No newline at end of file diff --git a/dev/API/index.html b/dev/API/index.html index 8c788f1..a708154 100644 --- a/dev/API/index.html +++ b/dev/API/index.html @@ -1,7 +1,7 @@ -API reference · Antique.jl

API reference

Antique.DeltaPotentialType

DeltaPotential(α=1.0, m=1.0, ℏ=1.0)

$\alpha$ is the potential strength, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.HarmonicOscillatorType

HarmonicOscillator(k=1.0, m=1.0, ℏ=1.0)

$k$ is the force constant, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.HydrogenAtomType

HydrogenAtom(Z=1, mₑ=1.0, a₀=1.0, Eₕ=1.0, ℏ=1.0)

$Z$ is the atomic number, $m_\mathrm{e}$ is the electron mass, $a_0$is the Bohr radius, $E_\mathrm{h}$ is the Hartree energy and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.InfinitePotentialWellType

InfinitePotentialWell(L=1.0, m=1.0, ℏ=1.0)

$L$ is the length of the box, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.MorsePotentialType

MP = MorsePotential(rₑ=2.0, Dₑ=0.1, k=0.1, µ=918.1, ℏ=1.0)

$r_\mathrm{e}$ is the equilibrium bond distance, $D__\mathrm{e}$ is the the well depth , $k$ is the force constant, $\mu$ is the reduced mass and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.PoschlTellerType

PoschlTeller(lambda=1.0)

$\lambda$ determines the potential strength. This model is defined dimensionless, i.e. $x$ is given in units of a characteristic length $x_0$, and $E$ in units of a characteristic energy, e.g. $E_\mathrm{char} = \frac{\hbar^2}{2 m x_0^2}$.

source
Antique.EMethod

E(model::DeltaPotential)

\[E = - \frac{m\alpha^2}{2\hbar^2}\]

source
Antique.EMethod

E(model::HarmonicOscillator; n=0)

\[E_n = \hbar \omega \left( n + \frac{1}{2} \right),\]

where $\omega = \sqrt{k/m}$ is the angular frequency.

source
Antique.EMethod

E(model::HydrogenAtom; n=1)

\[E_n +API reference · Antique.jl

API reference

Antique.DeltaPotentialType

DeltaPotential(α=1.0, m=1.0, ℏ=1.0)

$\alpha$ is the potential strength, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.HarmonicOscillatorType

HarmonicOscillator(k=1.0, m=1.0, ℏ=1.0)

$k$ is the force constant, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.HydrogenAtomType

HydrogenAtom(Z=1, mₑ=1.0, a₀=1.0, Eₕ=1.0, ℏ=1.0)

$Z$ is the atomic number, $m_\mathrm{e}$ is the electron mass, $a_0$is the Bohr radius, $E_\mathrm{h}$ is the Hartree energy and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.InfinitePotentialWellType

InfinitePotentialWell(L=1.0, m=1.0, ℏ=1.0)

$L$ is the length of the box, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.MorsePotentialType

MP = MorsePotential(rₑ=2.0, Dₑ=0.1, k=0.1, µ=918.1, ℏ=1.0)

$r_\mathrm{e}$ is the equilibrium bond distance, $D__\mathrm{e}$ is the the well depth , $k$ is the force constant, $\mu$ is the reduced mass and $\hbar$ is the reduced Planck constant (Dirac's constant).

source
Antique.PoschlTellerType

PoschlTeller(lambda=1.0)

$\lambda$ determines the potential strength. This model is defined dimensionless, i.e. $x$ is given in units of a characteristic length $x_0$, and $E$ in units of a characteristic energy, e.g. $E_\mathrm{char} = \frac{\hbar^2}{2 m x_0^2}$.

source
Antique.EMethod

E(model::DeltaPotential)

\[E = - \frac{m\alpha^2}{2\hbar^2}\]

source
Antique.EMethod

E(model::HarmonicOscillator; n=0)

\[E_n = \hbar \omega \left( n + \frac{1}{2} \right),\]

where $\omega = \sqrt{k/m}$ is the angular frequency.

source
Antique.EMethod

E(model::HydrogenAtom; n=1)

\[E_n = -\frac{m_\mathrm{e} e^4 Z^2}{2n^2(4\pi\varepsilon_0)^2\hbar^2} -= -\frac{Z^2}{2n^2} E_\mathrm{h},\]

where $E_\mathrm{h}$ is the Hartree energy, one of atomic unit. About atomic units, see section 3.9.2 of the IUPAC GreenBook. In other units, $E_\mathrm{h} = 27.211~386~245~988(53)~\mathrm{eV}$ from here.

source
Antique.EMethod

E(model::InfinitePotentialWell; n=1)

\[E_n = \frac{\hbar^2 n^2 \pi^2}{2 m L^2}\]

source
Antique.EMethod

E(model::MorsePotential; n=0)

\[E_n = - D_\mathrm{e} + \hbar \omega \left( n + \frac{1}{2} \right) - \chi \hbar \omega \left( n + \frac{1}{2} \right)^2,\]

where $\omega = \sqrt{k/µ}$ and $\chi = \frac{\hbar\omega}{4D_\mathrm{e}}$ are defined.

source
Antique.EMethod

E(model::PoschlTeller; n=0)

\[E_n = -\frac{\mu^2}{2},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$.

source
Antique.HMethod

H(model::HarmonicOscillator, x; n=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} += -\frac{Z^2}{2n^2} E_\mathrm{h},\]

where $E_\mathrm{h}$ is the Hartree energy, one of atomic unit. About atomic units, see section 3.9.2 of the IUPAC GreenBook. In other units, $E_\mathrm{h} = 27.211~386~245~988(53)~\mathrm{eV}$ from here.

source
Antique.EMethod

E(model::InfinitePotentialWell; n=1)

\[E_n = \frac{\hbar^2 n^2 \pi^2}{2 m L^2}\]

source
Antique.EMethod

E(model::MorsePotential; n=0)

\[E_n = - D_\mathrm{e} + \hbar \omega \left( n + \frac{1}{2} \right) - \chi \hbar \omega \left( n + \frac{1}{2} \right)^2,\]

where $\omega = \sqrt{k/µ}$ and $\chi = \frac{\hbar\omega}{4D_\mathrm{e}}$ are defined.

source
Antique.EMethod

E(model::PoschlTeller; n=0)

\[E_n = -\frac{\mu^2}{2},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$.

source
Antique.HMethod

H(model::HarmonicOscillator, x; n=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} H_{n}(x) &:= (-1)^n \mathrm{e}^{x^2} \frac{\mathrm{d}^n}{\mathrm{d}x^n} \mathrm{e}^{-x^2} \\ &= n! \sum_{m=0}^{\lfloor n/2 \rfloor} \frac{(-1)^m}{m! (n-2m)!}(2 x)^{n-2m}. @@ -17,7 +17,7 @@ H_{8}(x) &= 1680 - 13440 x^{2} + 13440 x^{4} - 3584 x^{6} + 256 x^{8}, \\ H_{9}(x) &= 30240 x - 80640 x^{3} + 48384 x^{5} - 9216 x^{7} + 512 x^{9}, \\ &\vdots -\end{aligned}\]

source
Antique.LMethod

L(model::HydrogenAtom, x; n=0, k=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} +\end{aligned}\]

source
Antique.LMethod

L(model::HydrogenAtom, x; n=0, k=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} L_n^{k}(x) &= \frac{\mathrm{d}^k}{\mathrm{d}x^k} L_n(x) \\ &= \frac{\mathrm{d}^k}{\mathrm{d}x^k} \frac{1}{n!} \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right) \\ @@ -40,7 +40,7 @@ L_4^3(x) &= 4 - x, \\ L_4^4(x) &= 1, \\ \vdots -\end{aligned}\]

source
Antique.LMethod

L(model::MorsePotential, x; n=0, α=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} +\end{aligned}\]

source
Antique.LMethod

L(model::MorsePotential, x; n=0, α=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} L_n^{(\alpha)}(x) &= \frac{x^{-\alpha}e^x}{n!} \frac{d^n}{dx^n}\left(x^{n+\alpha}e^{-x}\right) \\ &= \sum_{k=0}^n(-1)^k \left(\begin{array}{l} n+\alpha \\ n-k \end{array}\right) \frac{x^k}{k !} \\ @@ -62,7 +62,7 @@ L_4^{(3)}(x) &= 35 - 35 x + 21/2 x^{2} - 7/6 x^{3} + 1/24 x^{4}, \\ L_4^{(4)}(x) &= 70 - 56 x + 14 x^{2} - 4/3 x^{3} + 1/24 x^{4}, \\ \vdots -\end{aligned}\]

source
Antique.PMethod

P(model::HydrogenAtom, x; n=0, m=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} +\end{aligned}\]

source
Antique.PMethod

P(model::HydrogenAtom, x; n=0, m=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} P_n^m(x) &= \left( 1-x^2 \right)^{m/2} \frac{\mathrm{d}^m}{\mathrm{d}x^m} P_n(x) \\ &= \left( 1-x^2 \right)^{m/2} \frac{\mathrm{d}^m}{\mathrm{d}x^m} \frac{1}{2^n n!} \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left[ \left( x^2-1 \right)^n \right] \\ @@ -84,22 +84,22 @@ P_{4}^{3}(x) &= \left(105 x - 210 x^{2}\right)\sqrt{1-x^2}, \\ P_{4}^{4}(x) &= 105 - 420 x + 420 x^{2}, \\ & \vdots -\end{aligned}\]

source
Antique.PMethod

P(model::PoschlTeller, x; n=0, m=0)

Associated Legendre polynomials are the associated Legendre functions for integer indices. Please note here, that for the Poschl-Teller potential we use a slightly different notation of the associated Legendre functions as compared to the model HydrogenAtom. Here we have an additional factor $(-1)^\m$.

source
Antique.RMethod

R(model::HydrogenAtom, r; n=1, l=0)

\[R_{nl}(r) = -\sqrt{\frac{(n-l-1)!}{2n(n+l)!} \left(\frac{2Z}{n a_0}\right)^3} \left(\frac{2Zr}{n a_0}\right)^l \exp \left(-\frac{Zr}{n a_0}\right) L_{n+l}^{2l+1} \left(\frac{2Zr}{n a_0}\right),\]

where Laguerre polynomials are defined as $L_n(x) = \frac{1}{n!} \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$, and associated Laguerre polynomials are defined as $L_n^{k}(x) = \frac{\mathrm{d}^k}{\mathrm{d}x^k} L_n(x)$. Note that replace $2n(n+l)!$ with $2n[(n+l)!]^3$ if Laguerre polynomials are defined as $L_n(x) = \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$. The domain is $0\leq r \lt \infty$.

source
Antique.VMethod

V(model::DeltaPotential, x)

\[V(x) = -\alpha \delta(x).\]

source
Antique.VMethod

V(model::HarmonicOscillator, x)

\[V(x) +\end{aligned}\]

source
Antique.PMethod

P(model::PoschlTeller, x; n=0, m=0)

Associated Legendre polynomials are the associated Legendre functions for integer indices. Please note here, that for the Poschl-Teller potential we use a slightly different notation of the associated Legendre functions as compared to the model HydrogenAtom. Here we have an additional factor $(-1)^\m$.

source
Antique.RMethod

R(model::HydrogenAtom, r; n=1, l=0)

\[R_{nl}(r) = -\sqrt{\frac{(n-l-1)!}{2n(n+l)!} \left(\frac{2Z}{n a_0}\right)^3} \left(\frac{2Zr}{n a_0}\right)^l \exp \left(-\frac{Zr}{n a_0}\right) L_{n+l}^{2l+1} \left(\frac{2Zr}{n a_0}\right),\]

where Laguerre polynomials are defined as $L_n(x) = \frac{1}{n!} \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$, and associated Laguerre polynomials are defined as $L_n^{k}(x) = \frac{\mathrm{d}^k}{\mathrm{d}x^k} L_n(x)$. Note that replace $2n(n+l)!$ with $2n[(n+l)!]^3$ if Laguerre polynomials are defined as $L_n(x) = \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$. The domain is $0\leq r \lt \infty$.

source
Antique.VMethod

V(model::DeltaPotential, x)

\[V(x) = -\alpha \delta(x).\]

source
Antique.VMethod

V(model::HarmonicOscillator, x)

\[V(x) = \frac{1}{2} k x^2 = \frac{1}{2} m \omega^2 x^2 -= \frac{1}{2} \hbar \omega \xi^2,\]

where $\omega = \sqrt{k/m}$ is the angular frequency and $\xi = \sqrt{\frac{m\omega}{\hbar}}x$.

source
Antique.VMethod

V(model::HydrogenAtom, r)

\[\begin{aligned} += \frac{1}{2} \hbar \omega \xi^2,\]

where $\omega = \sqrt{k/m}$ is the angular frequency and $\xi = \sqrt{\frac{m\omega}{\hbar}}x$.

source
Antique.VMethod

V(model::HydrogenAtom, r)

\[\begin{aligned} V(r) &= - \frac{Ze^2}{4\pi\varepsilon_0 r} &= - \frac{e^2}{4\pi\varepsilon_0 a_0} \frac{Z}{r/a_0} &= - \frac{Z}{r/a_0} E_\mathrm{h}, -\end{aligned}\]

The domain is $0\leq r \lt \infty$.

source
Antique.VMethod

V(model::InfinitePotentialWell; x)

\[V(x) = +\end{aligned}\]

The domain is $0\leq r \lt \infty$.

source
Antique.VMethod

V(model::InfinitePotentialWell; x)

\[V(x) = \left\{ \begin{array}{ll} \infty & x \lt 0, L \lt x \\ 0 & 0 \leq x \leq L \end{array} -\right.\]

source
Antique.VMethod

V(model::MorsePotential, r)

\[V(r) = D_\mathrm{e} \left( \mathrm{e}^{-2a(r-r_e)} - 2\mathrm{e}^{-a(r-r_e)} \right),\]

where $a = \sqrt{\frac{k}{2Dₑ}}$ is defined. The domain is $0\leq r \lt \infty$.

source
Antique.VMethod

V(model::PoschlTeller, x)

\[\begin{aligned} +\right.\]

source
Antique.VMethod

V(model::MorsePotential, r)

\[V(r) = D_\mathrm{e} \left( \mathrm{e}^{-2a(r-r_e)} - 2\mathrm{e}^{-a(r-r_e)} \right),\]

where $a = \sqrt{\frac{k}{2Dₑ}}$ is defined. The domain is $0\leq r \lt \infty$.

source
Antique.VMethod

V(model::PoschlTeller, x)

\[\begin{aligned} V(x) &= -\frac{\lambda(\lambda+1)}{2} \mathrm{sech}(x)^2 &= -\frac{\lambda(\lambda+1)}{2} \frac{1}{\mathrm{cosh}(x)^2}. -\end{aligned}\]

source
Antique.YMethod

Y(model::HydrogenAtom, θ, φ; l=0, m=0)

\[Y_{lm}(\theta,\varphi) = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{2l+1}{4\pi} \frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} (\cos\theta) \mathrm{e}^{im\varphi}.\]

The domain is $0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$. Note that some variants are connected by

\[i^{|m|+m} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^m \sqrt{\frac{(l-m)!}{(l+m)!}} P_l^{m}.\]

source
Antique.nmaxMethod

nmax(model::PoschlTeller)

\[n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1.\]

source
Antique.nₘₐₓMethod

nₘₐₓ(model::MorsePotential)

\[n_\mathrm{max} = \left\lfloor \frac{2 D_e - \omega}{\omega} \right\rfloor,\]

where $\omega = \sqrt{k/µ}$ is defined.

source
Antique.ψMethod

ψ(model::DeltaPotential, x)

\[\psi(x) = \frac{\sqrt{m\alpha}}{\hbar} \mathrm{e}^{-m\alpha |x|/\hbar^2}\]

source
Antique.ψMethod

ψ(model::HarmonicOscillator, x; n=0)

\[\psi_n(x) = A_n H_n(\xi) \exp{\left( -\frac{\xi^2}{2} \right)},\]

where $\omega = \sqrt{k/m}$, $\xi = \sqrt{\frac{m\omega}{\hbar}}x$, $A_n = \sqrt{\frac{1}{n! 2^n} \sqrt{\frac{m\omega}{\pi\hbar}}}$, $H_n(x) = (-1)^n \mathrm{e}^{x^2} \frac{\mathrm{d}^n}{\mathrm{d}x^n} \mathrm{e}^{-x^2}$ are defined.

source
Antique.ψMethod

ψ(model::HydrogenAtom, r, θ, φ; n=1, l=0, m=0)

\[\psi_{nlm}(\pmb{r}) = R_{nl}(r) Y_{lm}(\theta,\varphi)\]

The domain is $0\leq r \lt \infty, 0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$.

source
Antique.ψMethod

ψ(model::InfinitePotentialWell, x; n=1)

\[\psi_n(x) = \sqrt{\frac{2}{L}} \sin \frac{n\pi x}{L}\]

source
Antique.ψMethod

ψ(model::MorsePotential, r; n=0)

\[\psi_n(r) = N_n z^{\lambda-n-1/2} \mathrm{e}^{-z/2} L_n^{(2\lambda-2n-1)}(\xi),\]

$N_n = \sqrt{\frac{n!(2\lambda-2n-1)a}{\Gamma(2\lambda-n)}}$, $\lambda = \frac{\sqrt{2\mu D_\mathrm{e}}}{a\hbar}$, $a = \sqrt{\frac{k}{2Dₑ}}$, $L_n^{(\alpha)}(x) = \frac{x^{-\alpha} \mathrm{e}^x}{n !} \frac{\mathrm{d}^n}{\mathrm{d} x^n}\left(\mathrm{e}^{-x} x^{n+\alpha}\right)$, $\xi := 2\lambda\mathrm{e}^{-a(r-r_e)}$ are defined. The domain is $0\leq r \lt \infty$.

source
Antique.ψMethod

ψ(model::PoschlTeller, x; n=0)

\[\psi_n(x) = P_\lambda^{\mu}(\mathrm{tanh}(x)) \sqrt{\mu\frac{\Gamma(\lambda-\mu+1)}{\Gamma(\lambda+\mu+1)}},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$ and $P_\lambda^{\mu}$ are the associated Legendre functions.

source
+\end{aligned}\]

source
Antique.YMethod

Y(model::HydrogenAtom, θ, φ; l=0, m=0)

\[Y_{lm}(\theta,\varphi) = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{2l+1}{4\pi} \frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} (\cos\theta) \mathrm{e}^{im\varphi}.\]

The domain is $0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$. Note that some variants are connected by

\[i^{|m|+m} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^m \sqrt{\frac{(l-m)!}{(l+m)!}} P_l^{m}.\]

source
Antique.nmaxMethod

nmax(model::PoschlTeller)

\[n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1.\]

source
Antique.nₘₐₓMethod

nₘₐₓ(model::MorsePotential)

\[n_\mathrm{max} = \left\lfloor \frac{2 D_e - \omega}{\omega} \right\rfloor,\]

where $\omega = \sqrt{k/µ}$ is defined.

source
Antique.ψMethod

ψ(model::DeltaPotential, x)

\[\psi(x) = \frac{\sqrt{m\alpha}}{\hbar} \mathrm{e}^{-m\alpha |x|/\hbar^2}\]

source
Antique.ψMethod

ψ(model::HarmonicOscillator, x; n=0)

\[\psi_n(x) = A_n H_n(\xi) \exp{\left( -\frac{\xi^2}{2} \right)},\]

where $\omega = \sqrt{k/m}$, $\xi = \sqrt{\frac{m\omega}{\hbar}}x$, $A_n = \sqrt{\frac{1}{n! 2^n} \sqrt{\frac{m\omega}{\pi\hbar}}}$, $H_n(x) = (-1)^n \mathrm{e}^{x^2} \frac{\mathrm{d}^n}{\mathrm{d}x^n} \mathrm{e}^{-x^2}$ are defined.

source
Antique.ψMethod

ψ(model::HydrogenAtom, r, θ, φ; n=1, l=0, m=0)

\[\psi_{nlm}(\pmb{r}) = R_{nl}(r) Y_{lm}(\theta,\varphi)\]

The domain is $0\leq r \lt \infty, 0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$.

source
Antique.ψMethod

ψ(model::InfinitePotentialWell, x; n=1)

\[\psi_n(x) = \sqrt{\frac{2}{L}} \sin \frac{n\pi x}{L}\]

source
Antique.ψMethod

ψ(model::MorsePotential, r; n=0)

\[\psi_n(r) = N_n z^{\lambda-n-1/2} \mathrm{e}^{-z/2} L_n^{(2\lambda-2n-1)}(\xi),\]

$N_n = \sqrt{\frac{n!(2\lambda-2n-1)a}{\Gamma(2\lambda-n)}}$, $\lambda = \frac{\sqrt{2\mu D_\mathrm{e}}}{a\hbar}$, $a = \sqrt{\frac{k}{2Dₑ}}$, $L_n^{(\alpha)}(x) = \frac{x^{-\alpha} \mathrm{e}^x}{n !} \frac{\mathrm{d}^n}{\mathrm{d} x^n}\left(\mathrm{e}^{-x} x^{n+\alpha}\right)$, $\xi := 2\lambda\mathrm{e}^{-a(r-r_e)}$ are defined. The domain is $0\leq r \lt \infty$.

source
Antique.ψMethod

ψ(model::PoschlTeller, x; n=0)

\[\psi_n(x) = P_\lambda^{\mu}(\mathrm{tanh}(x)) \sqrt{\mu\frac{\Gamma(\lambda-\mu+1)}{\Gamma(\lambda+\mu+1)}},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$ and $P_\lambda^{\mu}$ are the associated Legendre functions.

source
diff --git a/dev/DeltaPotential/index.html b/dev/DeltaPotential/index.html index e23beac..be682e2 100644 --- a/dev/DeltaPotential/index.html +++ b/dev/DeltaPotential/index.html @@ -1,5 +1,5 @@ -Delta Potential · Antique.jl

Delta Potential

The Delta potential is one of the simplest models for quantum mechanical system in 1D. It always has one bound state and its wave function has a cusp at the origin.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2m} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified with the following struct.

Parameters

Antique.DeltaPotentialType

DeltaPotential(α=1.0, m=1.0, ℏ=1.0)

$\alpha$ is the potential strength, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::DeltaPotential, x)

\[V(x) = -\alpha \delta(x).\]

source

Eigen Values

Antique.EMethod

E(model::DeltaPotential)

\[E = - \frac{m\alpha^2}{2\hbar^2}\]

source

Eigen Functions

Antique.ψMethod

ψ(model::DeltaPotential, x)

\[\psi(x) = \frac{\sqrt{m\alpha}}{\hbar} \mathrm{e}^{-m\alpha |x|/\hbar^2}\]

source

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by DeltaPotential and several parameters α, m and are set as optional arguments.

using Antique
+Delta Potential · Antique.jl

Delta Potential

The Delta potential is one of the simplest models for quantum mechanical system in 1D. It always has one bound state and its wave function has a cusp at the origin.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2m} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified with the following struct.

Parameters

Antique.DeltaPotentialType

DeltaPotential(α=1.0, m=1.0, ℏ=1.0)

$\alpha$ is the potential strength, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::DeltaPotential, x)

\[V(x) = -\alpha \delta(x).\]

source

Eigen Values

Antique.EMethod

E(model::DeltaPotential)

\[E = - \frac{m\alpha^2}{2\hbar^2}\]

source

Eigen Functions

Antique.ψMethod

ψ(model::DeltaPotential, x)

\[\psi(x) = \frac{\sqrt{m\alpha}}{\hbar} \mathrm{e}^{-m\alpha |x|/\hbar^2}\]

source

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by DeltaPotential and several parameters α, m and are set as optional arguments.

using Antique
 DP = DeltaPotential(α=1.0, m=1.0, ℏ=1.0)

Parameters:

julia> DP.α
 1.0
 
@@ -50,4 +50,4 @@
 7.0 | 7.0 | 0.1 |    1.000000000000 |    1.000000000000 ✔
 7.0 | 7.0 | 1.0 |    1.000000000000 |    1.000000000000 ✔
 7.0 | 7.0 | 7.0 |    1.000000000000 |    1.000000000000 ✔
-
+
diff --git a/dev/HarmonicOscillator/index.html b/dev/HarmonicOscillator/index.html index 141ee09..be94c7f 100644 --- a/dev/HarmonicOscillator/index.html +++ b/dev/HarmonicOscillator/index.html @@ -1,8 +1,8 @@ -Harmonic Oscillator · Antique.jl

Harmonic Oscillator

The harmonic oscillator is the most frequently used model in quantum physics.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2m} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified with the following struct.

Parameters

Antique.HarmonicOscillatorType

HarmonicOscillator(k=1.0, m=1.0, ℏ=1.0)

$k$ is the force constant, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::HarmonicOscillator, x)

\[V(x) +Harmonic Oscillator · Antique.jl

Harmonic Oscillator

The harmonic oscillator is the most frequently used model in quantum physics.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2m} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified with the following struct.

Parameters

Antique.HarmonicOscillatorType

HarmonicOscillator(k=1.0, m=1.0, ℏ=1.0)

$k$ is the force constant, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::HarmonicOscillator, x)

\[V(x) = \frac{1}{2} k x^2 = \frac{1}{2} m \omega^2 x^2 -= \frac{1}{2} \hbar \omega \xi^2,\]

where $\omega = \sqrt{k/m}$ is the angular frequency and $\xi = \sqrt{\frac{m\omega}{\hbar}}x$.

source

Eigen Values

Antique.EMethod

E(model::HarmonicOscillator; n=0)

\[E_n = \hbar \omega \left( n + \frac{1}{2} \right),\]

where $\omega = \sqrt{k/m}$ is the angular frequency.

source

Eigen Functions

Antique.ψMethod

ψ(model::HarmonicOscillator, x; n=0)

\[\psi_n(x) = A_n H_n(\xi) \exp{\left( -\frac{\xi^2}{2} \right)},\]

where $\omega = \sqrt{k/m}$, $\xi = \sqrt{\frac{m\omega}{\hbar}}x$, $A_n = \sqrt{\frac{1}{n! 2^n} \sqrt{\frac{m\omega}{\pi\hbar}}}$, $H_n(x) = (-1)^n \mathrm{e}^{x^2} \frac{\mathrm{d}^n}{\mathrm{d}x^n} \mathrm{e}^{-x^2}$ are defined.

source

Hermite Polynomials

Antique.HMethod

H(model::HarmonicOscillator, x; n=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} += \frac{1}{2} \hbar \omega \xi^2,\]

where $\omega = \sqrt{k/m}$ is the angular frequency and $\xi = \sqrt{\frac{m\omega}{\hbar}}x$.

source

Eigen Values

Antique.EMethod

E(model::HarmonicOscillator; n=0)

\[E_n = \hbar \omega \left( n + \frac{1}{2} \right),\]

where $\omega = \sqrt{k/m}$ is the angular frequency.

source

Eigen Functions

Antique.ψMethod

ψ(model::HarmonicOscillator, x; n=0)

\[\psi_n(x) = A_n H_n(\xi) \exp{\left( -\frac{\xi^2}{2} \right)},\]

where $\omega = \sqrt{k/m}$, $\xi = \sqrt{\frac{m\omega}{\hbar}}x$, $A_n = \sqrt{\frac{1}{n! 2^n} \sqrt{\frac{m\omega}{\pi\hbar}}}$, $H_n(x) = (-1)^n \mathrm{e}^{x^2} \frac{\mathrm{d}^n}{\mathrm{d}x^n} \mathrm{e}^{-x^2}$ are defined.

source

Hermite Polynomials

Antique.HMethod

H(model::HarmonicOscillator, x; n=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} H_{n}(x) &:= (-1)^n \mathrm{e}^{x^2} \frac{\mathrm{d}^n}{\mathrm{d}x^n} \mathrm{e}^{-x^2} \\ &= n! \sum_{m=0}^{\lfloor n/2 \rfloor} \frac{(-1)^m}{m! (n-2m)!}(2 x)^{n-2m}. @@ -18,7 +18,7 @@ H_{8}(x) &= 1680 - 13440 x^{2} + 13440 x^{4} - 3584 x^{6} + 256 x^{8}, \\ H_{9}(x) &= 30240 x - 80640 x^{3} + 48384 x^{5} - 9216 x^{7} + 512 x^{9}, \\ &\vdots -\end{aligned}\]

source

Reference

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by HarmonicOscillator and several parameters k, m and are set as optional arguments.

using Antique
+\end{aligned}\]

source

Reference

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by HarmonicOscillator and several parameters k, m and are set as optional arguments.

using Antique
 HO = HarmonicOscillator(k=1.0, m=1.0, ℏ=1.0)

Parameters:

julia> HO.k
 1.0
 
@@ -430,4 +430,4 @@
 5.0 |  7 |   16.770509831248 |   16.770492175222 ✔
 5.0 |  8 |   19.006577808748 |   19.006555152416 ✔
 5.0 |  9 |   21.242645786248 |   21.242617504750 ✔
-
+ diff --git a/dev/HydrogenAtom/index.html b/dev/HydrogenAtom/index.html index 7ac2629..be43c42 100644 --- a/dev/HydrogenAtom/index.html +++ b/dev/HydrogenAtom/index.html @@ -1,12 +1,12 @@ -Hydrogen Atom · Antique.jl

Hydrogen Atom

The hydrogen atom is the simplest 2-body Coulomb system.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(\pmb{r}) = E \psi(\pmb{r}),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2\mu} \frac{\mathrm{d}^2}{\mathrm{d}r ^2} + V(r),\]

where $\mu=\left(\frac{1}{m_\mathrm{e}}+\frac{1}{m_\mathrm{p}}\right)^{-1}$ is the reduced mass of electron $\mathrm{e}$ and proton $\mathrm{p}$. $\mu = m_\mathrm{e}$ holds in the limit $m_\mathrm{p}\rightarrow\infty$. Parameters are specified with the following struct.

Parameters

Antique.HydrogenAtomType

HydrogenAtom(Z=1, mₑ=1.0, a₀=1.0, Eₕ=1.0, ℏ=1.0)

$Z$ is the atomic number, $m_\mathrm{e}$ is the electron mass, $a_0$is the Bohr radius, $E_\mathrm{h}$ is the Hartree energy and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::HydrogenAtom, r)

\[\begin{aligned} +Hydrogen Atom · Antique.jl

Hydrogen Atom

The hydrogen atom is the simplest 2-body Coulomb system.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(\pmb{r}) = E \psi(\pmb{r}),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2\mu} \frac{\mathrm{d}^2}{\mathrm{d}r ^2} + V(r),\]

where $\mu=\left(\frac{1}{m_\mathrm{e}}+\frac{1}{m_\mathrm{p}}\right)^{-1}$ is the reduced mass of electron $\mathrm{e}$ and proton $\mathrm{p}$. $\mu = m_\mathrm{e}$ holds in the limit $m_\mathrm{p}\rightarrow\infty$. Parameters are specified with the following struct.

Parameters

Antique.HydrogenAtomType

HydrogenAtom(Z=1, mₑ=1.0, a₀=1.0, Eₕ=1.0, ℏ=1.0)

$Z$ is the atomic number, $m_\mathrm{e}$ is the electron mass, $a_0$is the Bohr radius, $E_\mathrm{h}$ is the Hartree energy and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::HydrogenAtom, r)

\[\begin{aligned} V(r) &= - \frac{Ze^2}{4\pi\varepsilon_0 r} &= - \frac{e^2}{4\pi\varepsilon_0 a_0} \frac{Z}{r/a_0} &= - \frac{Z}{r/a_0} E_\mathrm{h}, -\end{aligned}\]

The domain is $0\leq r \lt \infty$.

source

Eigen Values

Antique.EMethod

E(model::HydrogenAtom; n=1)

\[E_n +\end{aligned}\]

The domain is $0\leq r \lt \infty$.

source

Eigen Values

Antique.EMethod

E(model::HydrogenAtom; n=1)

\[E_n = -\frac{m_\mathrm{e} e^4 Z^2}{2n^2(4\pi\varepsilon_0)^2\hbar^2} -= -\frac{Z^2}{2n^2} E_\mathrm{h},\]

where $E_\mathrm{h}$ is the Hartree energy, one of atomic unit. About atomic units, see section 3.9.2 of the IUPAC GreenBook. In other units, $E_\mathrm{h} = 27.211~386~245~988(53)~\mathrm{eV}$ from here.

source

Eigen Functions

Antique.ψMethod

ψ(model::HydrogenAtom, r, θ, φ; n=1, l=0, m=0)

\[\psi_{nlm}(\pmb{r}) = R_{nl}(r) Y_{lm}(\theta,\varphi)\]

The domain is $0\leq r \lt \infty, 0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$.

source

Radial Functions

Antique.RMethod

R(model::HydrogenAtom, r; n=1, l=0)

\[R_{nl}(r) = -\sqrt{\frac{(n-l-1)!}{2n(n+l)!} \left(\frac{2Z}{n a_0}\right)^3} \left(\frac{2Zr}{n a_0}\right)^l \exp \left(-\frac{Zr}{n a_0}\right) L_{n+l}^{2l+1} \left(\frac{2Zr}{n a_0}\right),\]

where Laguerre polynomials are defined as $L_n(x) = \frac{1}{n!} \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$, and associated Laguerre polynomials are defined as $L_n^{k}(x) = \frac{\mathrm{d}^k}{\mathrm{d}x^k} L_n(x)$. Note that replace $2n(n+l)!$ with $2n[(n+l)!]^3$ if Laguerre polynomials are defined as $L_n(x) = \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$. The domain is $0\leq r \lt \infty$.

source

Associated Laguerre Polynomials

Antique.LMethod

L(model::HydrogenAtom, x; n=0, k=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} += -\frac{Z^2}{2n^2} E_\mathrm{h},\]

where $E_\mathrm{h}$ is the Hartree energy, one of atomic unit. About atomic units, see section 3.9.2 of the IUPAC GreenBook. In other units, $E_\mathrm{h} = 27.211~386~245~988(53)~\mathrm{eV}$ from here.

source

Eigen Functions

Antique.ψMethod

ψ(model::HydrogenAtom, r, θ, φ; n=1, l=0, m=0)

\[\psi_{nlm}(\pmb{r}) = R_{nl}(r) Y_{lm}(\theta,\varphi)\]

The domain is $0\leq r \lt \infty, 0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$.

source

Radial Functions

Antique.RMethod

R(model::HydrogenAtom, r; n=1, l=0)

\[R_{nl}(r) = -\sqrt{\frac{(n-l-1)!}{2n(n+l)!} \left(\frac{2Z}{n a_0}\right)^3} \left(\frac{2Zr}{n a_0}\right)^l \exp \left(-\frac{Zr}{n a_0}\right) L_{n+l}^{2l+1} \left(\frac{2Zr}{n a_0}\right),\]

where Laguerre polynomials are defined as $L_n(x) = \frac{1}{n!} \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$, and associated Laguerre polynomials are defined as $L_n^{k}(x) = \frac{\mathrm{d}^k}{\mathrm{d}x^k} L_n(x)$. Note that replace $2n(n+l)!$ with $2n[(n+l)!]^3$ if Laguerre polynomials are defined as $L_n(x) = \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right)$. The domain is $0\leq r \lt \infty$.

source

Associated Laguerre Polynomials

Antique.LMethod

L(model::HydrogenAtom, x; n=0, k=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} L_n^{k}(x) &= \frac{\mathrm{d}^k}{\mathrm{d}x^k} L_n(x) \\ &= \frac{\mathrm{d}^k}{\mathrm{d}x^k} \frac{1}{n!} \mathrm{e}^x \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left( \mathrm{e}^{-x} x^n \right) \\ @@ -29,7 +29,7 @@ L_4^3(x) &= 4 - x, \\ L_4^4(x) &= 1, \\ \vdots -\end{aligned}\]

source

Spherical Harmonics

Antique.YMethod

Y(model::HydrogenAtom, θ, φ; l=0, m=0)

\[Y_{lm}(\theta,\varphi) = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{2l+1}{4\pi} \frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} (\cos\theta) \mathrm{e}^{im\varphi}.\]

The domain is $0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$. Note that some variants are connected by

\[i^{|m|+m} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^m \sqrt{\frac{(l-m)!}{(l+m)!}} P_l^{m}.\]

source

Associated Legendre Polynomials

Antique.PMethod

P(model::HydrogenAtom, x; n=0, m=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} +\end{aligned}\]

source

Spherical Harmonics

Antique.YMethod

Y(model::HydrogenAtom, θ, φ; l=0, m=0)

\[Y_{lm}(\theta,\varphi) = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{2l+1}{4\pi} \frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} (\cos\theta) \mathrm{e}^{im\varphi}.\]

The domain is $0\leq \theta \lt \pi, 0\leq \varphi \lt 2\pi$. Note that some variants are connected by

\[i^{|m|+m} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^{\frac{|m|+m}{2}} \sqrt{\frac{(l-|m|)!}{(l+|m|)!}} P_l^{|m|} = (-1)^m \sqrt{\frac{(l-m)!}{(l+m)!}} P_l^{m}.\]

source

Associated Legendre Polynomials

Antique.PMethod

P(model::HydrogenAtom, x; n=0, m=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} P_n^m(x) &= \left( 1-x^2 \right)^{m/2} \frac{\mathrm{d}^m}{\mathrm{d}x^m} P_n(x) \\ &= \left( 1-x^2 \right)^{m/2} \frac{\mathrm{d}^m}{\mathrm{d}x^m} \frac{1}{2^n n!} \frac{\mathrm{d}^n}{\mathrm{d}x ^n} \left[ \left( x^2-1 \right)^n \right] \\ @@ -51,7 +51,7 @@ P_{4}^{3}(x) &= \left(105 x - 210 x^{2}\right)\sqrt{1-x^2}, \\ P_{4}^{4}(x) &= 105 - 420 x + 420 x^{2}, \\ & \vdots -\end{aligned}\]

source

References

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by HydrogenAtom and several parameters Z, Eₕ, mₑ, a₀ and are set as optional arguments.

using Antique
+\end{aligned}\]

source

References

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by HydrogenAtom and several parameters Z, Eₕ, mₑ, a₀ and are set as optional arguments.

using Antique
 H = HydrogenAtom(Z=1, Eₕ=1.0, a₀=1.0, mₑ=1.0, ℏ=1.0)

Parameters:

julia> H.Z
 1
 
@@ -449,4 +449,4 @@
 0.5 |  1 |   39.478417274195 |   39.478417604357 ✔
 1.0 |  1 |    9.869604318963 |    9.869604401089 ✔
 7.0 |  1 |    0.201420496383 |    0.201420497981 ✔
-
+ diff --git a/dev/InfinitePotentialWell/index.html b/dev/InfinitePotentialWell/index.html index d4121d2..b9ecfee 100644 --- a/dev/InfinitePotentialWell/index.html +++ b/dev/InfinitePotentialWell/index.html @@ -1,11 +1,11 @@ -Infinite Potential Well · Antique.jl

Infinite Potential Well (Particle in a Box)

The infinite potential well (particle in a box) is the simplest model for quantum mechanical system.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2m} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified with the following struct.

Parameters

Antique.InfinitePotentialWellType

InfinitePotentialWell(L=1.0, m=1.0, ℏ=1.0)

$L$ is the length of the box, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::InfinitePotentialWell; x)

\[V(x) = +Infinite Potential Well · Antique.jl

Infinite Potential Well (Particle in a Box)

The infinite potential well (particle in a box) is the simplest model for quantum mechanical system.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2m} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified with the following struct.

Parameters

Antique.InfinitePotentialWellType

InfinitePotentialWell(L=1.0, m=1.0, ℏ=1.0)

$L$ is the length of the box, $m$ is the mass of particle and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::InfinitePotentialWell; x)

\[V(x) = \left\{ \begin{array}{ll} \infty & x \lt 0, L \lt x \\ 0 & 0 \leq x \leq L \end{array} -\right.\]

source

Eigen Values

Antique.EMethod

E(model::InfinitePotentialWell; n=1)

\[E_n = \frac{\hbar^2 n^2 \pi^2}{2 m L^2}\]

source

Eigen Functions

Antique.ψMethod

ψ(model::InfinitePotentialWell, x; n=1)

\[\psi_n(x) = \sqrt{\frac{2}{L}} \sin \frac{n\pi x}{L}\]

source

Proofs

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by InfinitePotentialWell and several parameters L, m and are set as optional arguments.

using Antique
+\right.\]

source

Eigen Values

Antique.EMethod

E(model::InfinitePotentialWell; n=1)

\[E_n = \frac{\hbar^2 n^2 \pi^2}{2 m L^2}\]

source

Eigen Functions

Antique.ψMethod

ψ(model::InfinitePotentialWell, x; n=1)

\[\psi_n(x) = \sqrt{\frac{2}{L}} \sin \frac{n\pi x}{L}\]

source

Proofs

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by InfinitePotentialWell and several parameters L, m and are set as optional arguments.

using Antique
 IPW = InfinitePotentialWell(L=1.0, m=1.0, ℏ=1.0)

Parameters:

julia> IPW.L
 1.0
 
@@ -372,4 +372,4 @@
 0.5 |  1 |   39.478417274195 |   39.478417604357 ✔
 1.0 |  1 |    9.869604318963 |    9.869604401089 ✔
 7.0 |  1 |    0.201420496383 |    0.201420497981 ✔
-
+ diff --git a/dev/MorsePotential/index.html b/dev/MorsePotential/index.html index 04f4560..b5733a5 100644 --- a/dev/MorsePotential/index.html +++ b/dev/MorsePotential/index.html @@ -1,5 +1,5 @@ -Morse Potential · Antique.jl

Morse Potential

The Morse potential is a model for inter-nuclear anharmonic vibration in a diatomic molecule.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(r) = E \psi(r),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2\mu} \frac{\mathrm{d}^2}{\mathrm{d}r ^2} + V(r)\]

Parameters are specified with the following struct.

Parameters

Antique.MorsePotentialType

MP = MorsePotential(rₑ=2.0, Dₑ=0.1, k=0.1, µ=918.1, ℏ=1.0)

$r_\mathrm{e}$ is the equilibrium bond distance, $D__\mathrm{e}$ is the the well depth , $k$ is the force constant, $\mu$ is the reduced mass and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::MorsePotential, r)

\[V(r) = D_\mathrm{e} \left( \mathrm{e}^{-2a(r-r_e)} - 2\mathrm{e}^{-a(r-r_e)} \right),\]

where $a = \sqrt{\frac{k}{2Dₑ}}$ is defined. The domain is $0\leq r \lt \infty$.

source

Eigen Values

Antique.EMethod

E(model::MorsePotential; n=0)

\[E_n = - D_\mathrm{e} + \hbar \omega \left( n + \frac{1}{2} \right) - \chi \hbar \omega \left( n + \frac{1}{2} \right)^2,\]

where $\omega = \sqrt{k/µ}$ and $\chi = \frac{\hbar\omega}{4D_\mathrm{e}}$ are defined.

source

Number of Bound States

Antique.nₘₐₓMethod

nₘₐₓ(model::MorsePotential)

\[n_\mathrm{max} = \left\lfloor \frac{2 D_e - \omega}{\omega} \right\rfloor,\]

where $\omega = \sqrt{k/µ}$ is defined.

source

Eigen Functions

Antique.ψMethod

ψ(model::MorsePotential, r; n=0)

\[\psi_n(r) = N_n z^{\lambda-n-1/2} \mathrm{e}^{-z/2} L_n^{(2\lambda-2n-1)}(\xi),\]

$N_n = \sqrt{\frac{n!(2\lambda-2n-1)a}{\Gamma(2\lambda-n)}}$, $\lambda = \frac{\sqrt{2\mu D_\mathrm{e}}}{a\hbar}$, $a = \sqrt{\frac{k}{2Dₑ}}$, $L_n^{(\alpha)}(x) = \frac{x^{-\alpha} \mathrm{e}^x}{n !} \frac{\mathrm{d}^n}{\mathrm{d} x^n}\left(\mathrm{e}^{-x} x^{n+\alpha}\right)$, $\xi := 2\lambda\mathrm{e}^{-a(r-r_e)}$ are defined. The domain is $0\leq r \lt \infty$.

source

Generalized Laguerre Polynomials

Antique.LMethod

L(model::MorsePotential, x; n=0, α=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} +Morse Potential · Antique.jl

Morse Potential

The Morse potential is a model for inter-nuclear anharmonic vibration in a diatomic molecule.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(r) = E \psi(r),\]

and the Hamiltonian

\[ \hat{H} = - \frac{\hbar^2}{2\mu} \frac{\mathrm{d}^2}{\mathrm{d}r ^2} + V(r)\]

Parameters are specified with the following struct.

Parameters

Antique.MorsePotentialType

MP = MorsePotential(rₑ=2.0, Dₑ=0.1, k=0.1, µ=918.1, ℏ=1.0)

$r_\mathrm{e}$ is the equilibrium bond distance, $D__\mathrm{e}$ is the the well depth , $k$ is the force constant, $\mu$ is the reduced mass and $\hbar$ is the reduced Planck constant (Dirac's constant).

source

Potential

Antique.VMethod

V(model::MorsePotential, r)

\[V(r) = D_\mathrm{e} \left( \mathrm{e}^{-2a(r-r_e)} - 2\mathrm{e}^{-a(r-r_e)} \right),\]

where $a = \sqrt{\frac{k}{2Dₑ}}$ is defined. The domain is $0\leq r \lt \infty$.

source

Eigen Values

Antique.EMethod

E(model::MorsePotential; n=0)

\[E_n = - D_\mathrm{e} + \hbar \omega \left( n + \frac{1}{2} \right) - \chi \hbar \omega \left( n + \frac{1}{2} \right)^2,\]

where $\omega = \sqrt{k/µ}$ and $\chi = \frac{\hbar\omega}{4D_\mathrm{e}}$ are defined.

source

Number of Bound States

Antique.nₘₐₓMethod

nₘₐₓ(model::MorsePotential)

\[n_\mathrm{max} = \left\lfloor \frac{2 D_e - \omega}{\omega} \right\rfloor,\]

where $\omega = \sqrt{k/µ}$ is defined.

source

Eigen Functions

Antique.ψMethod

ψ(model::MorsePotential, r; n=0)

\[\psi_n(r) = N_n z^{\lambda-n-1/2} \mathrm{e}^{-z/2} L_n^{(2\lambda-2n-1)}(\xi),\]

$N_n = \sqrt{\frac{n!(2\lambda-2n-1)a}{\Gamma(2\lambda-n)}}$, $\lambda = \frac{\sqrt{2\mu D_\mathrm{e}}}{a\hbar}$, $a = \sqrt{\frac{k}{2Dₑ}}$, $L_n^{(\alpha)}(x) = \frac{x^{-\alpha} \mathrm{e}^x}{n !} \frac{\mathrm{d}^n}{\mathrm{d} x^n}\left(\mathrm{e}^{-x} x^{n+\alpha}\right)$, $\xi := 2\lambda\mathrm{e}^{-a(r-r_e)}$ are defined. The domain is $0\leq r \lt \infty$.

source

Generalized Laguerre Polynomials

Antique.LMethod

L(model::MorsePotential, x; n=0, α=0)

Rodrigues' formula & closed-form:

\[\begin{aligned} L_n^{(\alpha)}(x) &= \frac{x^{-\alpha}e^x}{n!} \frac{d^n}{dx^n}\left(x^{n+\alpha}e^{-x}\right) \\ &= \sum_{k=0}^n(-1)^k \left(\begin{array}{l} n+\alpha \\ n-k \end{array}\right) \frac{x^k}{k !} \\ @@ -21,7 +21,7 @@ L_4^{(3)}(x) &= 35 - 35 x + 21/2 x^{2} - 7/6 x^{3} + 1/24 x^{4}, \\ L_4^{(4)}(x) &= 70 - 56 x + 14 x^{2} - 4/3 x^{3} + 1/24 x^{4}, \\ \vdots -\end{aligned}\]

source

References

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by MorsePotential and several parameters rₑ, Dₑ, k, µ and are set as optional arguments.

# Parameters for H₂⁺
+\end{aligned}\]

source

References

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by MorsePotential and several parameters rₑ, Dₑ, k, µ and are set as optional arguments.

# Parameters for H₂⁺
 # https://doi.org/10.1002/slct.202102509
 # https://doi.org/10.5281/zenodo.5047817
 # https://physics.nist.gov/cgi-bin/cuu/Value?mpsme
@@ -837,4 +837,4 @@
 0.1 |  7 |   -0.038630997356 |   -0.038631017157 ✔
 0.1 |  8 |   -0.032413875662 |   -0.032413886246 ✔
 0.1 |  9 |   -0.026741858566 |   -0.026742018376 ✔
-
+ diff --git a/dev/PoschlTeller/index.html b/dev/PoschlTeller/index.html index 514eb35..05fe03c 100644 --- a/dev/PoschlTeller/index.html +++ b/dev/PoschlTeller/index.html @@ -1,9 +1,9 @@ -Pöschl-Teller Potential · Antique.jl

Pöschl-Teller Potential

The Pöschl-Teller potential is one of the few potentials for which the quantum mechanical Schrödinger equation has an analytical solution. It has a finite number of bound states, which can be inferred easily from its potential strength parameter. It is defined for one-dimensional systems.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{1}{2} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified within the following struct.

Parameters

Antique.PoschlTellerType

PoschlTeller(lambda=1.0)

$\lambda$ determines the potential strength. This model is defined dimensionless, i.e. $x$ is given in units of a characteristic length $x_0$, and $E$ in units of a characteristic energy, e.g. $E_\mathrm{char} = \frac{\hbar^2}{2 m x_0^2}$.

source

Potential

Antique.VMethod

V(model::PoschlTeller, x)

\[\begin{aligned} +Pöschl-Teller Potential · Antique.jl

Pöschl-Teller Potential

The Pöschl-Teller potential is one of the few potentials for which the quantum mechanical Schrödinger equation has an analytical solution. It has a finite number of bound states, which can be inferred easily from its potential strength parameter. It is defined for one-dimensional systems.

Definitions

This model is described with the time-independent Schrödinger equation

\[ \hat{H} \psi(x) = E \psi(x),\]

and the Hamiltonian

\[ \hat{H} = - \frac{1}{2} \frac{\mathrm{d}^2}{\mathrm{d}x ^2} + V(x).\]

Parameters are specified within the following struct.

Parameters

Antique.PoschlTellerType

PoschlTeller(lambda=1.0)

$\lambda$ determines the potential strength. This model is defined dimensionless, i.e. $x$ is given in units of a characteristic length $x_0$, and $E$ in units of a characteristic energy, e.g. $E_\mathrm{char} = \frac{\hbar^2}{2 m x_0^2}$.

source

Potential

Antique.VMethod

V(model::PoschlTeller, x)

\[\begin{aligned} V(x) &= -\frac{\lambda(\lambda+1)}{2} \mathrm{sech}(x)^2 &= -\frac{\lambda(\lambda+1)}{2} \frac{1}{\mathrm{cosh}(x)^2}. -\end{aligned}\]

source

Number of Bound States

Antique.nmaxMethod

nmax(model::PoschlTeller)

\[n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1.\]

source

Eigen Values

Antique.EMethod

E(model::PoschlTeller; n=0)

\[E_n = -\frac{\mu^2}{2},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$.

source

Eigen Functions

Antique.ψMethod

ψ(model::PoschlTeller, x; n=0)

\[\psi_n(x) = P_\lambda^{\mu}(\mathrm{tanh}(x)) \sqrt{\mu\frac{\Gamma(\lambda-\mu+1)}{\Gamma(\lambda+\mu+1)}},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$ and $P_\lambda^{\mu}$ are the associated Legendre functions.

source

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by PoschlTeller and a single parameter lambda. It is assumed to be used within rescaled, dimensionless variables.

using Antique
+\end{aligned}\]

source

Number of Bound States

Antique.nmaxMethod

nmax(model::PoschlTeller)

\[n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1.\]

source

Eigen Values

Antique.EMethod

E(model::PoschlTeller; n=0)

\[E_n = -\frac{\mu^2}{2},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$.

source

Eigen Functions

Antique.ψMethod

ψ(model::PoschlTeller, x; n=0)

\[\psi_n(x) = P_\lambda^{\mu}(\mathrm{tanh}(x)) \sqrt{\mu\frac{\Gamma(\lambda-\mu+1)}{\Gamma(\lambda+\mu+1)}},\]

where $\mu = \mu(n) = n_\mathrm{max}-n+1$, and $n_\mathrm{max} = \left\lfloor \lambda \right\rfloor - 1$ and $P_\lambda^{\mu}$ are the associated Legendre functions.

source

Usage & Examples

Install Antique.jl for the first use and run using Antique before each use. The energy E(), wavefunction ψ(), potential V() and some other functions are suppoted. In this system, the model is generated by PoschlTeller and a single parameter lambda. It is assumed to be used within rescaled, dimensionless variables.

using Antique
 PT = PoschlTeller(lambda=6.0)

Parameters:

julia> PT.lambda
 6.0

Eigen values:

julia> E(PT,n=0)
 -18.0
@@ -153,4 +153,4 @@
  9 |  7 |    0.000000000000 |    0.000000000000 ✔
  9 |  8 |    0.000000000000 |    0.000000000000 ✔
  9 |  9 |    1.000000000000 |    1.000000000000 ✔
-
+ diff --git a/dev/index.html b/dev/index.html index 703e824..3980542 100644 --- a/dev/index.html +++ b/dev/index.html @@ -42,4 +42,4 @@ PoschlTeller --> -

Future Works

List of quantum-mechanical systems with analytical solutions

Developer's Guide

This is the guideline for adding new models.

  1. First, please add a new issue here. We need to find a reference for the definition and analytical solutions (eigenvalues and eigenfunctions) before the development.
  2. Fork the repository on GitHub.
  3. Clone the forked repository to your local machine by Git.
  4. Add the new model name :ModelName to the models = [...] array in src/Antique.jl. : is required at the beginning.
  5. Add the file src/ModelName.jl with the same name as the model name. The most helpful code examples are harmonic oscillators for one-dimensional systems and hydrogen atoms for three-dimensional systems. We recommend that you copy these.
  6. Write the code in that file. First we need to create a structure struct ModelName with the same name as the model name (The best way is Find & Replace). Create V, E, ψ and other functions. Because the function names conflict, you must always give the structure as an argument. Multi-dispatch avoids conflict. We recommend using Revice.jl while coding. Run include("./developer/revice.jl") on the REPL or use dev.ipynb.
  7. Add test code test/ModelName.jl. At a minimum, it is recommended to check the normalization and the orthogonality of wavefunction using QuadGK.jl. All tests will be executed by executing include("./developer/test.jl"). It will take about 2 minutes to complete.
  8. Add documentation. Add either docs/ModelName.md or docs/jmd/ModelName.jmd (if you have a jmd file, the md file will be automatically generated). Include at least the definition of the Hamiltonian and the analytical solutions (eigenvalues and eigenfunctions).
  9. Add the new model into pages=[...] in docs/make.jl.
  10. Execute include("./developer/docs.jl") to compile. Please check docs/build/*.html in your browser.
  11. Push the code.
  12. Submit a pull request on GitHub.

Acknowledgment

This package was named by @KB-satou and @ultimatile.

+

Future Works

List of quantum-mechanical systems with analytical solutions

Developer's Guide

This is the guideline for adding new models.

  1. First, please add a new issue here. We need to find a reference for the definition and analytical solutions (eigenvalues and eigenfunctions) before the development.
  2. Fork the repository on GitHub.
  3. Clone the forked repository to your local machine by Git.
  4. Add the new model name :ModelName to the models = [...] array in src/Antique.jl. : is required at the beginning.
  5. Add the file src/ModelName.jl with the same name as the model name. The most helpful code examples are harmonic oscillators for one-dimensional systems and hydrogen atoms for three-dimensional systems. We recommend that you copy these.
  6. Write the code in that file. First we need to create a structure struct ModelName with the same name as the model name (The best way is Find & Replace). Create V, E, ψ and other functions. Because the function names conflict, you must always give the structure as an argument. Multi-dispatch avoids conflict. We recommend using Revice.jl while coding. Run include("./developer/revice.jl") on the REPL or use dev.ipynb.
  7. Add test code test/ModelName.jl. At a minimum, it is recommended to check the normalization and the orthogonality of wavefunction using QuadGK.jl. All tests will be executed by executing include("./developer/test.jl"). It will take about 2 minutes to complete.
  8. Add documentation. Add either docs/ModelName.md or docs/jmd/ModelName.jmd (if you have a jmd file, the md file will be automatically generated). Include at least the definition of the Hamiltonian and the analytical solutions (eigenvalues and eigenfunctions).
  9. Add the new model into pages=[...] in docs/make.jl.
  10. Execute include("./developer/docs.jl") to compile. Please check docs/build/*.html in your browser.
  11. Push the code.
  12. Submit a pull request on GitHub.

Acknowledgment

This package was named by @KB-satou and @ultimatile.

diff --git a/dev/objects.inv b/dev/objects.inv index 0c2fb7c..efdc994 100644 Binary files a/dev/objects.inv and b/dev/objects.inv differ