Skip to content

Commit

Permalink
Deploying to gh-pages from @ 6f3cebf 🚀
Browse files Browse the repository at this point in the history
  • Loading branch information
loriab committed May 31, 2024
1 parent 73aed24 commit e867133
Show file tree
Hide file tree
Showing 11 changed files with 246 additions and 150 deletions.
206 changes: 103 additions & 103 deletions api/index.html

Large diffs are not rendered by default.

118 changes: 106 additions & 12 deletions changelog/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -501,6 +501,84 @@
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>

<li class="md-nav__item">
<a href="#v030-2024-mm-dd-unreleased" class="md-nav__link">
<span class="md-ellipsis">
v0.3.0 / 2024-MM-DD (Unreleased)
</span>
</a>

<nav class="md-nav" aria-label="v0.3.0 / 2024-MM-DD (Unreleased)">
<ul class="md-nav__list">

<li class="md-nav__item">
<a href="#breaking-changes" class="md-nav__link">
<span class="md-ellipsis">
Breaking Changes
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#new-features" class="md-nav__link">
<span class="md-ellipsis">
New Features
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#enhancements" class="md-nav__link">
<span class="md-ellipsis">
Enhancements
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#bug-fixes" class="md-nav__link">
<span class="md-ellipsis">
Bug Fixes
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#misc" class="md-nav__link">
<span class="md-ellipsis">
Misc.
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#must-unmerged" class="md-nav__link">
<span class="md-ellipsis">
MUST (Unmerged)
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#wip-unmerged" class="md-nav__link">
<span class="md-ellipsis">
WIP (Unmerged)
</span>
</a>

</li>

</ul>
</nav>

</li>

<li class="md-nav__item">
<a href="#v021-2024-05-14" class="md-nav__link">
<span class="md-ellipsis">
Expand All @@ -512,7 +590,7 @@
<ul class="md-nav__list">

<li class="md-nav__item">
<a href="#enhancements" class="md-nav__link">
<a href="#enhancements_1" class="md-nav__link">
<span class="md-ellipsis">
Enhancements
</span>
Expand All @@ -536,7 +614,7 @@
<ul class="md-nav__list">

<li class="md-nav__item">
<a href="#new-features" class="md-nav__link">
<a href="#new-features_1" class="md-nav__link">
<span class="md-ellipsis">
New Features
</span>
Expand All @@ -545,7 +623,7 @@
</li>

<li class="md-nav__item">
<a href="#enhancements_1" class="md-nav__link">
<a href="#enhancements_2" class="md-nav__link">
<span class="md-ellipsis">
Enhancements
</span>
Expand All @@ -554,7 +632,7 @@
</li>

<li class="md-nav__item">
<a href="#bug-fixes" class="md-nav__link">
<a href="#bug-fixes_1" class="md-nav__link">
<span class="md-ellipsis">
Bug Fixes
</span>
Expand All @@ -563,7 +641,7 @@
</li>

<li class="md-nav__item">
<a href="#misc" class="md-nav__link">
<a href="#misc_1" class="md-nav__link">
<span class="md-ellipsis">
Misc.
</span>
Expand All @@ -587,7 +665,7 @@
<ul class="md-nav__list">

<li class="md-nav__item">
<a href="#new-features_1" class="md-nav__link">
<a href="#new-features_2" class="md-nav__link">
<span class="md-ellipsis">
New Features
</span>
Expand Down Expand Up @@ -637,14 +715,30 @@ <h1 id="changelog">Changelog</h1>
#### WIP (Unmerged)
-->

