mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-08-31 08:43:41 +02:00
29 lines
618 B
OCaml
29 lines
618 B
OCaml
|
type t = {
|
||
|
basis : Basis.t;
|
||
|
nuclei : Nuclei.t;
|
||
|
overlap : Overlap.t lazy_t;
|
||
|
eN_ints : NucInt.t lazy_t;
|
||
|
kin_ints : KinInt.t lazy_t;
|
||
|
ee_ints : ERI.t lazy_t;
|
||
|
}
|
||
|
|
||
|
let make ~nuclei ~basis =
|
||
|
{
|
||
|
basis ; nuclei ;
|
||
|
overlap = lazy (Overlap.of_basis basis);
|
||
|
eN_ints = lazy (NucInt.of_basis_nuclei basis nuclei);
|
||
|
kin_ints = lazy (KinInt.of_basis basis);
|
||
|
ee_ints = lazy (ERI.of_basis basis);
|
||
|
}
|
||
|
|
||
|
|
||
|
let of_filenames ~basis ~nuclei =
|
||
|
let nuclei =
|
||
|
Nuclei.of_filename ~filename:nuclei
|
||
|
in
|
||
|
let basis =
|
||
|
Basis.of_nuclei_and_basis_filename ~nuclei ~filename:basis
|
||
|
in
|
||
|
make ~nuclei ~basis
|
||
|
|