GWH guess

This commit is contained in:
Anthony Scemama 2023-06-26 15:31:35 +02:00
parent d5a71707c8
commit 0f0bceb6c3
7 changed files with 125 additions and 185 deletions

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2023-06-16 Fri 18:25 -->
<!-- 2023-06-26 Mon 15:31 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Gaussian integrals</title>
@ -250,18 +250,18 @@ org_html_manager.setup(); // activate after the parameters are set
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org78d032d">1. Summary</a></li>
<li><a href="#orgef950a1">1. Summary</a></li>
</ul>
</div>
</div>
<div id="outline-container-org78d032d" class="outline-2">
<h2 id="org78d032d"><span class="section-number-2">1</span> Summary</h2>
<div id="outline-container-orgef950a1" class="outline-2">
<h2 id="orgef950a1"><span class="section-number-2">1</span> Summary</h2>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2023-06-16 Fri 18:25</p>
<p class="date">Created: 2023-06-26 Mon 15:31</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-10-19 Tue 16:20 -->
<!-- 2023-06-26 Mon 15:36 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Molecular orbitals</title>
@ -272,46 +272,46 @@ org_html_manager.setup(); // activate after the parameters are set
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org67a6ab4">1. Summary</a></li>
<li><a href="#org534e8e0">2. Frozen core</a>
<li><a href="#org3ed7199">1. Summary</a></li>
<li><a href="#org4a88c80">2. Frozen core</a>
<ul>
<li><a href="#org5cdd86a">2.1. Type</a></li>
<li><a href="#orga19472c">2.2. Creation</a></li>
<li><a href="#org19a22fb">2.3. Access</a></li>
<li><a href="#org276b149">2.4. Printers</a></li>
<li><a href="#org53ea511">2.1. Type</a></li>
<li><a href="#orge7e405c">2.2. Creation</a></li>
<li><a href="#orge328830">2.3. Access</a></li>
<li><a href="#org9503ce1">2.4. Printers</a></li>
</ul>
</li>
<li><a href="#org3963dec">3. Orbital localization</a>
<li><a href="#org4efd51b">3. Orbital localization</a>
<ul>
<li><a href="#org14e39a2">3.1. Type</a></li>
<li><a href="#orgd0f2a90">3.2. Edmiston-Rudenberg</a></li>
<li><a href="#orga75e980">3.3. Boys</a></li>
<li><a href="#org6f32371">3.4. Access</a></li>
<li><a href="#org10eb2b8">3.5. Printers</a></li>
<li><a href="#org3024ac7">3.6. Tests</a></li>
<li><a href="#org829d9c2">3.1. Type</a></li>
<li><a href="#orge798f90">3.2. Edmiston-Rudenberg</a></li>
<li><a href="#org642d476">3.3. Boys</a></li>
<li><a href="#orgaea957c">3.4. Access</a></li>
<li><a href="#orgf753e47">3.5. Printers</a></li>
<li><a href="#org116a61d">3.6. Tests</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org67a6ab4" class="outline-2">
<h2 id="org67a6ab4"><span class="section-number-2">1</span> Summary</h2>
<div id="outline-container-org3ed7199" class="outline-2">
<h2 id="org3ed7199"><span class="section-number-2">1</span> Summary</h2>
</div>
<div id="outline-container-org534e8e0" class="outline-2">
<h2 id="org534e8e0"><span class="section-number-2">2</span> Frozen core</h2>
<div id="outline-container-org4a88c80" class="outline-2">
<h2 id="org4a88c80"><span class="section-number-2">2</span> Frozen core</h2>
<div class="outline-text-2" id="text-2">
<p>
Defines how the core electrons are frozen, for each atom.
</p>
</div>
<div id="outline-container-org5cdd86a" class="outline-3">
<h3 id="org5cdd86a"><span class="section-number-3">2.1</span> Type</h3>
<div id="outline-container-org53ea511" class="outline-3">
<h3 id="org53ea511"><span class="section-number-3">2.1</span> Type</h3>
<div class="outline-text-3" id="text-2-1">
<div class="org-src-container">
<pre class="src src-ocaml" id="orgd878327"><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="org1321f70"><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">Small</span>
<span class="org-tuareg-font-lock-operator">|</span> Large
@ -325,8 +325,8 @@ Defines how the core electrons are frozen, for each atom.
</div>
</div>
<div id="outline-container-orga19472c" class="outline-3">
<h3 id="orga19472c"><span class="section-number-3">2.2</span> Creation</h3>
<div id="outline-container-orge7e405c" class="outline-3">
<h3 id="orge7e405c"><span class="section-number-3">2.2</span> Creation</h3>
<div class="outline-text-3" id="text-2-2">
<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
@ -362,7 +362,7 @@ Defines how the core electrons are frozen, for each atom.
</tbody>
</table>
<pre class="example" id="org74f6971">
<pre class="example" id="orge99fb08">
let f = Frozen_core.(make Small nuclei) ;;
val f : Frozen_core.t = [|0; 2; 2; 0|]
@ -372,8 +372,8 @@ val f : Frozen_core.t = [|0; 2; 2; 0|]
</div>
</div>
<div id="outline-container-org19a22fb" class="outline-3">
<h3 id="org19a22fb"><span class="section-number-3">2.3</span> Access</h3>
<div id="outline-container-orge328830" class="outline-3">
<h3 id="orge328830"><span class="section-number-3">2.3</span> Access</h3>
<div class="outline-text-3" id="text-2-3">
<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
@ -402,7 +402,7 @@ val f : Frozen_core.t = [|0; 2; 2; 0|]
</tbody>
</table>
<pre class="example" id="org7ed9c90">
<pre class="example" id="org62fb133">
Frozen_core.num_elec f ;;
- : int = 4
@ -412,8 +412,8 @@ Frozen_core.num_mos f ;;
</div>
</div>
<div id="outline-container-org276b149" class="outline-3">
<h3 id="org276b149"><span class="section-number-3">2.4</span> Printers</h3>
<div id="outline-container-org9503ce1" class="outline-3">
<h3 id="org9503ce1"><span class="section-number-3">2.4</span> Printers</h3>
<div class="outline-text-3" id="text-2-4">
<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
@ -423,8 +423,8 @@ Frozen_core.num_mos f ;;
</div>
</div>
<div id="outline-container-org3963dec" class="outline-2">
<h2 id="org3963dec"><span class="section-number-2">3</span> Orbital localization</h2>
<div id="outline-container-org4efd51b" class="outline-2">
<h2 id="org4efd51b"><span class="section-number-2">3</span> Orbital localization</h2>
<div class="outline-text-2" id="text-3">
<p>
Molecular orbital localization function.
@ -440,11 +440,11 @@ Edmiston-Rudenberg:
</div>
<div id="outline-container-org14e39a2" class="outline-3">
<h3 id="org14e39a2"><span class="section-number-3">3.1</span> Type</h3>
<div id="outline-container-org829d9c2" class="outline-3">
<h3 id="org829d9c2"><span class="section-number-3">3.1</span> Type</h3>
<div class="outline-text-3" id="text-3-1">
<div class="org-src-container">
<pre class="src src-ocaml" id="org06f9604"><span class="org-tuareg-font-lock-governing">open </span><span class="org-tuareg-font-lock-module">Linear_algebra</span>
<pre class="src src-ocaml" id="org4c72cea"><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">type</span> <span class="org-type">localization_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">Edmiston</span>
@ -464,16 +464,16 @@ Edmiston-Rudenberg:
</div>
</div>
<div id="outline-container-orgd0f2a90" class="outline-3">
<h3 id="orgd0f2a90"><span class="section-number-3">3.2</span> Edmiston-Rudenberg</h3>
<div id="outline-container-orge798f90" class="outline-3">
<h3 id="orge798f90"><span class="section-number-3">3.2</span> Edmiston-Rudenberg</h3>
</div>
<div id="outline-container-orga75e980" class="outline-3">
<h3 id="orga75e980"><span class="section-number-3">3.3</span> Boys</h3>
<div id="outline-container-org642d476" class="outline-3">
<h3 id="org642d476"><span class="section-number-3">3.3</span> Boys</h3>
</div>
<div id="outline-container-org6f32371" class="outline-3">
<h3 id="org6f32371"><span class="section-number-3">3.4</span> Access</h3>
<div id="outline-container-orgaea957c" class="outline-3">
<h3 id="orgaea957c"><span class="section-number-3">3.4</span> Access</h3>
<div class="outline-text-3" id="text-3-4">
<div class="org-src-container">
<pre class="src src-ocaml"><span class="org-tuareg-font-lock-governing">val</span> <span class="org-function-name">kind</span> <span class="org-tuareg-font-lock-operator">:</span> t <span class="org-tuareg-font-lock-operator">-&gt;</span> localization_kind
@ -522,8 +522,8 @@ Edmiston-Rudenberg:
</div>
</div>
<div id="outline-container-org10eb2b8" class="outline-3">
<h3 id="org10eb2b8"><span class="section-number-3">3.5</span> Printers</h3>
<div id="outline-container-orgf753e47" class="outline-3">
<h3 id="orgf753e47"><span class="section-number-3">3.5</span> Printers</h3>
<div class="outline-text-3" id="text-3-5">
<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
@ -532,14 +532,14 @@ Edmiston-Rudenberg:
</div>
</div>
<div id="outline-container-org3024ac7" class="outline-3">
<h3 id="org3024ac7"><span class="section-number-3">3.6</span> Tests</h3>
<div id="outline-container-org116a61d" class="outline-3">
<h3 id="org116a61d"><span class="section-number-3">3.6</span> Tests</h3>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2021-10-19 Tue 16:20</p>
<p class="date">Created: 2023-06-26 Mon 15:36</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,12 +3,12 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2023-06-17 Sat 00:26 -->
<!-- 2023-06-26 Mon 15:36 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Top-level Top-level</title>
<title>Top-level</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="scemama" />
<meta name="author" content="Anthony Scemama" />
<style type="text/css">
<!--/*--><![CDATA[/*><!--*/
.title { text-align: center;
@ -40,7 +40,7 @@
}
pre.src {
position: relative;
overflow: visible;
overflow: auto;
padding-top: 1.2em;
}
pre.src:before {
@ -161,6 +161,19 @@
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
.equation-container {
display: table;
text-align: center;
width: 100%;
}
.equation {
vertical-align: middle;
}
.equation-label {
display: table-cell;
text-align: right;
vertical-align: middle;
}
.inlinetask {
padding: 10px;
border: 2px solid gray;
@ -181,66 +194,14 @@
/*]]>*/-->
</style>
<link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<link rel="stylesheet" title="Standard" href="qcaml.css" type="text/css" />
<script type="text/javascript" src="org-info.js">
/**
*
* @source: org-info.js
*
* @licstart The following is the entire license notice for the
* JavaScript code in org-info.js.
*
* Copyright (C) 2012-2018 Free Software Foundation, Inc.
*
*
* The JavaScript code in this tag is free software: you can
* redistribute it and/or modify it under the terms of the GNU
* General Public License (GNU GPL) as published by the Free Software
* Foundation, either version 3 of the License, or (at your option)
* any later version. The code is distributed WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
*
* As additional permission under GNU GPL version 3 section 7, you
* may distribute non-source (e.g., minimized or compacted) forms of
* that code without the copy of the GNU GPL normally required by
* section 4, provided you include this license notice and a URL
* through which recipients can access the Corresponding Source.
*
* @licend The above is the entire license notice
* for the JavaScript code in org-info.js.
*
*/
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
// @license-end
</script>
<script type="text/javascript">
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
// @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");
@ -253,52 +214,29 @@ 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">
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
<!--/*--><![CDATA[/*><!--*/
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.cacheClassElem = elem.className;
elem.cacheClassTarget = target.className;
target.className = "code-highlighted";
elem.className = "code-highlighted";
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(elem.cacheClassElem)
elem.className = elem.cacheClassElem;
if(elem.cacheClassTarget)
target.className = elem.cacheClassTarget;
}
/*]]>*///-->
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.classList.add("code-highlighted");
target.classList.add("code-highlighted");
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.classList.remove("code-highlighted");
target.classList.remove("code-highlighted");
}
}
/*]]>*///-->
// @license-end
</script>
</head>
<body>
@ -307,29 +245,24 @@ for the JavaScript code in this tag.
|
<a accesskey="H" href="index.html"> HOME </a>
</div><div id="content">
<h1 class="title">Top-level Top-level</h1>
<h1 class="title">Top-level</h1>
<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#orgadc5251">1. Summary</a></li>
<li><a href="#orgec76ff6">2. Summary</a></li>
<li><a href="#org88f23a2">1. Summary</a></li>
</ul>
</div>
</div>
<div id="outline-container-orgadc5251" class="outline-2">
<h2 id="orgadc5251"><span class="section-number-2">1</span> Summary</h2>
</div>
<div id="outline-container-orgec76ff6" class="outline-2">
<h2 id="orgec76ff6"><span class="section-number-2">2</span> Summary</h2>
<div id="outline-container-org88f23a2" class="outline-2">
<h2 id="org88f23a2"><span class="section-number-2">1</span> Summary</h2>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: scemama</p>
<p class="date">Created: 2023-06-17 Sat 00:26</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
<p class="author">Author: Anthony Scemama</p>
<p class="date">Created: 2023-06-26 Mon 15:36</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
</html>

