10
1
mirror of https://gitlab.com/scemama/QCaml.git synced 2024-11-14 01:53:39 +01:00
QCaml/particles/lib/electrons.mli

34 lines
814 B
OCaml

(** Information related to electrons. *)
open Common
type t
val make : int -> int -> t
(** make [n_alfa] [n_beta] *)
val of_atoms : ?multiplicity:int -> ?charge:int -> Nuclei.t -> t
(** Creates the data relative to electrons for a molecular system
described by {!Nuclei.t} for a given total charge and spin multiplicity.
@param multiplicity default is 1
@param charge default is 0
@raise Invalid_argument if the spin multiplicity is not compatible with
the molecule and the total charge.
*)
val charge : t -> Charge.t
(** Sum of the charges of the electrons. *)
val n_elec : t -> int
(** Number of electrons *)
val n_alfa : t -> int
(** Number of alpha electrons *)
val n_beta : t -> int
(** Number of beta electrons *)
val multiplicity : t -> int
(** Spin multiplicity: {% $2S+1$ %} *)