2021-01-01 11:46:11 +01:00
|
|
|
(* Simulation
|
|
|
|
* :PROPERTIES:
|
|
|
|
* :header-args: :noweb yes :comments both
|
|
|
|
* :END:
|
|
|
|
*
|
|
|
|
* Contains the state of the simulation.
|
|
|
|
*
|
|
|
|
* #+NAME: open *)
|
|
|
|
|
|
|
|
(* [[file:../simulation.org::open][open]] *)
|
2020-10-09 10:02:18 +02:00
|
|
|
open Common
|
|
|
|
open Particles
|
|
|
|
open Operators
|
2021-01-01 11:46:11 +01:00
|
|
|
(* open ends here *)
|
2020-10-09 10:02:18 +02:00
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* Type
|
|
|
|
*
|
|
|
|
* #+NAME: types *)
|
2020-10-09 10:02:18 +02:00
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* [[file:../simulation.org::types][types]] *)
|
|
|
|
type t
|
|
|
|
(* types ends here *)
|
2020-10-09 10:02:18 +02:00
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* Access *)
|
2020-10-09 10:02:18 +02:00
|
|
|
|
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* [[file:../simulation.org::*Access][Access:1]] *)
|
|
|
|
val nuclei : t -> Nuclei.t
|
|
|
|
val charge : t -> Charge.t
|
|
|
|
val electrons : t -> Electrons.t
|
|
|
|
val ao_basis : t -> Ao.Basis.t
|
2020-10-09 10:02:18 +02:00
|
|
|
val nuclear_repulsion : t -> float
|
2021-01-01 11:46:11 +01:00
|
|
|
val operators : t -> Operator.t list
|
|
|
|
(* Access:1 ends here *)
|
2020-10-09 10:02:18 +02:00
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* Creation *)
|
2020-10-09 10:02:18 +02:00
|
|
|
|
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* [[file:../simulation.org::*Creation][Creation:1]] *)
|
2020-10-09 10:02:18 +02:00
|
|
|
val make : ?multiplicity:int -> ?charge:int ->
|
|
|
|
?operators:Operator.t list-> nuclei:Nuclei.t ->
|
|
|
|
Ao.Basis.t -> t
|
2021-01-01 11:46:11 +01:00
|
|
|
(* Creation:1 ends here *)
|
|
|
|
|
|
|
|
(* Printers *)
|
|
|
|
|
2020-10-09 10:02:18 +02:00
|
|
|
|
2021-01-01 11:46:11 +01:00
|
|
|
(* [[file:../simulation.org::*Printers][Printers:1]] *)
|
|
|
|
val pp : Format.formatter -> t -> unit
|
|
|
|
(* Printers:1 ends here *)
|