10
1
mirror of https://gitlab.com/scemama/QCaml.git synced 2024-07-08 04:15:49 +02:00

Update documentation

This commit is contained in:
Anthony Scemama 2021-01-28 00:34:26 +01:00
parent d0f61750da
commit 8502befb65
67 changed files with 2621 additions and 936 deletions

View File

@ -1,24 +1,27 @@
#+TITLE: Atomic Orbitals #+TITLE: Atomic Orbitals
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Atomic basis set" "Atomic basis set"
#+end_src #+end_src
#+RESULTS: synopsis #+RESULTS: synopsis
: Atomic basis set : Atomic basis set
This modules contains the data structures used to characterize the
atomic basis set.
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +59,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
qcaml.particles qcaml.particles
@ -67,7 +70,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
(modules_without_implementation ao_dim) (modules_without_implementation ao_dim)
@ -86,4 +89,4 @@ with open(dunetest,'w') as f:

View File

@ -16,7 +16,7 @@
Data structure for Atomic Orbitals. Data structure for Atomic Orbitals.
** Dimensions :noexports: ** Dimensions :noexport:
#+begin_src ocaml :tangle lib/ao_dim.mli :exports none #+begin_src ocaml :tangle lib/ao_dim.mli :exports none
type t type t
@ -24,6 +24,7 @@ type t
** Polymorphic types ** Polymorphic types
<<<~Basis.t~>>>
#+NAME: types #+NAME: types
#+begin_src ocaml :tangle lib/basis_poly.mli #+begin_src ocaml :tangle lib/basis_poly.mli
type t = type t =
@ -37,6 +38,7 @@ type t =
** Types ** Types
<<<~Basis.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t type t
type ao = Ao_dim.t type ao = Ao_dim.t
@ -63,17 +65,24 @@ open Common
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
val of_nuclei_and_basis_filename : val of_nuclei_and_basis_filename :
?kind:[> `Gaussian ] -> ?operators:Operator.t list -> ?cartesian:bool -> ?kind:[> `Gaussian ] ->
nuclei:Nuclei.t -> string -> t ?operators:Operator.t list ->
?cartesian:bool ->
nuclei:Nuclei.t ->
string ->
t
#+end_src #+end_src
|--------------------------------+------------------------------------------------------------------------------------------------------------------------|
| ~of_nuclei_and_basis_filename~ | Creates the data structure for the atomic orbitals basis from a molecule ~Nuclei.t~ and the name of the basis-set file | | ~of_nuclei_and_basis_filename~ | Creates the data structure for the atomic orbitals basis from a molecule ~Nuclei.t~ and the name of the basis-set file |
|--------------------------------+------------------------------------------------------------------------------------------------------------------------|
Defaults: Defaults:
- ~kind~ : ~`Gaussian~ - ~kind~ : ~`Gaussian~
- ~operators~ : ~[]~ - ~operators~ : ~[]~
- ~cartesian~ : ~false~ - ~cartesian~ : ~false~
Example:
#+begin_example #+begin_example
let b = Ao.Basis.of_nuclei_and_basis_filename ~nuclei filename;; let b = Ao.Basis.of_nuclei_and_basis_filename ~nuclei filename;;
val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs
@ -113,6 +122,7 @@ val cartesian : t -> bool
val values : t -> Coordinate.t -> ao Vector.t val values : t -> Coordinate.t -> ao Vector.t
#+end_src #+end_src
|---------------------+--------------------------------------------------|
| ~size~ | Number of atomic orbitals in the AO basis set | | ~size~ | Number of atomic orbitals in the AO basis set |
| ~ao_basis~ | One-electron basis set | | ~ao_basis~ | One-electron basis set |
| ~overlap~ | Overlap matrix | | ~overlap~ | Overlap matrix |
@ -126,6 +136,7 @@ val values : t -> Coordinate.t -> ao Vector.t
| ~f12_over_r12_ints~ | Electron-electron potential integrals | | ~f12_over_r12_ints~ | Electron-electron potential integrals |
| ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) | | ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) |
| ~values~ | Values of the AOs evaluated at a given point | | ~values~ | Values of the AOs evaluated at a given point |
|---------------------+--------------------------------------------------|
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none

View File

@ -16,11 +16,11 @@
Data structure for Gaussian Atomic Orbitals: Data structure for Gaussian Atomic Orbitals:
$$ \[
\chi_i(\mathbf{r}) = P_i(\mathbf{r}) \sum_k c_k \exp\left( -\alpha_k (\mathbf{r-R_A})^2 \right) \chi_i(\mathbf{r}) = P_i(\mathbf{r}) \sum_k c_k \exp\left( -\alpha_k (\mathbf{r-R_A})^2 \right)
$$ \]
where the polynomial $P_Ai and the Gaussian part are both centered on where the polynomial $P_i$ and the Gaussian part are both centered on
nucleus $A$. nucleus $A$.
** Type ** Type
@ -78,6 +78,7 @@ val overlap : t -> Overlap.t
val size : t -> int val size : t -> int
#+end_src #+end_src
|---------------------+--------------------------------------------------|
| ~basis~ | One-electron basis set | | ~basis~ | One-electron basis set |
| ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) | | ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) |
| ~ee_ints~ | Electron-electron potential integrals | | ~ee_ints~ | Electron-electron potential integrals |
@ -90,6 +91,7 @@ val size : t -> int
| ~ortho~ | Orthonormalization matrix of the overlap | | ~ortho~ | Orthonormalization matrix of the overlap |
| ~overlap~ | Overlap matrix | | ~overlap~ | Overlap matrix |
| ~size~ | Number of atomic orbitals | | ~size~ | Number of atomic orbitals |
|---------------------+--------------------------------------------------|
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
let basis t = t.basis let basis t = t.basis
@ -109,10 +111,14 @@ let size t = Matrix.dim1 (Lazy.force t.overlap)
** Computation ** Computation
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
val values : t -> Coordinate.t -> Gaussian.Basis.t Vector.t val values : t ->
Coordinate.t ->
Gaussian.Basis.t Vector.t
#+end_src #+end_src
|----------+--------------------------------------------------------------|
| ~values~ | Returns the values of all the AOs evaluated at a given point | | ~values~ | Returns the values of all the AOs evaluated at a given point |
|----------+--------------------------------------------------------------|
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
module Cs = Contracted_shell module Cs = Contracted_shell
@ -136,7 +142,8 @@ let values t point =
val make : basis:Gaussian.Basis.t -> val make : basis:Gaussian.Basis.t ->
?operators:Operator.t list -> ?operators:Operator.t list ->
?cartesian:bool -> ?cartesian:bool ->
Nuclei.t -> t Nuclei.t ->
t
#+end_src #+end_src
Creates the data structure for atomic orbitals from a Gaussian basis and the Creates the data structure for atomic orbitals from a Gaussian basis and the
@ -146,6 +153,7 @@ val make : basis:Gaussian.Basis.t ->
- ~operators~ : ~[]~ - ~operators~ : ~[]~
- ~cartesian~ : ~false~ - ~cartesian~ : ~false~
Example:
#+begin_example #+begin_example
let b = Ao.Basis_gaussian.make ~basis nuclei ;; let b = Ao.Basis_gaussian.make ~basis nuclei ;;
val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs

View File

@ -1,4 +1,4 @@
(* Dimensions :noexports: *) (* Dimensions :noexport: *)
(* [[file:~/QCaml/ao/basis.org::*Dimensions][Dimensions:1]] *) (* [[file:~/QCaml/ao/basis.org::*Dimensions][Dimensions:1]] *)

View File

@ -12,13 +12,16 @@ open Common
(* | ~of_nuclei_and_basis_filename~ | Creates the data structure for the atomic orbitals basis from a molecule ~Nuclei.t~ and the name of the basis-set file | (* |--------------------------------+------------------------------------------------------------------------------------------------------------------------|
* | ~of_nuclei_and_basis_filename~ | Creates the data structure for the atomic orbitals basis from a molecule ~Nuclei.t~ and the name of the basis-set file |
* |--------------------------------+------------------------------------------------------------------------------------------------------------------------|
* *
* Defaults: * Defaults:
* - ~kind~ : ~`Gaussian~ * - ~kind~ : ~`Gaussian~
* - ~operators~ : ~[]~ * - ~operators~ : ~[]~
* - ~cartesian~ : ~false~ * - ~cartesian~ : ~false~
* *
* Example:
* #+begin_example * #+begin_example
* let b = Ao.Basis.of_nuclei_and_basis_filename ~nuclei filename;; * let b = Ao.Basis.of_nuclei_and_basis_filename ~nuclei filename;;
* val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs * val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs
@ -42,7 +45,8 @@ let of_nuclei_and_basis_filename ?(kind=`Gaussian) ?operators ?(cartesian=false)
(* | ~size~ | Number of atomic orbitals in the AO basis set | (* |---------------------+--------------------------------------------------|
* | ~size~ | Number of atomic orbitals in the AO basis set |
* | ~ao_basis~ | One-electron basis set | * | ~ao_basis~ | One-electron basis set |
* | ~overlap~ | Overlap matrix | * | ~overlap~ | Overlap matrix |
* | ~multipole~ | Multipole matrices | * | ~multipole~ | Multipole matrices |
@ -54,7 +58,8 @@ let of_nuclei_and_basis_filename ?(kind=`Gaussian) ?operators ?(cartesian=false)
* | ~f12_ints~ | Electron-electron potential integrals | * | ~f12_ints~ | Electron-electron potential integrals |
* | ~f12_over_r12_ints~ | Electron-electron potential integrals | * | ~f12_over_r12_ints~ | Electron-electron potential integrals |
* | ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) | * | ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) |
* | ~values~ | Values of the AOs evaluated at a given point | *) * | ~values~ | Values of the AOs evaluated at a given point |
* |---------------------+--------------------------------------------------| *)

View File

@ -1,5 +1,6 @@
(* Types *) (* Types
*
* <<<~Basis.t~>>> *)
(* [[file:~/QCaml/ao/basis.org::*Types][Types:1]] *) (* [[file:~/QCaml/ao/basis.org::*Types][Types:1]] *)
type t type t
@ -16,8 +17,12 @@ open Linear_algebra
(* [[file:~/QCaml/ao/basis.org::*Conversions][Conversions:1]] *) (* [[file:~/QCaml/ao/basis.org::*Conversions][Conversions:1]] *)
val of_nuclei_and_basis_filename : val of_nuclei_and_basis_filename :
?kind:[> `Gaussian ] -> ?operators:Operator.t list -> ?cartesian:bool -> ?kind:[> `Gaussian ] ->
nuclei:Nuclei.t -> string -> t ?operators:Operator.t list ->
?cartesian:bool ->
nuclei:Nuclei.t ->
string ->
t
(* Conversions:1 ends here *) (* Conversions:1 ends here *)
(* Access *) (* Access *)

View File

@ -24,7 +24,8 @@ type t =
(* | ~basis~ | One-electron basis set | (* |---------------------+--------------------------------------------------|
* | ~basis~ | One-electron basis set |
* | ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) | * | ~cartesian~ | If true, use cartesian Gaussians (6d, 10f, ...) |
* | ~ee_ints~ | Electron-electron potential integrals | * | ~ee_ints~ | Electron-electron potential integrals |
* | ~ee_lr_ints~ | Electron-electron long-range potential integrals | * | ~ee_lr_ints~ | Electron-electron long-range potential integrals |
@ -35,7 +36,8 @@ type t =
* | ~multipole~ | Multipole matrices | * | ~multipole~ | Multipole matrices |
* | ~ortho~ | Orthonormalization matrix of the overlap | * | ~ortho~ | Orthonormalization matrix of the overlap |
* | ~overlap~ | Overlap matrix | * | ~overlap~ | Overlap matrix |
* | ~size~ | Number of atomic orbitals | *) * | ~size~ | Number of atomic orbitals |
* |---------------------+--------------------------------------------------| *)
(* [[file:~/QCaml/ao/basis_gaussian.org::*Access][Access:2]] *) (* [[file:~/QCaml/ao/basis_gaussian.org::*Access][Access:2]] *)
@ -55,7 +57,9 @@ let size t = Matrix.dim1 (Lazy.force t.overlap)
(* | ~values~ | Returns the values of all the AOs evaluated at a given point | *) (* |----------+--------------------------------------------------------------|
* | ~values~ | Returns the values of all the AOs evaluated at a given point |
* |----------+--------------------------------------------------------------| *)
(* [[file:~/QCaml/ao/basis_gaussian.org::*Computation][Computation:2]] *) (* [[file:~/QCaml/ao/basis_gaussian.org::*Computation][Computation:2]] *)
@ -83,6 +87,7 @@ let values t point =
* - ~operators~ : ~[]~ * - ~operators~ : ~[]~
* - ~cartesian~ : ~false~ * - ~cartesian~ : ~false~
* *
* Example:
* #+begin_example * #+begin_example
* let b = Ao.Basis_gaussian.make ~basis nuclei ;; * let b = Ao.Basis_gaussian.make ~basis nuclei ;;
* val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs * val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs

View File

@ -35,7 +35,9 @@ val size : t -> int
(* [[file:~/QCaml/ao/basis_gaussian.org::*Computation][Computation:1]] *) (* [[file:~/QCaml/ao/basis_gaussian.org::*Computation][Computation:1]] *)
val values : t -> Coordinate.t -> Gaussian.Basis.t Vector.t val values : t ->
Coordinate.t ->
Gaussian.Basis.t Vector.t
(* Computation:1 ends here *) (* Computation:1 ends here *)
(* Creation *) (* Creation *)
@ -45,7 +47,8 @@ val values : t -> Coordinate.t -> Gaussian.Basis.t Vector.t
val make : basis:Gaussian.Basis.t -> val make : basis:Gaussian.Basis.t ->
?operators:Operator.t list -> ?operators:Operator.t list ->
?cartesian:bool -> ?cartesian:bool ->
Nuclei.t -> t Nuclei.t ->
t
(* Creation:1 ends here *) (* Creation:1 ends here *)
(* Printers *) (* Printers *)

View File