<h2 id="v021-2024-05-14">v0.2.1 / 2024-05-14</h2>
<h2 id="v030-2024-mm-dd-unreleased">v0.3.0 / 2024-MM-DD (Unreleased)</h2>
<h4 id="breaking-changes">Breaking Changes</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/28">#28</a> Intf -- low-level "core" interface renamed from
<code>ManyBodyCalculator</code> to <code>ManyBodyCore</code>. The old name will continue to work for a few months. Also, its file changed
from <code>manybody.py</code> to <code>core.py</code> but it was already a top-level import.</li>
</ul>
<h4 id="new-features">New Features</h4>
<h4 id="enhancements">Enhancements</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/28">#28</a> Intf -- high-level interface is now importable from the top level module.</li>
</ul>
<h4 id="bug-fixes">Bug Fixes</h4>
<h4 id="misc">Misc.</h4>
<h4 id="must-unmerged">MUST (Unmerged)</h4>
<h4 id="wip-unmerged">WIP (Unmerged)</h4>
<h2 id="v021-2024-05-14">v0.2.1 / 2024-05-14</h2>
<h4 id="enhancements_1">Enhancements</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/27">#27</a> Intf -- move high-level interface from
<code>qcmb.qcng_computer.ManyBodyComputerQCNG</code> to <code>qcmb.computer.ManyBodyComputer</code>. Suppressed remaining printing. @loriab</li>
</ul>
<h2 id="v020-2024-05-13">v0.2.0 / 2024-05-13</h2>
<h4 id="new-features">New Features</h4>
<h4 id="new-features_1">New Features</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/25">#25</a> Schema -- added a new field <code>ManyBodyResults.component_results</code>
to store subsystem <code>AtomicResult</code>s (or other Result if layered computation). By default this is not stored, but it can
Expand All @@ -654,28 +748,28 @@ <h4 id="new-features">New Features</h4>
run <code>ManyBodyInput</code>s through QCEngine, not just <code>AtomicInput</code>s. Needs special QCElemental, QCEngine, and OptKing to
work for now. @loriab</li>
</ul>
<h4 id="enhancements_1">Enhancements</h4>
<h4 id="enhancements_2">Enhancements</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/22">#22</a> Intf -- move high-level interface to main directory and remove
unused functions. Most common route into interface is now: <code>qcmb.ManyBodyComputerQCNG.from_manybodyinput</code>. @loriab</li>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/25">#25</a> Schema -- <code>AtomicSpecification.protocols</code> set in
<code>ManyBodySpecification.specification</code> will now be observed. @loriab</li>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/26">#26</a> Schema -- add <code>AtomicSpecification.extras</code>. @loriab</li>
</ul>
<h4 id="bug-fixes">Bug Fixes</h4>
<h4 id="bug-fixes_1">Bug Fixes</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/25">#25</a> Schema -- <code>ManyBodyKeywords.embedding_charges</code> now default to None
rather than empty dict. @loriab</li>
</ul>
<h4 id="misc">Misc.</h4>
<h4 id="misc_1">Misc.</h4>
<ul>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/21">#21</a> Docs -- installation and molecule. @bennybp</li>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/24">#24</a> Intf -- release "frozen" pydantic on high-level
ManyBodyComputerQCNG, so core-interface ManyBodyCalculator can live on the class. @loriab</li>
<li><a href="https://github.com/MolSSI/QCManyBody/pull/26">#26</a> Cleanup -- remove most debug printing. @loriab</li>
</ul>
<h2 id="v010-2024-04-24">v0.1.0 / 2024-04-24</h2>
<h4 id="new-features_1">New Features</h4>
<h4 id="new-features_2">New Features</h4>
<ul>
<li>Runs CP, NoCP, VMFC energies, gradients, and Hessians. @bennybp @loriab</li>
</ul>
Expand Down
41 changes: 22 additions & 19 deletions core-interface/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -641,28 +641,31 @@ <h1 id="core-interface">Core Interface</h1>
<p>Note that the user is expected to run the calculations themselves, and the core interface does not provide any tools for
running the calculations.</p>
<h2 id="using-the-core-interface">Using the core interface</h2>
<p>The core interface is accessed through the <a class="autorefs autorefs-internal" href="../api/#qcmanybody.ManyBodyCalculator"><code>ManyBodyCalculator</code></a>
<p>The core interface is accessed through the [<code>ManyBodyCore</code>][qcmanybody.manybody.ManyBodyCore]
class.</p>
<p>The first step is to create a molecule. This molecule is a
<a href="https://molssi.github.io/QCElemental/model_molecule.html">QCElemental molecule object</a>, and must contain fragments.
(see also: <a href="../keywords/#molecule">moleule input</a>)</p>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">qcmanybody</span> <span class="k">as</span> <span class="nn">qcmb</span>
<span class="kn">import</span> <span class="nn">qcelemental</span> <span class="k">as</span> <span class="nn">qcel</span>
<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">qcelemental.models</span> <span class="kn">import</span> <span class="n">Molecule</span>

<span class="c1"># Create a molecule with 3 hydrogen atoms, each as its own fragment</span>
<span class="n">mol</span> <span class="o">=</span> <span class="n">qcel</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">Molecule</span><span class="p">(</span><span class="n">symbols</span><span class="o">=</span><span class="p">[</span><span class="s1">&#39;h&#39;</span><span class="p">,</span> <span class="s1">&#39;h&#39;</span><span class="p">,</span> <span class="s1">&#39;h&#39;</span><span class="p">],</span>
<span class="n">geometry</span><span class="o">=</span><span class="p">[[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">],[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">4</span><span class="p">]],</span>
<span class="n">fragments</span><span class="o">=</span><span class="p">[[</span><span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="p">[</span><span class="mi">2</span><span class="p">]])</span>
<span class="c1"># Create a molecule with 3 neon atoms, each as its own fragment</span>

