Skip to content

Commit 25bb209

Browse files
authored
Merge pull request #18 from gemshub/develop
Update documentation for material equilibrate usage
2 parents e99ba55 + b5906c2 commit 25bb209

20 files changed

Lines changed: 267 additions & 19 deletions

demos/example_material.ipynb

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@
171171
"outputs": [],
172172
"source": [
173173
"engine.setColdStart()\n",
174-
"status = engine.equilibrate(298.15, 1e5, mix.b())\n",
174+
"status = engine.equilibrate(298.15, 1e5, mix)\n",
175175
"print(status)\n",
176176
"#engine"
177177
]
@@ -205,6 +205,14 @@
205205
"source": [
206206
"help(enginedicts.equilibrate)"
207207
]
208+
},
209+
{
210+
"cell_type": "code",
211+
"execution_count": null,
212+
"id": "7c24e697-64f9-4ea1-9855-98d052d9c8b5",
213+
"metadata": {},
214+
"outputs": [],
215+
"source": []
208216
}
209217
],
210218
"metadata": {
19.3 KB
Binary file not shown.
9.86 KB
Binary file not shown.
4.2 KB
Binary file not shown.
6.46 KB
Binary file not shown.

docs/html/_modules/index.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -421,6 +421,7 @@
421421
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS14ChemicalEngine13reequilibrateEb"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
422422
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS14ChemicalEngine13reequilibrateEv"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
423423
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS14ChemicalEngine11equilibrateEdd14VectorConstRef"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
424+
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS14ChemicalEngine11equilibrateEddRK8Material"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
424425
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4NK5xGEMS14ChemicalEngine9convergedEv"><code class="docutils literal notranslate"><span class="pre">converged()</span></code></a></li>
425426
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4NK5xGEMS14ChemicalEngine13numIterationsEv"><code class="docutils literal notranslate"><span class="pre">numIterations()</span></code></a></li>
426427
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4NK5xGEMS14ChemicalEngine11elapsedTimeEv"><code class="docutils literal notranslate"><span class="pre">elapsedTime()</span></code></a></li>
@@ -550,6 +551,7 @@
550551
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps18ChemicalEngineMapsERKNSt6stringERKNSt6stringERKNSt6stringEbb"><code class="docutils literal notranslate"><span class="pre">ChemicalEngineMaps()</span></code></a></li>
551552
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEv"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
552553
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEdd9ValuesMapd"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
554+
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEddRK8Materiald"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
553555
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps13reequilibrateEv"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
554556
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps13reequilibrateEb"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
555557
<li class="toctree-l3"><a class="reference internal" href="../cpp_api_reference.html#_CPPv4N5xGEMS18ChemicalEngineMaps5setPTEdd"><code class="docutils literal notranslate"><span class="pre">setPT()</span></code></a></li>

docs/html/cpp_api_reference.html

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -423,6 +423,7 @@
423423
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS14ChemicalEngine13reequilibrateEb"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
424424
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS14ChemicalEngine13reequilibrateEv"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
425425
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS14ChemicalEngine11equilibrateEdd14VectorConstRef"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
426+
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS14ChemicalEngine11equilibrateEddRK8Material"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
426427
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4NK5xGEMS14ChemicalEngine9convergedEv"><code class="docutils literal notranslate"><span class="pre">converged()</span></code></a></li>
427428
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4NK5xGEMS14ChemicalEngine13numIterationsEv"><code class="docutils literal notranslate"><span class="pre">numIterations()</span></code></a></li>
428429
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4NK5xGEMS14ChemicalEngine11elapsedTimeEv"><code class="docutils literal notranslate"><span class="pre">elapsedTime()</span></code></a></li>
@@ -552,6 +553,7 @@
552553
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps18ChemicalEngineMapsERKNSt6stringERKNSt6stringERKNSt6stringEbb"><code class="docutils literal notranslate"><span class="pre">ChemicalEngineMaps()</span></code></a></li>
553554
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEv"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
554555
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEdd9ValuesMapd"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
556+
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEddRK8Materiald"><code class="docutils literal notranslate"><span class="pre">equilibrate()</span></code></a></li>
555557
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps13reequilibrateEv"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
556558
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps13reequilibrateEb"><code class="docutils literal notranslate"><span class="pre">reequilibrate()</span></code></a></li>
557559
<li class="toctree-l3"><a class="reference internal" href="#_CPPv4N5xGEMS18ChemicalEngineMaps5setPTEdd"><code class="docutils literal notranslate"><span class="pre">setPT()</span></code></a></li>
@@ -2054,6 +2056,31 @@ <h1>C++ Interface Reference<a class="headerlink" href="#c-interface-reference" t
20542056
</dl>
20552057
</dd></dl>
20562058

2059+
<dl class="cpp function">
2060+
<dt class="sig sig-object cpp" id="_CPPv4N5xGEMS14ChemicalEngine11equilibrateEddRK8Material">
2061+
<span id="_CPPv3N5xGEMS14ChemicalEngine11equilibrateEddRK8Material"></span><span id="_CPPv2N5xGEMS14ChemicalEngine11equilibrateEddRK8Material"></span><span id="xGEMS::ChemicalEngine::equilibrate__double.double.MaterialCR"></span><span class="target" id="dc/d0d/classxGEMS_1_1ChemicalEngine_1a5ca1889c45b796993c702b5e93331e52"></span><span class="kt"><span class="pre">auto</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">equilibrate</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">T</span></span>, <span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">P</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5xGEMS8MaterialE" title="xGEMS::Material"><span class="n"><span class="pre">Material</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">material</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="o"><span class="pre">-&gt;</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><a class="headerlink" href="#_CPPv4N5xGEMS14ChemicalEngine11equilibrateEddRK8Material" title="Link to this definition"></a><br /></dt>
2062+
<dd><p>Computes the equilibrium state from a <a class="reference internal" href="#da/d78/classxGEMS_1_1Material"><span class="std std-ref">Material</span></a> recipe object. </p>
2063+
<p>Convenience overload: extracts the element-amount vector from <code class="docutils literal notranslate"><span class="pre">material</span></code> and forwards to equilibrate(T, P, b).</p>
2064+
<p><div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Material</span> <span class="n">rock</span><span class="p">(</span><span class="n">engine</span><span class="p">);</span>
2065+
<span class="n">rock</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">&quot;SiO2&quot;</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="s2">&quot;mol&quot;</span><span class="p">)</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">&quot;CaCO3&quot;</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">,</span> <span class="s2">&quot;mol&quot;</span><span class="p">);</span>
2066+
<span class="nb">int</span> <span class="n">ret</span> <span class="o">=</span> <span class="n">engine</span><span class="o">.</span><span class="n">equilibrate</span><span class="p">(</span><span class="mf">298.15</span><span class="p">,</span> <span class="mi">101325</span><span class="p">,</span> <span class="n">rock</span><span class="p">);</span>
2067+
</pre></div>
2068+
</div>
2069+
</p>
2070+
<dl class="field-list simple">
2071+
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
2072+
<dd class="field-odd"><ul class="simple">
2073+
<li><p><strong>T</strong> – Temperature in Kelvin. </p></li>
2074+
<li><p><strong>P</strong> – Pressure in Pascals. </p></li>
2075+
<li><p><strong>material</strong> – A <a class="reference internal" href="#da/d78/classxGEMS_1_1Material"><span class="std std-ref">Material</span></a> object whose b() vector defines the bulk composition. </p></li>
2076+
</ul>
2077+
</dd>
2078+
<dt class="field-even">Returns<span class="colon">:</span></dt>
2079+
<dd class="field-even"><p>Integer return code (same as equilibrate(T, P, b)).</p>
2080+
</dd>
2081+
</dl>
2082+
</dd></dl>
2083+
20572084
<dl class="cpp function">
20582085
<dt class="sig sig-object cpp" id="_CPPv4NK5xGEMS14ChemicalEngine9convergedEv">
20592086
<span id="_CPPv3NK5xGEMS14ChemicalEngine9convergedEv"></span><span id="_CPPv2NK5xGEMS14ChemicalEngine9convergedEv"></span><span id="xGEMS::ChemicalEngine::convergedC"></span><span class="target" id="dc/d0d/classxGEMS_1_1ChemicalEngine_1a66e620ff8347770a9f4e7a3cd77b32a8"></span><span class="kt"><span class="pre">auto</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">converged</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="o"><span class="pre">-&gt;</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><a class="headerlink" href="#_CPPv4NK5xGEMS14ChemicalEngine9convergedEv" title="Link to this definition"></a><br /></dt>
@@ -4369,6 +4396,32 @@ <h1>C++ Interface Reference<a class="headerlink" href="#c-interface-reference" t
43694396
</dl>
43704397
</dd></dl>
43714398

4399+
<dl class="cpp function">
4400+
<dt class="sig sig-object cpp" id="_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEddRK8Materiald">
4401+
<span id="_CPPv3N5xGEMS18ChemicalEngineMaps11equilibrateEddRK8Materiald"></span><span id="_CPPv2N5xGEMS18ChemicalEngineMaps11equilibrateEddRK8Materiald"></span><span id="xGEMS::ChemicalEngineMaps::equilibrate__double.double.MaterialCR.double"></span><span class="target" id="d2/dea/classxGEMS_1_1ChemicalEngineMaps_1a9127f697dd585b8024c8d10bad498faa"></span><span class="kt"><span class="pre">auto</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">equilibrate</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">T_new</span></span>, <span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">P_new</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5xGEMS8MaterialE" title="xGEMS::Material"><span class="n"><span class="pre">Material</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">material</span></span>, <span class="kt"><span class="pre">double</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">min_amount</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">1e-15</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="o"><span class="pre">-&gt;</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><a class="headerlink" href="#_CPPv4N5xGEMS18ChemicalEngineMaps11equilibrateEddRK8Materiald" title="Link to this definition"></a><br /></dt>
4402+
<dd><p>Computes the equilibrium state from a <a class="reference internal" href="#da/d78/classxGEMS_1_1Material"><span class="std std-ref">Material</span></a> recipe object. </p>
4403+
<p>Convenience overload: extracts the element-amount dictionary from <code class="docutils literal notranslate"><span class="pre">material</span></code> (via bMap()) and forwards to equilibrate(T_new, P_new, b_dict, min_amount).</p>
4404+
<p><div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Material</span> <span class="n">rock</span><span class="p">(</span><span class="n">engine</span><span class="p">);</span>
4405+
<span class="n">rock</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">&quot;SiO2&quot;</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="s2">&quot;mol&quot;</span><span class="p">)</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">&quot;CaCO3&quot;</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">,</span> <span class="s2">&quot;mol&quot;</span><span class="p">);</span>
4406+
<span class="n">std</span><span class="p">::</span><span class="n">string</span> <span class="n">retcode</span> <span class="o">=</span> <span class="n">engine</span><span class="o">.</span><span class="n">equilibrate</span><span class="p">(</span><span class="mf">298.15</span><span class="p">,</span> <span class="mf">101325.0</span><span class="p">,</span> <span class="n">rock</span><span class="p">);</span>
4407+
</pre></div>
4408+
</div>
4409+
</p>
4410+
<dl class="field-list simple">
4411+
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
4412+
<dd class="field-odd"><ul class="simple">
4413+
<li><p><strong>T_new</strong> – Temperature in Kelvin (K). </p></li>
4414+
<li><p><strong>P_new</strong> – Pressure in Pascals (Pa). </p></li>
4415+
<li><p><strong>material</strong> – A <a class="reference internal" href="#da/d78/classxGEMS_1_1Material"><span class="std std-ref">Material</span></a> object whose bMap() defines the bulk composition. </p></li>
4416+
<li><p><strong>min_amount</strong> – Minimum amount for elements absent from the material, default 1e-15. </p></li>
4417+
</ul>
4418+
</dd>
4419+
<dt class="field-even">Returns<span class="colon">:</span></dt>
4420+
<dd class="field-even"><p>(std::string) Status string of the equilibrium solver.</p>
4421+
</dd>
4422+
</dl>
4423+
</dd></dl>
4424+
43724425
<dl class="cpp function">
43734426
<dt class="sig sig-object cpp" id="_CPPv4N5xGEMS18ChemicalEngineMaps13reequilibrateEv">
43744427
<span id="_CPPv3N5xGEMS18ChemicalEngineMaps13reequilibrateEv"></span><span id="_CPPv2N5xGEMS18ChemicalEngineMaps13reequilibrateEv"></span><span id="xGEMS::ChemicalEngineMaps::reequilibrate"></span><span class="target" id="d2/dea/classxGEMS_1_1ChemicalEngineMaps_1a191b2274b9ad304b4cda7926de6c9fc1"></span><span class="kt"><span class="pre">auto</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">reequilibrate</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="o"><span class="pre">-&gt;</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><a class="headerlink" href="#_CPPv4N5xGEMS18ChemicalEngineMaps13reequilibrateEv" title="Link to this definition"></a><br /></dt>
@@ -7303,6 +7356,8 @@ <h1>C++ Interface Reference<a class="headerlink" href="#c-interface-reference" t
73037356
<dd><div class="docutils container">
73047357
<em>#include “<a class="reference internal" href="#d9/dd7/ChemicalEngine_8hpp"><span class="std std-ref">ChemicalEngine.hpp</span></a>”</em></div>
73057358
<div class="docutils container">
7359+
<em>#include “<a class="reference internal" href="#d0/d70/Material_8hpp"><span class="std std-ref">Material.hpp</span></a>”</em></div>
7360+
<div class="docutils container">
73067361
<em>#include &lt;chrono&gt;</em></div>
73077362
<div class="docutils container">
73087363
<em>#include &lt;cmath&gt;</em></div>
@@ -7369,6 +7424,8 @@ <h1>C++ Interface Reference<a class="headerlink" href="#c-interface-reference" t
73697424
<em>#include &lt;map&gt;</em></div>
73707425
<div class="docutils container">
73717426
<em>#include “<a class="reference internal" href="#d3/d95/ChemicalEngineMaps_8hpp"><span class="std std-ref">ChemicalEngineMaps.hpp</span></a>”</em></div>
7427+
<div class="docutils container">
7428+
<em>#include “<a class="reference internal" href="#d0/d70/Material_8hpp"><span class="std std-ref">Material.hpp</span></a>”</em></div>
73727429
</dd></dl>
73737430

73747431
<dl>

0 commit comments

Comments
 (0)