10
1
mirror of https://gitlab.com/scemama/QCaml.git synced 2024-12-22 12:23:31 +01:00
QCaml/mo/frozen_core.org

2.7 KiB

Frozen core

Defines how the core electrons are frozen, for each atom.

Type

type kind =
| All_electron
| Small
| Large
type t

Creation

val make : kind -> Particles.Nuclei.t -> t

val of_int_list  : int list  -> t
val of_int_array : int array -> t
make Creates a Frozen_core.t with the same kind for all atoms
of_int_array Creates a Frozen_core.t giving the number of frozen electrons per atom
of_int_list Creates a Frozen_core.t giving the number of frozen electrons per atom
let f = Frozen_core.(make Small nuclei) ;;
val f : Frozen_core.t = [|0; 2; 2; 0|]

let f = Frozen_core.(of_int_list [0; 2; 2; 0])
val f : Frozen_core.t = [|0; 2; 2; 0|]

Access

val num_elec : t -> int
val num_mos  : t -> int
num_elec Number of frozen electrons
num_mos Number of frozen molecular orbitals
Frozen_core.num_elec f ;;
- : int = 4

Frozen_core.num_mos f ;;
- : int = 2

Printers

val pp : Format.formatter -> t -> unit