<span class="n">mol</span> <span class="o">=</span> <span class="n">Molecule</span><span class="p">(</span><span class="n">symbols</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;ne&quot;</span><span class="p">,</span> <span class="s2">&quot;ne&quot;</span><span class="p">,</span> <span class="s2">&quot;ne&quot;</span><span class="p">],</span>
<span class="n">geometry</span><span class="o">=</span><span class="p">[[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">2</span><span class="p">],</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">4</span><span class="p">]],</span>
<span class="n">fragments</span><span class="o">=</span><span class="p">[[</span><span class="mi">0</span><span class="p">],</span> <span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="p">[</span><span class="mi">2</span><span class="p">]])</span>
</code></pre></div>
<p>Next, create a <code>ManyBodyCalculator</code> object. This object is constructed using the molecule,
<p>Next, create a <code>ManyBodyCore</code> object. This object is constructed using the molecule,
the desired BSSE correction, levels of MBE, and other options of the MBE.</p>
<div class="highlight"><pre><span></span><code><span class="n">mbc</span> <span class="o">=</span> <span class="n">qcmb</span><span class="o">.</span><span class="n">ManyBodyCalculator</span><span class="p">(</span>
<span class="n">molecule</span><span class="o">=</span><span class="n">mol</span><span class="p">,</span>
<span class="n">bsse_type</span><span class="o">=</span><span class="p">[</span><span class="s1">&#39;cp&#39;</span><span class="p">],</span>
<span class="n">levels</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span><span class="p">:</span> <span class="s1">&#39;mp2/aug-cc-pvtz&#39;</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s1">&#39;b3lyp/def2-svp&#39;</span><span class="p">,</span> <span class="mi">3</span><span class="p">:</span> <span class="s1">&#39;hf/sto-3g&#39;</span><span class="p">},</span>
<span class="n">return_total_data</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="n">supersystem_ie_only</span><span class="o">=</span><span class="kc">False</span>
<span class="p">)</span>
<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">qcmanybody</span> <span class="kn">import</span> <span class="n">ManyBodyCore</span>

<span class="n">mbc</span> <span class="o">=</span> <span class="n">ManyBodyCore</span><span class="p">(</span><span class="n">molecule</span><span class="o">=</span><span class="n">mol</span><span class="p">,</span>
<span class="n">bsse_type</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;cp&quot;</span><span class="p">],</span>
<span class="n">levels</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span><span class="p">:</span> <span class="s2">&quot;ccsd/cc-pvtz&quot;</span><span class="p">,</span>
<span class="mi">2</span><span class="p">:</span> <span class="s2">&quot;mp2/cc-pvdz&quot;</span><span class="p">,</span>
<span class="mi">3</span><span class="p">:</span> <span class="s2">&quot;mp2/cc-pvdz&quot;</span><span class="p">},</span>
<span class="n">return_total_data</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span>
<span class="n">supersystem_ie_only</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
<span class="n">embedding_charges</span><span class="p">:</span> <span class="kc">None</span><span class="p">)</span>
</code></pre></div>
<p>The <code>levels</code> option is a dictionary that specifies the n-body level as a key, then an arbitrary
string as the description of the calculation to be performed at the n-body level. This string is
Expand All @@ -672,10 +675,10 @@ <h2 id="using-the-core-interface">Using the core interface</h2>
In the core interface, all levels must be accounted for (that is, keys must go from 1 to the maximum
nbody you would like to calculate). All levels must be present even if the model chemistry
is the same for all levels.</p>
<p>For a complete discussion of the other options available in the <code>ManyBodyCalculator</code> object, see the
<p>For a complete discussion of the other options available in the <code>ManyBodyCore</code> object, see the
<a href="../keywords/">keywords discussion</a>
the <a class="autorefs autorefs-internal" href="../api/#qcmanybody.ManyBodyCalculator"><code>ManyBodyCalculator API documentation</code></a>.</p>
<p>The next step is to obtain the calculations to be run from the <code>ManyBodyCalculator</code> object.
the [<code>ManyBodyCore API documentation</code>][qcmanybody.manybody.ManyBodyCore].</p>
<p>The next step is to obtain the calculations to be run from the <code>ManyBodyCore</code> object.
This is done with a python generator function <code>iterate_molecules</code> that returns
a tuple. This tuple contains</p>
<ol>
Expand All @@ -691,7 +694,7 @@ <h2 id="using-the-core-interface">Using the core interface</h2>
does not provide any tools for running the calculations.</p>
<h3 id="results-dictionary">Results dictionary</h3>
<p>The data returned from the calculations is expected to be stored in a nested dictionary.
The level is the opaque label as given from the <code>QCManyBodyCalculator</code>.
The level is the opaque label as given from the <code>QCManyBodyCore</code>.
The second level is the name of the property.</p>
<div class="highlight"><pre><span></span><code><span class="n">calculation_results</span> <span class="o">=</span> <span class="p">{</span>
<span class="s1">&#39;label1&#39;</span><span class="p">:</span> <span class="p">{</span>
Expand Down
Binary file modified extensions/mdantic_v1/__pycache__/__init__.cpython-310.pyc
Binary file not shown.
Binary file modified extensions/mdantic_v1/__pycache__/mdantic.cpython-310.pyc
Binary file not shown.
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -618,7 +618,7 @@


<h1 id="qcmanybody-documentation">QCManyBody Documentation</h1>
<p>QCManyBody is a python package for running quantum chemistry manybody expansions and interaction calculations in a
<p>QCManyBody is a python package for running quantum chemistry many-body expansions and interaction calculations in a
package-independent way.</p>
<h2 id="installation">Installation</h2>
<p>QCManyBody is available from <a href="https://pypi.org/project/qcmanybody">PyPI</a> and from
Expand Down
Loading

0 comments on commit e867133

Please sign in to comment.