@ -1,5 +1,6 @@
(* Polymorphic types (* Polymorphic types
* *
* <<<~Basis.t~>>>
* #+NAME: types *) * #+NAME: types *)
(* [[file:~/QCaml/ao/basis.org::types][types]] *) (* [[file:~/QCaml/ao/basis.org::types][types]] *)

View File

@ -1,15 +1,15 @@
#+TITLE: Common #+TITLE: Common
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Utility functions used by all the other directories." "Utility functions used by all the other directories"
#+end_src #+end_src
#+RESULTS: synopsis #+RESULTS: synopsis
: Utility functions used by all the other directories. : Utility functions used by all the other directories
* Dune files :noexport: * Dune files :noexport:
@ -19,7 +19,7 @@
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +56,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
str str
zarith zarith
@ -65,7 +65,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -76,7 +76,7 @@ with open(dunetest,'w') as f:
functionalities to OCaml, such as support for the ~popcnt~ instruction. functionalities to OCaml, such as support for the ~popcnt~ instruction.
#+name: c-files #+name: c-files
#+begin_src elisp #+begin_src elisp
(c_names (c_names
util util
) )
@ -88,5 +88,5 @@ with open(dunetest,'w') as f:
** Parser ** Parser
#+name: lex-yacc #+name: lex-yacc
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src

View File

@ -19,6 +19,7 @@
** Type ** Type
<<<~Angular_momentum.t~>>>
#+NAME: types #+NAME: types
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t = type t =
@ -64,6 +65,7 @@ val to_string : t -> string
| ~to_int~ | Returns the $l_{max}$ value of the shell | | ~to_int~ | Returns the $l_{max}$ value of the shell |
| ~to_string~ | Converts the angular momentum into a string | | ~to_string~ | Converts the angular momentum into a string |
Example:
#+begin_example #+begin_example
Angular_momentum.of_char 'p';; Angular_momentum.of_char 'p';;
- : Angular_momentum.t = P - : Angular_momentum.t = P
@ -142,6 +144,7 @@ val zkey_array : kind -> Zkey.t array
| ~n_functions~ | Returns the number of cartesian functions in a shell. | | ~n_functions~ | Returns the number of cartesian functions in a shell. |
| ~zkey_array~ | Array of ~Zkey.t~, where each element is a a key associated with the the powers of $x,y,z$. | | ~zkey_array~ | Array of ~Zkey.t~, where each element is a a key associated with the the powers of $x,y,z$. |
Example:
#+begin_example #+begin_example
Angular_momentum.(n_functions D) ;; Angular_momentum.(n_functions D) ;;
- : int = 6 - : int = 6
@ -245,6 +248,7 @@ val ( + ) : t -> t -> t
val ( - ) : t -> t -> t val ( - ) : t -> t -> t
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Angular_momentum.(D + P);; Angular_momentum.(D + P);;
- : Angular_momentum.t = F - : Angular_momentum.t = F

View File

@ -96,6 +96,7 @@ end
** Type ** Type
<<<~Bitstring.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t type t
#+end_src #+end_src
@ -186,6 +187,7 @@ check_bool "of_x" true (one_x = (of_int x));
check_bool "of_z" true (one_x = (of_z (Z.of_int x))); check_bool "of_z" true (one_x = (of_z (Z.of_int x)));
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.of_int 15;; Bitstring.of_int 15;;
- : Bitstring.t = - : Bitstring.t =
@ -231,6 +233,7 @@ let testbit = function
| Many x -> Many.testbit x | Many x -> Many.testbit x
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.(shift_left (of_int 15) 2);; Bitstring.(shift_left (of_int 15) 2);;
- : Bitstring.t = - : Bitstring.t =
@ -296,6 +299,7 @@ let lognot = function
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.(logor (of_int 15) (of_int 73));; Bitstring.(logor (of_int 15) (of_int 73));;
- : Bitstring.t = - : Bitstring.t =
@ -333,6 +337,7 @@ let plus_one = function
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.(plus_one (of_int 15));; Bitstring.(plus_one (of_int 15));;
- : Bitstring.t = - : Bitstring.t =
@ -362,6 +367,7 @@ let popcount = function
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.(trailing_zeros (of_int 12));; Bitstring.(trailing_zeros (of_int 12));;
- : int = 2 - : int = 2
@ -387,6 +393,7 @@ let rec to_list ?(accu=[]) = function
check_bool "to_list" true ([ 1 ; 3 ; 4 ; 6 ] = (to_list (of_int 45))); check_bool "to_list" true ([ 1 ; 3 ; 4 ; 6 ] = (to_list (of_int 45)));
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.(to_list (of_int 45));; Bitstring.(to_list (of_int 45));;
- : int list = [1; 3; 4; 6] - : int list = [1; 3; 4; 6]
@ -412,6 +419,7 @@ let permutations m n =
aux (Util.binom n m) (minus_one (shift_left_one n m)) [] aux (Util.binom n m) (minus_one (shift_left_one n m)) []
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Bitstring.permutations 2 4;; Bitstring.permutations 2 4;;
- : Bitstring.t list = - : Bitstring.t list =

View File

@ -17,6 +17,7 @@
** Type ** Type
<<<~Charge.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t type t
#+end_src #+end_src

View File

@ -59,7 +59,7 @@ let multiplicity =
in in
#+end_src #+end_src
** Type ** Types
#+NAME:type #+NAME:type
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
@ -67,7 +67,9 @@ type short_opt = char
type long_opt = string type long_opt = string
type optional = Mandatory | Optional type optional = Mandatory | Optional
type documentation = string type documentation = string
type argument = With_arg of string | Without_arg | With_opt_arg of string type argument = | With_arg of string
| Without_arg
| With_opt_arg of string
type description = { type description = {
short: short_opt ; short: short_opt ;
@ -79,9 +81,9 @@ type description = {
#+end_src #+end_src
- Short option: in the command line, a dash with a single character - <<<Short option>>>: in the command line, a dash with a single character
(ex: =ls -l=) (ex: =ls -l=)
- Long option: in the command line, two dashes with a word - <<<Long option>>>: in the command line, two dashes with a word
(ex: =ls --directory=) (ex: =ls --directory=)
- Command-line options can be ~Mandatory~ or ~Optional~ - Command-line options can be ~Mandatory~ or ~Optional~
- Documentation of the option is used in the help function - Documentation of the option is used in the help function
@ -163,6 +165,7 @@ let output_text t =
Function to build the short description of the command-line Function to build the short description of the command-line
arguments, such as arguments, such as
Example:
#+begin_example #+begin_example
my_program -b <string> [-h] [-u <float>] -x <string> [--] my_program -b <string> [-h] [-u <float>] -x <string> [--]
#+end_example #+end_example
@ -184,6 +187,7 @@ let output_short x =
Function to build the long description of the command-line Function to build the long description of the command-line
arguments, such as arguments, such as
Example:
#+begin_example #+begin_example
-x --xyz=<string> Name of the file containing the nuclear -x --xyz=<string> Name of the file containing the nuclear
coordinates in xyz format coordinates in xyz format

View File

@ -13,7 +13,6 @@
:PROPERTIES: :PROPERTIES:
:header-args: :noweb yes :comments both :header-args: :noweb yes :comments both
:END: :END:
All constants used in the program. All constants used in the program.
** Thresholds ** Thresholds

View File

@ -22,6 +22,7 @@
** Type ** Type
<<<~Coordinate.t~>>>
#+NAME: types #+NAME: types
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type bohr type bohr
@ -62,7 +63,7 @@ type axis = X | Y | Z
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
val make : 'a point -> t val make : 'a point -> t
val make_angstrom : 'a point -> angstrom point val make_angstrom : 'a point -> angstrom point
val zero : bohr point val zero : bohr point
#+end_src #+end_src
| ~make~ | Creates a point in atomic units | | ~make~ | Creates a point in atomic units |
@ -114,14 +115,15 @@ val ( |+ ) : t -> t -> t
val ( |- ) : t -> t -> t val ( |- ) : t -> t -> t
#+end_src #+end_src
| ~neg~ | Negative of a point | | ~neg~ | Negative of a point |
| ~get~ | Extracts the projection of the coordinate on an axis | | ~get~ | Extracts the projection of the coordinate on an axis |
| ~dot~ | Dot product | | ~dot~ | Dot product |
| ~norm~ | $\ell{^2}$ norm of the vector | | ~norm~ | $\ell{^2}$ norm of the vector |
| ~¦.~ | Scales the vector by a constant | | $\vert .$ | Scales the vector by a constant |
| ~¦+~ | Adds two vectors | | $\vert +$ | Adds two vectors |
| ~¦-~ | Subtracts two vectors | | $\vert -$ | Subtracts two vectors |
Example:
#+begin_example #+begin_example
Coordinate.neg { x=1. ; y=2. ; z=3. } ;; Coordinate.neg { x=1. ; y=2. ; z=3. } ;;
- : Coordinate.t = -1.0000 -2.0000 -3.0000 - : Coordinate.t = -1.0000 -2.0000 -3.0000

View File

@ -31,6 +31,7 @@ open Powers
* | ~to_int~ | Returns the $l_{max}$ value of the shell | * | ~to_int~ | Returns the $l_{max}$ value of the shell |
* | ~to_string~ | Converts the angular momentum into a string | * | ~to_string~ | Converts the angular momentum into a string |
* *
* Example:
* #+begin_example * #+begin_example
* Angular_momentum.of_char 'p';; * Angular_momentum.of_char 'p';;
* - : Angular_momentum.t = P * - : Angular_momentum.t = P
@ -105,6 +106,7 @@ let of_int = function
(* | ~n_functions~ | Returns the number of cartesian functions in a shell. | (* | ~n_functions~ | Returns the number of cartesian functions in a shell. |
* | ~zkey_array~ | Array of ~Zkey.t~, where each element is a a key associated with the the powers of $x,y,z$. | * | ~zkey_array~ | Array of ~Zkey.t~, where each element is a a key associated with the the powers of $x,y,z$. |
* *
* Example:
* #+begin_example * #+begin_example
* Angular_momentum.(n_functions D) ;; * Angular_momentum.(n_functions D) ;;
* - : int = 6 * - : int = 6
@ -204,7 +206,8 @@ let zkey_array a =
(* #+begin_example (* Example:
* #+begin_example
* Angular_momentum.(D + P);; * Angular_momentum.(D + P);;
* - : Angular_momentum.t = F * - : Angular_momentum.t = F
* *

View File

@ -1,5 +1,6 @@
(* Type (* Type
* *
* <<<~Angular_momentum.t~>>>
* #+NAME: types *) * #+NAME: types *)
(* [[file:~/QCaml/common/angular_momentum.org::types][types]] *) (* [[file:~/QCaml/common/angular_momentum.org::types][types]] *)

View File

@ -114,7 +114,8 @@ let of_z x =
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.of_int 15;; * Bitstring.of_int 15;;
* - : Bitstring.t = * - : Bitstring.t =
* ++++------------------------------------------------------------ * ++++------------------------------------------------------------
@ -201,7 +202,8 @@ let plus_one = function
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.(plus_one (of_int 15));; * Bitstring.(plus_one (of_int 15));;
* - : Bitstring.t = * - : Bitstring.t =
* ----+----------------------------------------------------------- * ----+-----------------------------------------------------------
@ -233,7 +235,8 @@ let popcount = function
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.(trailing_zeros (of_int 12));; * Bitstring.(trailing_zeros (of_int 12));;
* - : int = 2 * - : int = 2
* *
@ -257,7 +260,8 @@ let rec to_list ?(accu=[]) = function
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.(to_list (of_int 45));; * Bitstring.(to_list (of_int 45));;
* - : int list = [1; 3; 4; 6] * - : int list = [1; 3; 4; 6]
* #+end_example *) * #+end_example *)

View File

@ -1,5 +1,6 @@
(* Type *) (* Type
*
* <<<~Bitstring.t~>>> *)
(* [[file:~/QCaml/common/bitstring.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/bitstring.org::*Type][Type:1]] *)
type t type t

View File

@ -1,5 +1,6 @@
(* Type *) (* Type
*
* <<<~Charge.t~>>> *)
(* [[file:~/QCaml/common/charge.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/charge.org::*Type][Type:1]] *)
type t type t

View File

@ -1,8 +1,8 @@
(* - Short option: in the command line, a dash with a single character (* - <<<Short option>>>: in the command line, a dash with a single character
* (ex: =ls -l=) * (ex: =ls -l=)
* - Long option: in the command line, two dashes with a word * - <<<Long option>>>: in the command line, two dashes with a word
* (ex: =ls --directory=) * (ex: =ls --directory=)
* - Command-line options can be ~Mandatory~ or ~Optional~ * - Command-line options can be ~Mandatory~ or ~Optional~
* - Documentation of the option is used in the help function * - Documentation of the option is used in the help function
@ -11,12 +11,14 @@
* (~git --log[=<n>]~) *) * (~git --log[=<n>]~) *)
(* [[file:~/QCaml/common/command_line.org::*Type][Type:2]] *) (* [[file:~/QCaml/common/command_line.org::*Types][Types:2]] *)
type short_opt = char type short_opt = char
type long_opt = string type long_opt = string
type optional = Mandatory | Optional type optional = Mandatory | Optional
type documentation = string type documentation = string
type argument = With_arg of string | Without_arg | With_opt_arg of string type argument = | With_arg of string
| Without_arg
| With_opt_arg of string
type description = { type description = {
short: short_opt ; short: short_opt ;
@ -25,7 +27,7 @@ type description = {
doc : documentation ; doc : documentation ;
arg : argument ; arg : argument ;
} }
(* Type:2 ends here *) (* Types:2 ends here *)
(* Mutable attributes (* Mutable attributes
* *
@ -96,6 +98,7 @@ let output_text t =
(* Function to build the short description of the command-line (* Function to build the short description of the command-line
* arguments, such as * arguments, such as
* *
* Example:
* #+begin_example * #+begin_example
* my_program -b <string> [-h] [-u <float>] -x <string> [--] * my_program -b <string> [-h] [-u <float>] -x <string> [--]
* #+end_example *) * #+end_example *)
@ -120,6 +123,7 @@ let output_short x =
(* Function to build the long description of the command-line (* Function to build the long description of the command-line
* arguments, such as * arguments, such as
* *
* Example:
* #+begin_example * #+begin_example
* -x --xyz=<string> Name of the file containing the nuclear * -x --xyz=<string> Name of the file containing the nuclear
* coordinates in xyz format * coordinates in xyz format

View File

@ -1,4 +1,4 @@
(* Type (* Types
* *
* #+NAME:type *) * #+NAME:type *)
@ -7,7 +7,9 @@ type short_opt = char
type long_opt = string type long_opt = string
type optional = Mandatory | Optional type optional = Mandatory | Optional
type documentation = string type documentation = string
type argument = With_arg of string | Without_arg | With_opt_arg of string type argument = | With_arg of string
| Without_arg
| With_opt_arg of string
type description = { type description = {
short: short_opt ; short: short_opt ;

View File

@ -53,14 +53,15 @@ let angstrom_to_bohr { x ; y ; z } =
(* | ~neg~ | Negative of a point | (* | ~neg~ | Negative of a point |
* | ~get~ | Extracts the projection of the coordinate on an axis | * | ~get~ | Extracts the projection of the coordinate on an axis |
* | ~dot~ | Dot product | * | ~dot~ | Dot product |
* | ~norm~ | $\ell{^2}$ norm of the vector | * | ~norm~ | $\ell{^2}$ norm of the vector |
* | ~¦.~ | Scales the vector by a constant | * | $\vert .$ | Scales the vector by a constant |
* | ~¦+~ | Adds two vectors | * | $\vert +$ | Adds two vectors |
* | ~¦-~ | Subtracts two vectors | * | $\vert -$ | Subtracts two vectors |
* *
* Example:
* #+begin_example * #+begin_example
* Coordinate.neg { x=1. ; y=2. ; z=3. } ;; * Coordinate.neg { x=1. ; y=2. ; z=3. } ;;
* - : Coordinate.t = -1.0000 -2.0000 -3.0000 * - : Coordinate.t = -1.0000 -2.0000 -3.0000

View File

@ -1,5 +1,6 @@
(* Type (* Type
* *
* <<<~Coordinate.t~>>>
* #+NAME: types *) * #+NAME: types *)
(* [[file:~/QCaml/common/coordinate.org::types][types]] *) (* [[file:~/QCaml/common/coordinate.org::types][types]] *)
@ -25,7 +26,7 @@ type axis = X | Y | Z
(* [[file:~/QCaml/common/coordinate.org::*Creation][Creation:1]] *) (* [[file:~/QCaml/common/coordinate.org::*Creation][Creation:1]] *)
val make : 'a point -> t val make : 'a point -> t
val make_angstrom : 'a point -> angstrom point val make_angstrom : 'a point -> angstrom point
val zero : bohr point val zero : bohr point
(* Creation:1 ends here *) (* Creation:1 ends here *)
(* Conversion *) (* Conversion *)

View File

@ -1,5 +1,6 @@
(* Type *) (* Type
*
* <<<~Non_negative_float.t~>> *)
(* [[file:~/QCaml/common/non_negative_float.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/non_negative_float.org::*Type][Type:1]] *)
type t = private float type t = private float

View File

@ -8,13 +8,14 @@ type t = {
x : int ; x : int ;
y : int ; y : int ;
z : int ; z : int ;
tot : int ; tot : int ;
} }
(* Type:2 ends here *) (* Type:2 ends here *)
(* #+begin_example (* Example:
* #+begin_example
* Powers.of_int_tuple (2,3,1);; * Powers.of_int_tuple (2,3,1);;
* - : Powers.t = x^2 + y^3 + z^1 * - : Powers.t = x^2 + y^3 + z^1
* *
@ -24,9 +25,9 @@ type t = {
(* [[file:~/QCaml/common/powers.org::*Conversions][Conversions:2]] *) (* [[file:~/QCaml/common/powers.org::*Conversions][Conversions:2]] *)
let of_int_tuple t = let of_int_tuple t =
let result = let result =
match t with match t with
| (x,y,z) -> { x ; y ; z ; tot=x+y+z } | (x,y,z) -> { x ; y ; z ; tot=x+y+z }
in in
if result.x < 0 || if result.x < 0 ||
@ -46,6 +47,7 @@ let to_int_tuple { x ; y ; z ; _ } = (x,y,z)
* | ~incr~ | Returns a new ~Powers.t~ with the power on the given axis incremented | * | ~incr~ | Returns a new ~Powers.t~ with the power on the given axis incremented |
* | ~decr~ | Returns a new ~Powers.t~ with the power on the given axis decremented. As opposed to ~of_int_tuple~, the values may become negative| * | ~decr~ | Returns a new ~Powers.t~ with the power on the given axis decremented. As opposed to ~of_int_tuple~, the values may become negative|
* *
* Example:
* #+begin_example * #+begin_example
* Powers.get Coordinate.Y (Powers.of_int_tuple (2,3,1));; * Powers.get Coordinate.Y (Powers.of_int_tuple (2,3,1));;
* - : int = 3 * - : int = 3

View File

@ -1,12 +1,13 @@
(* Type *) (* Type
*
* <<<~Powers.t~>>> *)
(* [[file:~/QCaml/common/powers.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/powers.org::*Type][Type:1]] *)
type t = private { type t = private {
x : int ; x : int ;
y : int ; y : int ;
z : int ; z : int ;
tot : int ; tot : int ;
} }
(* Type:1 ends here *) (* Type:1 ends here *)
@ -23,7 +24,7 @@ val to_int_tuple : t -> int * int * int
(* [[file:~/QCaml/common/powers.org::*Operations][Operations:1]] *) (* [[file:~/QCaml/common/powers.org::*Operations][Operations:1]] *)
val get : Coordinate.axis -> t -> int val get : Coordinate.axis -> t -> int
val incr : Coordinate.axis -> t -> t val incr : Coordinate.axis -> t -> t
val decr : Coordinate.axis -> t -> t val decr : Coordinate.axis -> t -> t
(* Operations:1 ends here *) (* Operations:1 ends here *)

View File

@ -1,5 +1,6 @@
(* Type *) (* Type
*
* <<<~Range.t~>>> *)
(* [[file:~/QCaml/common/range.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/range.org::*Type][Type:1]] *)
type t type t

View File

@ -1,5 +1,6 @@
(* Type *) (* Type
*
* <<<~Spin.t~>>> *)
(* [[file:~/QCaml/common/spin.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/spin.org::*Type][Type:1]] *)
type t = Alfa | Beta type t = Alfa | Beta

View File

@ -1,5 +1,6 @@
(* [[file:~/QCaml/common/util.org::*Erf][Erf:3]] *) (* [[file:~/QCaml/common/util.org::*Erf][Erf:3]] *)
external erf_float : float -> float = "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc] external erf_float : float -> float
= "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc]
(* Erf:3 ends here *) (* Erf:3 ends here *)
(* [[file:~/QCaml/common/util.org::*Erfc][Erfc:3]] *) (* [[file:~/QCaml/common/util.org::*Erfc][Erfc:3]] *)
@ -7,7 +8,8 @@ external erfc_float : float -> float = "erfc_float_bytecode" "erfc_float" [@@unb
(* Erfc:3 ends here *) (* Erfc:3 ends here *)
(* [[file:~/QCaml/common/util.org::*Gamma][Gamma:3]] *) (* [[file:~/QCaml/common/util.org::*Gamma][Gamma:3]] *)
external gamma_float : float -> float = "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc] external gamma_float : float -> float
= "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc]
(* Gamma:3 ends here *) (* Gamma:3 ends here *)
(* [[file:~/QCaml/common/util.org::*Popcnt][Popcnt:3]] *) (* [[file:~/QCaml/common/util.org::*Popcnt][Popcnt:3]] *)
@ -362,6 +364,7 @@ let stream_fold f init stream =
* | ~pp_float_2darray_size~ | Printer for matrices with size | * | ~pp_float_2darray_size~ | Printer for matrices with size |
* | ~pp_bitstring~ | Printer for bit strings (used by ~Bitstring~ module) | * | ~pp_bitstring~ | Printer for bit strings (used by ~Bitstring~ module) |
* *
* Example:
* #+begin_example * #+begin_example
* pp_float_array_size: * pp_float_array_size:
* [ 6: 1.000000 1.732051 1.732051 1.000000 1.732051 1.000000 ] * [ 6: 1.000000 1.732051 1.732051 1.000000 1.732051 1.000000 ]

View File

@ -1,13 +1,16 @@
(* [[file:~/QCaml/common/util.org::*Erf][Erf:2]] *) (* [[file:~/QCaml/common/util.org::*Erf][Erf:2]] *)
external erf_float : float -> float = "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc] external erf_float : float -> float
= "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc]
(* Erf:2 ends here *) (* Erf:2 ends here *)
(* [[file:~/QCaml/common/util.org::*Erfc][Erfc:2]] *) (* [[file:~/QCaml/common/util.org::*Erfc][Erfc:2]] *)
external erfc_float : float -> float = "erfc_float_bytecode" "erfc_float" [@@unboxed] [@@noalloc] external erfc_float : float -> float
= "erfc_float_bytecode" "erfc_float" [@@unboxed] [@@noalloc]
(* Erfc:2 ends here *) (* Erfc:2 ends here *)
(* [[file:~/QCaml/common/util.org::*Gamma][Gamma:2]] *) (* [[file:~/QCaml/common/util.org::*Gamma][Gamma:2]] *)
external gamma_float : float -> float = "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc] external gamma_float : float -> float
= "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc]
(* Gamma:2 ends here *) (* Gamma:2 ends here *)
(* [[file:~/QCaml/common/util.org::*Popcnt][Popcnt:2]] *) (* [[file:~/QCaml/common/util.org::*Popcnt][Popcnt:2]] *)

View File

@ -1,5 +1,6 @@
(* Types *) (* Types
*
* <<<~Zkey.t~>>> *)
(* [[file:~/QCaml/common/zkey.org::*Types][Types:1]] *) (* [[file:~/QCaml/common/zkey.org::*Types][Types:1]] *)
type t type t

View File

@ -1,5 +1,6 @@
(* Type *) (* Type
*
* <<<~Zmap.t~>>> *)
(* [[file:~/QCaml/common/zmap.org::*Type][Type:1]] *) (* [[file:~/QCaml/common/zmap.org::*Type][Type:1]] *)
include module type of Hashtbl.Make(Zkey) include module type of Hashtbl.Make(Zkey)

View File

@ -16,6 +16,7 @@
** Type ** Type
<<<~Non_negative_float.t~>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t = private float type t = private float
#+end_src #+end_src

View File

@ -7,34 +7,35 @@
(setq ml (concat lib name ".ml")) (setq ml (concat lib name ".ml"))
(setq test-ml (concat testdir name ".ml")) (setq test-ml (concat testdir name ".ml"))
(org-babel-tangle) (org-babel-tangle)
#+end_src #+end_src
* Powers * Powers
:PROPERTIES: :PROPERTIES:
:header-args: :noweb yes :comments both :header-args: :noweb yes :comments both
:END: :END:
Contains powers of x, y and z describing the polynomials in atomic basis sets. Contains powers of $x$, $y$ and $z$ describing the polynomials in atomic basis sets.
** Type ** Type
<<<~Powers.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t = private { type t = private {
x : int ; x : int ;
y : int ; y : int ;
z : int ; z : int ;
tot : int ; tot : int ;
} }
#+end_src #+end_src
~tot~ always contains ~x+y+z~. ~tot~ always contains ~x+y+z~.
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
type t = { type t = {
x : int ; x : int ;
y : int ; y : int ;
z : int ; z : int ;
tot : int ; tot : int ;
} }
#+end_src #+end_src
@ -42,9 +43,10 @@ type t = {
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
val of_int_tuple : int * int * int -> t val of_int_tuple : int * int * int -> t
val to_int_tuple : t -> int * int * int val to_int_tuple : t -> int * int * int
#+end_src #+end_src
Example:
#+begin_example #+begin_example
Powers.of_int_tuple (2,3,1);; Powers.of_int_tuple (2,3,1);;
- : Powers.t = x^2 + y^3 + z^1 - : Powers.t = x^2 + y^3 + z^1
@ -54,9 +56,9 @@ Powers.(to_int_tuple (of_int_tuple (2,3,1)));;
#+end_example #+end_example
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
let of_int_tuple t = let of_int_tuple t =
let result = let result =
match t with match t with
| (x,y,z) -> { x ; y ; z ; tot=x+y+z } | (x,y,z) -> { x ; y ; z ; tot=x+y+z }
in in
if result.x < 0 || if result.x < 0 ||
@ -67,14 +69,14 @@ let of_int_tuple t =
result result
let to_int_tuple { x ; y ; z ; _ } = (x,y,z) let to_int_tuple { x ; y ; z ; _ } = (x,y,z)
#+end_src #+end_src
** Operations ** Operations
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
val get : Coordinate.axis -> t -> int val get : Coordinate.axis -> t -> int
val incr : Coordinate.axis -> t -> t val incr : Coordinate.axis -> t -> t
val decr : Coordinate.axis -> t -> t val decr : Coordinate.axis -> t -> t
#+end_src #+end_src
@ -82,6 +84,7 @@ val decr : Coordinate.axis -> t -> t
| ~incr~ | Returns a new ~Powers.t~ with the power on the given axis incremented | | ~incr~ | Returns a new ~Powers.t~ with the power on the given axis incremented |
| ~decr~ | Returns a new ~Powers.t~ with the power on the given axis decremented. As opposed to ~of_int_tuple~, the values may become negative| | ~decr~ | Returns a new ~Powers.t~ with the power on the given axis decremented. As opposed to ~of_int_tuple~, the values may become negative|
Example:
#+begin_example #+begin_example
Powers.get Coordinate.Y (Powers.of_int_tuple (2,3,1));; Powers.get Coordinate.Y (Powers.of_int_tuple (2,3,1));;
- : int = 3 - : int = 3

View File

@ -24,6 +24,7 @@
** Type ** Type
<<<~Range.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t type t
#+end_src #+end_src

View File

@ -18,6 +18,7 @@
** Type ** Type
<<<~Spin.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t = Alfa | Beta type t = Alfa | Beta
#+end_src #+end_src

View File

@ -19,7 +19,8 @@ check_bool "of_z" true (one_x = (of_z (Z.of_int x)));
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.(shift_left (of_int 15) 2);; * Bitstring.(shift_left (of_int 15) 2);;
* - : Bitstring.t = * - : Bitstring.t =
* --++++---------------------------------------------------------- * --++++----------------------------------------------------------
@ -59,7 +60,8 @@ check_bool "testbit6" false (testbit (of_z (Z.of_int 8)) 4);
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.(logor (of_int 15) (of_int 73));; * Bitstring.(logor (of_int 15) (of_int 73));;
* - : Bitstring.t = * - : Bitstring.t =
* ++++--+--------------------------------------------------------- * ++++--+---------------------------------------------------------
@ -90,7 +92,8 @@ check_bool "to_list" true ([ 1 ; 3 ; 4 ; 6 ] = (to_list (of_int 45)));
(* #+begin_example (* Example:
* #+begin_example
* Bitstring.permutations 2 4;; * Bitstring.permutations 2 4;;
* - : Bitstring.t list = * - : Bitstring.t list =
* [++--------------------------------------------------------------; * [++--------------------------------------------------------------;

View File

@ -53,11 +53,13 @@ CAMLprim double erf_float(double x) {
#+end_src #+end_src
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
external erf_float : float -> float = "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc] external erf_float : float -> float
= "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc]
#+end_src #+end_src
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
external erf_float : float -> float = "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc] external erf_float : float -> float
= "erf_float_bytecode" "erf_float" [@@unboxed] [@@noalloc]
#+end_src #+end_src
*** Erfc *** Erfc
@ -73,7 +75,8 @@ CAMLprim double erfc_float(double x) {
#+end_src #+end_src
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
external erfc_float : float -> float = "erfc_float_bytecode" "erfc_float" [@@unboxed] [@@noalloc] external erfc_float : float -> float
= "erfc_float_bytecode" "erfc_float" [@@unboxed] [@@noalloc]
#+end_src #+end_src
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
@ -94,11 +97,13 @@ CAMLprim double gamma_float(double x) {
#+end_src #+end_src
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
external gamma_float : float -> float = "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc] external gamma_float : float -> float
= "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc]
#+end_src #+end_src
#+begin_src ocaml :tangle (eval ml) :exports none #+begin_src ocaml :tangle (eval ml) :exports none
external gamma_float : float -> float = "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc] external gamma_float : float -> float
= "gamma_float_bytecode" "gamma_float" [@@unboxed] [@@noalloc]
#+end_src #+end_src
*** Popcnt *** Popcnt
@ -627,6 +632,7 @@ val pp_bitstring : int -> Format.formatter -> Z.t -> unit
| ~pp_float_2darray_size~ | Printer for matrices with size | | ~pp_float_2darray_size~ | Printer for matrices with size |
| ~pp_bitstring~ | Printer for bit strings (used by ~Bitstring~ module) | | ~pp_bitstring~ | Printer for bit strings (used by ~Bitstring~ module) |
Example:
#+begin_example #+begin_example
pp_float_array_size: pp_float_array_size:
[ 6: 1.000000 1.732051 1.732051 1.000000 1.732051 1.000000 ] [ 6: 1.000000 1.732051 1.732051 1.000000 1.732051 1.000000 ]

View File

@ -21,6 +21,7 @@
The small integers x, y and z are stored compactly in this 126-bits The small integers x, y and z are stored compactly in this 126-bits
space: space:
Example:
#+begin_example #+begin_example
Left Right Left Right
3 [--------------------------------------------------------------] [------------------|---------------|---------------|---------------] 3 [--------------------------------------------------------------] [------------------|---------------|---------------|---------------]
@ -41,6 +42,7 @@
** Types ** Types
<<<~Zkey.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
type t type t

View File

@ -18,6 +18,7 @@
** Type ** Type
<<<~Zmap.t~>>>
#+begin_src ocaml :tangle (eval mli) #+begin_src ocaml :tangle (eval mli)
include module type of Hashtbl.Make(Zkey) include module type of Hashtbl.Make(Zkey)
#+end_src #+end_src

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-28 Thu 00:21 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Atomic Orbitals</title> <title>Atomic Orbitals</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -255,38 +272,43 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org372d71d">1. Gaussian basis</a> <li><a href="#org10034f2">1. Summary</a></li>
<li><a href="#org5474da5">2. Gaussian basis</a>
<ul> <ul>
<li><a href="#org569cf0d">1.1. Type</a></li> <li><a href="#org7b7dfc2">2.1. Type</a></li>
<li><a href="#org1cc0115">1.2. Access</a></li> <li><a href="#org9115219">2.2. Access</a></li>
<li><a href="#org8d029c7">1.3. Computation</a></li> <li><a href="#org7028216">2.3. Computation</a></li>
<li><a href="#orge9b9a74">1.4. Creation</a></li> <li><a href="#org1f24daa">2.4. Creation</a></li>
<li><a href="#orgd376854">1.5. Printers</a></li> <li><a href="#orge8bdd89">2.5. Printers</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org0efb0c2">2. Basis</a> <li><a href="#org6b9a069">3. Basis</a>
<ul> <ul>
<li><a href="#orgfc56091">2.1. Dimensions&#xa0;&#xa0;&#xa0;<span class="tag"><span class="noexports">noexports</span></span></a></li> <li><a href="#org68c3519">3.1. Polymorphic types</a></li>
<li><a href="#orga0a6bd2">2.2. Polymorphic types</a></li> <li><a href="#org5764372">3.2. Types</a></li>
<li><a href="#orgf9a3143">2.3. Types</a></li> <li><a href="#org6ea365f">3.3. Conversions</a></li>
<li><a href="#org1a171c4">2.4. Conversions</a></li> <li><a href="#org867b16c">3.4. Access</a></li>
<li><a href="#org3f1b82a">2.5. Access</a></li> <li><a href="#orgf5a488a">3.5. Printers</a></li>
<li><a href="#org2155877">2.6. Printers</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div class="org-src-container">
<pre class="src src-ocaml" id="org60f1a39"><span class="org-string">"Atomic basis set"</span>
</pre>
</div>
<div id="outline-container-org10034f2" class="outline-2">
<div id="outline-container-org372d71d" class="outline-2"> <h2 id="org10034f2"><span class="section-number-2">1</span> Summary</h2>
<h2 id="org372d71d"><span class="section-number-2">1</span> Gaussian basis</h2>
<div class="outline-text-2" id="text-1"> <div class="outline-text-2" id="text-1">
<p> <p>
This modules contains the data structures used to characterize the
atomic basis set.
</p>
</div>
</div>
<div id="outline-container-org5474da5" class="outline-2">
<h2 id="org5474da5"><span class="section-number-2">2</span> Gaussian basis</h2>
<div class="outline-text-2" id="text-2">
<p>
Data structure for Gaussian Atomic Orbitals: Data structure for Gaussian Atomic Orbitals:
</p> </p>
@ -297,19 +319,19 @@ Data structure for Gaussian Atomic Orbitals:
</p> </p>
<p> <p>
where the polynomial $P<sub>Ai</sub> and the Gaussian part are both centered on where the polynomial \(P_i\) and the Gaussian part are both centered on
nucleus \(A\). nucleus \(A\).
</p> </p>
</div> </div>
<div id="outline-container-org569cf0d" class="outline-3"> <div id="outline-container-org7b7dfc2" class="outline-3">
<h3 id="org569cf0d"><span class="section-number-3">1.1</span> Type</h3> <h3 id="org7b7dfc2"><span class="section-number-3">2.1</span> Type</h3>
<div class="outline-text-3" id="text-1-1"> <div class="outline-text-3" id="text-2-1">
<p> <p>
<a id="org99abab3"><code>Gaussian_basis.t</code></a> <a id="org8bd4ea5"><code>Gaussian_basis.t</code></a>
</p> </p>
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="orgfe8c01d"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Common</span> <pre class="src src-ocaml" id="org5bf215b"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Common</span>
<span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Particles</span> <span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Particles</span>
<span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Linear_algebra</span> <span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Linear_algebra</span>
<span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Gaussian_integrals</span> <span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Gaussian_integrals</span>
@ -321,9 +343,9 @@ nucleus \(A\).
</div> </div>
</div> </div>
<div id="outline-container-org1cc0115" class="outline-3"> <div id="outline-container-org9115219" class="outline-3">
<h3 id="org1cc0115"><span class="section-number-3">1.2</span> Access</h3> <h3 id="org9115219"><span class="section-number-3">2.2</span> Access</h3>
<div class="outline-text-3" id="text-1-2"> <div class="outline-text-3" id="text-2-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">basis</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Gaussian.Basis.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">basis</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Gaussian.Basis.</span>t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">cartesian</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> bool <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">cartesian</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> bool
@ -413,11 +435,13 @@ nucleus \(A\).
</div> </div>
</div> </div>
<div id="outline-container-org8d029c7" class="outline-3"> <div id="outline-container-org7028216" class="outline-3">
<h3 id="org8d029c7"><span class="section-number-3">1.3</span> Computation</h3> <h3 id="org7028216"><span class="section-number-3">2.3</span> Computation</h3>
<div class="outline-text-3" id="text-1-3"> <div class="outline-text-3" id="text-2-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">values</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Coordinate.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Gaussian.Basis.</span>t <span class="org-tuareg-font-lock-module">Vector.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">values</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-module">Coordinate.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-module">Gaussian.Basis.</span>t <span class="org-tuareg-font-lock-module">Vector.</span>t
</pre> </pre>
</div> </div>
@ -439,14 +463,15 @@ nucleus \(A\).
</div> </div>
</div> </div>
<div id="outline-container-orge9b9a74" class="outline-3"> <div id="outline-container-org1f24daa" class="outline-3">
<h3 id="orge9b9a74"><span class="section-number-3">1.4</span> Creation</h3> <h3 id="org1f24daa"><span class="section-number-3">2.4</span> Creation</h3>
<div class="outline-text-3" id="text-1-4"> <div class="outline-text-3" id="text-2-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">basis</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Gaussian.Basis.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">basis</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Gaussian.Basis.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-label">?operators</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Operator.</span>t list <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-label">?operators</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Operator.</span>t list <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-label">?cartesian</span><span class="org-tuareg-font-lock-operator">:</span>bool <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-label">?cartesian</span><span class="org-tuareg-font-lock-operator">:</span>bool <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-module">Nuclei.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-module">Nuclei.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span>
t
</pre> </pre>
</div> </div>
@ -463,16 +488,19 @@ Defaults:
<li><code>cartesian</code> : <code>false</code></li> <li><code>cartesian</code> : <code>false</code></li>
</ul> </ul>
<pre class="example" id="org3eab3c8"> <p>
Example:
</p>
<pre class="example" id="orgb9ea620">
let b = Ao.Basis_gaussian.make ~basis nuclei ;; let b = Ao.Basis_gaussian.make ~basis nuclei ;;
val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-orgd376854" class="outline-3"> <div id="outline-container-orge8bdd89" class="outline-3">
<h3 id="orgd376854"><span class="section-number-3">1.5</span> Printers</h3> <h3 id="orge8bdd89"><span class="section-number-3">2.5</span> Printers</h3>
<div class="outline-text-3" id="text-1-5"> <div class="outline-text-3" id="text-2-5">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -481,23 +509,22 @@ val b : Ao.Basis_gaussian.t = Gaussian Basis, spherical, 15 AOs
</div> </div>
</div> </div>
<div id="outline-container-org0efb0c2" class="outline-2"> <div id="outline-container-org6b9a069" class="outline-2">
<h2 id="org0efb0c2"><span class="section-number-2">2</span> Basis</h2> <h2 id="org6b9a069"><span class="section-number-2">3</span> Basis</h2>
<div class="outline-text-2" id="text-2"> <div class="outline-text-2" id="text-3">
<p> <p>
Data structure for Atomic Orbitals. Data structure for Atomic Orbitals.
</p> </p>
</div> </div>
<div id="outline-container-orgfc56091" class="outline-3"> <div id="outline-container-org68c3519" class="outline-3">
<h3 id="orgfc56091"><span class="section-number-3">2.1</span> Dimensions&#xa0;&#xa0;&#xa0;<span class="tag"><span class="noexports">noexports</span></span></h3> <h3 id="org68c3519"><span class="section-number-3">3.1</span> Polymorphic types</h3>
</div> <div class="outline-text-3" id="text-3-1">
<p>
<div id="outline-container-orga0a6bd2" class="outline-3"> <a id="org221aabc"><code>Basis.t</code></a>
<h3 id="orga0a6bd2"><span class="section-number-3">2.2</span> Polymorphic types</h3> </p>
<div class="outline-text-3" id="text-2-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="org7556cac"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <span class="org-tuareg-font-lock-operator">=</span> <pre class="src src-ocaml" id="org7f2805d"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <span class="org-tuareg-font-lock-operator">=</span>
<span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">Unknown</span> <span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">Unknown</span>
<span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">Gaussian</span> <span class="org-keyword">of</span> <span class="org-tuareg-font-lock-module">Basis_gaussian.</span>t <span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">Gaussian</span> <span class="org-keyword">of</span> <span class="org-tuareg-font-lock-module">Basis_gaussian.</span>t
</pre> </pre>
@ -505,9 +532,12 @@ Data structure for Atomic Orbitals.
</div> </div>
</div> </div>
<div id="outline-container-orgf9a3143" class="outline-3"> <div id="outline-container-org5764372" class="outline-3">
<h3 id="orgf9a3143"><span class="section-number-3">2.3</span> Types</h3> <h3 id="org5764372"><span class="section-number-3">3.2</span> Types</h3>
<div class="outline-text-3" id="text-2-3"> <div class="outline-text-3" id="text-3-2">
<p>
<a id="orgaf9bd07"><code>Basis.t</code></a>
</p>
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
<span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">ao</span> <span class="org-tuareg-font-lock-operator">=</span> <span class="org-tuareg-font-lock-module">Ao_dim.</span>t <span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">ao</span> <span class="org-tuareg-font-lock-operator">=</span> <span class="org-tuareg-font-lock-module">Ao_dim.</span>t
@ -521,13 +551,17 @@ Data structure for Atomic Orbitals.
</div> </div>
</div> </div>
<div id="outline-container-org1a171c4" class="outline-3"> <div id="outline-container-org6ea365f" class="outline-3">
<h3 id="org1a171c4"><span class="section-number-3">2.4</span> Conversions</h3> <h3 id="org6ea365f"><span class="section-number-3">3.3</span> Conversions</h3>
<div class="outline-text-3" id="text-2-4"> <div class="outline-text-3" id="text-3-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_nuclei_and_basis_filename</span> <span class="org-tuareg-font-lock-operator">:</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_nuclei_and_basis_filename</span> <span class="org-tuareg-font-lock-operator">:</span>
<span class="org-tuareg-font-lock-label">?kind</span><span class="org-tuareg-font-lock-operator">:[&gt;</span> <span class="org-tuareg-font-lock-constructor">`Gaussian</span> <span class="org-tuareg-font-lock-operator">]</span> <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-label">?operators</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Operator.</span>t list <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-label">?cartesian</span><span class="org-tuareg-font-lock-operator">:</span>bool <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-label">?kind</span><span class="org-tuareg-font-lock-operator">:[&gt;</span> <span class="org-tuareg-font-lock-constructor">`Gaussian</span> <span class="org-tuareg-font-lock-operator">]</span> <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-label">nuclei</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Nuclei.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-label">?operators</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Operator.</span>t list <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-label">?cartesian</span><span class="org-tuareg-font-lock-operator">:</span>bool <span class="org-tuareg-font-lock-operator">-&gt;</span>
<span class="org-tuareg-font-lock-label">nuclei</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Nuclei.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span>
string <span class="org-tuareg-font-lock-operator">-&gt;</span>
t
</pre> </pre>
</div> </div>
@ -556,16 +590,19 @@ Defaults:
<li><code>cartesian</code> : <code>false</code></li> <li><code>cartesian</code> : <code>false</code></li>
</ul> </ul>
<pre class="example" id="orgd1e8c0c"> <p>
Example:
</p>
<pre class="example" id="org65a225c">
let b = Ao.Basis.of_nuclei_and_basis_filename ~nuclei filename;; let b = Ao.Basis.of_nuclei_and_basis_filename ~nuclei filename;;
val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-org3f1b82a" class="outline-3"> <div id="outline-container-org867b16c" class="outline-3">
<h3 id="org3f1b82a"><span class="section-number-3">2.5</span> Access</h3> <h3 id="org867b16c"><span class="section-number-3">3.4</span> Access</h3>
<div class="outline-text-3" id="text-2-5"> <div class="outline-text-3" id="text-3-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">size</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">size</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">ao_basis</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Basis_poly.</span>t <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">ao_basis</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Basis_poly.</span>t
@ -662,9 +699,9 @@ val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs
</div> </div>
<div id="outline-container-org2155877" class="outline-3"> <div id="outline-container-orgf5a488a" class="outline-3">
<h3 id="org2155877"><span class="section-number-3">2.6</span> Printers</h3> <h3 id="orgf5a488a"><span class="section-number-3">3.5</span> Printers</h3>
<div class="outline-text-3" id="text-2-6"> <div class="outline-text-3" id="text-3-5">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -675,7 +712,7 @@ val b : Ao.Basis.t = Gaussian Basis, spherical, 15 AOs
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-28 Thu 00:21</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-27 Wed 23:44 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Gaussian</title> <title>Gaussian</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -255,42 +272,42 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org493bb5e">1. Atomic shell</a> <li><a href="#orgf3ada33">1. Summmary</a></li>
<li><a href="#org7457529">2. Atomic shell</a>
<ul> <ul>
<li><a href="#org8b57b46">1.1. Type</a></li> <li><a href="#org0e4fe4d">2.1. Type</a></li>
<li><a href="#org6ce19dc">1.2. Access</a></li> <li><a href="#orgde1bce4">2.2. Access</a></li>
<li><a href="#orgd728205">1.3. Creation</a></li> <li><a href="#org24b2b8e">2.3. Creation</a></li>
<li><a href="#orgae3aa50">1.4. Printers</a></li> <li><a href="#orge729f26">2.4. Printers</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgb8a46dc">2. Atomic shell pair couple</a> <li><a href="#org8871eba">3. Atomic shell pair couple</a>
<ul> <ul>
<li><a href="#orgda54231">2.1. Type</a></li> <li><a href="#org1019362">3.1. Type</a></li>
<li><a href="#orgce726a0">2.2. Access</a></li> <li><a href="#org2371d45">3.2. Access</a></li>
<li><a href="#org9a8f8ee">2.3. Creation</a></li> <li><a href="#org9169380">3.3. Creation</a></li>
<li><a href="#org4eb55a5">2.4. Printers</a></li> <li><a href="#orgadedc00">3.4. Printers</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org9d5af05">3. Atomic shell pair</a> <li><a href="#org750192c">4. Atomic shell pair</a>
<ul> <ul>
<li><a href="#orgc038806">3.1. Type</a></li> <li><a href="#org6b2bebd">4.1. Type</a></li>
<li><a href="#org66f13a3">3.2. Access</a></li> <li><a href="#org0967ce4">4.2. Access</a></li>
<li><a href="#orgbe94db4">3.3. Creation</a></li> <li><a href="#org176c31a">4.3. Creation</a></li>
<li><a href="#org5f9e64f">3.4. Printers</a></li> <li><a href="#org3f5a744">4.4. Printers</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div class="org-src-container">
<pre class="src src-ocaml" id="orgb7f41e9"><span class="org-string">"Gaussian basis sets"</span>
</pre>
</div>
<div id="outline-container-orgf3ada33" class="outline-2">
<h2 id="orgf3ada33"><span class="section-number-2">1</span> Summmary</h2>
</div>
<div id="outline-container-org493bb5e" class="outline-2"> <div id="outline-container-org7457529" class="outline-2">
<h2 id="org493bb5e"><span class="section-number-2">1</span> Atomic shell</h2> <h2 id="org7457529"><span class="section-number-2">2</span> Atomic shell</h2>
<div class="outline-text-2" id="text-1"> <div class="outline-text-2" id="text-2">
<p> <p>
Set of contracted Gaussians differing only by the powers of \(x\), \(y\) and \(z\), with a Set of contracted Gaussians differing only by the powers of \(x\), \(y\) and \(z\), with a
constant <code>Angular_momentum.t</code>, all centered on the same point. constant <code>Angular_momentum.t</code>, all centered on the same point.
@ -322,9 +339,9 @@ particular powers of \(x,y,z\) (<code>PrimitiveShell.norm_coef_scale</code>)</li
</div> </div>
<div id="outline-container-org8b57b46" class="outline-3"> <div id="outline-container-org0e4fe4d" class="outline-3">
<h3 id="org8b57b46"><span class="section-number-3">1.1</span> Type</h3> <h3 id="org0e4fe4d"><span class="section-number-3">2.1</span> Type</h3>
<div class="outline-text-3" id="text-1-1"> <div class="outline-text-3" id="text-2-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
@ -334,9 +351,9 @@ particular powers of \(x,y,z\) (<code>PrimitiveShell.norm_coef_scale</code>)</li
</div> </div>
</div> </div>
<div id="outline-container-org6ce19dc" class="outline-3"> <div id="outline-container-orgde1bce4" class="outline-3">
<h3 id="org6ce19dc"><span class="section-number-3">1.2</span> Access</h3> <h3 id="orgde1bce4"><span class="section-number-3">2.2</span> Access</h3>
<div class="outline-text-3" id="text-1-2"> <div class="outline-text-3" id="text-2-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">ang_mom</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Angular_momentum.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">ang_mom</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Angular_momentum.</span>t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">center</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Coordinate.</span>t <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">center</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Coordinate.</span>t
@ -412,15 +429,15 @@ particular powers of \(x,y,z\) (<code>PrimitiveShell.norm_coef_scale</code>)</li
</tbody> </tbody>
</table> </table>
<pre class="example" id="org62fa36c"> <pre class="example" id="org37e8ada">
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-orgd728205" class="outline-3"> <div id="outline-container-org24b2b8e" class="outline-3">
<h3 id="orgd728205"><span class="section-number-3">1.3</span> Creation</h3> <h3 id="org24b2b8e"><span class="section-number-3">2.3</span> Creation</h3>
<div class="outline-text-3" id="text-1-3"> <div class="outline-text-3" id="text-2-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">?index</span><span class="org-tuareg-font-lock-operator">:</span>int <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Contracted_shell.</span>t array <span class="org-tuareg-font-lock-operator">-&gt;</span> t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">?index</span><span class="org-tuareg-font-lock-operator">:</span>int <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Contracted_shell.</span>t array <span class="org-tuareg-font-lock-operator">-&gt;</span> t
@ -451,9 +468,9 @@ particular powers of \(x,y,z\) (<code>PrimitiveShell.norm_coef_scale</code>)</li
</div> </div>
</div> </div>
<div id="outline-container-orgae3aa50" class="outline-3"> <div id="outline-container-orge729f26" class="outline-3">
<h3 id="orgae3aa50"><span class="section-number-3">1.4</span> Printers</h3> <h3 id="orge729f26"><span class="section-number-3">2.4</span> Printers</h3>
<div class="outline-text-3" id="text-1-4"> <div class="outline-text-3" id="text-2-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -462,9 +479,9 @@ particular powers of \(x,y,z\) (<code>PrimitiveShell.norm_coef_scale</code>)</li
</div> </div>
</div> </div>
<div id="outline-container-orgb8a46dc" class="outline-2"> <div id="outline-container-org8871eba" class="outline-2">
<h2 id="orgb8a46dc"><span class="section-number-2">2</span> Atomic shell pair couple</h2> <h2 id="org8871eba"><span class="section-number-2">3</span> Atomic shell pair couple</h2>
<div class="outline-text-2" id="text-2"> <div class="outline-text-2" id="text-3">
<p> <p>
An atomic shell pair couple is the cartesian product between two sets of functions, one An atomic shell pair couple is the cartesian product between two sets of functions, one
set over electron one and one set over electron two. Both sets are atomic shell set over electron one and one set over electron two. Both sets are atomic shell
@ -479,9 +496,9 @@ acting on different electrons, since they will be coupled by a two-electron oper
</div> </div>
<div id="outline-container-orgda54231" class="outline-3"> <div id="outline-container-org1019362" class="outline-3">
<h3 id="orgda54231"><span class="section-number-3">2.1</span> Type</h3> <h3 id="org1019362"><span class="section-number-3">3.1</span> Type</h3>
<div class="outline-text-3" id="text-2-1"> <div class="outline-text-3" id="text-3-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
@ -491,9 +508,9 @@ acting on different electrons, since they will be coupled by a two-electron oper
</div> </div>
</div> </div>
<div id="outline-container-orgce726a0" class="outline-3"> <div id="outline-container-org2371d45" class="outline-3">
<h3 id="orgce726a0"><span class="section-number-3">2.2</span> Access</h3> <h3 id="org2371d45"><span class="section-number-3">3.2</span> Access</h3>
<div class="outline-text-3" id="text-2-2"> <div class="outline-text-3" id="text-3-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">ang_mom</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Angular_momentum.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">ang_mom</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Angular_momentum.</span>t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">atomic_shell_a</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">atomic_shell_a</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t
@ -577,9 +594,9 @@ acting on different electrons, since they will be coupled by a two-electron oper
</div> </div>
</div> </div>
<div id="outline-container-org9a8f8ee" class="outline-3"> <div id="outline-container-org9169380" class="outline-3">
<h3 id="org9a8f8ee"><span class="section-number-3">2.3</span> Creation</h3> <h3 id="org9169380"><span class="section-number-3">3.3</span> Creation</h3>
<div class="outline-text-3" id="text-2-3"> <div class="outline-text-3" id="text-3-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">?cutoff</span><span class="org-tuareg-font-lock-operator">:</span>float <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell_pair.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell_pair.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t option <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">?cutoff</span><span class="org-tuareg-font-lock-operator">:</span>float <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell_pair.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell_pair.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t option
</pre> </pre>
@ -604,15 +621,15 @@ Default cutoff is \(\epsilon\).
</tbody> </tbody>
</table> </table>
<pre class="example" id="org2b8686b"> <pre class="example" id="org6444454">
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-org4eb55a5" class="outline-3"> <div id="outline-container-orgadedc00" class="outline-3">
<h3 id="org4eb55a5"><span class="section-number-3">2.4</span> Printers</h3> <h3 id="orgadedc00"><span class="section-number-3">3.4</span> Printers</h3>
<div class="outline-text-3" id="text-2-4"> <div class="outline-text-3" id="text-3-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -621,9 +638,9 @@ Default cutoff is \(\epsilon\).
</div> </div>
</div> </div>
<div id="outline-container-org9d5af05" class="outline-2"> <div id="outline-container-org750192c" class="outline-2">
<h2 id="org9d5af05"><span class="section-number-2">3</span> Atomic shell pair</h2> <h2 id="org750192c"><span class="section-number-2">4</span> Atomic shell pair</h2>
<div class="outline-text-2" id="text-3"> <div class="outline-text-2" id="text-4">
<p> <p>
Data structure to represent pairs of atomic shells. The products of Data structure to represent pairs of atomic shells. The products of
functions in the shell pair are one-electron functions. functions in the shell pair are one-electron functions.
@ -634,9 +651,9 @@ An atomic shell pair is an array of pairs of contracted shells.
</p> </p>
</div> </div>
<div id="outline-container-orgc038806" class="outline-3"> <div id="outline-container-org6b2bebd" class="outline-3">
<h3 id="orgc038806"><span class="section-number-3">3.1</span> Type</h3> <h3 id="org6b2bebd"><span class="section-number-3">4.1</span> Type</h3>
<div class="outline-text-3" id="text-3-1"> <div class="outline-text-3" id="text-4-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
@ -646,9 +663,9 @@ An atomic shell pair is an array of pairs of contracted shells.
</div> </div>
</div> </div>
<div id="outline-container-org66f13a3" class="outline-3"> <div id="outline-container-org0967ce4" class="outline-3">
<h3 id="org66f13a3"><span class="section-number-3">3.2</span> Access</h3> <h3 id="org0967ce4"><span class="section-number-3">4.2</span> Access</h3>
<div class="outline-text-3" id="text-3-2"> <div class="outline-text-3" id="text-4-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">atomic_shell_a</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">atomic_shell_a</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">atomic_shell_b</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">atomic_shell_b</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t
@ -714,9 +731,9 @@ An atomic shell pair is an array of pairs of contracted shells.
</div> </div>
</div> </div>
<div id="outline-container-orgbe94db4" class="outline-3"> <div id="outline-container-org176c31a" class="outline-3">
<h3 id="orgbe94db4"><span class="section-number-3">3.3</span> Creation</h3> <h3 id="org176c31a"><span class="section-number-3">4.3</span> Creation</h3>
<div class="outline-text-3" id="text-3-3"> <div class="outline-text-3" id="text-4-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">?cutoff</span><span class="org-tuareg-font-lock-operator">:</span>float <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t option <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">?cutoff</span><span class="org-tuareg-font-lock-operator">:</span>float <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Atomic_shell.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t option
</pre> </pre>
@ -748,9 +765,9 @@ If an atomic shell pair is not significant, sets the value to <code>None</code>.
</div> </div>
</div> </div>
<div id="outline-container-org5f9e64f" class="outline-3"> <div id="outline-container-org3f5a744" class="outline-3">
<h3 id="org5f9e64f"><span class="section-number-3">3.4</span> Printers</h3> <h3 id="org3f5a744"><span class="section-number-3">4.4</span> Printers</h3>
<div class="outline-text-3" id="text-3-4"> <div class="outline-text-3" id="text-4-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -761,7 +778,7 @@ If an atomic shell pair is not significant, sets the value to <code>None</code>.
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-27 Wed 23:44</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-27 Wed 23:44 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Gaussian integrals</title> <title>Gaussian integrals</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -229,14 +246,22 @@
<a accesskey="H" href="index.html"> HOME </a> <a accesskey="H" href="index.html"> HOME </a>
</div><div id="content"> </div><div id="content">
<h1 class="title">Gaussian integrals</h1> <h1 class="title">Gaussian integrals</h1>
<div class="org-src-container"> <div id="table-of-contents">
<pre class="src src-ocaml" id="org2519248"><span class="org-string">"Integrals on the Gaussian basis sets"</span> <h2>Table of Contents</h2>
</pre> <div id="text-table-of-contents">
<ul>
<li><a href="#orge4d21a1">1. Summmary</a></li>
</ul>
</div>
</div>
<div id="outline-container-orge4d21a1" class="outline-2">
<h2 id="orge4d21a1"><span class="section-number-2">1</span> Summmary</h2>
</div> </div>
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-27 Wed 23:44</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-08 Fri 23:16 --> <!-- 2021-01-27 Wed 23:36 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>QCaml documentation</title> <title>QCaml documentation</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -223,24 +240,20 @@
</script> </script>
</head> </head>
<body> <body>
<div id="content"> <div id="org-div-home-and-up">
<a accesskey="h" href=""> UP </a>
|
<a accesskey="H" href="index.html"> HOME </a>
</div><div id="content">
<h1 class="title">QCaml documentation</h1> <h1 class="title">QCaml documentation</h1>
<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org5057d67">1. Documentation of Modules</a></li>
</ul>
</div>
</div>
<div id="orga362751" class="figure"> <div id="orgde12e86" class="figure">
<p><img src="./chamo_bg.png" alt="chamo_bg.png" /> <p><img src="./chamo_bg.png" alt="chamo_bg.png" width="400px" />
</p> </p>
</div> </div>
<p> <p>
QCaml is an OCaml library for writing quantum chemistry codes. QCaml is an OCaml library for writing quantum chemistry codes.
It is written using literate programming with org-mode. It is written using literate programming with org-mode.
</p> </p>
@ -259,9 +272,11 @@ This loads all the sub-libraries provided with QCaml, and installs
the pretty printers. the pretty printers.
</p> </p>
<div id="outline-container-org5057d67" class="outline-2">
<h2 id="org5057d67"><span class="section-number-2">1</span> Documentation of Modules</h2> <p>
<div class="outline-text-2" id="text-1"> <b>List of modules</b>
</p>
<ul class="org-ul"> <ul class="org-ul">
<li><a href="./ao.html">Ao</a></li> <li><a href="./ao.html">Ao</a></li>
<li><a href="./common.html">Common</a></li> <li><a href="./common.html">Common</a></li>
@ -277,11 +292,9 @@ the pretty printers.
<li><a href="./top.html">Top</a></li> <li><a href="./top.html">Top</a></li>
</ul> </ul>
</div> </div>
</div>
</div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-08 Fri 23:16</p> <p class="date">Created: 2021-01-27 Wed 23:36</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -1,9 +1,10 @@
#+TITLE: QCaml documentation #+TITLE: QCaml documentation
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup #+SETUPFILE: ../docs/theme.setup
#+ATTR_HTML: :width 400px
[[./chamo_bg.png]] [[./chamo_bg.png]]
QCaml is an OCaml library for writing quantum chemistry codes. QCaml is an OCaml library for writing quantum chemistry codes.
It is written using literate programming with org-mode. It is written using literate programming with org-mode.
To use it interactively in the top level or in a Jupyter or org-mode To use it interactively in the top level or in a Jupyter or org-mode
@ -15,13 +16,14 @@
This loads all the sub-libraries provided with QCaml, and installs This loads all the sub-libraries provided with QCaml, and installs
the pretty printers. the pretty printers.
* Documentation of Modules
*List of modules*
#+NAME: modules #+NAME: modules
#+begin_src sh :exports none #+begin_src sh :exports none
ls ../*/README.org \ ls ../*/README.org \
| cut -d '/' -f 2 | cut -d '/' -f 2
#+end_src #+end_src
#+NAME: list #+NAME: list

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-27 Wed 23:44 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Linear Algebra</title> <title>Linear Algebra</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -229,14 +246,22 @@
<a accesskey="H" href="index.html"> HOME </a> <a accesskey="H" href="index.html"> HOME </a>
</div><div id="content"> </div><div id="content">
<h1 class="title">Linear Algebra</h1> <h1 class="title">Linear Algebra</h1>
<div class="org-src-container"> <div id="table-of-contents">
<pre class="src src-ocaml" id="org3aac483"><span class="org-string">"Linear algebra utilities of QCaml libraries."</span> <h2>Table of Contents</h2>
</pre> <div id="text-table-of-contents">
<ul>
<li><a href="#org6e14c98">1. Summmary</a></li>
</ul>
</div>
</div>
<div id="outline-container-org6e14c98" class="outline-2">
<h2 id="org6e14c98"><span class="section-number-2">1</span> Summmary</h2>
</div> </div>
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-27 Wed 23:44</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-27 Wed 23:44 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Molecular orbitals</title> <title>Molecular orbitals</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -233,36 +250,36 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org1294b69">1. Frozen core</a> <li><a href="#orgdaf938b">1. Summmary</a></li>
<li><a href="#org9acb3b3">2. Frozen core</a>
<ul> <ul>
<li><a href="#org6b6a0df">1.1. Type</a></li> <li><a href="#org64a252c">2.1. Type</a></li>
<li><a href="#orgd41d207">1.2. Creation</a></li> <li><a href="#org987723c">2.2. Creation</a></li>
<li><a href="#org9bc8cb6">1.3. Access</a></li> <li><a href="#orgc89d6d7">2.3. Access</a></li>
<li><a href="#orga5ea7e6">1.4. Printers</a></li> <li><a href="#org5c73928">2.4. Printers</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div class="org-src-container">
<pre class="src src-ocaml" id="org7099c5c"><span class="org-string">"Molecular orbitals"</span> <div id="outline-container-orgdaf938b" class="outline-2">
</pre> <h2 id="orgdaf938b"><span class="section-number-2">1</span> Summmary</h2>
</div> </div>
<div id="outline-container-org9acb3b3" class="outline-2">
<div id="outline-container-org1294b69" class="outline-2"> <h2 id="org9acb3b3"><span class="section-number-2">2</span> Frozen core</h2>
<h2 id="org1294b69"><span class="section-number-2">1</span> Frozen core</h2> <div class="outline-text-2" id="text-2">
<div class="outline-text-2" id="text-1">
<p> <p>
Defines how the core electrons are frozen, for each atom. Defines how the core electrons are frozen, for each atom.
</p> </p>
</div> </div>
<div id="outline-container-org6b6a0df" class="outline-3"> <div id="outline-container-org64a252c" class="outline-3">
<h3 id="org6b6a0df"><span class="section-number-3">1.1</span> Type</h3> <h3 id="org64a252c"><span class="section-number-3">2.1</span> Type</h3>
<div class="outline-text-3" id="text-1-1"> <div class="outline-text-3" id="text-2-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="orgea93a5d"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">kind</span> <span class="org-tuareg-font-lock-operator">=</span> <pre class="src src-ocaml" id="org92bd127"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">kind</span> <span class="org-tuareg-font-lock-operator">=</span>
<span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">All_electron</span> <span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">All_electron</span>
<span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">Small</span> <span class="org-tuareg-font-lock-operator">|</span> <span class="org-tuareg-font-lock-constructor">Small</span>
<span class="org-tuareg-font-lock-operator">|</span> Large <span class="org-tuareg-font-lock-operator">|</span> Large
@ -276,9 +293,9 @@ Defines how the core electrons are frozen, for each atom.
</div> </div>
</div> </div>
<div id="outline-container-orgd41d207" class="outline-3"> <div id="outline-container-org987723c" class="outline-3">
<h3 id="orgd41d207"><span class="section-number-3">1.2</span> Creation</h3> <h3 id="org987723c"><span class="section-number-3">2.2</span> Creation</h3>
<div class="outline-text-3" id="text-1-2"> <div class="outline-text-3" id="text-2-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> kind <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Particles.Nuclei.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> kind <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Particles.Nuclei.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t
@ -313,7 +330,7 @@ Defines how the core electrons are frozen, for each atom.
</tbody> </tbody>
</table> </table>
<pre class="example" id="org033fa67"> <pre class="example" id="org8539b48">
let f = Frozen_core.(make Small nuclei) ;; let f = Frozen_core.(make Small nuclei) ;;
val f : Frozen_core.t = [|0; 2; 2; 0|] val f : Frozen_core.t = [|0; 2; 2; 0|]
@ -323,9 +340,9 @@ val f : Frozen_core.t = [|0; 2; 2; 0|]
</div> </div>
</div> </div>
<div id="outline-container-org9bc8cb6" class="outline-3"> <div id="outline-container-orgc89d6d7" class="outline-3">
<h3 id="org9bc8cb6"><span class="section-number-3">1.3</span> Access</h3> <h3 id="orgc89d6d7"><span class="section-number-3">2.3</span> Access</h3>
<div class="outline-text-3" id="text-1-3"> <div class="outline-text-3" id="text-2-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">num_elec</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">num_elec</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">num_mos</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">num_mos</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int
@ -353,7 +370,7 @@ val f : Frozen_core.t = [|0; 2; 2; 0|]
</tbody> </tbody>
</table> </table>
<pre class="example" id="org5c22144"> <pre class="example" id="org5deb173">
Frozen_core.num_elec f ;; Frozen_core.num_elec f ;;
- : int = 4 - : int = 4
@ -363,9 +380,9 @@ Frozen_core.num_mos f ;;
</div> </div>
</div> </div>
<div id="outline-container-orga5ea7e6" class="outline-3"> <div id="outline-container-org5c73928" class="outline-3">
<h3 id="orga5ea7e6"><span class="section-number-3">1.4</span> Printers</h3> <h3 id="org5c73928"><span class="section-number-3">2.4</span> Printers</h3>
<div class="outline-text-3" id="text-1-4"> <div class="outline-text-3" id="text-2-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -376,7 +393,7 @@ Frozen_core.num_mos f ;;
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-27 Wed 23:44</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

288
docs/org-info.js Normal file
View File

@ -0,0 +1,288 @@
function OrgNode(e,h,f,g,d,b,j){var i=this;i.D=e;i.I=b;i.J=-1;i.H=h;i.L=f;i.HH=false;
i.P=d;i.DRT=false;i.ST=OrgNode.SF;i.TOC=j;i.DEPTH=g;i.F=null;i.CH=new Array();i.NAV="";
i.BS=null;if(null!=i.P){i.P.addChild(this);i.hide();}var a=document.getElementById("text-"+i.I);
if(null==a&&b){var c=b.substring(4);a=document.getElementById("text-"+c);}if(null!=a){i.F=a;
}i.iTF=new Object();i.iTF["#"+i.I]=2;OrgNode.fTI(i.iTF,i.H,1);OrgNode.fTI(i.iTF,i.F,3);
}OrgNode.SF=0;OrgNode.SH=1;OrgNode.SU=2;OrgNode.fTI=function(f,c,e){if(c){var b=c.getElementsByTagName("a");
if(b){for(var d=0;d<b.length;++d){var g=b[d].getAttribute("id");if(g){f["#"+g]=e;
}else{g=b[d].getAttribute("name");if(g){f["#"+g]=e;}}}}}};OrgNode.hE=function(a){if(a&&a.style){a.style.display="none";
a.style.visibility="hidden";}};OrgNode.sE=function(a){if(a&&a.style){a.style.display="block";
a.style.visibility="visible";}};OrgNode.uhE=function(a){a.style.display="";a.style.visibility="";
};OrgNode.isHidden=function(a){if(a.style.display=="none"||a.style.visibility=="hidden"){return true;
}return false;};OrgNode.toggleElement=function(a){if(a.style.display=="none"){a.style.display="block";
a.style.visibility="visible";}else{a.style.display="none";a.style.visibility="hidden";
}};OrgNode.textNodeToIdx=function(b,c){while(b.nodeType!=1||-1==b.attributes.id.value.indexOf("outline-container-")){b=b.parentNode;
}var a=b.attributes.id.value.substr(18);return OrgNode.idxForBaseId(a,c);};OrgNode.idxForBaseId=function(b,d){if(d.I==b){return d;
}for(var a=0;a<d.CH.length;++a){var c=OrgNode.idxForBaseId(idx,d.CH[a]);if(null!=c){return c;
}}return null;};OrgNode.prototype.addChild=function(a){this.CH.push(a);return this.P;
};OrgNode.prototype.hide=function(){OrgNode.hE(this.D);if(this.P){this.P.hide();}};
OrgNode.prototype.show=function(){OrgNode.sE(this.D);if(this.DEPTH>2){this.P.show();
}};OrgNode.prototype.sAC=function(){for(var a=0;a<this.CH.length;++a){this.CH[a].sAC();
}this.show();};OrgNode.prototype.hAC=function(){for(var a=0;a<this.CH.length;++a){this.CH[a].hAC();
}this.hide();};OrgNode.prototype.setLinkClass=function(a){if(this.TOC){if(a){this.TOC.className="current";
}else{this.TOC.className="visited_after_load";}}};OrgNode.prototype.fold=function(b){if(this.P){this.P.DRT=true;
}if(this.DRT){this.DRT=false;this.ST=OrgNode.SU;}if(null!=this.F){if(this.ST==OrgNode.SF){if(this.CH.length){this.ST=OrgNode.SH;
OrgNode.hE(this.F);for(var a=0;a<this.CH.length;++a){this.CH[a].sSt(OrgNode.SH);}}else{if(!b){this.ST=OrgNode.SU;
OrgNode.sE(this.F);}}}else{if(this.ST==OrgNode.SH){this.ST=OrgNode.SU;OrgNode.sE(this.F);
for(var a=0;a<this.CH.length;++a){this.CH[a].sSt(OrgNode.SU);}}else{this.ST=OrgNode.SF;
OrgNode.hE(this.F);for(var a=0;a<this.CH.length;++a){this.CH[a].sSt(OrgNode.SF);}}}}};
OrgNode.prototype.sSt=function(c){var b=this;for(var a=0;a<b.CH.length;++a){b.CH[a].sSt(c);
}switch(c){case OrgNode.SF:OrgNode.hE(b.F);OrgNode.hE(b.D);break;case OrgNode.SH:OrgNode.hE(b.F);
OrgNode.sE(b.D);break;default:OrgNode.sE(b.F);OrgNode.sE(b.D);}b.ST=c;};var org_html_manager={MOUSE_HINT:0,B:null,PLAIN_VIEW:0,CONTENT_VIEW:1,ALL_VIEW:2,INFO_VIEW:3,SLIDE_VIEW:4,VIEW:this.CONTENT_VIEW,LOCAL_TOC:false,LINK_HOME:0,LINK_UP:0,LINKS:"",RUN_MAX:1200,RUN_INTERVAL:100,HIDE_TOC:false,TOC_DEPTH:0,STARTUP_MESSAGE:0,P:null,BU:document.URL,Q:"",R:null,N:null,T:null,IT:false,LOAD_CHECK:null,W:null,S:new Array(),REGEX:/(#)(.*$)/,SIDX:/(^#)(sec-\d+([._]\d+)*$)/,UNTAGX:/<[^>]+>/i,ORGTAGX:/^(.*)<span\s+class=[\'\"]tag[\'\"]>(<span[^>]+>[^<]+<\/span>)+<\/span>/i,TRIMMER:/^(\s*)([^\s].*)(\s*)$/,TOC:null,RUNS:0,H:new Array(50),HI:0,SKIP_H:false,FIXED_TOC:false,C:null,CI:null,CL:null,CO:"50px",OCCUR:"",SCX:"",SC_HLX:new RegExp('(<span class="org-info-js_search-highlight">)([^<]*?)(</span>)',"gi"),Mg:0,MgI:1,MgT:2,Hg:false,Rg:false,RC:"",RC_NULL:"_0",RC_H:"_1",RC_O:"_2",RC_P:"_03",LVM:0,TAB_INDEX:1000,SHO:false,TAGS:{},ST:new Array(),TAGS_INDEX:null,CTO:null,SN_MAP:{},TL:null,HOOKS:{run_hooks:false,onShowSection:[],onReady:[]},setup:function(){var d=this;
if(window.orgInfoHooks){for(var c in orgInfoHooks){d.HOOKS[c]=orgInfoHooks[c];}d.HOOKS.run_hooks=false;
}if(location.search){var e=location.search.substring(1).split("&");for(var c=0;c<e.length;
++c){var f=e[c].indexOf("=");if(-1!=f){var b=e[c].substring(f+1);var a=e[c].substring(0,f);
switch(a){case"TOC":case"TOC_DEPTH":case"MOUSE_HINT":case"HELP":case"VIEW":case"HIDE_TOC":case"LOCAL_TOC":case"OCCUR":d.set(a,decodeURIComponent(b));
break;default:break;}}}}d.VIEW=d.VIEW?d.VIEW:d.PLAIN_VIEW;d.VIEW_BUTTONS=(d.VIEW_BUTTONS&&d.VIEW_BUTTONS!="0")?true:false;
d.STARTUP_MESSAGE=(d.STARTUP_MESSAGE&&d.STARTUP_MESSAGE!="0")?true:false;d.LOCAL_TOC=(d.LOCAL_TOC&&d.LOCAL_TOC!="0")?d.LOCAL_TOC:false;
d.HIDE_TOC=(d.TOC&&d.TOC!="0")?false:true;d.IT=(d.IT&&d.IT!="title_above")?false:true;
if(d.FIXED_TOC&&d.FIXED_TOC!="0"){d.FIXED_TOC=true;d.HIDE_TOC=false;}else{d.FIXED_TOC=false;
}d.LINKS+=((d.LINK_UP&&d.LINK_UP!=document.URL)?'<a href="'+d.LINK_UP+'">Up</a> / ':"")+((d.LINK_HOME&&d.LINK_HOME!=document.URL)?'<a href="'+d.LINK_HOME+'">HOME</a> / ':"")+'<a href="javascript:org_html_manager.showHelp();">HELP</a> / ';
d.LOAD_CHECK=window.setTimeout("OrgHtmlManagerLoadCheck()",50);},trim:function(a){var b=this.TRIMMER.exec(a);
return RegExp.$2;},rT:function(a){if(a){while(a.match(this.UNTAGX)){a=a.substr(0,a.indexOf("<"))+a.substr(a.indexOf(">")+1);
}}return a;},rOT:function(a){if(a.match(this.ORGTAGX)){var b=this.ORGTAGX.exec(a);
return b[1];}return a;},init:function(){var m=this;m.RUNS++;m.B=document.getElementById("content");
if(null==m.B){if(5>m.RUNS){m.LOAD_CHECK=window.setTimeout("OrgHtmlManagerLoadCheck()",m.RUN_INTERVAL);
return;}else{m.B=document.getElementsByTagName("body")[0];}}if(!m.W){m.W=document.createElement("div");
m.W.style.marginBottom="40px";m.W.id="org-info-js-window";}var l=document.getElementById("table-of-contents");
if(!m.initFromTOC()){if(m.RUNS<m.RUN_MAX){m.LOAD_CHECK=window.setTimeout("OrgHtmlManagerLoadCheck()",m.RUN_INTERVAL);
return;}}var d=0;var f=false;if(""!=location.hash){m.BU=m.BU.substring(0,m.BU.indexOf("#"));
for(var e=0;e<m.S.length;++e){if(m.S[e].iTF[location.hash]){d=e;f=1;break;}}}if(""!=location.search){m.Q=m.BU.substring(m.BU.indexOf("?"));
m.BU=m.BU.substring(0,m.BU.indexOf("?"));}m.convertLinks();var j=document.getElementById("postamble");
if(j){m.P=j;}var h=m.B;var c=h.firstChild;if(3==c.nodeType){var g=c.cloneNode(true);
var a=document.createElement("p");a.id="text-before-first-headline";a.appendChild(g);
h.replaceChild(a,c);}m.C=document.createElement("div");m.C.innerHTML='<form action="" style="margin:0px;padding:0px;" onsubmit="org_html_manager.eRC(); return false;"><table id="org-info-js_console" style="width:100%;margin:0px 0px 0px 0px;border-style:none;" cellpadding="0" cellspacing="0" summary="minibuffer"><tbody><tr><td id="org-info-js_console-icon" style="padding:0px 0px 0px 0px;border-style:none;">&#160;</td><td style="width:100%;vertical-align:middle;padding:0px 0px 0px 0px;border-style:none;"><table style="width:100%;margin:0px 0px 0px 0px;border-style:none;" cellpadding="0" cellspacing="2"><tbody><tr><td id="org-info-js_console-label" style="white-space:nowrap;padding:0px 0px 0px 0px;border-style:none;"></td></tr><tr><td style="width:100%;vertical-align:middle;padding:0px 0px 0px 0px;border-style:none;"><input type="text" id="org-info-js_console-input" onkeydown="org_html_manager.getKey();" onclick="this.select();" maxlength="150" style="width:100%;padding:0px;margin:0px 0px 0px 0px;border-style:none;" value=""/></td></tr></tbody></table></td><td style="padding:0px 0px 0px 0px;border-style:none;">&#160;</td></tr></tbody></table></form>';
m.C.style.position="relative";m.C.style.marginTop="-"+m.CO;m.C.style.top="-"+m.CO;
m.C.style.left="0px";m.C.style.width="100%";m.C.style.height="40px";m.C.style.overflow="hidden";
m.C.style.verticalAlign="middle";m.C.style.zIndex="9";m.C.style.border="0px solid #cccccc";
m.C.id="org-info-js_console-container";m.B.insertBefore(m.C,m.B.firstChild);m.Mg=false;
m.CL=document.getElementById("org-info-js_console-label");m.CI=document.getElementById("org-info-js_console-input");
document.onkeypress=OrgHtmlManagerKeyEvent;if(m.VIEW==m.INFO_VIEW){m.iV(d);m.ss(d);
window.setTimeout(function(){window.scrollTo(0,0);},100);}else{if(m.VIEW==m.SLIDE_VIEW){m.sV(d);
m.ss(d);}else{var k=m.VIEW;m.pV(d,1);m.R.DRT=true;m.R_STATE=OrgNode.SU;m.tG();if(k>m.PLAIN_VIEW){m.tG();
}if(k==m.ALL_VIEW){m.tG();}if(f){m.ss(d);}}}if(""!=m.OCCUR){m.CI.value=m.OCCUR;m.RC="o";
m.eRC();}if(m.STARTUP_MESSAGE){m.warn("This page uses org-info.js. Press '?' for more information.",true);
}m.HOOKS.run_hooks=true;m.runHooks("onReady",this.N);},initFromTOC:function(){var k=this;
if(k.RUNS==1||!k.R){var b=document.getElementById("table-of-contents");if(null!=b){var m=null;
var d=0;for(d;m==null&&d<7;++d){m=b.getElementsByTagName("h"+d)[0];}m.onclick=function(){org_html_manager.fold(0);
};m.style.cursor="pointer";if(k.MOUSE_HINT){m.onmouseover=function(){org_html_manager.hH(0);
};m.onmouseout=function(){org_html_manager.unhH(0);};}if(k.FIXED_TOC){m.setAttribute("onclick","org_html_manager.tG();");
k.R=new OrgNode(null,k.B.getElementsByTagName("h1")[0],"javascript:org_html_manager.go(0);",0,null);
k.TOC=new OrgNode(b,m,"javascript:org_html_manager.go(0);",d,null);k.N=k.R;}else{k.R=new OrgNode(null,k.B.getElementsByTagName("h1")[0],"javascript:org_html_manager.go(0);",0,null);
if(k.HIDE_TOC){k.TOC=new OrgNode(b,"","javascript:org_html_manager.go(0);",d,null);
k.N=k.R;OrgNode.hE(b);}else{k.TOC=new OrgNode(b,m,"javascript:org_html_manager.go(0);",d,k.R);
k.TOC.J=0;k.N=k.TOC;k.S.push(k.TOC);}}if(k.TOC){k.TOC.F=document.getElementById("text-table-of-contents");
}}else{return false;}}var j=k.TOC.F.getElementsByTagName("ul")[0];if(!k.ulToOutlines(j)){return false;
}var h=document.getElementById("footnotes");if(h){var a=null;var f=h.childNodes;for(var d=0;
d<f.length;++d){if("footnotes"==f[d].className){a=f[d];break;}}var e=k.S.length;a.onclick=function(){org_html_manager.fold(""+e);
};a.style.cursor="pointer";if(k.MOUSE_HINT){a.onmouseover=function(){org_html_manager.hH(""+e);
};a.onmouseout=function(){org_html_manager.unhH(""+e);};}var g="javascript:org_html_manager.go("+e+")";
var l=new OrgNode(h,a,g,1,k.R,"footnotes");k.S.push(l);}if(k.TOC_DEPTH){k.cutToc(j,1);
}k.T=k.B.getElementsByTagName("h1")[0];if(k.IT&&!k.FIXED_TOC&&k.VIEW!=k.SLIDE_VIEW){k.IT=k.T.cloneNode(true);
k.S[0].D.insertBefore(k.IT,k.S[0].D.firstChild);OrgNode.hE(k.T);}k.build();k.N=k.S[0];
k.B.insertBefore(k.W,k.N.D);return true;},ulToOutlines:function(b){if(b.hasChildNodes()&&!b.scanned_for_org){for(var a=0;
a<b.childNodes.length;++a){if(false==this.liToOutlines(b.childNodes[a])){return false;
}}b.scanned_for_org=1;}return true;},liToOutlines:function(b){if(!b.scanned_for_org){for(var d=0;
d<b.childNodes.length;++d){var e=b.childNodes[d];switch(e.nodeName){case"A":var a=this.mkNodeFromHref(e);
if(false==a){return false;}else{e.href=a;e.tabIndex=this.TAB_INDEX;e.onfocus=function(){org_html_manager.TL=this;
void 0;};if(null==this.TL){this.TL=e;}this.TAB_INDEX++;}break;case"UL":return this.ulToOutlines(e);
break;}}b.scanned_for_org=1;}return true;},cutToc:function(e,f){f++;if(e.hasChildNodes()){for(var d=0;
d<e.childNodes.length;++d){var a=e.childNodes[d];for(var b=0;b<a.childNodes.length;
++b){var g=a.childNodes[b];if(g.nodeName=="UL"){if(f>this.TOC_DEPTH){a.removeChild(g);
}else{this.cutToc(g,f);}}}}}},mkNodeFromHref:function(g){s=g.href;if(s.match(this.REGEX)){var k=this.REGEX.exec(s);
var c=k[2];var l=document.getElementById(c);if(null==l){return(false);}var a=l.parentNode;
var m=this.S.length;var f=a.className.substr(8);l.onclick=function(){org_html_manager.fold(""+m);
};l.style.cursor="pointer";if(this.MOUSE_HINT){l.onmouseover=function(){org_html_manager.hH(""+m);
};l.onmouseout=function(){org_html_manager.unhH(""+m);};}var o="javascript:org_html_manager.go("+m+")";
if(f>this.N.DEPTH){this.N=new OrgNode(a,l,o,f,this.N,c,g);}else{if(f==2){this.N=new OrgNode(a,l,o,f,this.R,c,g);
}else{var b=this.N;while(b.DEPTH>f){b=b.P;}this.N=new OrgNode(a,l,o,f,b.P,c,g);}}this.S.push(this.N);
var n=l.getElementsByTagName("span");if(n){for(var e=0;e<n.length;++e){if(n[e].className=="tag"){var r=n[e].innerHTML.split("&nbsp;");
for(var d=0;d<r.length;++d){var q=this.rT(r[d]);if(!this.TAGS[q]){this.TAGS[q]=new Array();
this.ST.push(q);}this.TAGS[q].push(m);}}else{if(n[e].className.match(this.SECNUMX)){this.SN_MAP[this.trim(n[e].innerHTML)]=this.N;
}}}}this.N.hide();return(o);}return(s);},build:function(){var f=this.T.innerHTML;
var e=0;for(var d=0;d<this.S.length;++d){this.S[d].J=d;var c='<table class="org-info-js_info-navigation" width="100%" border="0" style="border-bottom:1px solid black;"><tr><td colspan="3" style="text-align:left;border-style:none;vertical-align:bottom;"><span style="float:left;display:inline;text-align:left;">Top: <a accesskey="t" href="javascript:org_html_manager.go(0);">'+f+'</a></span><span style="float:right;display:inline;text-align:right;font-size:70%;">'+this.LINKS+'<a accesskey="m" href="javascript:org_html_manager.toggleView('+d+');">toggle view</a></span></td></tr><tr><td style="text-align:left;border-style:none;vertical-align:bottom;width:22%">';
if(d>0){c+='<a accesskey="p" href="'+this.S[d-1].L+'" title="Go to: '+this.rT(this.S[d-1].H.innerHTML)+'">Previous</a> | ';
}else{c+="Previous | ";}if(d<this.S.length-1){c+='<a accesskey="n" href="'+this.S[d+1].L+'" title="Go to: '+this.rT(this.S[d+1].H.innerHTML)+'">Next</a>';
}else{c+="Next";}c+='</td><td style="text-align:center;vertical-align:bottom;border-style:none;width:56%;">';
if(d>0&&this.S[d].P.P){c+='<a href="'+this.S[d].P.L+'" title="Go to: '+this.rT(this.S[d].P.H.innerHTML)+'"><span style="font-variant:small-caps;font-style:italic;">'+this.S[d].P.H.innerHTML+"</span></a>";
}else{c+='<span style="font-variant:small-caps;font-style:italic;">'+this.S[d].H.innerHTML+"</span>";
}c+='</td><td style="text-align:right;vertical-align:bottom;border-style:none;width:22%">';
c+=(d+1)+"</td></tr></table>";this.S[d].BS=document.createElement("div");this.S[d].BS.innerHTML='<div class="org-info-js_header-navigation" style="display:inline;float:right;text-align:right;font-size:70%;font-weight:normal;">'+this.LINKS+'<a accesskey="m" href="javascript:org_html_manager.toggleView('+d+');">toggle view</a></div>';
if(this.S[d].F){this.S[d].D.insertBefore(this.S[d].BS,this.S[d].H);}else{if(this.S[d].D.hasChildNodes()){this.S[d].D.insertBefore(this.S[d].BS,this.S[d].D.firstChild);
}}if(!this.VIEW_BUTTONS){OrgNode.hE(this.S[d].BS);}this.S[d].NAV=c;if(0<this.S[d].CH.length&&this.LOCAL_TOC){var a=document.createElement("div");
a.className="org-info-js_local-toc";c="Contents:<br /><ul>";for(var b=0;b<this.S[d].CH.length;
++b){c+='<li><a href="'+this.S[d].CH[b].L+'">'+this.rT(this.rOT(this.S[d].CH[b].H.innerHTML))+"</a></li>";
}c+="</ul>";a.innerHTML=c;if("above"==this.LOCAL_TOC){if(this.S[d].F){this.S[d].F.insertBefore(a,this.S[d].F.firstChild);
}else{this.S[d].D.insertBefore(a,this.S[d].D.getElementsByTagName("h"+this.S[d].DEPTH)[0].nextSibling);
}}else{if(this.S[d].F){this.S[d].F.appendChild(a);}else{this.S[d].D.appendChild(a);
}}}}this.ST.sort();},set:function(eval_key,eval_val){if("VIEW"==eval_key){var pos=eval_val.indexOf("_");
if(-1!=pos){this.IT=eval_val.substr(pos+1);eval_val=eval_val.substr(0,pos);}var overview=this.PLAIN_VIEW;
var content=this.CONTENT_VIEW;var showall=this.ALL_VIEW;var info=this.INFO_VIEW;var info_title_above=this.INFO_VIEW;
var slide=this.SLIDE_VIEW;eval("this."+eval_key+"="+eval_val+";");}else{if("HELP"==eval_key){eval("this.STARTUP_MESSAGE="+eval_val+";");
}else{if(eval_val){eval("this."+eval_key+"='"+eval_val+"';");}else{eval("this."+eval_key+"=0;");
}}}},convertLinks:function(){var f=(this.HIDE_TOC?0:1);var e;var a=this.S.length-1;
var d=document.getElementsByTagName("a");for(e=0;e<d.length;++e){var c=d[e].href.replace(this.BU,"");
for(var b=0;b<this.S.length;++b){if(this.S[b].iTF[c]){d[e].href="javascript:org_html_manager.go("+b+")";
break;}}}},ss:function(d){var b=this;var f=parseInt(d);var c=b.N;var e="onShowSection";
if(b.HIDE_TOC&&b.N==b.TOC&&!b.FIXED_TOC){OrgNode.hE(b.TOC.D);if(b.PLAIN_VIEW==b.VIEW){b.R.sAC();
for(var a=0;a<b.R.CH.length;++a){b.R.CH[a].ST=OrgNode.SU;b.R.CH[a].fold();}}}if("?/toc/?"!=d&&null!=b.TL){b.TL.blur();
}if("?/toc/?"==d||(!isNaN(f)&&b.S[f])){if("?/toc/?"==d&&b.HIDE_TOC){e="onShowToc";
b.N=b.TOC;b.R.hAC();if(b.INFO_VIEW==b.VIEW){b.W.innerHTML=b.N.D.innerHTML;}else{b.N.sSt(OrgNode.SU);
}window.scrollTo(0,0);}else{b.N=b.S[f];if(b.SLIDE_VIEW==b.VIEW||b.INFO_VIEW==b.VIEW){OrgNode.hE(b.N.BS);
b.N.sSt(OrgNode.SU);for(var a=0;a<b.N.CH.length;++a){b.N.CH[a].hide();}if(b.SLIDE_VIEW==b.VIEW){b.W.innerHTML=b.N.D.innerHTML;
}else{b.W.innerHTML=b.N.NAV+b.N.D.innerHTML;}b.N.hide();if(!b.FIXED_TOC){OrgNode.hE(document.body);
}if(c.J!=b.N.J){if("?/toc/?"!=d){window.location.replace(b.BU+b.Q+b.dT());}}if(!b.FIXED_TOC){OrgNode.sE(document.body);
}}else{if(!b.VIEW_BUTTONS){OrgNode.hE(c.BS);}OrgNode.sE(b.N.BS);b.N.sSt(OrgNode.UNFOLDED);
b.N.show();if(c.J!=b.N.J){window.location.replace(b.BU+b.Q+b.dT());}if(b.N.J==0){window.scrollTo(0,0);
}else{b.N.D.scrollIntoView(true);}}}}c.setLinkClass();b.N.setLinkClass(true);b.runHooks(e,{last:c,current:b.N});
},pV:function(d,a){var c=this;document.onclick=null;document.ondblclick=null;c.VIEW=c.PLAIN_VIEW;
OrgNode.hE(c.W);if(c.IT){OrgNode.hE(c.IT);}OrgNode.sE(c.T);if(c.W.firstChild){c.W.removeChild(c.W.firstChild);
}c.R.sAC();for(var b=0;b<c.R.CH.length;++b){c.R.CH[b].ST=OrgNode.SU;c.R.CH[b].fold();
}if(!a){c.ss(d);}if(c.P){OrgNode.sE(c.P);}if(c.N.J==0){window.scrollTo(0,0);}else{c.N.D.scrollIntoView(true);
}},iV:function(c,a){var b=this;document.onclick=null;document.ondblclick=null;b.VIEW=b.INFO_VIEW;
b.unhH(b.N.J);if(b.IT&&!b.FIXED_TOC){OrgNode.sE(b.IT);OrgNode.hE(b.T);}OrgNode.sE(b.W);
b.R.hAC();if(b.TOC&&!b.FIXED_TOC){OrgNode.hE(b.TOC.D);}if(b.P){OrgNode.sE(b.P);}if(!a){b.ss(c);
}window.scrollTo(0,0);},sV:function(c,a){var b=this;b.VIEW=b.SLIDE_VIEW;b.unhH(b.N.J);
OrgNode.hE(b.T);if(b.IT){OrgNode.hE(b.IT);}if(b.TOC){OrgNode.hE(b.TOC.D);}OrgNode.sE(b.T);
OrgNode.sE(b.W);b.R.hAC();OrgNode.hE(b.TOC.D);if(b.P){OrgNode.hE(b.P);}b.adjustSlide(c);
if(!a){b.ss(c);}},adjustSlide:function(f,g){var k=true;var e=true;var d=false;if(f>this.N.J){d=true;
}if(null==g){d=true;}if(d){for(var a=this.S[f].F.firstChild;null!=a;a=a.nextSibling){if("UL"==a.nodeName){var j=a.getElementsByTagName("li");
for(var c=1;c<j.length;++c){var b=j[c];OrgNode.hE(b);k=false;}}}}else{var h=this.W.getElementsByTagName("ul");
for(var a=0;a<h.length;++a){var j=h[a].getElementsByTagName("li");for(var c=1;c<j.length;
++c){var b=j[c];if(g>0){if(OrgNode.isHidden(b)){OrgNode.uhE(b);if(c<(j.length-1)){k=false;
}if(0<c){e=false;}break;}}else{if(!OrgNode.isHidden(b)){if(1<c){e=false;OrgNode.hE(j[c-1]);
break;}}}}}}if(k){document.onclick=function(){org_html_manager.sCk("org_html_manager.nextSection(org_html_manager.N.J + 1)");
};}else{document.onclick=function(){org_html_manager.sCk("org_html_manager.adjustSlide(org_html_manager.N.J, +1)");
};}if(e){document.ondblclick=function(){org_html_manager.sCk("org_html_manager.previousSection()");
};}else{document.ondblclick=function(){org_html_manager.sCk("org_html_manager.adjustSlide("+this.N.J+", -1)");
};}},toggleView:function(b){var a=this;a.Q="";a.rW();if(a.VIEW==a.INFO_VIEW){a.pV(b);
}else{a.iV(b);}},fold:function(b){var a=this;a.rW();var c=parseInt(b);a.S[c].fold();
if(!a.VIEW_BUTTONS){OrgNode.hE(a.N.BS);}a.N=a.S[c];OrgNode.sE(a.N.BS);},tG:function(){var b=this;
if(b.R.DRT){b.R.ST=OrgNode.SU;}if(OrgNode.SU==b.R.ST){for(var a=0;a<b.R.CH.length;
++a){b.R.CH[a].ST=OrgNode.SU;b.R.CH[a].fold(true);}b.R.ST=OrgNode.SU;b.R.ST=OrgNode.SF;
}else{if(OrgNode.SF==b.R.ST){for(var a=0;a<b.R.CH.length;++a){b.R.CH[a].fold(true);
}b.R.ST=OrgNode.SH;}else{for(var a=0;a<b.R.CH.length;++a){b.R.CH[a].fold();}b.R.ST=OrgNode.SU;
}}b.R.DRT=false;},executeClick:function(func){var t=this;if(t.Rg){t.eR();t.hC();}else{if(t.Mg){t.rW();
}}eval(func);if(null!=t.CTO){t.CTO=null;}},sCk:function(b,a){if(null==a){a=250;}if(null==this.CTO){this.CTO=window.setTimeout("org_html_manager.executeClick("+b+")",a);
}else{window.clearTimeout(this.CTO);this.CTO=null;}},nextSection:function(){var a=this;
var b=a.N.J+1;if(b<a.S.length){a.go(b);}else{a.warn("Already last section.");}},previousSection:function(){var b=this;
var a=b.N.J;if(a>0){b.go(a-1);}else{b.warn("Already first section.");}},go:function(b){var a=this;
if(a.Rg){a.eR();a.hC();}else{if(a.Mg){a.rW();}}if(a.VIEW==a.SLIDE_VIEW){a.adjustSlide(b);
}a.puH(b,a.N.J);a.ss(b);},puH:function(c,a){var b=this;if(!b.SKIP_H){b.H[b.HI]=new Array(c,a);
b.HI=(b.HI+1)%50;}b.SKIP_H=false;b.CI.value="";},poH:function(c){var a=this;if(c){if(a.H[a.HI]){var b=parseInt(a.H[a.HI][0]);
if(!isNaN(b)||"?/toc/?"==a.H[a.HI][0]){a.ss(a.H[a.HI][0]);a.CI.value="";}else{a.SKIP_H=true;
a.CI.value=a.H[a.HI][0];a.getKey();}a.HI=(a.HI+1)%50;a.HBO=0;}else{if(a.HFO&&history.length){history.forward();
}else{a.HFO=1;a.warn("History: No where to foreward go from here. Any key and `B' to move to next file in history.");
}}}else{if(a.H[a.HI-1]){a.HI=a.HI==0?49:a.HI-1;var b=parseInt(a.H[a.HI][1]);if(!isNaN(b)||"?/toc/?"==a.H[a.HI][1]){a.ss(a.H[a.HI][1]);
a.CI.value="";}else{a.SKIP_H=true;a.CI.value=a.H[a.HI][1];a.getKey();}a.HFO=0;}else{if(a.HBO&&history.length){history.back();
}else{a.HBO=1;a.warn("History: No where to back go from here. Any key and `b' to move to previous file in history.");
}}}},warn:function(c,d,b){var a=this;if(null==b){b="";}a.CI.value=b;if(!d){a.CL.style.color="red";
}a.CL.innerHTML="<span style='float:left;'>"+c+"</span><span style='float:right;color:#aaaaaa;font-weight:normal;'>(press any key to proceed)</span>";
a.sC();window.setTimeout(function(){org_html_manager.CI.value=b;},50);},sR:function(e,b,d,a){var c=this;
if(null==d){d="";}if(null==a){a="";}c.RC=e;c.Rg=true;c.CL.innerHTML="<span style='float:left;'>"+b+"</span><span style='float:right;color:#aaaaaa;font-weight:normal;'>("+a+"RET to close)</span>";
c.sC();document.onkeypress=null;c.CI.focus();c.CI.onblur=function(){org_html_manager.CI.focus();
};window.setTimeout(function(){org_html_manager.CI.value=d;},50);},eR:function(c,a){var b=this;
b.Rg=false;b.RC="";b.CI.onblur=null;b.CI.blur();document.onkeypress=OrgHtmlManagerKeyEvent;
},rW:function(){var a=this;a.CL.style.color="#333333";a.hC();},sC:function(){var a=this;
if(!a.Mg){if(a.VIEW==a.PLAIN_VIEW){a.B.removeChild(a.B.firstChild);a.N.D.insertBefore(a.C,a.N.D.firstChild);
a.N.D.scrollIntoView(true);a.Mg=a.MgI;}else{a.Mg=a.MgT;window.scrollTo(0,0);}a.C.style.marginTop="0px";
a.C.style.top="0px";}},hC:function(){var a=this;if(a.Mg){a.C.style.marginTop="-"+a.CO;
a.C.style.top="-"+a.CO;a.CL.innerHTML="";a.CI.value="";if(a.MgI==a.Mg){a.N.D.removeChild(a.N.D.firstChild);
a.B.insertBefore(a.C,a.B.firstChild);if(a.N.J!=0){a.N.D.scrollIntoView();}}a.Mg=false;
}},getKey:function(){var b=this;var c=b.CI.value;if(0==c.length){if(b.Hg){b.showHelp();
return;}if(b.Mg&&!b.Rg){b.rW();}return;}if(b.Mg&&!b.Rg){b.rW();return;}else{if(b.Hg){b.showHelp();
b.CI.value="";return;}else{if(b.Rg){return;}}}b.CI.value="";b.CI.blur();if(b.HIDE_TOC&&b.TOC==b.N&&"v"!=c&&"V"!=c&&"\t"!=c){c="b";
}else{if("\t"==c){return true;}else{c=b.trim(c);}}if(1==c.length){if("b"==c){b.poH();
}else{if("B"==c){b.poH(true);}else{if("c"==c){b.rSH();if(b.VIEW==b.INFO_VIEW||b.VIEW==b.SLIDE_VIEW){b.ss(b.N.J);
}}else{if("i"==c){if(!b.FIXED_TOC){if(b.HIDE_TOC){b.go("?/toc/?");}else{if(0!=b.N.J){b.go(0);
}}}if(null!=b.TL){b.TL.focus();}}else{if("m"==c){b.toggleView(b.N.J);return;}else{if("x"==c){b.sV(b.N.J);
}else{if("n"==c){if(b.N.ST==OrgNode.SF&&b.VIEW==b.PLAIN_VIEW){b.ss(b.N.J);}else{if(b.N.J<b.S.length-1){b.go(b.N.J+1);
}else{b.warn("Already last section.");return;}}}else{if("N"==c){if(b.N.J<b.S.length-1){var e=b.N.DEPTH;
var a=b.N.J+1;while(a<b.S.length-1&&b.S[a].DEPTH>=e){if(b.S[a].DEPTH==e){b.go(a);
return;}++a;}}b.warn("No next sibling.");return;}else{if("p"==c){if(b.N.J>0){b.go(b.N.J-1);
}else{b.warn("Already first section.");return;}}else{if("P"==c){if(b.N.J>0){var e=b.N.DEPTH;
var a=b.N.J-1;while(a>=0&&b.S[a].DEPTH>=e){if(b.S[a].DEPTH==e){b.go(a);return;}--a;
}}b.warn("No previous sibling.");}else{if("q"==c){if(window.confirm("Really close this file?")){window.close();
}}else{if("<"==c||"t"==c){if(0!=b.N.J){b.go(0);}else{window.scrollTo(0,0);}}else{if(">"==c||"E"==c||"e"==c){if((b.S.length-1)!=b.N.J){b.go(b.S.length-1);
}else{b.S[b.S.length-1].D.scrollIntoView(true);}}else{if("v"==c){if(window.innerHeight){window.scrollBy(0,window.innerHeight-30);
}else{if(document.documentElement.clientHeight){window.scrollBy(0,document.documentElement.clientHeight-30);
}else{window.scrollBy(0,document.body.clientHeight-30);}}}else{if("V"==c){if(window.innerHeight){window.scrollBy(0,-(window.innerHeight-30));
}else{if(document.documentElement.clientHeight){window.scrollBy(0,-(document.documentElement.clientHeight-30));
}else{window.scrollBy(0,-(document.body.clientHeight-30));}}}else{if("u"==c){if(b.N.P!=b.R){b.N=b.N.P;
b.ss(b.N.J);}}else{if("W"==c){b.pV(b.N.J);b.R.DRT=true;b.R_STATE=OrgNode.SU;b.tG();
b.tG();b.tG();window.print();}else{if("f"==c){if(b.VIEW!=b.INFO_VIEW){b.N.fold();
b.N.D.scrollIntoView(true);}}else{if("F"==c){if(b.VIEW!=b.INFO_VIEW){b.tG();b.N.D.scrollIntoView(true);
}}else{if("?"==c||"¿"==c){b.showHelp();}else{if("C"==c){if(b.ST.length){b.showTagsIndex();
}else{b.warn("No Tags found.");}}else{if("H"==c&&b.LINK_HOME){window.document.location.href=b.LINK_HOME;
}else{if("h"==c&&b.LINK_UP){window.document.location.href=b.LINK_UP;}else{if("l"==c){if(""!=b.OCCUR){b.sR(b.RC_H,"Choose HTML-link type: 's' = section, 'o' = occur");
}else{b.sR(c,"HTML-link:",'<a href="'+b.BU+b.dT()+'">'+document.title+", Sec. '"+b.rT(b.N.H.innerHTML)+"'</a>","C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}return;}else{if("L"==c){if(""!=b.OCCUR){b.sR(b.RC_O,"Choose Org-link type: 's' = section, 'o' = occur");
}else{b.sR(c,"Org-link:","[["+b.BU+b.dT()+"]["+document.title+", Sec. '"+b.rT(b.N.H.innerHTML)+"']]","C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}return;}else{if("U"==c){if(""!=b.OCCUR){b.sR(b.RC_P,"Choose Org-link type: 's' = section, 'o' = occur");
}else{b.sR(c,"Plain URL Link:",b.BU+b.dT(),"C-c to copy, ");window.setTimeout(function(){org_html_manager.CI.select();
},100);}return;}else{if("g"==c){b.sR(c,"Enter section number:");return;}else{if("o"==c){if(""!=b.OCCUR){b.sR(c,"Occur:",b.OCCUR,"RET to use previous, DEL ");
}else{b.sR(c,"Occur:",b.OCCUR);}window.setTimeout(function(){org_html_manager.CI.value=org_html_manager.OCCUR;
org_html_manager.CI.select();},100);return;}else{if("s"==c){if(""!=b.OCCUR){b.sR(c,"Search forward:",b.OCCUR,"RET to use previous, DEL ");
}else{b.sR(c,"Search forward:",b.OCCUR);}window.setTimeout(function(){org_html_manager.CI.value=org_html_manager.OCCUR;
org_html_manager.CI.select();},100);return;}else{if("S"==c){if(""==b.OCCUR){c="s";
b.sR(c,"Search forward:");}else{b.RC=c;b.eRC();}return;}else{if("r"==c){if(""!=b.OCCUR){b.sR(c,"Search backwards:",b.OCCUR,"RET to use previous, DEL ");
}else{b.sR(c,"Search backwards:",b.OCCUR);}window.setTimeout(function(){org_html_manager.CI.value=org_html_manager.OCCUR;
org_html_manager.CI.select();},100);return;}else{if("R"==c){if(""==b.OCCUR){c="r";
b.sR(c,"Search backwards:");}else{b.RC=c;b.eRC();}return;}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return;
},eRC:function(){var j=this;var a=j.RC;var k=j.trim(j.CI.value);j.eR();if(""==a||""==k){j.hC();
return;}if(a=="g"){var f=j.SN_MAP[k];if(null!=f){j.hC();j.go(f.J);return;}j.warn("Goto section: no such section.",false,k);
return;}else{if(a=="s"){if(""==k){return false;}if(j.SHO){j.rSH();}var g=j.OCCUR;
var e=0;if(k==j.OCCUR){e++;}j.OCCUR=k;j.mSR();for(var d=j.N.J+e;d<j.S.length;++d){if(j.sIO(d)){j.OCCUR=k;
j.hC();j.go(j.S[d].J);return;}}j.warn("Search forwards: text not found.",false,j.OCCUR);
j.OCCUR=g;return;}else{if(a=="S"){for(var d=j.N.J+1;d<j.S.length;++d){if(j.sIO(d)){j.hC();
j.go(j.S[d].J);return;}}j.warn("Search forwards: text not found.",false,j.OCCUR);
return;}else{if(a=="r"){if(""==k){return false;}if(j.SHO){j.rSH();}var g=j.OCCUR;
j.OCCUR=k;var e=0;if(k==j.OCCUR){e++;}j.mSR();for(var d=j.N.J-e;d>-1;--d){if(j.sIO(d)){j.hC();
j.go(j.S[d].J);return;}}j.warn("Search backwards: text not found.",false,j.OCCUR);
j.OCCUR=g;return;}else{if(a=="R"){for(var d=j.N.J-1;d>-1;--d){k=j.rT(j.S[d].H.innerHTML);
if(j.sIO(d)){j.hC();j.go(j.S[d].J);return;}}j.warn("Search backwards: text not found.",false,j.OCCUR);
return;}else{if(a=="o"){if(""==k){return false;}if(j.SHO){j.rSH();}var g=j.OCCUR;
j.OCCUR=k;j.mSR();var b=new Array();for(var d=0;d<j.S.length;++d){if(j.sIO(d)){b.push(d);
}}if(0==b.length){j.warn("Occur: text not found.",false,j.OCCUR);j.OCCUR=g;return;
}j.hC();if(j.PLAIN_VIEW!=j.VIEW){j.pV();}j.R.DRT=true;j.tG();for(var d=0;d<j.S.length;
++d){OrgNode.sE(j.S[d].D);OrgNode.hE(j.S[d].F);}for(var d=(b.length-1);d>=1;--d){OrgNode.sE(j.S[b[d]].F);
}j.ss(b[0]);}else{if(a==j.RC_O){var h=k.charAt(0);if("s"==h){j.sR(j.RC_NULL,"Org-link to this section:","[["+j.BU+j.dT()+"]["+document.title+", Sec. '"+j.rT(j.N.H.innerHTML)+"']]","C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}else{if("o"==h){j.sR(j.RC_NULL,"Org-link, occurences of <i>&quot;"+j.OCCUR+"&quot;</i>:","[["+j.BU+"?OCCUR="+j.OCCUR+"]["+document.title+", occurences of '"+j.OCCUR+"']]","C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}else{j.warn(h+": No such link type!");
}}}else{if(a==j.RC_H){var h=k.charAt(0);if("s"==h){j.sR(j.RC_NULL,"HTML-link to this section:",'<a href="'+j.BU+j.dT()+'">'+document.title+", Sec. '"+j.rT(j.N.H.innerHTML)+"'</a>","C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}else{if("o"==h){j.sR(j.RC_NULL,"HTML-link, occurences of <i>&quot;"+j.OCCUR+"&quot;</i>:",'<a href="'+j.BU+"?OCCUR="+j.OCCUR+'">'+document.title+", occurences of '"+j.OCCUR+"'</a>","C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}else{j.warn(h+": No such link type!");
}}}else{if(a==j.RC_P){var h=k.charAt(0);if("s"==h){j.sR(j.RC_NULL,"Plain-link to this section:",j.BU+j.dT(),"C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}else{if("o"==h){j.sR(j.RC_NULL,"Plain-link, occurences of <i>&quot;"+j.OCCUR+"&quot;</i>:",j.BU+"?OCCUR="+j.OCCUR,"C-c to copy, ");
window.setTimeout(function(){org_html_manager.CI.select();},100);}else{j.warn(h+": No such link type!");
}}}}}}}}}}}},dT:function(b){if(null==b){b=this.N;}var c="#"+this.N.I;for(var a in b.iTF){if(!a.match(this.SIDX)){c=a;
break;}}return c;},mSR:function(){var a=this.OCCUR.replace(/>/g,"&gt;").replace(/</g,"&lt;").replace(/=/g,"\\=").replace(/\\/g,"\\\\").replace(/\?/g,"\\?").replace(/\)/g,"\\)").replace(/\(/g,"\\(").replace(/\./g,"[^<>]").replace(/\"/g,"&quot;");
this.SCX=new RegExp(">([^<]*)?("+a+")([^>]*)?<","ig");},sIO:function(c){var b=this;
var a=false;if(null!=b.S[c]){if(b.SCX.test(b.S[c].H.innerHTML)){a=true;b.sSH(b.S[c].H);
b.S[c].HH=true;b.SHO=true;}if(b.SCX.test(b.S[c].F.innerHTML)){a=true;b.sSH(b.S[c].F);
b.S[c].HH=true;b.SHO=true;}return a;}return false;},sSH:function(b){var a=b.innerHTML;
b.innerHTML=a.replace(this.SCX,'>$1<span class="org-info-js_search-highlight">$2</span>$3<');
},rSH:function(){var c=this;for(var b=0;b<c.S.length;++b){if(c.S[b].HH){while(c.SC_HLX.test(c.S[b].H.innerHTML)){var a=c.S[b].H.innerHTML;
c.S[b].H.innerHTML=a.replace(c.SC_HLX,"$2");}while(c.SC_HLX.test(c.S[b].F.innerHTML)){var a=c.S[b].F.innerHTML;
c.S[b].F.innerHTML=a.replace(c.SC_HLX,"$2");}c.S[b].HH=false;}}c.SHO=false;},hH:function(b){var a=parseInt(b);
if(this.PLAIN_VIEW==this.VIEW&&this.MOUSE_HINT){if("underline"==this.MOUSE_HINT){this.S[a].H.style.borderBottom="1px dashed #666666";
}else{this.S[a].H.style.backgroundColor=this.MOUSE_HINT;}}},unhH:function(b){var a=parseInt(b);
if("underline"==this.MOUSE_HINT){this.S[a].H.style.borderBottom="";}else{this.S[a].H.style.backgroundColor="";
}},showHelp:function(){var a=this;if(a.Rg){a.eR();}else{if(a.Mg){a.rW();}}a.Hg=a.Hg?0:1;
if(a.Hg){a.LVM=a.VIEW;if(a.PLAIN_VIEW==a.VIEW){a.iV(true);}a.W.innerHTML='Press any key or <a href="javascript:org_html_manager.showHelp();">click here</a> to proceed.<h2>Keyboard Shortcuts</h2><table cellpadding="3" rules="groups" frame="hsides" style="caption-side:bottom;margin:20px;border-style:none;" border="0";><caption><small>org-info.js, v. 0.1.7.1</small></caption><tbody><tr><td><code><b>? / &iquest;</b></code></td><td>show this help screen</td></tr></tbody><tbody><tr><td><code><b></b></code></td><td><b>Moving around</b></td></tr><tr><td><code><b>n / p</b></code></td><td>goto the next / previous section</td></tr><tr><td><code><b>N / P</b></code></td><td>goto the next / previous sibling</td></tr><tr><td><code><b>t / E</b></code></td><td>goto the first / last section</td></tr><tr><td><code><b>g</b></code></td><td>goto section...</td></tr><tr><td><code><b>u</b></code></td><td>go one level up (parent section)</td></tr><tr><td><code><b>i / C</b></code></td><td>show table of contents / tags index</td></tr><tr><td><code><b>b / B</b></code></td><td>go back to last / forward to next visited section.</td></tr><tr><td><code><b>h / H</b></code></td><td>go to main index in this directory / link HOME page</td></tr></tbody><tbody><tr><td><code><b></b></code></td><td><b>View</b></td></tr><tr><td><code><b>m / x</b></code></td><td>toggle the view mode between info and plain / slides</td></tr><tr><td><code><b>f / F</b></code></td><td>fold current section / whole document (plain view only)</td></tr></tbody><tbody><tr><td><code><b></b></code></td><td><b>Searching</b></td></tr><tr><td><code><b>s / r</b></code></td><td>search forward / backward....</td></tr><tr><td><code><b>S / R</b></code></td><td>search again forward / backward</td></tr><tr><td><code><b>o</b></code></td><td>occur-mode</td></tr><tr><td><code><b>c</b></code></td><td>clear search-highlight</td></tr></tbody><tbody><tr><td><code><b></b></code></td><td><b>Misc</b></td></tr><tr><td><code><b>l / L / U</b></code></td><td>display HTML link / Org link / Plain-URL</td></tr><tr><td><code><b>v / V</b></code></td><td>scroll down / up</td></tr><tr><td><code><b>W</b></code></td><td>Print</td></tr></tbody></table><br />Press any key or <a href="javascript:org_html_manager.showHelp();">click here</a> to proceed.';
window.scrollTo(0,0);}else{if(a.PLAIN_VIEW==a.LVM){a.pV();}else{if(a.SLIDE_VIEW==a.LVM){a.sV();
}}a.ss(a.N.J);}},showTagsIndex:function(){var e=this;if(e.Rg){e.eR();}else{if(e.Mg){e.rW();
}}e.Hg=e.Hg?0:1;if(e.Hg){e.LVM=e.VIEW;if(e.PLAIN_VIEW==e.VIEW){e.iV(true);}if(null==e.TAGS_INDEX){e.TAGS_INDEX='Press any key or <a href="javascript:org_html_manager.showTagsIndex();">click here</a> to proceed.<br /><br />Click the headlines to expand the contents.<h2>Index of Tags</h2>';
for(var d=0;d<e.ST.length;++d){var b=e.ST[d];var f="org-html-manager-sorted-tags-"+b;
e.TAGS_INDEX+="<a href=\"javascript:OrgNode.toggleElement(document.getElementById('"+f+"'));\"><h3>"+b+'</h3></a><div id="'+f+'" style="visibility:hidden;display:none;"><ul>';
for(var c=0;c<e.TAGS[b].length;++c){var a=e.TAGS[b][c];e.TAGS_INDEX+='<li><a href="javascript:org_html_manager.ss('+a+');">'+e.S[a].H.innerHTML+"</a></li>";
}e.TAGS_INDEX+="</ul></div>";}e.TAGS_INDEX+='<br />Press any key or <a href="javascript:org_html_manager.showTagsIndex();">click here</a> to proceed.';
}e.W.innerHTML=e.TAGS_INDEX;window.scrollTo(0,0);}else{if(e.PLAIN_VIEW==e.LVM){e.pV();
}else{if(e.SLIDE_VIEW==e.LVM){e.sV();}}e.ss(e.N.J);}},runHooks:function(b,a){if(this.HOOKS.run_hooks&&this.HOOKS[b]){for(var c=0;
c<this.HOOKS[b].length;++c){this.HOOKS[b][c](this,a);}}},addHook:function(a,b){if("run_hooks"!=a){this.HOOKS[a].push(b);
}},removeHook:function(a,c){if(this.HOOKS[a]){for(var b=this.HOOKS[a].length-1;b>=0;
--b){if(this.HOOKS[a][b]==c){this.HOOKS[a].splice(b,1);}}}}};function OrgHtmlManagerKeyEvent(b){var d;
if(!b){b=window.event;}if(b.which){d=b.which;}else{if(b.keyCode){d=b.keyCode;}}if(b.ctrlKey){return;
}var a=String.fromCharCode(d);if(b.shiftKey){org_html_manager.CI.value=org_html_manager.CI.value+a;
}else{org_html_manager.CI.value=org_html_manager.CI.value+a.toLowerCase();}org_html_manager.getKey();
}function OrgHtmlManagerLoadCheck(){org_html_manager.init();}

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-27 Wed 23:44 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Common</title> <title>Common</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -255,76 +272,76 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org775ffd4">1. Electrons</a> <li><a href="#orgc3aa2b1">1. Summmary</a></li>
<li><a href="#orgf4a663e">2. Electrons</a>
<ul> <ul>
<li><a href="#org8d7eb03">1.1. Type</a></li> <li><a href="#org88e7967">2.1. Type</a></li>
<li><a href="#org828c0b4">1.2. Creation</a></li> <li><a href="#org376ca80">2.2. Creation</a></li>
<li><a href="#org7990560">1.3. Access</a></li> <li><a href="#orgd1d110c">2.3. Access</a></li>
<li><a href="#orge31a496">1.4. Printers</a></li> <li><a href="#org1d2a3d7">2.4. Printers</a></li>
<li><a href="#org810810a">1.5. Tests</a></li> <li><a href="#org7b61e24">2.5. Tests</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org192b2be">2. Element</a> <li><a href="#org918ae65">3. Element</a>
<ul> <ul>
<li><a href="#org8abd3f7">2.1. Type</a></li> <li><a href="#org8889a68">3.1. Type</a></li>
<li><a href="#orgfb1e8c0">2.2. Conversion</a></li> <li><a href="#orgc639e8c">3.2. Conversion</a></li>
<li><a href="#org7920ab5">2.3. Database information</a></li> <li><a href="#org8706da1">3.3. Database information</a></li>
<li><a href="#orgd9e4111">2.4. Printers</a></li> <li><a href="#org95418b5">3.4. Printers</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org683f181">3. Atomic mass</a></li> <li><a href="#orgc544cb3">4. Atomic mass</a></li>
<li><a href="#org69bdfa4">4. Nuclei</a> <li><a href="#org0dcc52f">5. Nuclei</a>
<ul> <ul>
<li><a href="#orgd713019">4.1. Type</a></li> <li><a href="#org83b7fcb">5.1. Type</a></li>
<li><a href="#org4bd7221">4.2. xyz file lexer/parser</a> <li><a href="#orgcba845a">5.2. xyz file lexer/parser</a>
<ul> <ul>
<li><a href="#org7281519">4.2.1. Lexer</a></li> <li><a href="#org196ee2a">5.2.1. Lexer</a></li>
<li><a href="#org0b56536">4.2.2. Parser</a></li> <li><a href="#orgda1a58a">5.2.2. Parser</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgf5cc2de">4.3. Conversion</a></li> <li><a href="#org4bc334a">5.3. Conversion</a></li>
<li><a href="#org070bc98">4.4. <span class="todo TODO">TODO</span> Query</a></li> <li><a href="#org259e4f9">5.4. <span class="todo TODO">TODO</span> Query</a></li>
<li><a href="#org1ab3f3a">4.5. Printers</a></li> <li><a href="#org606af7e">5.5. Printers</a></li>
<li><a href="#org59045e6">4.6. Tests</a></li> <li><a href="#orgcd3169c">5.6. Tests</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org35f99d4">5. Z-matrix</a> <li><a href="#orgf9d75ec">6. Z-matrix</a>
<ul> <ul>
<li><a href="#org74ef0d8">5.1. Type</a></li> <li><a href="#org2ee988d">6.1. Type</a></li>
<li><a href="#org4b91a4e">5.2. Conversion</a></li> <li><a href="#org0a2b5eb">6.2. Conversion</a></li>
<li><a href="#orgbec757c">5.3. Printers</a></li> <li><a href="#org36acab9">6.3. Printers</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div class="org-src-container">
<pre class="src src-ocaml" id="org5e7fdf1"><span class="org-string">"Information relative to particles (electrons and nuclei)."</span>
</pre>
</div>
<div id="outline-container-orgc3aa2b1" class="outline-2">
<h2 id="orgc3aa2b1"><span class="section-number-2">1</span> Summmary</h2>
</div>
<div id="outline-container-org775ffd4" class="outline-2"> <div id="outline-container-orgf4a663e" class="outline-2">
<h2 id="org775ffd4"><span class="section-number-2">1</span> Electrons</h2> <h2 id="orgf4a663e"><span class="section-number-2">2</span> Electrons</h2>
<div class="outline-text-2" id="text-1"> <div class="outline-text-2" id="text-2">
<p> <p>
Data structure which contains the number of &alpha; and &beta; electrons. Data structure which contains the number of &alpha; and &beta; electrons.
</p> </p>
</div> </div>
<div id="outline-container-org8d7eb03" class="outline-3"> <div id="outline-container-org88e7967" class="outline-3">
<h3 id="org8d7eb03"><span class="section-number-3">1.1</span> Type</h3> <h3 id="org88e7967"><span class="section-number-3">2.1</span> Type</h3>
<div class="outline-text-3" id="text-1-1"> <div class="outline-text-3" id="text-2-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="org777e0db"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml" id="org380f263"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
</pre> </pre>
</div> </div>
</div> </div>
</div> </div>
<div id="outline-container-org828c0b4" class="outline-3"> <div id="outline-container-org376ca80" class="outline-3">
<h3 id="org828c0b4"><span class="section-number-3">1.2</span> Creation</h3> <h3 id="org376ca80"><span class="section-number-3">2.2</span> Creation</h3>
<div class="outline-text-3" id="text-1-2"> <div class="outline-text-3" id="text-2-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Common</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Common</span>
@ -355,16 +372,16 @@ Data structure which contains the number of &alpha; and &beta; electrons.
<tr> <tr>
<td class="org-left"><code>of_atoms</code></td> <td class="org-left"><code>of_atoms</code></td>
<td class="org-left">Creates the data relative to electrons for a molecular system described by <a href="#orgc195f64"><code>Nuclei.t</code></a> for a given total charge and spin multiplicity.</td> <td class="org-left">Creates the data relative to electrons for a molecular system described by <a href="#org117d80f"><code>Nuclei.t</code></a> for a given total charge and spin multiplicity.</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div> </div>
</div> </div>
<div id="outline-container-org7990560" class="outline-3"> <div id="outline-container-orgd1d110c" class="outline-3">
<h3 id="org7990560"><span class="section-number-3">1.3</span> Access</h3> <h3 id="orgd1d110c"><span class="section-number-3">2.3</span> Access</h3>
<div class="outline-text-3" id="text-1-3"> <div class="outline-text-3" id="text-2-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">charge</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Charge.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">charge</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Charge.</span>t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">n_elec</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">n_elec</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> int
@ -412,9 +429,9 @@ Data structure which contains the number of &alpha; and &beta; electrons.
</div> </div>
</div> </div>
<div id="outline-container-orge31a496" class="outline-3"> <div id="outline-container-org1d2a3d7" class="outline-3">
<h3 id="orge31a496"><span class="section-number-3">1.4</span> Printers</h3> <h3 id="org1d2a3d7"><span class="section-number-3">2.4</span> Printers</h3>
<div class="outline-text-3" id="text-1-4"> <div class="outline-text-3" id="text-2-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -422,24 +439,24 @@ Data structure which contains the number of &alpha; and &beta; electrons.
</div> </div>
</div> </div>
<div id="outline-container-org810810a" class="outline-3"> <div id="outline-container-org7b61e24" class="outline-3">
<h3 id="org810810a"><span class="section-number-3">1.5</span> Tests</h3> <h3 id="org7b61e24"><span class="section-number-3">2.5</span> Tests</h3>
</div> </div>
</div> </div>
<div id="outline-container-org192b2be" class="outline-2"> <div id="outline-container-org918ae65" class="outline-2">
<h2 id="org192b2be"><span class="section-number-2">2</span> Element</h2> <h2 id="org918ae65"><span class="section-number-2">3</span> Element</h2>
<div class="outline-text-2" id="text-2"> <div class="outline-text-2" id="text-3">
<p> <p>
Chemical elements. Chemical elements.
</p> </p>
</div> </div>
<div id="outline-container-org8abd3f7" class="outline-3"> <div id="outline-container-org8889a68" class="outline-3">
<h3 id="org8abd3f7"><span class="section-number-3">2.1</span> Type</h3> <h3 id="org8889a68"><span class="section-number-3">3.1</span> Type</h3>
<div class="outline-text-3" id="text-2-1"> <div class="outline-text-3" id="text-3-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="orgc857d0f"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <span class="org-tuareg-font-lock-operator">=</span> <pre class="src src-ocaml" id="org2343857"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <span class="org-tuareg-font-lock-operator">=</span>
<span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">X</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">X</span>
<span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">H</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">He</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">H</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">He</span>
<span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">Li</span><span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">Be</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">B</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">C</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">N</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">O</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">F</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">Ne</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">Li</span><span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">Be</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">B</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">C</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">N</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">O</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">F</span> <span class="org-tuareg-font-lock-operator">|</span><span class="org-tuareg-font-lock-constructor">Ne</span>
@ -456,9 +473,9 @@ Chemical elements.
</div> </div>
</div> </div>
<div id="outline-container-orgfb1e8c0" class="outline-3"> <div id="outline-container-orgc639e8c" class="outline-3">
<h3 id="orgfb1e8c0"><span class="section-number-3">2.2</span> Conversion</h3> <h3 id="orgc639e8c"><span class="section-number-3">3.2</span> Conversion</h3>
<div class="outline-text-3" id="text-2-2"> <div class="outline-text-3" id="text-3-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_string</span> <span class="org-tuareg-font-lock-operator">:</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_string</span> <span class="org-tuareg-font-lock-operator">:</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">to_string</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> string <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">to_string</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> string
@ -518,7 +535,7 @@ Chemical elements.
</tbody> </tbody>
</table> </table>
<pre class="example" id="org6c6cf9f"> <pre class="example" id="orgce999ba">
Element.of_string "Fe" ;; Element.of_string "Fe" ;;
- : Element.t = Particles.Element.Fe - : Element.t = Particles.Element.Fe
@ -537,9 +554,9 @@ Element.(to_string Fe);;
</div> </div>
</div> </div>
<div id="outline-container-org7920ab5" class="outline-3"> <div id="outline-container-org8706da1" class="outline-3">
<h3 id="org7920ab5"><span class="section-number-3">2.3</span> Database information</h3> <h3 id="org8706da1"><span class="section-number-3">3.3</span> Database information</h3>
<div class="outline-text-3" id="text-2-3"> <div class="outline-text-3" id="text-3-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">covalent_radius</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Non_negative_float.</span>t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">covalent_radius</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Non_negative_float.</span>t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">vdw_radius</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Non_negative_float.</span>t <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">vdw_radius</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Non_negative_float.</span>t
@ -587,9 +604,9 @@ Element.(to_string Fe);;
</div> </div>
</div> </div>
<div id="outline-container-orgd9e4111" class="outline-3"> <div id="outline-container-org95418b5" class="outline-3">
<h3 id="orgd9e4111"><span class="section-number-3">2.4</span> Printers</h3> <h3 id="org95418b5"><span class="section-number-3">3.4</span> Printers</h3>
<div class="outline-text-3" id="text-2-4"> <div class="outline-text-3" id="text-3-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp_long</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp_long</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
@ -599,34 +616,34 @@ Element.(to_string Fe);;
</div> </div>
</div> </div>
<div id="outline-container-org683f181" class="outline-2"> <div id="outline-container-orgc544cb3" class="outline-2">
<h2 id="org683f181"><span class="section-number-2">3</span> Atomic mass</h2> <h2 id="orgc544cb3"><span class="section-number-2">4</span> Atomic mass</h2>
<div class="outline-text-2" id="text-3"> <div class="outline-text-2" id="text-4">
<p> <p>
Atomic mass, a non-negative float. Atomic mass, a non-negative float.
</p> </p>
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="org7467a2c"><span class="org-tuareg-font-lock-governing">include</span> <span class="org-tuareg-font-lock-governing">module type of</span> <span class="org-tuareg-font-lock-module">Common.Non_negative_float</span> <pre class="src src-ocaml" id="orgb21935a"><span class="org-tuareg-font-lock-governing">include</span> <span class="org-tuareg-font-lock-governing">module type of</span> <span class="org-tuareg-font-lock-module">Common.Non_negative_float</span>
</pre> </pre>
</div> </div>
</div> </div>
</div> </div>
<div id="outline-container-org69bdfa4" class="outline-2"> <div id="outline-container-org0dcc52f" class="outline-2">
<h2 id="org69bdfa4"><span class="section-number-2">4</span> Nuclei</h2> <h2 id="org0dcc52f"><span class="section-number-2">5</span> Nuclei</h2>
<div class="outline-text-2" id="text-4"> <div class="outline-text-2" id="text-5">
</div> </div>
<div id="outline-container-orgd713019" class="outline-3"> <div id="outline-container-org83b7fcb" class="outline-3">
<h3 id="orgd713019"><span class="section-number-3">4.1</span> Type</h3> <h3 id="org83b7fcb"><span class="section-number-3">5.1</span> Type</h3>
<div class="outline-text-3" id="text-4-1"> <div class="outline-text-3" id="text-5-1">
<p> <p>
<a id="orgc195f64"><code>Nuclei.t</code></a> <a id="org117d80f"><code>Nuclei.t</code></a>
</p> </p>
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="orgf7c74d8"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Common</span> <pre class="src src-ocaml" id="org9b85d6c"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Common</span>
<span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <span class="org-tuareg-font-lock-operator">=</span> <span class="org-tuareg-font-lock-operator">(</span><span class="org-tuareg-font-lock-module">Element.</span>t <span class="org-tuareg-font-lock-operator">*</span> <span class="org-tuareg-font-lock-module">Coordinate.</span>t<span class="org-tuareg-font-lock-operator">)</span> array <span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <span class="org-tuareg-font-lock-operator">=</span> <span class="org-tuareg-font-lock-operator">(</span><span class="org-tuareg-font-lock-module">Element.</span>t <span class="org-tuareg-font-lock-operator">*</span> <span class="org-tuareg-font-lock-module">Coordinate.</span>t<span class="org-tuareg-font-lock-operator">)</span> array
</pre> </pre>
@ -634,13 +651,13 @@ Atomic mass, a non-negative float.
</div> </div>
</div> </div>
<div id="outline-container-org4bd7221" class="outline-3"> <div id="outline-container-orgcba845a" class="outline-3">
<h3 id="org4bd7221"><span class="section-number-3">4.2</span> xyz file lexer/parser</h3> <h3 id="orgcba845a"><span class="section-number-3">5.2</span> xyz file lexer/parser</h3>
<div class="outline-text-3" id="text-4-2"> <div class="outline-text-3" id="text-5-2">
</div> </div>
<div id="outline-container-org7281519" class="outline-4"> <div id="outline-container-org196ee2a" class="outline-4">
<h4 id="org7281519"><span class="section-number-4">4.2.1</span> Lexer</h4> <h4 id="org196ee2a"><span class="section-number-4">5.2.1</span> Lexer</h4>
<div class="outline-text-4" id="text-4-2-1"> <div class="outline-text-4" id="text-5-2-1">
<p> <p>
<code>nuclei_lexer.mll</code> contains the description of the lexemes used in <code>nuclei_lexer.mll</code> contains the description of the lexemes used in
an xyz file. an xyz file.
@ -692,9 +709,9 @@ rule read_all <span class="org-tuareg-font-lock-operator">=</span> parse
</div> </div>
</div> </div>
<div id="outline-container-org0b56536" class="outline-4"> <div id="outline-container-orgda1a58a" class="outline-4">
<h4 id="org0b56536"><span class="section-number-4">4.2.2</span> Parser</h4> <h4 id="orgda1a58a"><span class="section-number-4">5.2.2</span> Parser</h4>
<div class="outline-text-4" id="text-4-2-2"> <div class="outline-text-4" id="text-5-2-2">
<p> <p>
<code>xyz_parser.mly</code> parses nuclear coordinates in xyz format. <code>xyz_parser.mly</code> parses nuclear coordinates in xyz format.
</p> </p>
@ -812,9 +829,9 @@ an <code>xyz_file</code> data structure.
</div> </div>
</div> </div>
<div id="outline-container-orgf5cc2de" class="outline-3"> <div id="outline-container-org4bc334a" class="outline-3">
<h3 id="orgf5cc2de"><span class="section-number-3">4.3</span> Conversion</h3> <h3 id="org4bc334a"><span class="section-number-3">5.3</span> Conversion</h3>
<div class="outline-text-3" id="text-4-3"> <div class="outline-text-3" id="text-5-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_xyz_string</span> <span class="org-tuareg-font-lock-operator">:</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_xyz_string</span> <span class="org-tuareg-font-lock-operator">:</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">to_xyz_string</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> string <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">to_xyz_string</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> string
@ -872,9 +889,9 @@ an <code>xyz_file</code> data structure.
</div> </div>
</div> </div>
<div id="outline-container-org070bc98" class="outline-3"> <div id="outline-container-org259e4f9" class="outline-3">
<h3 id="org070bc98"><span class="section-number-3">4.4</span> <span class="todo TODO">TODO</span> Query</h3> <h3 id="org259e4f9"><span class="section-number-3">5.4</span> <span class="todo TODO">TODO</span> Query</h3>
<div class="outline-text-3" id="text-4-4"> <div class="outline-text-3" id="text-5-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">formula</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> string <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">formula</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> string
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">repulsion</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> float <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">repulsion</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> float
@ -922,9 +939,9 @@ an <code>xyz_file</code> data structure.
</div> </div>
</div> </div>
<div id="outline-container-org1ab3f3a" class="outline-3"> <div id="outline-container-org606af7e" class="outline-3">
<h3 id="org1ab3f3a"><span class="section-number-3">4.5</span> Printers</h3> <h3 id="org606af7e"><span class="section-number-3">5.5</span> Printers</h3>
<div class="outline-text-3" id="text-4-5"> <div class="outline-text-3" id="text-5-5">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -932,32 +949,32 @@ an <code>xyz_file</code> data structure.
</div> </div>
</div> </div>
<div id="outline-container-org59045e6" class="outline-3"> <div id="outline-container-orgcd3169c" class="outline-3">
<h3 id="org59045e6"><span class="section-number-3">4.6</span> Tests</h3> <h3 id="orgcd3169c"><span class="section-number-3">5.6</span> Tests</h3>
</div> </div>
</div> </div>
<div id="outline-container-org35f99d4" class="outline-2"> <div id="outline-container-orgf9d75ec" class="outline-2">
<h2 id="org35f99d4"><span class="section-number-2">5</span> Z-matrix</h2> <h2 id="orgf9d75ec"><span class="section-number-2">6</span> Z-matrix</h2>
<div class="outline-text-2" id="text-5"> <div class="outline-text-2" id="text-6">
<p> <p>
Z-matrix representation of nuclear coordinates. Z-matrix representation of nuclear coordinates.
</p> </p>
</div> </div>
<div id="outline-container-org74ef0d8" class="outline-3"> <div id="outline-container-org2ee988d" class="outline-3">
<h3 id="org74ef0d8"><span class="section-number-3">5.1</span> Type</h3> <h3 id="org2ee988d"><span class="section-number-3">6.1</span> Type</h3>
<div class="outline-text-3" id="text-5-1"> <div class="outline-text-3" id="text-6-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml" id="org7111155"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml" id="org2500b30"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
</pre> </pre>
</div> </div>
</div> </div>
</div> </div>
<div id="outline-container-org4b91a4e" class="outline-3"> <div id="outline-container-org0a2b5eb" class="outline-3">
<h3 id="org4b91a4e"><span class="section-number-3">5.2</span> Conversion</h3> <h3 id="org0a2b5eb"><span class="section-number-3">6.2</span> Conversion</h3>
<div class="outline-text-3" id="text-5-2"> <div class="outline-text-3" id="text-6-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_string</span> <span class="org-tuareg-font-lock-operator">:</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">of_string</span> <span class="org-tuareg-font-lock-operator">:</span> string <span class="org-tuareg-font-lock-operator">-&gt;</span> t
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">to_xyz</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-operator">(</span><span class="org-tuareg-font-lock-module">Element.</span>t <span class="org-tuareg-font-lock-operator">*</span> float <span class="org-tuareg-font-lock-operator">*</span> float <span class="org-tuareg-font-lock-operator">*</span> float<span class="org-tuareg-font-lock-operator">)</span> array <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">to_xyz</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-operator">(</span><span class="org-tuareg-font-lock-module">Element.</span>t <span class="org-tuareg-font-lock-operator">*</span> float <span class="org-tuareg-font-lock-operator">*</span> float <span class="org-tuareg-font-lock-operator">*</span> float<span class="org-tuareg-font-lock-operator">)</span> array
@ -991,7 +1008,7 @@ Z-matrix representation of nuclear coordinates.
</tbody> </tbody>
</table> </table>
<pre class="example" id="org4da0c8d"> <pre class="example" id="org4442d9d">
let zmt = Zmatrix.of_string " let zmt = Zmatrix.of_string "
n n
n 1 nn n 1 nn
@ -1036,9 +1053,9 @@ H -0.568803 -0.793910 1.726048"
</div> </div>
<div id="outline-container-orgbec757c" class="outline-3"> <div id="outline-container-org36acab9" class="outline-3">
<h3 id="orgbec757c"><span class="section-number-3">5.3</span> Printers</h3> <h3 id="org36acab9"><span class="section-number-3">6.3</span> Printers</h3>
<div class="outline-text-3" id="text-5-3"> <div class="outline-text-3" id="text-6-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -1049,7 +1066,7 @@ H -0.568803 -0.793910 1.726048"
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-27 Wed 23:44</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-27 Wed 23:44 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Perturbation</title> <title>Perturbation</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -233,32 +250,32 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org9499b78">1. MP2</a> <li><a href="#org4e3f766">1. Summmary</a></li>
<li><a href="#org8e4d6b3">2. MP2</a>
<ul> <ul>
<li><a href="#org7af70d6">1.1. Type</a></li> <li><a href="#orgafa22a1">2.1. Type</a></li>
<li><a href="#orgc9fb258">1.2. Creation</a></li> <li><a href="#org0f17f3c">2.2. Creation</a></li>
<li><a href="#org874a939">1.3. Access</a></li> <li><a href="#org6a18ed1">2.3. Access</a></li>
<li><a href="#org4363bab">1.4. Printers</a></li> <li><a href="#orgb49bc14">2.4. Printers</a></li>
<li><a href="#org9eebbb5">1.5. Tests</a></li> <li><a href="#orgd6b373f">2.5. Tests</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div class="org-src-container">
<pre class="src src-ocaml" id="org4748522"><span class="org-string">"Perturbation theory"</span> <div id="outline-container-org4e3f766" class="outline-2">
</pre> <h2 id="org4e3f766"><span class="section-number-2">1</span> Summmary</h2>
</div> </div>
<div id="outline-container-org8e4d6b3" class="outline-2">
<div id="outline-container-org9499b78" class="outline-2"> <h2 id="org8e4d6b3"><span class="section-number-2">2</span> MP2</h2>
<h2 id="org9499b78"><span class="section-number-2">1</span> MP2</h2> <div class="outline-text-2" id="text-2">
<div class="outline-text-2" id="text-1">
</div> </div>
<div id="outline-container-org7af70d6" class="outline-3"> <div id="outline-container-orgafa22a1" class="outline-3">
<h3 id="org7af70d6"><span class="section-number-3">1.1</span> Type</h3> <h3 id="orgafa22a1"><span class="section-number-3">2.1</span> Type</h3>
<div class="outline-text-3" id="text-1-1"> <div class="outline-text-3" id="text-2-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span> <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">type</span> <span class="org-type">t</span>
</pre> </pre>
@ -266,9 +283,9 @@
</div> </div>
</div> </div>
<div id="outline-container-orgc9fb258" class="outline-3"> <div id="outline-container-org0f17f3c" class="outline-3">
<h3 id="orgc9fb258"><span class="section-number-3">1.2</span> Creation</h3> <h3 id="org0f17f3c"><span class="section-number-3">2.2</span> Creation</h3>
<div class="outline-text-3" id="text-1-2"> <div class="outline-text-3" id="text-2-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">frozen_core</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Mo.Frozen_core.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Mo.Basis.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">make</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-label">frozen_core</span><span class="org-tuareg-font-lock-operator">:</span><span class="org-tuareg-font-lock-module">Mo.Frozen_core.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Mo.Basis.</span>t <span class="org-tuareg-font-lock-operator">-&gt;</span> t
</pre> </pre>
@ -290,7 +307,7 @@
</tbody> </tbody>
</table> </table>
<pre class="example" id="orgb08821b"> <pre class="example" id="orgb30baf6">
let mp2 = let mp2 =
Perturbation.Mp2.make ~frozen_core:(Mo.Frozen_core.(make Small nuclei)) mo_basis Perturbation.Mp2.make ~frozen_core:(Mo.Frozen_core.(make Small nuclei)) mo_basis
;; ;;
@ -299,9 +316,9 @@ val mp2 : Perturbation.Mp2.t = E(MP2)=-0.185523
</div> </div>
</div> </div>
<div id="outline-container-org874a939" class="outline-3"> <div id="outline-container-org6a18ed1" class="outline-3">
<h3 id="org874a939"><span class="section-number-3">1.3</span> Access</h3> <h3 id="org6a18ed1"><span class="section-number-3">2.3</span> Access</h3>
<div class="outline-text-3" id="text-1-3"> <div class="outline-text-3" id="text-2-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">energy</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> float <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">energy</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> float
<span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">mo_basis</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Mo.Basis.</span>t <span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">mo_basis</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> <span class="org-tuareg-font-lock-module">Mo.Basis.</span>t
@ -335,15 +352,15 @@ val mp2 : Perturbation.Mp2.t = E(MP2)=-0.185523
</tbody> </tbody>
</table> </table>
<pre class="example" id="org487f614"> <pre class="example" id="org02ea73d">
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-org4363bab" class="outline-3"> <div id="outline-container-orgb49bc14" class="outline-3">
<h3 id="org4363bab"><span class="section-number-3">1.4</span> Printers</h3> <h3 id="orgb49bc14"><span class="section-number-3">2.4</span> Printers</h3>
<div class="outline-text-3" id="text-1-4"> <div class="outline-text-3" id="text-2-4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit <pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">pp</span> <span class="org-tuareg-font-lock-operator">:</span> <span class="org-tuareg-font-lock-module">Format.</span>formatter <span class="org-tuareg-font-lock-operator">-&gt;</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> unit
</pre> </pre>
@ -351,14 +368,14 @@ val mp2 : Perturbation.Mp2.t = E(MP2)=-0.185523
</div> </div>
</div> </div>
<div id="outline-container-org9eebbb5" class="outline-3"> <div id="outline-container-orgd6b373f" class="outline-3">
<h3 id="org9eebbb5"><span class="section-number-3">1.5</span> Tests</h3> <h3 id="orgd6b373f"><span class="section-number-3">2.5</span> Tests</h3>
</div> </div>
</div> </div>
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-27 Wed 23:44</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

972
docs/qcaml.css Normal file
View File

@ -0,0 +1,972 @@
/* Adapted from worg.css */
@import url(https://fonts.googleapis.com/css?family=Droid+Sans|Droid+Sans+Mono|Droid+Serif);
@media all
{
html {
margin: 0;
font: .9em/1.6em "Droid Serif", Cambria, Georgia, "DejaVu Serif", serif;
background-image: url(/img/org-mode-unicorn-logo-worg.png);
background-attachment: fixed;
background-position: right bottom;
background-repeat: no-repeat;
background-color: white;
}
body {
font-size: 14pt;
line-height: 22pt;
color: black;
margin-top: 0;
}
body #content {
padding-top: 2em;
margin: auto;
max-width: 70%;
background-color: white;
}
body #support {
position: fixed;
top:0;
display:block;
font-size: 12pt;
right:0pt;
text-align: right;
padding: .2em 1em;
background: #EEE;
border-radius: 10px;
}
body .title {
margin-left: 0px;
font-size: 22pt;
}
#org-div-home-and-up{
position: fixed;
right: 0.5em;
margin-top: 70px;
font-family:sans-serif;
}
/* TOC inspired by http://jashkenas.github.com/coffee-script */
#table-of-contents {
margin-top: 105px;
font-size: 10pt;
font-family:sans-serif;
position: fixed;
right: 0em;
top: 0em;
background: white;
line-height: 12pt;
text-align: right;
box-shadow: 0 0 1em #777777;
-webkit-box-shadow: 0 0 1em #777777;
-moz-box-shadow: 0 0 1em #777777;
-webkit-border-bottom-left-radius: 5px;
-moz-border-radius-bottomleft: 5px;
/* ensure doesn't flow off the screen when expanded */
max-height: 80%;
overflow: auto; }
#table-of-contents h2 {
font-size: 13pt;
max-width: 9em;
border: 0;
font-weight: normal;
padding-left: 0.5em;
padding-right: 0.5em;
padding-top: 0.05em;
padding-bottom: 0.05em; }
#table-of-contents #text-table-of-contents {
display: none;
text-align: left; }
#table-of-contents:hover #text-table-of-contents {
display: block;
padding: 0.5em;
margin-top: -1.5em; }
#license {
background-color: #eeeeee;
}
h1 {
font-size:2.1em;
padding:0 0 30px 0;
margin-top: 10px;
margin-bottom: 10px;
margin-right: 7%;
color: grey;
}
h2 {
font-family:sans-serif;
font-size:1.45em;
padding:10px 0 10px 0;
color: black;
border-bottom: 1px solid #ddd;
padding-top: 1.5em;
}
.outline-text-2 {
margin-left: 0.1em
}
h3 {
font-family:sans-serif;
font-size:1.3em;
color: grey;
margin-left: 0.6em;
padding-top: 1.5em;
}
/* #A34D32;*/
.outline-text-3 {
margin-left: 0.9em;
}
h4 {
font-family:sans-serif;
font-size:1.2em;
margin-left: 1.2em;
color: #A5573E;
padding-top: 1.5em;
}
.outline-text-4 {
margin-left: 1.45em;
}
a {text-decoration: none; font-weight: 400;}
a:visited {text-decoration: none; font-weight: 400;}
a:hover {text-decoration: underline;}
.todo {
color: #CA0000;
}
.done {
color: #006666;
}
.timestamp-kwd {
color: #444;
}
.tag {
background-color: #ffff;
color: #ffff;
}
li {
margin: .4em;
}
table {
border: 1;
border-color: grey;
}
thead {
border: 0;
}
tbody {
border: 0;
}
tr {
border: 0;
}
td {
border-left: 0px;
border-right: 0px;
border-top: 0px;
border-bottom: 0px;
}
th {
border-left: 0px;
border-right: 0px;
border-top: 1px solid grey;
border-bottom: 1px solid grey;
}
code {
font-size: 100%;
color: black;
padding: 0px 0.2em;
}
img {
border: 0;
}
.share img {
opacity: .4;
-moz-opacity: .4;
filter: alpha(opacity=40);
}
.share img:hover {
opacity: 1;
-moz-opacity: 1;
filter: alpha(opacity=100);
}
pre {
font-family: Droid Sans Mono, Monaco, Consolas, "Lucida Console", monospace;
color: black;
font-size: 90%;
padding: 0.5em;
overflow: auto;
border: none;
background-color: #f2f2f2;
border-radius: 5px;
}
.org-info-box {
clear:both;
margin-left:auto;
margin-right:auto;
padding:0.7em;
}
.org-info-box img {
float:left;
margin:0em 0.5em 0em 0em;
}
.org-info-box p {
margin:0em;
padding:0em;
}
.builtin {
/* font-lock-builtin-face */
color: #f4a460;
}
.comment {
/* font-lock-comment-face */
color: #737373;
}
.comment-delimiter {
/* font-lock-comment-delimiter-face */
color: #666666;
}
.constant {
/* font-lock-constant-face */
color: #db7093;
}
.doc {
/* font-lock-doc-face */
color: #b3b3b3;
}
.function-name {
/* font-lock-function-name-face */
color: #5f9ea0;
}
.headline {
/* headline-face */
color: #ffffff;
background-color: #000000;
font-weight: bold;
}
.keyword {
/* font-lock-keyword-face */
color: #4682b4;
}
.negation-char {
}
.regexp-grouping-backslash {
}
.regexp-grouping-construct {
}
.string {
/* font-lock-string-face */
color: #ccc79a;
}
.todo-comment {
/* todo-comment-face */
color: #ffffff;
background-color: #000000;
font-weight: bold;
}
.variable-name {
/* font-lock-variable-name-face */
color: #ff6a6a;
}
.warning {
/* font-lock-warning-face */
color: #ffffff;
background-color: #cd5c5c;
font-weight: bold;
}
.important {
/* font-lock-warning-face */
background-color: #e3e3f7;
}
.exercise {
/* font-lock-warning-face */
background-color: #e3f7e3;
}
.note {
/* font-lock-warning-face */
background-color: #f7f7d9;
}
pre.a {
color: inherit;
background-color: inherit;
font: inherit;
text-decoration: inherit;
}
pre.a:hover {
text-decoration: underline;
}
/* Styles for org-info.js */
.org-info-js_info-navigation
{
border-style:none;
}
#org-info-js_console-label
{
font-size:10px;
font-weight:bold;
white-space:nowrap;
}
.org-info-js_search-highlight
{
background-color:#ffff00;
color:#000000;
font-weight:bold;
}
#org-info-js-window
{
border-bottom:1px solid black;
padding-bottom:10px;
margin-bottom:10px;
}
.org-info-search-highlight
{
background-color:#adefef; /* same color as emacs default */
color:#000000;
font-weight:bold;
}
.org-bbdb-company {
/* bbdb-company */
font-style: italic;
}
.org-bbdb-field-name {
}
.org-bbdb-field-value {
}
.org-bbdb-name {
/* bbdb-name */
text-decoration: underline;
}
.org-bold {
/* bold */
font-weight: bold;
}
.org-bold-italic {
/* bold-italic */
font-weight: bold;
font-style: italic;
}
.org-border {
/* border */
background-color: #000000;
}
.org-buffer-menu-buffer {
/* buffer-menu-buffer */
font-weight: bold;
}
.org-builtin {
/* font-lock-builtin-face */
color: #da70d6;
}
.org-button {
/* button */
text-decoration: underline;
}
.org-c-nonbreakable-space {
/* c-nonbreakable-space-face */
background-color: #ff0000;
font-weight: bold;
}
.org-calendar-today {
/* calendar-today */
text-decoration: underline;
}
.org-comment {
/* font-lock-comment-face */
color: #b22222;
}
.org-comment-delimiter {
/* font-lock-comment-delimiter-face */
color: #b22222;
}
.org-constant {
/* font-lock-constant-face */
color: #5f9ea0;
}
.org-cursor {
/* cursor */
background-color: #000000;
}
.org-default {
/* default */
color: #000000;
background-color: #ffffff;
}
.org-diary {
/* diary */
color: #ff0000;
}
.org-doc {
/* font-lock-doc-face */
color: #bc8f8f;
}
.org-escape-glyph {
/* escape-glyph */
color: #a52a2a;
}
.org-file-name-shadow {
/* file-name-shadow */
color: #7f7f7f;
}
.org-fixed-pitch {
}
.org-fringe {
/* fringe */
background-color: #f2f2f2;
}
.org-function-name {
/* font-lock-function-name-face */
color: #0000ff;
}
.org-header-line {
/* header-line */
color: #333333;
background-color: #e5e5e5;
}
.org-help-argument-name {
/* help-argument-name */
font-style: italic;
}
.org-highlight {
/* highlight */
background-color: #b4eeb4;
}
.org-holiday {
/* holiday */
background-color: #ffc0cb;
}
.org-info-header-node {
/* info-header-node */
color: #a52a2a;
font-weight: bold;
font-style: italic;
}
.org-info-header-xref {
/* info-header-xref */
color: #0000ff;
text-decoration: underline;
}
.org-info-menu-header {
/* info-menu-header */
font-weight: bold;
}
.org-info-menu-star {
/* info-menu-star */
color: #ff0000;
}
.org-info-node {
/* info-node */
color: #a52a2a;
font-weight: bold;
font-style: italic;
}
.org-info-title-1 {
/* info-title-1 */
font-size: 172%;
font-weight: bold;
}
.org-info-title-2 {
/* info-title-2 */
font-size: 144%;
font-weight: bold;
}
.org-info-title-3 {
/* info-title-3 */
font-size: 120%;
font-weight: bold;
}
.org-info-title-4 {
/* info-title-4 */
font-weight: bold;
}
.org-info-xref {
/* info-xref */
color: #0000ff;
text-decoration: underline;
}
.org-isearch {
/* isearch */
color: #b0e2ff;
background-color: #cd00cd;
}
.org-italic {
/* italic */
font-style: italic;
}
.org-keyword {
/* font-lock-keyword-face */
color: #a020f0;
}
.org-lazy-highlight {
/* lazy-highlight */
background-color: #afeeee;
}
.org-link {
/* link */
color: #0000ff;
text-decoration: underline;
}
.org-link-visited {
/* link-visited */
color: #8b008b;
text-decoration: underline;
}
.org-match {
/* match */
background-color: #ffff00;
}
.org-menu {
}
.org-message-cited-text {
/* message-cited-text */
color: #ff0000;
}
.org-message-header-cc {
/* message-header-cc */
color: #191970;
}
.org-message-header-name {
/* message-header-name */
color: #6495ed;
}
.org-message-header-newsgroups {
/* message-header-newsgroups */
color: #00008b;
font-weight: bold;
font-style: italic;
}
.org-message-header-other {
/* message-header-other */
color: #4682b4;
}
.org-message-header-subject {
/* message-header-subject */
color: #000080;
font-weight: bold;
}
.org-message-header-to {
/* message-header-to */
color: #191970;
font-weight: bold;
}
.org-message-header-xheader {
/* message-header-xheader */
color: #0000ff;
}
.org-message-mml {
/* message-mml */
color: #228b22;
}
.org-message-separator {
/* message-separator */
color: #a52a2a;
}
.org-minibuffer-prompt {
/* minibuffer-prompt */
color: #0000cd;
}
.org-mm-uu-extract {
/* mm-uu-extract */
color: #006400;
background-color: #ffffe0;
}
.org-mode-line {
/* mode-line */
color: #000000;
background-color: #bfbfbf;
}
.org-mode-line-buffer-id {
/* mode-line-buffer-id */
font-weight: bold;
}
.org-mode-line-highlight {
}
.org-mode-line-inactive {
/* mode-line-inactive */
color: #333333;
background-color: #e5e5e5;
}
.org-mouse {
/* mouse */
background-color: #000000;
}
.org-negation-char {
}
.org-next-error {
/* next-error */
background-color: #eedc82;
}
.org-nobreak-space {
/* nobreak-space */
color: #a52a2a;
text-decoration: underline;
}
.org-org-agenda-date {
/* org-agenda-date */
color: #0000ff;
}
.org-org-agenda-date-weekend {
/* org-agenda-date-weekend */
color: #0000ff;
font-weight: bold;
}
.org-org-agenda-restriction-lock {
/* org-agenda-restriction-lock */
background-color: #ffff00;
}
.org-org-agenda-structure {
/* org-agenda-structure */
color: #0000ff;
}
.org-org-archived {
/* org-archived */
color: #7f7f7f;
}
.org-org-code {
/* org-code */
color: #7f7f7f;
}
.org-org-column {
/* org-column */
background-color: #e5e5e5;
}
.org-org-column-title {
/* org-column-title */
background-color: #e5e5e5;
font-weight: bold;
text-decoration: underline;
}
.org-org-date {
/* org-date */
color: #a020f0;
text-decoration: underline;
}
.org-org-done {
/* org-done */
color: #228b22;
font-weight: bold;
}
.org-org-drawer {
/* org-drawer */
color: #0000ff;
}
.org-org-ellipsis {
/* org-ellipsis */
color: #b8860b;
text-decoration: underline;
}
.org-org-formula {
/* org-formula */
color: #b22222;
}
.org-org-headline-done {
/* org-headline-done */
color: #bc8f8f;
}
.org-org-hide {
/* org-hide */
color: #e5e5e5;
}
.org-org-latex-and-export-specials {
/* org-latex-and-export-specials */
color: #8b4513;
}
.org-org-level-1 {
/* org-level-1 */
color: #0000ff;
}
.org-org-level-2 {
/* org-level-2 */
color: #b8860b;
}
.org-org-level-3 {
/* org-level-3 */
color: #a020f0;
}
.org-org-level-4 {
/* org-level-4 */
color: #b22222;
}
.org-org-level-5 {
/* org-level-5 */
color: #228b22;
}
.org-org-level-6 {
/* org-level-6 */
color: #5f9ea0;
}
.org-org-level-7 {
/* org-level-7 */
color: #da70d6;
}
.org-org-level-8 {
/* org-level-8 */
color: #bc8f8f;
}
.org-org-link {
/* org-link */
color: #a020f0;
text-decoration: underline;
}
.org-org-property-value {
}
.org-org-scheduled-previously {
/* org-scheduled-previously */
color: #b22222;
}
.org-org-scheduled-today {
/* org-scheduled-today */
color: #006400;
}
.org-org-sexp-date {
/* org-sexp-date */
color: #a020f0;
}
.org-org-special-keyword {
/* org-special-keyword */
color: #bc8f8f;
}
.org-org-table {
/* org-table */
color: #0000ff;
}
.org-org-tag {
/* org-tag */
font-weight: bold;
}
.org-org-target {
/* org-target */
text-decoration: underline;
}
.org-org-time-grid {
/* org-time-grid */
color: #b8860b;
}
.org-org-todo {
/* org-todo */
color: #ff0000;
}
.org-org-upcoming-deadline {
/* org-upcoming-deadline */
color: #b22222;
}
.org-org-verbatim {
/* org-verbatim */
color: #7f7f7f;
text-decoration: underline;
}
.org-org-warning {
/* org-warning */
color: #ff0000;
font-weight: bold;
}
.org-outline-1 {
/* outline-1 */
color: #0000ff;
}
.org-outline-2 {
/* outline-2 */
color: #b8860b;
}
.org-outline-3 {
/* outline-3 */
color: #a020f0;
}
.org-outline-4 {
/* outline-4 */
color: #b22222;
}
.org-outline-5 {
/* outline-5 */
color: #228b22;
}
.org-outline-6 {
/* outline-6 */
color: #5f9ea0;
}
.org-outline-7 {
/* outline-7 */
color: #da70d6;
}
.org-outline-8 {
/* outline-8 */
color: #bc8f8f;
}
.outline-text-1, .outline-text-2, .outline-text-3, .outline-text-4, .outline-text-5, .outline-text-6 {
/* Add more spacing between section. Padding, so that folding with org-info.js works as expected. */
}
.org-preprocessor {
/* font-lock-preprocessor-face */
color: #da70d6;
}
.org-query-replace {
/* query-replace */
color: #b0e2ff;
background-color: #cd00cd;
}
.org-regexp-grouping-backslash {
/* font-lock-regexp-grouping-backslash */
font-weight: bold;
}
.org-regexp-grouping-construct {
/* font-lock-regexp-grouping-construct */
font-weight: bold;
}
.org-region {
/* region */
background-color: #eedc82;
}
.org-rmail-highlight {
}
.org-scroll-bar {
/* scroll-bar */
background-color: #bfbfbf;
}
.org-secondary-selection {
/* secondary-selection */
background-color: #ffff00;
}
.org-shadow {
/* shadow */
color: #7f7f7f;
}
.org-show-paren-match {
/* show-paren-match */
background-color: #40e0d0;
}
.org-show-paren-mismatch {
/* show-paren-mismatch */
color: #ffffff;
background-color: #a020f0;
}
.org-string {
/* font-lock-string-face */
color: #bc8f8f;
}
.org-texinfo-heading {
/* texinfo-heading */
color: #0000ff;
}
.org-tool-bar {
/* tool-bar */
color: #000000;
background-color: #bfbfbf;
}
.org-tooltip {
/* tooltip */
color: #000000;
background-color: #ffffe0;
}
.org-trailing-whitespace {
/* trailing-whitespace */
background-color: #ff0000;
}
.org-type {
/* font-lock-type-face */
color: #228b22;
}
.org-underline {
/* underline */
text-decoration: underline;
}
.org-variable-name {
/* font-lock-variable-name-face */
color: #b8860b;
}
.org-variable-pitch {
}
.org-vertical-border {
}
.org-warning {
/* font-lock-warning-face */
color: #ff0000;
font-weight: bold;
}
.rss_box {}
.rss_title, rss_title a {}
.rss_items {}
.rss_item a:link, .rss_item a:visited, .rss_item a:active {}
.rss_item a:hover {}
.rss_date {}
pre.src {
position: static;
overflow: visible;
padding-top: 1.2em;
}
label.org-src-name {
font-size: 80%;
font-style: italic;
}
#show_source {margin: 0; padding: 0;}
#postamble {
font-size: 75%;
min-width: 700px;
max-width: 80%;
line-height: 14pt;
margin-left: 20px;
margin-top: 10px;
padding: .2em;
background-color: #ffffff;
z-index: -1000;
}
} /* END OF @media all */
@media screen
{
#table-of-contents {
position: fixed;
margin-top: 105px;
float: right;
border: 1px solid #red;
max-width: 50%;
overflow: auto;
}
} /* END OF @media screen */

8
docs/qcaml.setup Normal file
View File

@ -0,0 +1,8 @@
# -*- mode: org; -*-
#+INFOJS_OPT: toc:t mouse:underline path:org-info.js
#+HTML_HEAD: <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
#+OPTIONS: H:4 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t

7
docs/theme.setup Normal file
View File

@ -0,0 +1,7 @@
# -*- mode: org; -*-
#+HTML_LINK_HOME: index.html
#+SETUPFILE: qcaml.setup
# SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2021-01-20 Wed 23:52 --> <!-- 2021-01-28 Thu 00:32 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Top-level</title> <title>Top-level</title>
@ -193,12 +193,29 @@
.org-svg { width: 90%; } .org-svg { width: 90%; }
/*]]>*/--> /*]]>*/-->
</style> </style>
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/htmlize.css"/> <link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script type="text/javascript" src="org-info.js">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/lib/js/jquery.stickytableheaders.min.js"></script> // @license-end
<script type="text/javascript" src="https://fniessen.github.io/org-html-themes/src/readtheorg_theme/js/readtheorg.js"></script> </script>
<script type="text/javascript">
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
<!--/*--><![CDATA[/*><!--*/
org_html_manager.set("TOC_DEPTH", "4");
org_html_manager.set("LINK_HOME", "index.html");
org_html_manager.set("LINK_UP", "");
org_html_manager.set("LOCAL_TOC", "1");
org_html_manager.set("VIEW_BUTTONS", "0");
org_html_manager.set("MOUSE_HINT", "underline");
org_html_manager.set("FIXED_TOC", "0");
org_html_manager.set("TOC", "1");
org_html_manager.set("VIEW", "info");
org_html_manager.setup(); // activate after the parameters are set
/*]]>*///-->
// @license-end
</script>
<script type="text/javascript"> <script type="text/javascript">
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain // @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/ <!--/*--><![CDATA[/*><!--*/
@ -229,14 +246,22 @@
<a accesskey="H" href="index.html"> HOME </a> <a accesskey="H" href="index.html"> HOME </a>
</div><div id="content"> </div><div id="content">
<h1 class="title">Top-level</h1> <h1 class="title">Top-level</h1>
<div class="org-src-container"> <div id="table-of-contents">
<pre class="src src-ocaml" id="orgfc71223"><span class="org-string">"Installs pretty printers for top-level."</span> <h2>Table of Contents</h2>
</pre> <div id="text-table-of-contents">
<ul>
<li><a href="#org55c0065">1. Summmary</a></li>
</ul>
</div>
</div>
<div id="outline-container-org55c0065" class="outline-2">
<h2 id="org55c0065"><span class="section-number-2">1</span> Summmary</h2>
</div> </div>
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p> <p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-01-20 Wed 23:52</p> <p class="date">Created: 2021-01-28 Thu 00:32</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -1,9 +1,10 @@
#+TITLE: Gaussian #+TITLE: Gaussian
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Gaussian basis sets" "Gaussian basis sets"
#+end_src #+end_src
@ -12,13 +13,13 @@
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +57,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
qcaml.particles qcaml.particles
@ -64,7 +65,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -82,4 +83,4 @@ with open(dunetest,'w') as f:

View File

@ -1,9 +1,10 @@
#+TITLE: Gaussian integrals #+TITLE: Gaussian integrals
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Integrals on the Gaussian basis sets" "Integrals on the Gaussian basis sets"
#+end_src #+end_src
@ -12,13 +13,13 @@
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +57,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
qcaml.linear_algebra qcaml.linear_algebra
@ -66,7 +67,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
(modules_without_implementation matrix_on_basis) (modules_without_implementation matrix_on_basis)
@ -85,4 +86,4 @@ with open(dunetest,'w') as f:

View File

@ -1,24 +1,25 @@
#+TITLE: Linear Algebra #+TITLE: Linear Algebra
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Linear algebra utilities of QCaml libraries." "Linear algebra utilities of QCaml libraries"
#+end_src #+end_src
#+RESULTS: synopsis #+RESULTS: synopsis
: Linear algebra utilities of QCaml libraries. : Linear algebra utilities of QCaml libraries
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +57,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
lacaml lacaml
@ -64,7 +65,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -82,4 +83,4 @@ with open(dunetest,'w') as f:

View File

@ -1,9 +1,10 @@
#+TITLE: Molecular orbitals #+TITLE: Molecular orbitals
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Molecular orbitals" "Molecular orbitals"
#+end_src #+end_src
@ -12,13 +13,13 @@
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,14 +57,14 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.simulation qcaml.simulation
) )
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -81,4 +82,4 @@ with open(dunetest,'w') as f:

View File

@ -1,9 +1,10 @@
#+TITLE: Operators #+TITLE: Operators
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Parameteried operators, such as F12 and range-separation" "Parameteried operators, such as F12 and range-separation"
#+end_src #+end_src
@ -12,13 +13,13 @@
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,14 +57,14 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
) )
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -81,4 +82,4 @@ with open(dunetest,'w') as f:

View File

@ -1,24 +1,25 @@
#+TITLE: Common #+TITLE: Common
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Information relative to particles (electrons and nuclei)." "Information relative to particles (electrons and nuclei)"
#+end_src #+end_src
#+RESULTS: synopsis #+RESULTS: synopsis
: Information relative to particles (electrons and nuclei). : Information relative to particles (electrons and nuclei)
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,14 +57,14 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
) )
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
(modules_without_implementation (modules_without_implementation
@ -92,4 +93,4 @@ with open(dunetest,'w') as f:

View File

@ -1,9 +1,10 @@
#+TITLE: Perturbation #+TITLE: Perturbation
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Perturbation theory" "Perturbation theory"
#+end_src #+end_src
@ -12,13 +13,13 @@
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +57,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.simulation qcaml.simulation
qcaml.mo qcaml.mo
@ -64,7 +65,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -82,4 +83,4 @@ with open(dunetest,'w') as f:

View File

@ -1,9 +1,10 @@
#+TITLE: QCaml #+TITLE: QCaml
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Main QCaml entry point" "Main QCaml entry point"
#+end_src #+end_src
@ -12,12 +13,12 @@
* File generation :noexport: * File generation :noexport:
Use [C-c C-c] on the code below. This will create the dune files Use [C-c C-c] on the code below. This will create the dune files
and the =qcaml.ml= file. and the =qcaml.ml= file.
#+header: :noweb yes #+header: :noweb yes
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var mlfile="lib/qcaml.ml" #+header: :var mlfile="lib/qcaml.ml"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"

View File

@ -1,9 +1,10 @@
#+TITLE: Simulation #+TITLE: Simulation
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Data describing a simulation (AOs, operators, nuclear coordinate,...)" "Data describing a simulation (AOs, operators, nuclear coordinate,...)"
#+end_src #+end_src
@ -12,13 +13,13 @@
* Dune files :noexport: * Dune files :noexport:
** Generate dune files ** Generate dune files
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+header: :var dune="lib/dune" #+header: :var dune="lib/dune"
#+header: :var dunetest="test/dune" #+header: :var dunetest="test/dune"
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
@ -56,7 +57,7 @@ with open(dunetest,'w') as f:
** Dependencies ** Dependencies
#+name: dependencies #+name: dependencies
#+begin_src elisp #+begin_src elisp
(libraries (libraries
qcaml.common qcaml.common
qcaml.particles qcaml.particles
@ -68,7 +69,7 @@ with open(dunetest,'w') as f:
#+end_src #+end_src
** Modules without implementation ** Modules without implementation
#+name: noimplementation #+name: noimplementation
#+begin_src elisp #+begin_src elisp
#+end_src #+end_src
@ -86,4 +87,4 @@ with open(dunetest,'w') as f:

View File

@ -1,15 +1,15 @@
#+TITLE: Top-level #+TITLE: Top-level
#+HTML_LINK_HOME: index.html #+SETUPFILE: ../docs/theme.setup
#+SETUPFILE: ../docs/org-html-themes/org/theme-readtheorg.setup
* Summmary
#+name: synopsis #+name: synopsis
#+begin_src ocaml :export output raw #+begin_src ocaml :exports none :results value
"Installs pretty printers for top-level." "Installs pretty printers for top-level"
#+end_src #+end_src
#+RESULTS: synopsis #+RESULTS: synopsis
: Installs pretty printers for top-level. : Installs pretty printers for top-level
* Dune files :noexport: * Dune files :noexport:
@ -19,7 +19,7 @@
Use [C-c C-c] on the code below to create the output for the dune files Use [C-c C-c] on the code below to create the output for the dune files
#+header: :noweb strip-export #+header: :noweb strip-export
#+header: :var name=(file-name-directory buffer-file-name) #+header: :var name=(file-name-directory buffer-file-name)
#+begin_src python :exports none :results output none #+begin_src python :exports none :results output none
name = name.split('/')[-2] name = name.split('/')[-2]
synopsis = """ synopsis = """
@ -34,7 +34,7 @@ with open("lib/dune",'w') as f:
(synopsis {synopsis} ) (synopsis {synopsis} )
(modes byte) (modes byte)
(libraries (libraries
compiler-libs.toplevel compiler-libs.toplevel
qcaml qcaml
) )
) )