Skip to content

Commit

Permalink
qrotor set_grid
Browse files Browse the repository at this point in the history
  • Loading branch information
pablogila committed Jan 24, 2025
1 parent e8eb6fb commit e6444be
Show file tree
Hide file tree
Showing 37 changed files with 984 additions and 947 deletions.
2 changes: 1 addition & 1 deletion aton/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@
"""

__version__ = 'v0.0.3'
__version__ = 'v0.0.4a1'

23 changes: 16 additions & 7 deletions aton/qrotor/classes.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,16 +122,25 @@ def summary(self):
}

def set_grid(self, gridsize:int=None):
"""Sets the `QSys.grid` to the specified `gridsize`.
"""Sets the `QSys.grid` to the specified `gridsize` from 0 to $2\\pi$.
It removes the previous grid,
do **not** use this method if the potential was loaded externally!
If the system had a previous grid and potential values,
it will interpolate those values to the new gridsize,
using `aton.qrotor.potential.interpolate()`.
"""
if gridsize is not None:
if gridsize == self.gridsize:
return self # Nothing to do here
if gridsize:
self.gridsize = gridsize
if self.gridsize is None:
raise ValueError('QSys.gridsize is not set yet!.')
self.grid = np.linspace(0, 2*np.pi, self.gridsize)
# Should we interpolate?
if self.potential_values and self.grid and self.gridsize:
from .potential import interpolate
self = interpolate(self)
# Should we create the values from zero?
elif self.gridsize:
self.grid = np.linspace(0, 2*np.pi, self.gridsize)
else:
raise ValueError('gridsize must be provided if there is no QSys.gridsize')
return self

def set_group(self, group:str=None, B:float=None):
Expand Down
2 changes: 1 addition & 1 deletion aton/qrotor/solve.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ def potential(system:QSys) -> QSys:
if system.correct_potential_offset is True:
offset = min(V)
V = V - offset
system.corrected_potential_offset = offset
system.potential_offset = offset
system.potential_values = V
return system

Expand Down
16 changes: 8 additions & 8 deletions docs/aton.html
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ <h2>Submodules</h2>
</ul>


<footer>ATON v0.0.3 documentation</footer>
<footer>ATON v0.0.4a1 documentation</footer>

<a class="attribution" title="pdoc: Python API documentation generator" href="https://pdoc.dev" target="_blank">
built with <span class="visually-hidden">pdoc</span><img
Expand Down Expand Up @@ -469,13 +469,13 @@ <h1 id="license">License</h1>
</span><span id="L-3"><a href="#L-3"><span class="linenos"> 3</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-4"><a href="#L-4"><span class="linenos"> 4</span></a>
</span><span id="L-5"><a href="#L-5"><span class="linenos"> 5</span></a>
</span><span id="L-6"><a href="#L-6"><span class="linenos"> 6</span></a><span class="kn">from</span> <span class="nn">._version</span> <span class="kn">import</span> <span class="n">__version__</span> <span class="k">as</span> <span class="n">version</span>
</span><span id="L-7"><a href="#L-7"><span class="linenos"> 7</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">st</span>
</span><span id="L-8"><a href="#L-8"><span class="linenos"> 8</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">phys</span>
</span><span id="L-9"><a href="#L-9"><span class="linenos"> 9</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">txt</span>
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">interface</span>
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">spx</span>
</span><span id="L-12"><a href="#L-12"><span class="linenos">12</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">qrotor</span>
</span><span id="L-6"><a href="#L-6"><span class="linenos"> 6</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">._version</span><span class="w"> </span><span class="kn">import</span> <span class="n">__version__</span> <span class="k">as</span> <span class="n">version</span>
</span><span id="L-7"><a href="#L-7"><span class="linenos"> 7</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">st</span>
</span><span id="L-8"><a href="#L-8"><span class="linenos"> 8</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">phys</span>
</span><span id="L-9"><a href="#L-9"><span class="linenos"> 9</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">txt</span>
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">interface</span>
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">spx</span>
</span><span id="L-12"><a href="#L-12"><span class="linenos">12</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">qrotor</span>
</span></pre></div>


Expand Down
4 changes: 2 additions & 2 deletions docs/aton/_version.html
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ <h2>API Documentation</h2>
</ul>


<footer>ATON v0.0.3 documentation</footer>
<footer>ATON v0.0.4a1 documentation</footer>

