1616import numpy as np
1717
1818
19- def classical_hamiltonian (mass : float , momentum : float , potential_energy : float ) -> float :
19+ def classical_hamiltonian (
20+ mass : float , momentum : float , potential_energy : float
21+ ) -> float :
2022 """
2123 Calculate the classical Hamiltonian (total energy) of a particle.
2224
@@ -43,15 +45,15 @@ def classical_hamiltonian(mass: float, momentum: float, potential_energy: float)
4345 """
4446 if mass <= 0 :
4547 raise ValueError ("Mass must be a positive value." )
46- return (momentum ** 2 ) / (2 * mass ) + potential_energy
48+ return (momentum ** 2 ) / (2 * mass ) + potential_energy
4749
4850
4951def quantum_hamiltonian_1d (
5052 mass : float ,
5153 hbar : float ,
5254 potential_energy_array : np .ndarray ,
5355 grid_spacing : float ,
54- round_to : int | None = None
56+ round_to : int | None = None ,
5557) -> np .ndarray :
5658 """
5759 Construct the 1-D quantum Hamiltonian matrix for a particle in given potential.
@@ -109,9 +111,7 @@ def quantum_hamiltonian_1d(
109111 off_diagonal = np .ones (num_points - 1 )
110112
111113 kinetic_matrix = kinetic_prefactor * (
112- np .diag (diagonal )
113- - np .diag (off_diagonal , 1 )
114- - np .diag (off_diagonal , - 1 )
114+ np .diag (diagonal ) - np .diag (off_diagonal , 1 ) - np .diag (off_diagonal , - 1 )
115115 )
116116
117117 potential_matrix = np .diag (potential_energy_array )
@@ -122,6 +122,7 @@ def quantum_hamiltonian_1d(
122122
123123 return total_hamiltonian
124124
125+
125126if __name__ == "__main__" :
126127 import doctest
127128
0 commit comments