以下は、tkWavefunction_H.py のコードに基づいて作成されたSphinx対応Markdownドキュメントです。
tkWavefunction_H モジュール
モジュール概要
水素原子の波動関数とエネルギー準位の計算を行うモジュールです。
関連リンク: :doc:tkWavefunction_H_usage
定数
このモジュールで使用される主要な物理定数と補助定数を以下に示します。
a0(float): ボーア半径。オングストローム単位に変換されています。h(float): プランク定数 (J·s)。h_bar(float): ディラック定数 (J·s)。h / (2.0 * pi)で計算されます。m_e(float): 電子の質量 (kg)。e(float): 電子の電荷 (C)。e0(float): 真空の誘電率 (F/m)。pi(float): 円周率 (numpy.pi)。kRnl(float): 動径波動関数の規格化定数。1.0 / sqrt(4.0 * pi)。KPhi(float): 球面調和関数の方位角成分の規格化定数。1.0 / sqrt(2.0 * pi)。KYlm(float): 球面調和関数の極角成分の規格化定数。sqrt(4.0 * pi)。
関数リファレンス
En(n)
主量子数に対する水素原子のエネルギー準位を計算する。
引数:
n(int): 主量子数
戻り値:
float: エネルギー準位 (eV)
get_orb_name(n, l, m)
量子数から軌道の名前(例: '1s', '2px'など)を取得する。
引数:
n(int): 主量子数l(intまたはstr): 方位量子数。s,p,d,fなどの文字または対応する整数値。m(intまたはstr): 磁気量子数。-lからlまでの整数値、またはpx,pyなどの軌道を示す文字列。
戻り値:
str: 軌道名 (例: '1s', '2py', '3dxy')
get_qnumbers(n, l, m)
軌道を表す文字列または数値から量子数(n, l, m)の組を取得する。
引数:
n(int): 主量子数l(intまたはstr): 方位量子数。s,p,d,fなどの文字または対応する整数値。m(intまたはstr): 磁気量子数。-lからlまでの整数値、またはpx,pyなどの軌道を示す文字列。
戻り値:
tuple: (n,l,m) の量子数の組
analyze_function(s)
文字列表現を解析し、波動関数のタイプとパラメータを取得する。
引数:
s(str): 解析対象の文字列 (例: '3dxy', '210r', '100a2')
戻り値:
tuple: (type_str,list_of_params) の形式で返す。type_str: 'c' (量子数指定), 'r' (軌道名指定), 'f' (その他)list_of_params:n,l,m,rettypeなど
get_by_type(f, rettype = 'c')
指定された戻り値の型に応じて複素数の成分を返す。
引数:
f(complex): 評価する複素数rettype(str): 戻り値のタイプ ('r': 実部, 'i': 虚部, 'a': 絶対値, 'a2': 絶対値の2乗, 'c': 実部と虚部)
戻り値:
tuple: 要求された成分と位相 (例:(実部, 位相)や(絶対値, 位相))、または実部と虚部のタプル(f.real, f.imag)。
Rnl_if(r, n, l, Z = 1.0)
条件分岐による解析的な動径波動関数を計算する。 (サポートされているのは n=1, l=0; n=2, l=0,1; n=3, l=0,1,2; n=4, l=0 まで)
引数:
r(floatまたはndarray): 距離n(int): 主量子数l(int): 方位量子数Z(float): 原子番号 (デフォルトは1.0)
戻り値:
floatまたはndarray: 動径波動関数の値。サポート外の場合はNone。
Rnl(r, n, l)
ラゲールの陪多項式を用いて動径波動関数を計算する。
引数:
r(floatまたはndarray): 距離n(int): 主量子数l(int): 方位量子数
戻り値:
floatまたはndarray: 動径波動関数の値
Ylm_phi_r(phi, m)
球面調和関数の実数型の方位角成分を計算する。
引数:
phi(floatまたはndarray): 方位角m(int): 磁気量子数
戻り値:
floatまたはndarray: 方位角成分の値
Ylm_phi(phi, m)
球面調和関数の複素数型の方位角成分を計算する。
引数:
phi(floatまたはndarray): 方位角m(int): 磁気量子数
戻り値:
complexまたはndarray: 方位角成分の値
Ylm_theta(theta, l, m)
ルジャンドルの陪関数を用いて球面調和関数の極角成分を計算する。
引数:
theta(floatまたはndarray): 極角l(int): 方位量子数m(int): 磁気量子数
戻り値:
floatまたはndarray: 極角成分の値
Ylm(theta, phi, l, m, phase_m = 0.0)
複素数型の球面調和関数を計算する。
引数:
theta(floatまたはndarray): 極角phi(floatまたはndarray): 方位角l(int): 方位量子数m(int): 磁気量子数phase_m(float): 位相シフト (デフォルトは0.0)
戻り値:
complexまたはndarray: 球面調和関数の値
Ylm_r(theta, phi, l, m, phase_m = 0.0)
実数型の球面調和関数を計算する。
引数:
theta(floatまたはndarray): 極角phi(floatまたはndarray): 方位角l(int): 方位量子数m(int): 磁気量子数phase_m(float): 位相シフト (デフォルトは0.0)
戻り値:
floatまたはndarray: 実数型の球面調和関数の値
Ylm_xyz(x, y, z, l, m, phase_m = 0.0)
直交座標系から実数型の球面調和関数を計算する。
引数:
x(floatまたはndarray): x座標y(floatまたはndarray): y座標z(floatまたはndarray): z座標l(int): 方位量子数m(int): 磁気量子数phase_m(float): 位相シフト (デフォルトは0.0)
戻り値:
floatまたはndarray: 球面調和関数の値
Ylm_real(theta, phi, l, m, phase_m = 0.0)
複素数型の球面調和関数から実関数表現(実部・虚部の組み合わせ)を計算する。
m >= 0 の場合は実部、m < 0 の場合は -m に対応する虚部を返す。
引数:
theta(floatまたはndarray): 極角phi(floatまたはndarray): 方位角l(int): 方位量子数m(int): 磁気量子数phase_m(float): 位相シフト (デフォルトは0.0)
戻り値:
floatまたはndarray: 実関数表現の球面調和関数の値
Ylm_xyz_real(x, y, z, l, m, phase_m = 0.0)
直交座標系から実関数表現の球面調和関数を計算する。
m >= 0 の場合は実部、m < 0 の場合は -m に対応する虚部を返す。
引数:
x(floatまたはndarray): x座標y(floatまたはndarray): y座標z(floatまたはndarray): z座標l(int): 方位量子数m(int): 磁気量子数phase_m(float): 位相シフト (デフォルトは0.0)
戻り値:
floatまたはndarray: 実関数表現の球面調和関数の値
psi_r(r, theta, phi, n, l, m, phase = 0.0)
球座標系での水素原子の複素波動関数を計算する。
引数:
r(floatまたはndarray): 距離theta(floatまたはndarray): 極角phi(floatまたはndarray): 方位角n(int): 主量子数l(int): 方位量子数m(int): 磁気量子数phase(float): 位相シフト (デフォルトは0.0)
戻り値:
complexまたはndarray: 波動関数の値
psi_xyz(x, y, z, n, l, m, phase = 0.0)
直交座標系での水素原子の複素波動関数を計算する。
引数:
x(floatまたはndarray): x座標y(floatまたはndarray): y座標z(floatまたはndarray): z座標n(int): 主量子数l(int): 方位量子数m(int): 磁気量子数phase(float): 位相シフト (デフォルトは0.0)
戻り値:
complexまたはndarray: 波動関数の値
psi_r_real(r, theta, phi, n, l, m, phase = 0.0)
球座標系での水素原子の実関数表現の波動関数を計算する。
m >= 0 の場合は実部、m < 0 の場合は -m に対応する虚部を返す。
引数:
r(floatまたはndarray): 距離theta(floatまたはndarray): 極角phi(floatまたはndarray): 方位角n(int): 主量子数l(int): 方位量子数m(int): 磁気量子数phase(float): 位相シフト (デフォルトは0.0)
戻り値:
floatまたはndarray: 実関数表現の波動関数の値
psi_xyz_real(x, y, z, n, l, m, phase = 0.0)
直交座標系での水素原子の実関数表現の波動関数を計算する。
m >= 0 の場合は実部、m < 0 の場合は -m に対応する虚部を返す。
引数:
x(floatまたはndarray): x座標y(floatまたはndarray): y座標z(floatまたはndarray): z座標n(int): 主量子数l(int): 方位量子数m(int): 磁気量子数phase(float): 位相シフト (デフォルトは0.0)
戻り値:
floatまたはndarray: 実関数表現の波動関数の値