<a class="attribution" title="pdoc: Python API documentation generator" href="https://pdoc.dev" target="_blank">
built with <span class="visually-hidden">pdoc</span><img
Expand Down Expand Up @@ -116,7 +116,7 @@ <h1 class="modulename">
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a>
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-12"><a href="#L-12"><span class="linenos">12</span></a>
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a><span class="n">__version__</span> <span class="o">=</span> <span class="s1">&#39;v0.0.3&#39;</span>
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a><span class="n">__version__</span> <span class="o">=</span> <span class="s1">&#39;v0.0.4a1&#39;</span>
</span></pre></div>


Expand Down
18 changes: 9 additions & 9 deletions docs/aton/interface.html
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ <h2>Submodules</h2>
</ul>


<footer>ATON v0.0.3 documentation</footer>
<footer>ATON v0.0.4a1 documentation</footer>

<a class="attribution" title="pdoc: Python API documentation generator" href="https://pdoc.dev" target="_blank">
built with <span class="visually-hidden">pdoc</span><img
Expand Down Expand Up @@ -141,7 +141,7 @@ <h2 id="quantum-espresso">Quantum ESPRESSO</h2>
<p>To read the output from a Quantum ESPRESSO pw.x calculation, </p>

<div class="pdoc-code codehilite">
<pre><span></span><code><span class="kn">from</span> <span class="nn"><a href="">aton.interface</a></span> <span class="kn">import</span> <span class="n">qe</span>
<pre><span></span><code><span class="kn">from</span><span class="w"> </span><span class="nn"><a href="">aton.interface</a></span><span class="w"> </span><span class="kn">import</span> <span class="n">qe</span>
<span class="c1"># Read to a dictionary</span>
<span class="n">calculation</span> <span class="o">=</span> <span class="n">qe</span><span class="o">.</span><span class="n">read_out</span><span class="p">(</span><span class="s1">&#39;relax.out&#39;</span><span class="p">)</span>
<span class="n">calculation</span><span class="o">.</span><span class="n">keys</span><span class="p">()</span> <span class="c1"># See the available values</span>
Expand All @@ -153,7 +153,7 @@ <h2 id="quantum-espresso">Quantum ESPRESSO</h2>
<p>To modify values from an input file, </p>

<div class="pdoc-code codehilite">
<pre><span></span><code><span class="kn">from</span> <span class="nn"><a href="">aton.interface</a></span> <span class="kn">import</span> <span class="n">qe</span>
<pre><span></span><code><span class="kn">from</span><span class="w"> </span><span class="nn"><a href="">aton.interface</a></span><span class="w"> </span><span class="kn">import</span> <span class="n">qe</span>
<span class="c1"># Add a hydrogen atom to a specific position</span>
<span class="n">qe</span><span class="o">.</span><span class="n">add_atom</span><span class="p">(</span><span class="s1">&#39;H 0.10 0.20 0.30&#39;</span><span class="p">)</span>
<span class="c1"># Set the input ecutwfc value</span>
Expand All @@ -168,7 +168,7 @@ <h2 id="phonopy">Phonopy</h2>
<p>To perform a phonon calculation from a relaxed structure via Quantum ESPRESSO, </p>

<div class="pdoc-code codehilite">
<pre><span></span><code><span class="kn">from</span> <span class="nn">aton</span> <span class="kn">import</span> <span class="n">interface</span>
<pre><span></span><code><span class="kn">from</span><span class="w"> </span><span class="nn">aton</span><span class="w"> </span><span class="kn">import</span> <span class="n">interface</span>
<span class="c1"># Create the supercell inputs</span>
<span class="n">interface</span><span class="o">.</span><span class="n">phonopy</span><span class="o">.</span><span class="n">make_supercells</span><span class="p">(</span><span class="n">dimension</span><span class="o">=</span><span class="s1">&#39;2 2 2&#39;</span><span class="p">)</span>
<span class="c1"># Sbatch to a cluster</span>
Expand All @@ -183,7 +183,7 @@ <h2 id="castep">CASTEP</h2>
<p>To read output values from a CASTEP calculation, </p>

<div class="pdoc-code codehilite">
<pre><span></span><code><span class="kn">from</span> <span class="nn"><a href="">aton.interface</a></span> <span class="kn">import</span> <span class="n">castep</span>
<pre><span></span><code><span class="kn">from</span><span class="w"> </span><span class="nn"><a href="">aton.interface</a></span><span class="w"> </span><span class="kn">import</span> <span class="n">castep</span>
<span class="c1"># Read the output</span>
<span class="n">output</span> <span class="o">=</span> <span class="n">castep</span><span class="o">.</span><span class="n">read_castep</span><span class="p">(</span><span class="s1">&#39;calculation.castep&#39;</span><span class="p">)</span>
<span class="c1"># Get the final energy</span>
Expand Down Expand Up @@ -271,10 +271,10 @@ <h2 id="castep">CASTEP</h2>
</span><span id="L-71"><a href="#L-71"><span class="linenos">71</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-72"><a href="#L-72"><span class="linenos">72</span></a>
</span><span id="L-73"><a href="#L-73"><span class="linenos">73</span></a>
</span><span id="L-74"><a href="#L-74"><span class="linenos">74</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">qe</span>
</span><span id="L-75"><a href="#L-75"><span class="linenos">75</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">phonopy</span>
</span><span id="L-76"><a href="#L-76"><span class="linenos">76</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">castep</span>
</span><span id="L-77"><a href="#L-77"><span class="linenos">77</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">slurm</span>
</span><span id="L-74"><a href="#L-74"><span class="linenos">74</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">qe</span>
</span><span id="L-75"><a href="#L-75"><span class="linenos">75</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">phonopy</span>
</span><span id="L-76"><a href="#L-76"><span class="linenos">76</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">castep</span>
</span><span id="L-77"><a href="#L-77"><span class="linenos">77</span></a><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">slurm</span>
</span></pre></div>


Expand Down
12 changes: 6 additions & 6 deletions docs/aton/interface/castep.html
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ <h2>API Documentation</h2>
</ul>


<footer>ATON v0.0.3 documentation</footer>
<footer>ATON v0.0.4a1 documentation</footer>

<a class="attribution" title="pdoc: Python API documentation generator" href="https://pdoc.dev" target="_blank">
built with <span class="visually-hidden">pdoc</span><img
Expand Down Expand Up @@ -137,12 +137,12 @@ <h1 id="index">Index</h1>
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-14"><a href="#L-14"><span class="linenos">14</span></a>
</span><span id="L-15"><a href="#L-15"><span class="linenos">15</span></a>
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a><span class="kn">import</span> <span class="nn">aton.st.file</span> <span class="k">as</span> <span class="nn">file</span>
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a><span class="kn">import</span> <span class="nn">aton.txt.find</span> <span class="k">as</span> <span class="nn">find</span>
</span><span id="L-18"><a href="#L-18"><span class="linenos">18</span></a><span class="kn">import</span> <span class="nn">aton.txt.extract</span> <span class="k">as</span> <span class="nn">extract</span>
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a><span class="kn">import</span><span class="w"> </span><span class="nn">aton.st.file</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">file</span>
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a><span class="kn">import</span><span class="w"> </span><span class="nn">aton.txt.find</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">find</span>
</span><span id="L-18"><a href="#L-18"><span class="linenos">18</span></a><span class="kn">import</span><span class="w"> </span><span class="nn">aton.txt.extract</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">extract</span>
</span><span id="L-19"><a href="#L-19"><span class="linenos">19</span></a>
</span><span id="L-20"><a href="#L-20"><span class="linenos">20</span></a>
</span><span id="L-21"><a href="#L-21"><span class="linenos">21</span></a><span class="k">def</span> <span class="nf">read_castep</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">:</span>
</span><span id="L-21"><a href="#L-21"><span class="linenos">21</span></a><span class="k">def</span><span class="w"> </span><span class="nf">read_castep</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">:</span>
</span><span id="L-22"><a href="#L-22"><span class="linenos">22</span></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-23"><a href="#L-23"><span class="linenos">23</span></a><span class="sd"> Reads a CASTEP output file, specified in `filename`.</span>
</span><span id="L-24"><a href="#L-24"><span class="linenos">24</span></a><span class="sd"> Returns a dictionary with the following keys:</span>
Expand Down Expand Up @@ -229,7 +229,7 @@ <h1 id="index">Index</h1>

</div>
<a class="headerlink" href="#read_castep"></a>
<div class="pdoc-code codehilite"><pre><span></span><span id="read_castep-22"><a href="#read_castep-22"><span class="linenos">22</span></a><span class="k">def</span> <span class="nf">read_castep</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">:</span>
<div class="pdoc-code codehilite"><pre><span></span><span id="read_castep-22"><a href="#read_castep-22"><span class="linenos">22</span></a><span class="k">def</span><span class="w"> </span><span class="nf">read_castep</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">:</span>
</span><span id="read_castep-23"><a href="#read_castep-23"><span class="linenos">23</span></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
</span><span id="read_castep-24"><a href="#read_castep-24"><span class="linenos">24</span></a><span class="sd"> Reads a CASTEP output file, specified in `filename`.</span>
</span><span id="read_castep-25"><a href="#read_castep-25"><span class="linenos">25</span></a><span class="sd"> Returns a dictionary with the following keys:</span>
Expand Down
Loading

0 comments on commit e6444be

Please sign in to comment.