QCaml/Basis/AOBasis.mli

54 lines
1.2 KiB
OCaml
Raw Normal View History

2018-06-13 17:49:58 +02:00
(** Data structure for Atomic Orbitals. *)
2020-04-19 16:54:26 +02:00
open Lacaml.D
2020-03-26 16:24:41 +01:00
type t
2018-06-13 17:49:58 +02:00
2019-02-20 18:24:44 +01:00
(** {1 Accessors} *)
2020-03-26 16:24:41 +01:00
val basis : t -> Basis.t
2019-02-20 18:24:44 +01:00
(** One-electron basis set *)
2020-03-26 16:24:41 +01:00
val overlap : t -> Overlap.t
2019-02-20 18:24:44 +01:00
(** Overlap matrix *)
2020-04-16 19:49:23 +02:00
val multipole : t -> Multipole.t
(** Multipole matrices *)
2020-03-26 16:24:41 +01:00
val ortho : t -> Orthonormalization.t
2019-02-20 18:24:44 +01:00
(** Orthonormalization matrix of the overlap *)
2020-03-26 16:24:41 +01:00
val eN_ints : t -> NucInt.t
2019-02-20 18:24:44 +01:00
(** Electron-nucleus potential integrals *)
2020-03-26 16:24:41 +01:00
val ee_ints : t -> ERI.t
2019-02-20 18:24:44 +01:00
(** Electron-electron potential integrals *)
2020-03-26 16:24:41 +01:00
val ee_lr_ints : t -> ERI_lr.t
(** Electron-electron long-range potential integrals *)
val f12_ints : t -> F12.t
2019-03-13 22:02:08 +01:00
(** Electron-electron potential integrals *)
2020-03-26 16:24:41 +01:00
val kin_ints : t -> KinInt.t
2019-02-20 18:24:44 +01:00
(** Kinetic energy integrals *)
2020-03-26 16:24:41 +01:00
val cartesian : t -> bool
2019-02-20 18:24:44 +01:00
(** If true, use cartesian Gaussians (6d, 10f, ...) *)
2020-04-19 16:54:26 +02:00
val values : t -> Coordinate.t -> Vec.t
(** Values of the AOs evaluated at a given point *)
2019-02-20 18:24:44 +01:00
(** {1 Creators} *)
2018-06-13 17:49:58 +02:00
2019-10-24 11:25:49 +02:00
val make : cartesian:bool -> basis:Basis.t -> ?f12:F12factor.t -> Nuclei.t -> t
2018-06-13 17:49:58 +02:00
(** Creates the data structure for atomic orbitals from a {Basis.t} and the
molecular geometry {Nuclei.t} *)
2018-07-05 00:39:17 +02:00
(** {2 Tests} *)
2019-02-20 18:24:44 +01:00
2020-03-26 16:24:41 +01:00
val test_case : string -> t -> unit Alcotest.test_case list