10
1
mirror of https://gitlab.com/scemama/QCaml.git synced 2024-12-22 12:23:31 +01:00
QCaml/SCF/HartreeFock_type.mli

29 lines
1.3 KiB
OCaml

(** Data structure representing the output of a Hartree-Fock caculation *)
type s =
{
simulation : Simulation.t; (** Simulation which was used for HF calculation *)
guess : Guess.t; (** Initial guess *)
eigenvectors : Lacaml.D.Mat.t ; (** Final eigenvectors *)
eigenvalues : Lacaml.D.Vec.t ; (** Final eigenvalues *)
nocc : int ; (** Number of occupied MOs *)
energy : float ; (** Final energy *)
nuclear_repulsion : float ; (** Nucleus-Nucleus potential energy *)
kin_energy : float ; (** Kinetic energy *)
eN_energy : float ; (** Electron-nucleus potential energy *)
coulomb_energy : float ; (** Electron-Electron potential energy *)
exchange_energy : float ; (** Exchange energy *)
iterations : (float * float * float) array;
(** Energy, convergence and HOMO-LUMO gap of all iterations *)
}
type t =
| RHF of s (** Restricted Hartree-Fock *)
| ROHF of s (** Restricted Open-shell Hartree-Fock *)
| UHF of s (** Unrestricted Hartree-Fock *)
val to_string : t -> string
(** Results of a Hartree-Fock calculation pretty-printed in a string. *)