mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-11-13 09:33:41 +01:00
Cleaned readme for auto-generation
This commit is contained in:
parent
ceca635621
commit
65d04a76f2
87
ao/README.org
Normal file
87
ao/README.org
Normal file
@ -0,0 +1,87 @@
|
||||
#+TITLE: Atomic Orbitals
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Atomic basis set"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Atomic basis set
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.operators
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
23
ao/lib/dune
23
ao/lib/dune
@ -1,13 +1,18 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name ao)
|
||||
(public_name qcaml.ao)
|
||||
(synopsis
|
||||
"Atomic basis set"
|
||||
)
|
||||
(libraries
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.operators
|
||||
)
|
||||
(synopsis "Atomic basis set."))
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.operators
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
@ -1,10 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_ao_basis)
|
||||
(name test_ao)
|
||||
(synopsis "Test for ao library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.common
|
||||
qcaml.linear_algebra
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.ao
|
||||
)
|
||||
(synopsis "Tests for the AO basis"))
|
||||
)
|
||||
|
@ -2,76 +2,90 @@
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
|
||||
This directory contains many utility functions used by all the other directories.
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Utility functions used by all the other directories."
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Utility functions used by all the other directories.
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
:PROPERTIES:
|
||||
:dune: lib/dune
|
||||
:dune-test: test/dune
|
||||
:header-args: :noweb yes
|
||||
:END:
|
||||
|
||||
** Headers
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune" t)
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
#+end_src
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune-test" t)
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
#+end_src
|
||||
|
||||
** Library
|
||||
|
||||
*** General information
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune" t)
|
||||
(name common)
|
||||
(public_name qcaml.common)
|
||||
(synopsis "General utilities used in all QCaml libraries.")
|
||||
#+end_src
|
||||
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune-test" t)
|
||||
(name test_common)
|
||||
(synopsis "Test for common library")
|
||||
#+end_src
|
||||
|
||||
*** Dependencies
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune" t)
|
||||
(libraries
|
||||
str
|
||||
zarith
|
||||
getopt
|
||||
)
|
||||
#+end_src
|
||||
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune-test" t)
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.common
|
||||
qcaml.{name}
|
||||
)
|
||||
#+end_src
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
*** Extra C files
|
||||
** Dependencies
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
str
|
||||
zarith
|
||||
getopt
|
||||
)
|
||||
#+end_src
|
||||
|
||||
The ~util.c~ file contains small C snippets to add missing
|
||||
functionalities to OCaml, such as support for the ~popcnt~ instruction.
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune" t)
|
||||
** Extra C files
|
||||
|
||||
The ~util.c~ file contains small C snippets to add missing
|
||||
functionalities to OCaml, such as support for the ~popcnt~ instruction.
|
||||
|
||||
#+name: c-files
|
||||
#+begin_src elisp
|
||||
(c_names
|
||||
util
|
||||
)
|
||||
(c_flags (:standard)
|
||||
-Ofast -march=native -fPIC
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Footers
|
||||
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune" t)
|
||||
)
|
||||
#+end_src
|
||||
|
||||
#+begin_src elisp :tangle (org-entry-get nil "dune-test" t)
|
||||
)
|
||||
#+end_src
|
||||
** Parser
|
||||
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
@ -1,20 +1,21 @@
|
||||
(library
|
||||
|
||||
(library
|
||||
(name common)
|
||||
(public_name qcaml.common)
|
||||
(synopsis "General utilities used in all QCaml libraries.")
|
||||
|
||||
(synopsis
|
||||
"Utility functions used by all the other directories."
|
||||
)
|
||||
(libraries
|
||||
str
|
||||
zarith
|
||||
getopt
|
||||
)
|
||||
|
||||
(c_names
|
||||
util
|
||||
)
|
||||
(c_flags (:standard)
|
||||
-Ofast -march=native -fPIC
|
||||
)
|
||||
|
||||
str
|
||||
zarith
|
||||
getopt
|
||||
)
|
||||
|
||||
(c_names
|
||||
util
|
||||
)
|
||||
(c_flags (:standard)
|
||||
-Ofast -march=native -fPIC
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -1,11 +1,9 @@
|
||||
(library
|
||||
|
||||
(library
|
||||
(name test_common)
|
||||
(synopsis "Test for common library")
|
||||
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.common
|
||||
)
|
||||
|
||||
)
|
||||
|
84
gaussian/README.org
Normal file
84
gaussian/README.org
Normal file
@ -0,0 +1,84 @@
|
||||
#+TITLE: Gaussian
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Gaussian basis sets"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Gaussian basis sets
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,11 +1,15 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name gaussian)
|
||||
(public_name qcaml.gaussian)
|
||||
(synopsis
|
||||
"Gaussian basis sets"
|
||||
)
|
||||
(libraries
|
||||
str
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
)
|
||||
(synopsis "Gaussian basis sets."))
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_gaussian_basis)
|
||||
(name test_gaussian)
|
||||
(synopsis "Test for gaussian library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
)
|
||||
(synopsis "Tests for Gaussian basis sets"))
|
||||
)
|
||||
|
87
gaussian_integrals/README.org
Normal file
87
gaussian_integrals/README.org
Normal file
@ -0,0 +1,87 @@
|
||||
#+TITLE: Gaussian integrals
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Integrals on the Gaussian basis sets"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Integrals on the Gaussian basis sets
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
qcaml.linear_algebra
|
||||
qcaml.gaussian
|
||||
qcaml.operators
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
(modules_without_implementation matrix_on_basis)
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,14 +1,17 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name gaussian_integrals)
|
||||
(public_name qcaml.gaussian_integrals)
|
||||
(synopsis
|
||||
"Integrals on the Gaussian basis sets"
|
||||
)
|
||||
(libraries
|
||||
str
|
||||
qcaml.common
|
||||
qcaml.linear_algebra
|
||||
qcaml.gaussian
|
||||
qcaml.operators
|
||||
)
|
||||
qcaml.common
|
||||
qcaml.linear_algebra
|
||||
qcaml.gaussian
|
||||
qcaml.operators
|
||||
)
|
||||
(modules_without_implementation matrix_on_basis)
|
||||
(synopsis "Integrals on the Gaussian basis sets."))
|
||||
|
||||
)
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_gaussian_integrals)
|
||||
(synopsis "Test for gaussian_integrals library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.particles
|
||||
qcaml.gaussian_integrals
|
||||
)
|
||||
(synopsis "Tests for integrals on the Gaussian basis sets"))
|
||||
)
|
||||
|
84
linear_algebra/README.org
Normal file
84
linear_algebra/README.org
Normal file
@ -0,0 +1,84 @@
|
||||
#+TITLE: Linear Algebra
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Linear algebra utilities of QCaml libraries."
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Linear algebra utilities of QCaml libraries.
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
lacaml
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,10 +1,15 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name linear_algebra)
|
||||
(public_name qcaml.linear_algebra)
|
||||
(synopsis
|
||||
"Linear algebra utilities of QCaml libraries."
|
||||
)
|
||||
(libraries
|
||||
qcaml.common
|
||||
lacaml
|
||||
)
|
||||
(synopsis "Linear algebra utilities of QCaml libraries."))
|
||||
qcaml.common
|
||||
lacaml
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
@ -1,7 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_linear_algebra)
|
||||
(synopsis "Test for linear_algebra library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.linear_algebra
|
||||
)
|
||||
(synopsis "Tests for linear algebra"))
|
||||
)
|
||||
|
83
mo/README.org
Normal file
83
mo/README.org
Normal file
@ -0,0 +1,83 @@
|
||||
#+TITLE: Molecular orbitals
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Molecular orbitals"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Parameteried operators, such as F12 and range-separation
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.simulation
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
15
mo/lib/dune
15
mo/lib/dune
@ -1,9 +1,14 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name mo)
|
||||
(public_name qcaml.mo)
|
||||
(synopsis
|
||||
"Molecular orbitals"
|
||||
)
|
||||
(libraries
|
||||
qcaml.simulation
|
||||
)
|
||||
(synopsis "Molecular orbitals."))
|
||||
qcaml.simulation
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
11
mo/test/dune
11
mo/test/dune
@ -1,12 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_mo_basis)
|
||||
(name test_mo)
|
||||
(synopsis "Test for mo library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.mo
|
||||
)
|
||||
(synopsis "Tests for the MO basis"))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
)
|
||||
|
83
operators/README.org
Normal file
83
operators/README.org
Normal file
@ -0,0 +1,83 @@
|
||||
#+TITLE: Operators
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Parameteried operators, such as F12 and range-separation"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Parameteried operators, such as F12 and range-separation
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,10 +1,14 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name operators)
|
||||
(public_name qcaml.operators)
|
||||
(synopsis
|
||||
"Parameteried operators, such as F12 and range-separation"
|
||||
)
|
||||
(libraries
|
||||
str
|
||||
qcaml.common
|
||||
)
|
||||
(synopsis "Parameterized operators"))
|
||||
qcaml.common
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
9
operators/test/dune
Normal file
9
operators/test/dune
Normal file
@ -0,0 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_operators)
|
||||
(synopsis "Test for operators library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.operators
|
||||
)
|
||||
)
|
94
particles/README.org
Normal file
94
particles/README.org
Normal file
@ -0,0 +1,94 @@
|
||||
#+TITLE: Common
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Information relative to particles (electrons and nuclei)."
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Information relative to particles (electrons and nuclei).
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
(modules_without_implementation
|
||||
xyz_ast
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
(ocamllex
|
||||
(modules
|
||||
nuclei_lexer
|
||||
))
|
||||
(ocamlyacc
|
||||
(modules
|
||||
xyz_parser
|
||||
))
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,17 +1,23 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name particles)
|
||||
(public_name qcaml.particles)
|
||||
(synopsis
|
||||
"Information relative to particles (electrons and nuclei)."
|
||||
)
|
||||
(libraries
|
||||
str
|
||||
qcaml.common
|
||||
)
|
||||
(modules_without_implementation xyz_ast)
|
||||
(synopsis "Defines nuclei and electrons."))
|
||||
qcaml.common
|
||||
)
|
||||
(modules_without_implementation
|
||||
xyz_ast
|
||||
)
|
||||
|
||||
)
|
||||
(ocamllex
|
||||
(modules nuclei_lexer)
|
||||
)
|
||||
(modules
|
||||
nuclei_lexer
|
||||
))
|
||||
(ocamlyacc
|
||||
(modules xyz_parser)
|
||||
)
|
||||
(modules
|
||||
xyz_parser
|
||||
))
|
||||
|
@ -1,7 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_particles)
|
||||
(synopsis "Test for particles library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.particles
|
||||
)
|
||||
(synopsis "Tests for particles"))
|
||||
)
|
||||
|
84
perturbation/README.org
Normal file
84
perturbation/README.org
Normal file
@ -0,0 +1,84 @@
|
||||
#+TITLE: Perturbation
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Perturbation theory"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Perturbation theory
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.simulation
|
||||
qcaml.mo
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,10 +1,15 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name perturbation)
|
||||
(public_name qcaml.perturbation)
|
||||
(synopsis
|
||||
"Perturbation theory"
|
||||
)
|
||||
(libraries
|
||||
qcaml.simulation
|
||||
qcaml.mo
|
||||
)
|
||||
(synopsis "Perturbation theory."))
|
||||
qcaml.simulation
|
||||
qcaml.mo
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
@ -1,13 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_perturbation)
|
||||
(synopsis "Test for perturbation library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.mo
|
||||
qcaml.perturbation
|
||||
)
|
||||
(synopsis "Tests for the perturbation"))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
)
|
||||
|
91
qcaml/README.org
Normal file
91
qcaml/README.org
Normal file
@ -0,0 +1,91 @@
|
||||
#+TITLE: QCaml
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Main QCaml entry point"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Main QCaml entry point
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.ao
|
||||
qcaml.common
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.mo
|
||||
qcaml.operators
|
||||
qcaml.particles
|
||||
qcaml.perturbation
|
||||
qcaml.simulation
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,17 +1,22 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name qcaml)
|
||||
(public_name qcaml)
|
||||
(public_name qcaml.qcaml)
|
||||
(synopsis
|
||||
"Main QCaml entry point"
|
||||
)
|
||||
(libraries
|
||||
qcaml.ao
|
||||
qcaml.common
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.mo
|
||||
qcaml.operators
|
||||
qcaml.particles
|
||||
qcaml.perturbation
|
||||
qcaml.simulation
|
||||
)
|
||||
(synopsis "Main QCaml entry point"))
|
||||
qcaml.ao
|
||||
qcaml.common
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.mo
|
||||
qcaml.operators
|
||||
qcaml.particles
|
||||
qcaml.perturbation
|
||||
qcaml.simulation
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
9
qcaml/test/dune
Normal file
9
qcaml/test/dune
Normal file
@ -0,0 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_qcaml)
|
||||
(synopsis "Test for qcaml library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.qcaml
|
||||
)
|
||||
)
|
88
simulation/README.org
Normal file
88
simulation/README.org
Normal file
@ -0,0 +1,88 @@
|
||||
#+TITLE: Simulation
|
||||
#+SETUPFILE: https://fniessen.github.io/org-html-themes/org/theme-readtheorg.setup
|
||||
|
||||
#+name: synopsis
|
||||
#+begin_src ocaml :export output raw
|
||||
"Data describing a simulation (AOs, operators, nuclear coordinate,...)"
|
||||
#+end_src
|
||||
|
||||
#+RESULTS: synopsis
|
||||
: Data describing a simulation (AOs, operators, nuclear coordinate,...)
|
||||
|
||||
|
||||
* Dune files :noexport:
|
||||
|
||||
** Generate dune files
|
||||
|
||||
Use [C-c C-c] on the code below to create the output for the dune files
|
||||
|
||||
#+header: :noweb strip-export
|
||||
#+header: :var name=(file-name-directory buffer-file-name)
|
||||
#+header: :var dune="lib/dune"
|
||||
#+header: :var dunetest="test/dune"
|
||||
#+begin_src python :exports none :results output none
|
||||
name = name.split('/')[-2]
|
||||
synopsis = """
|
||||
<<synopsis>>
|
||||
"""
|
||||
|
||||
with open(dune,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name {name})
|
||||
(public_name qcaml.{name})
|
||||
(synopsis {synopsis} )
|
||||
<<dependencies>>
|
||||
<<noimplementation>>
|
||||
<<c-files>>
|
||||
)
|
||||
<<lex-yacc>>
|
||||
""")
|
||||
|
||||
with open(dunetest,'w') as f:
|
||||
f.write(f"""
|
||||
(library
|
||||
(name test_{name})
|
||||
(synopsis "Test for {name} library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.{name}
|
||||
)
|
||||
)
|
||||
""")
|
||||
#+end_src
|
||||
|
||||
** Dependencies
|
||||
|
||||
#+name: dependencies
|
||||
#+begin_src elisp
|
||||
(libraries
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.operators
|
||||
qcaml.ao
|
||||
)
|
||||
#+end_src
|
||||
|
||||
** Modules without implementation
|
||||
|
||||
#+name: noimplementation
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Extra C files
|
||||
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
** Parser files
|
||||
|
||||
#+name: lex-yacc
|
||||
#+begin_src elisp
|
||||
#+end_src
|
||||
|
||||
|
||||
|
||||
|
@ -1,14 +1,19 @@
|
||||
; name = name of the supermodule that will wrap all source files as submodules
|
||||
; public_name = name of the library for ocamlfind and opam
|
||||
|
||||
(library
|
||||
(name simulation)
|
||||
(public_name qcaml.simulation)
|
||||
(synopsis
|
||||
"Data describing a simulation (AOs, operators, nuclear coordinate,...)"
|
||||
)
|
||||
(libraries
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.operators
|
||||
qcaml.ao
|
||||
)
|
||||
(synopsis "Contains data describing a simulation (AOs, operators, nuclear coordinate,...)"))
|
||||
qcaml.common
|
||||
qcaml.particles
|
||||
qcaml.gaussian
|
||||
qcaml.gaussian_integrals
|
||||
qcaml.operators
|
||||
qcaml.ao
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
9
simulation/test/dune
Normal file
9
simulation/test/dune
Normal file
@ -0,0 +1,9 @@
|
||||
|
||||
(library
|
||||
(name test_simulation)
|
||||
(synopsis "Test for simulation library")
|
||||
(libraries
|
||||
alcotest
|
||||
qcaml.simulation
|
||||
)
|
||||
)
|
@ -5,10 +5,10 @@
|
||||
test_common
|
||||
test_linear_algebra
|
||||
test_particles
|
||||
test_gaussian_basis
|
||||
test_gaussian
|
||||
test_gaussian_integrals
|
||||
test_ao_basis
|
||||
test_mo_basis
|
||||
test_ao
|
||||
test_mo
|
||||
test_perturbation
|
||||
))
|
||||
|
||||
|
@ -8,11 +8,11 @@ let test_suites: unit Alcotest.test list = [
|
||||
"Linear_algebra.Vector", Test_linear_algebra.Vector.tests;
|
||||
"Particles.Nuclei", Test_particles.Nuclei.tests;
|
||||
"Particles.Electrons", Test_particles.Electrons.tests;
|
||||
"Gaussian_basis.General_basis", Test_gaussian_basis.General_basis.tests;
|
||||
"Ao_basis.Ao_basis_gaussian", Test_ao_basis.Ao_basis_gaussian.tests;
|
||||
"Ao_basis.Ao_basis", Test_ao_basis.Ao_basis.tests;
|
||||
"Mo.Guess", Test_mo_basis.Guess.tests;
|
||||
"Mo.Hartree_Fock", Test_mo_basis.Hf.tests;
|
||||
"Gaussian_basis.General_basis", Test_gaussian.General_basis.tests;
|
||||
"Ao_basis.Ao_basis_gaussian", Test_ao.Ao_basis_gaussian.tests;
|
||||
"Ao_basis.Ao_basis", Test_ao.Ao_basis.tests;
|
||||
"Mo.Guess", Test_mo.Guess.tests;
|
||||
"Mo.Hartree_Fock", Test_mo.Hf.tests;
|
||||
"Perturbation.Mp2", Test_perturbation.Mp2.tests;
|
||||
]
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user