mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-06-02 03:15:19 +02:00
69 lines
2.1 KiB
OCaml
69 lines
2.1 KiB
OCaml
(* Type *)
|
|
|
|
|
|
(* [[file:~/QCaml/gaussian/atomic_shell.org::*Type][Type:1]] *)
|
|
type t
|
|
|
|
open Common
|
|
(* Type:1 ends here *)
|
|
|
|
(* Access *)
|
|
|
|
|
|
(* [[file:~/QCaml/gaussian/atomic_shell.org::*Access][Access:1]] *)
|
|
val index : t -> int
|
|
(** Index in the basis set, represented as an array of contracted shells. *)
|
|
|
|
val center : t -> Coordinate.t
|
|
(** Coordinate of the center {% $\mathbf{A} = (X_A,Y_A,Z_A)$ %}. *)
|
|
|
|
val ang_mom : t -> Angular_momentum.t
|
|
(** Total angular momentum : {% $l = n_x + n_y + n_z$ %}. *)
|
|
|
|
val size : t -> int
|
|
(** Number of contracted functions, {% $n$ %} in the definition. *)
|
|
|
|
val contracted_shells: t -> Contracted_shell.t array
|
|
(** Array of contracted gaussians *)
|
|
|
|
val exponents : t -> float array array
|
|
(** Array of exponents {% $\alpha_{ij}$ %}. The first index is the index of
|
|
the contracted function, and the second index is the index of the primitive.
|
|
*)
|
|
|
|
val coefficients : t -> float array array
|
|
(** Array of contraction coefficients {% $d_{ij}$ %}. The first index is the index of
|
|
the contracted function, and the second index is the index of the primitive.
|
|
*)
|
|
|
|
val normalizations : t -> float array array
|
|
(** Normalization coefficients {% $\mathcal{N}_{ij}$ %}. The first index is the index of
|
|
the contracted function, and the second index is the index of the primitive.
|
|
*)
|
|
|
|
val norm_scales : t -> float array
|
|
(** Scaling factors {% $f(n_x,n_y,n_z)$ %}, given in the same order as
|
|
[Angular_momentum.zkey_array ang_mom]. *)
|
|
|
|
val size_of_shell : t -> int
|
|
(** Number of contracted functions in the shell: length of {!norm_coef_scale}. *)
|
|
(* Access:1 ends here *)
|
|
|
|
(* Creation *)
|
|
|
|
|
|
(* [[file:~/QCaml/gaussian/atomic_shell.org::*Creation][Creation:1]] *)
|
|
val make : ?index:int -> Contracted_shell.t array -> t
|
|
(** Creates a contracted shell from a list of coefficients and primitives. *)
|
|
|
|
val with_index : t -> int -> t
|
|
(** Returns a copy of the contracted shell with a modified index. *)
|
|
(* Creation:1 ends here *)
|
|
|
|
(* Printers *)
|
|
|
|
|
|
(* [[file:~/QCaml/gaussian/atomic_shell.org::*Printers][Printers:1]] *)
|
|
val pp : Format.formatter -> t -> unit
|
|
(* Printers:1 ends here *)
|