View File

@ -5,6 +5,7 @@ type mo = Mo_dim.t
type guess =
| Hcore of (ao,ao) Matrix.t
| GWH of (ao,ao) Matrix.t
| Huckel of (ao,ao) Matrix.t
| Matrix of (ao,mo) Matrix.t
@ -12,38 +13,40 @@ type t = guess
module El = Particles.Electrons
let hcore_guess ao_basis =
let hcore_guess ao_basis =
let eN_ints = Ao.Basis.eN_ints ao_basis
and kin_ints = Ao.Basis.kin_ints ao_basis
in
Matrix.add eN_ints kin_ints
let huckel_guess ao_basis =
let gwh_guess ao_basis =
let c = 0.5 *. 1.75 in
let eN_ints = Ao.Basis.eN_ints ao_basis
and kin_ints = Ao.Basis.kin_ints ao_basis
in
let m_F = Matrix.add eN_ints kin_ints in
let ao_num = Ao.Basis.size ao_basis
and overlap = Ao.Basis.overlap ao_basis
in
let m_F = hcore_guess ao_basis in
let diag = Vector.init ao_num (fun i -> m_F%:(i,i) ) in
function
| 0 -> invalid_arg "Huckel guess needs a non-zero number of occupied MOs."
| _nocc ->
Matrix.init_cols ao_num ao_num (fun i j ->
Matrix.init_cols ao_num ao_num (fun i j ->
if (i<>j) then
c *. (overlap%:(i,j)) /. ((overlap%:(i,i)) *. (overlap%:(j,j)) ) *. (diag%.(i) +. diag%.(j))
c *. (overlap%:(i,j)) /. ((overlap%:(i,i)) *. (overlap%:(j,j)) ) *. (diag%.(i) +. diag%.(j))
else
diag%.(i)
diag%.(i)
)
let make ?(nocc=0) ~guess ao_basis =
let huckel_guess ao_basis =
function
| 0 -> invalid_arg "Huckel guess needs a non-zero number of occupied MOs."
| _nocc ->
let m_F = gwh_guess ao_basis in
(*TODO: F(l,l) = F_gwh(l,l) + \sum{mu,nu} P_{mu,nu} (mu nu| l l) *)
m_F
let make ?(nocc=0) ~guess ao_basis =
match guess with
| `Hcore -> Hcore (hcore_guess ao_basis)
| `GWH -> Hcore (gwh_guess ao_basis)
| `Huckel -> Huckel (huckel_guess ao_basis nocc)
| `Matrix m -> Matrix m

View File

@ -1,12 +1,15 @@
open Linear_algebra
(** Guess for Hartree-Fock calculations. *)
(** Guess for Hartree-Fock calculations.
Ref: https://pubs.acs.org/doi/10.1021/acs.jctc.8b01089
*)
type ao = Ao.Ao_dim.t
type mo = Mo_dim.t
type guess =
| Hcore of (ao,ao) Matrix.t (* Core Hamiltonian Matrix *)
| GWH of (ao,ao) Matrix.t (* Generalized Wolfsberg-Helmholtz (GWH) *)
| Huckel of (ao,ao) Matrix.t (* Huckel Hamiltonian Matrix *)
| Matrix of (ao,mo) Matrix.t (* Guess Eigenvectors *)
@ -15,6 +18,6 @@ type t = guess
val make :
?nocc:int ->
guess:[ `Hcore | `Huckel | `Matrix of (ao,mo) Matrix.t ] ->
guess:[ `Hcore | `GWH | `Huckel | `Matrix of (ao,mo) Matrix.t ] ->
Ao.Basis.t -> t

View File

@ -188,7 +188,7 @@ let exchange_energy t =
let make
?kind
?guess:(guess=`Huckel)
?guess:(guess=`GWH)
?max_scf:(max_scf=64)
?level_shift:(level_shift=0.2)
?threshold_SCF:(threshold_SCF=1.e-8)
@ -249,6 +249,7 @@ let make
in
match guess with
| Guess.Hcore m_H -> c_of_h m_H
| Guess.GWH m_H -> c_of_h m_H
| Guess.Huckel m_H -> c_of_h m_H
| Guess.Matrix m_C -> m_C
in

View File

@ -43,11 +43,11 @@ val kin_energy : t -> float
val eN_energy : t -> float
(** Electron-nucleus potential energy *)
val coulomb_energy : t -> float
val coulomb_energy : t -> float
(** Electron-Electron potential energy *)
val exchange_energy : t -> float
val exchange_energy : t -> float
(** Exchange energy *)
val nocc : t -> int
@ -59,7 +59,7 @@ val empty: hartree_fock_data
val make :
?kind:hartree_fock_kind ->
?guess:[ `Hcore | `Huckel | `Matrix of (ao,mo) Matrix.t ] ->
?guess:[ `Hcore | `GWH | `Huckel | `Matrix of (ao,mo) Matrix.t ] ->
?max_scf:int ->
?level_shift:float -> ?threshold_SCF:float ->
Simulation.t -> t