mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-12-22 20:33:36 +01:00
65 lines
1.3 KiB
OCaml
65 lines
1.3 KiB
OCaml
(** Type *)
|
|
|
|
open Common
|
|
|
|
type t = (Element.t * Coordinate.t) array
|
|
|
|
(** Conversion *)
|
|
|
|
|
|
val of_xyz_string : string -> t
|
|
(** Create from a string, in xyz format *)
|
|
|
|
val to_xyz_string : t -> string
|
|
(** Transform into a string, in xyz format *)
|
|
|
|
val of_xyz_file : string -> t
|
|
(** Create from a file, in xyz format *)
|
|
|
|
val of_zmt_string : string -> t
|
|
(** Create from a string, in z-matrix format *)
|
|
|
|
val of_zmt_file : string -> t
|
|
(** Create from a file, in z-matrix format *)
|
|
|
|
val to_string : t -> string
|
|
(** Transform to a string, for printing *)
|
|
|
|
val of_filename : string -> t
|
|
(** Detects the type of file (xyz, z-matrix) and reads the file *)
|
|
|
|
|
|
(** Query *)
|
|
|
|
val formula : t -> string
|
|
(** Returns the chemical formula *)
|
|
|
|
val repulsion : t -> float
|
|
(** Nuclear repulsion energy, in atomic units *)
|
|
|
|
val charge : t -> Charge.t
|
|
(** Sum of the charges of the nuclei *)
|
|
|
|
val small_core : t -> int
|
|
(** Number of core electrons in the small core model *)
|
|
|
|
val large_core : t -> int
|
|
(** Number of core electrons in the large core model | *)
|
|
|
|
|
|
(** Read *)
|
|
|
|
val of_trexio : Trexio.trexio_file -> t
|
|
(** Read from a file in TREXIO format *)
|
|
|
|
(** Write *)
|
|
|
|
val to_trexio : Trexio.trexio_file -> t -> unit
|
|
(** Write to a file in TREXIO format *)
|
|
|
|
|
|
(** Printers *)
|
|
|
|
val pp : Format.formatter -> t -> unit
|
|
|