10
1
mirror of https://gitlab.com/scemama/QCaml.git synced 2024-06-29 16:34:43 +02:00
QCaml/gaussian/lib/atomic_shell_pair.mli

52 lines
1.4 KiB
OCaml

(* Type *)
(* [[file:~/QCaml/gaussian/atomic_shell_pair.org::*Type][Type:1]] *)
type t
open Common
(* Type:1 ends here *)
(* Access *)
(* [[file:~/QCaml/gaussian/atomic_shell_pair.org::*Access][Access:1]] *)
val atomic_shell_a : t -> Atomic_shell.t
val atomic_shell_b : t -> Atomic_shell.t
val contracted_shell_pairs : t -> Contracted_shell_pair.t list
val ang_mom : t -> Angular_momentum.t
val monocentric : t -> bool
val norm_scales : t -> float array
val a_minus_b : t -> Coordinate.t
val a_minus_b_sq : t -> float
(* Access:1 ends here *)
(* Creation *)
(* [[file:~/QCaml/gaussian/atomic_shell_pair.org::*Creation][Creation:1]] *)
val make : ?cutoff:float -> Atomic_shell.t -> Atomic_shell.t -> t option
(* Creation:1 ends here *)
(* Creates an atomic shell pair from two atomic shells.
*
* The contracted shell pairs contains the only pairs of primitives for which
* the norm is greater than ~cutoff~.
*
* If all the contracted shell pairs are not significant, the function returns
* ~None~. *)
(* [[file:~/QCaml/gaussian/atomic_shell_pair.org::*Creation][Creation:2]] *)
val of_atomic_shell_array : ?cutoff:float -> Atomic_shell.t array -> t option array array
(* Creation:2 ends here *)
(* Printers *)
(* [[file:~/QCaml/gaussian/atomic_shell_pair.org::*Printers][Printers:1]] *)
val pp : Format.formatter -> t -> unit
(* Printers:1 ends here *)