yu-mcal 0.1.4__tar.gz → 0.1.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/PKG-INFO +1 -1
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/mcal/mcal.html +3 -3
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/mcal/utils/cif_reader.html +54 -12
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/mcal.utils.html +1 -1
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/searchindex.js +1 -1
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/pyproject.toml +1 -1
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/mcal.py +3 -3
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/utils/cif_reader.py +54 -12
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/uv.lock +1 -1
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/.gitignore +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/.python-version +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/LICENSE +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/README.md +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/README_ja.md +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/.nojekyll +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/index.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/mcal/calculations/hopping_mobility_model.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/mcal/calculations/rcal.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/mcal/utils/gaus_log_reader.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_modules/mcal/utils/gjf_maker.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_sources/index.rst.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_sources/mcal.calculations.rst.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_sources/mcal.rst.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_sources/mcal.utils.rst.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_sources/modules.rst.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/autodoc_pydantic.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/basic.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/debug.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/doctools.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/documentation_options.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/file.png +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/language_data.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/minus.png +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/plus.png +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/pygments.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/scripts/furo-extensions.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/scripts/furo.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/scripts/furo.js.LICENSE.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/scripts/furo.js.map +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/searchtools.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/skeleton.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/sphinx_highlight.js +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/styles/furo-extensions.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/styles/furo-extensions.css.map +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/styles/furo.css +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/_static/styles/furo.css.map +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/genindex.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/index.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/mcal.calculations.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/mcal.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/modules.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/objects.inv +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/py-modindex.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs/search.html +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/Makefile +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/make.bat +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/source/conf.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/source/index.rst +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/source/mcal.calculations.rst +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/source/mcal.rst +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/source/mcal.utils.rst +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/docs-src/source/modules.rst +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/requirements.txt +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/__init__.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/calculations/__init__.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/calculations/hopping_mobility_model.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/calculations/rcal.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/constants/element_properties.csv +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/utils/__init__.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/utils/gaus_log_reader.py +0 -0
- {yu_mcal-0.1.4 → yu_mcal-0.1.6}/src/mcal/utils/gjf_maker.py +0 -0
|
@@ -377,7 +377,7 @@
|
|
|
377
377
|
<span class="n">cif_path_without_ext</span> <span class="o">=</span> <span class="sa">f</span><span class="s1">'</span><span class="si">{</span><span class="n">directory</span><span class="si">}</span><span class="s1">/</span><span class="si">{</span><span class="n">filename</span><span class="si">}</span><span class="s1">'</span>
|
|
378
378
|
|
|
379
379
|
<span class="nb">print</span><span class="p">(</span><span class="s1">'----------------------------------------'</span><span class="p">)</span>
|
|
380
|
-
<span class="nb">print</span><span class="p">(</span><span class="s1">' mcal 0.1.
|
|
380
|
+
<span class="nb">print</span><span class="p">(</span><span class="s1">' mcal 0.1.6 (2026/01/29) by Matsui Lab. '</span><span class="p">)</span>
|
|
381
381
|
<span class="nb">print</span><span class="p">(</span><span class="s1">'----------------------------------------'</span><span class="p">)</span>
|
|
382
382
|
|
|
383
383
|
<span class="k">if</span> <span class="n">args</span><span class="o">.</span><span class="n">read_pickle</span><span class="p">:</span>
|
|
@@ -720,8 +720,8 @@
|
|
|
720
720
|
<span class="sd"> Tuple[NDArray[np.float64], NDArray[np.float64]]</span>
|
|
721
721
|
<span class="sd"> Eigenvalue(mobility value) and eigenvector(mobility vector)</span>
|
|
722
722
|
<span class="sd"> """</span>
|
|
723
|
-
<span class="n">value</span><span class="p">,</span> <span class="n">vector</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">
|
|
724
|
-
<span class="k">return</span> <span class="n">value</span><span class="p"
|
|
723
|
+
<span class="n">value</span><span class="p">,</span> <span class="n">vector</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">eigh</span><span class="p">(</span><span class="n">mobility_tensor</span><span class="p">)</span>
|
|
724
|
+
<span class="k">return</span> <span class="n">value</span><span class="p">[::</span><span class="o">-</span><span class="mi">1</span><span class="p">],</span> <span class="n">vector</span><span class="p">[:,</span> <span class="p">::</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span></div>
|
|
725
725
|
|
|
726
726
|
|
|
727
727
|
|
|
@@ -233,13 +233,14 @@
|
|
|
233
233
|
</div>
|
|
234
234
|
<article role="main" id="furo-main-content">
|
|
235
235
|
<h1>Source code for mcal.utils.cif_reader</h1><div class="highlight"><pre>
|
|
236
|
-
<span></span><span class="sd">"""CifReader beta (
|
|
236
|
+
<span></span><span class="sd">"""CifReader beta (2026/01/29)"""</span>
|
|
237
237
|
<span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
|
|
238
238
|
<span class="kn">import</span><span class="w"> </span><span class="nn">re</span>
|
|
239
|
+
<span class="kn">import</span><span class="w"> </span><span class="nn">warnings</span>
|
|
240
|
+
<span class="kn">from</span><span class="w"> </span><span class="nn">collections</span><span class="w"> </span><span class="kn">import</span> <span class="n">deque</span>
|
|
239
241
|
<span class="kn">from</span><span class="w"> </span><span class="nn">itertools</span><span class="w"> </span><span class="kn">import</span> <span class="n">product</span>
|
|
240
242
|
<span class="kn">from</span><span class="w"> </span><span class="nn">pathlib</span><span class="w"> </span><span class="kn">import</span> <span class="n">Path</span>
|
|
241
243
|
<span class="kn">from</span><span class="w"> </span><span class="nn">typing</span><span class="w"> </span><span class="kn">import</span> <span class="n">Dict</span><span class="p">,</span> <span class="n">List</span><span class="p">,</span> <span class="n">Literal</span><span class="p">,</span> <span class="n">Tuple</span>
|
|
242
|
-
<span class="kn">import</span><span class="w"> </span><span class="nn">warnings</span>
|
|
243
244
|
|
|
244
245
|
<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
|
|
245
246
|
<span class="kn">import</span><span class="w"> </span><span class="nn">pandas</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">pd</span>
|
|
@@ -304,13 +305,26 @@
|
|
|
304
305
|
<span class="bp">self</span><span class="o">.</span><span class="n">_make_adjacency_mat</span><span class="p">()</span>
|
|
305
306
|
<span class="bp">self</span><span class="o">.</span><span class="n">_split_mols</span><span class="p">()</span>
|
|
306
307
|
<span class="bp">self</span><span class="o">.</span><span class="n">_put_unit_cell</span><span class="p">()</span>
|
|
308
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_unwrap_molecules</span><span class="p">()</span>
|
|
309
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_put_unit_cell</span><span class="p">()</span>
|
|
310
|
+
<span class="c1"># Remove duplicates again as they may occur when moving atoms into the unit cell</span>
|
|
307
311
|
<span class="bp">self</span><span class="o">.</span><span class="n">sym_symbols</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">remove_duplicates</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">sym_symbols</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span><span class="p">)</span>
|
|
308
312
|
<span class="bp">self</span><span class="o">.</span><span class="n">_make_adjacency_mat</span><span class="p">()</span>
|
|
309
313
|
<span class="bp">self</span><span class="o">.</span><span class="n">_split_mols</span><span class="p">()</span>
|
|
310
314
|
<span class="bp">self</span><span class="o">.</span><span class="n">_calc_z_value</span><span class="p">()</span>
|
|
311
315
|
|
|
312
316
|
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_ref_z_value</span> <span class="o">!=</span> <span class="mi">0</span> <span class="ow">and</span> <span class="bp">self</span><span class="o">.</span><span class="n">z_value</span> <span class="o">!=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_ref_z_value</span><span class="p">:</span>
|
|
313
|
-
<span class="k">raise</span> <span class="n">ZValueIsNotMatchError</span><span class="p">(</span
|
|
317
|
+
<span class="k">raise</span> <span class="n">ZValueIsNotMatchError</span><span class="p">(</span>
|
|
318
|
+
<span class="sa">f</span><span class="s1">'Z value is not match. Z value in cif file is </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">_ref_z_value</span><span class="si">}</span><span class="s1">, but calculated Z value is </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">z_value</span><span class="si">}</span><span class="s1">.'</span>
|
|
319
|
+
<span class="p">)</span>
|
|
320
|
+
|
|
321
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">_apply_minimum_image</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
322
|
+
<span class="w"> </span><span class="sd">"""Apply minimum image convention."""</span>
|
|
323
|
+
<span class="n">frac_diff</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span><span class="p">[:,</span> <span class="n">np</span><span class="o">.</span><span class="n">newaxis</span><span class="p">,</span> <span class="p">:]</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span><span class="p">[</span><span class="n">np</span><span class="o">.</span><span class="n">newaxis</span><span class="p">,</span> <span class="p">:,</span> <span class="p">:]</span>
|
|
324
|
+
<span class="n">frac_diff</span> <span class="o">=</span> <span class="n">frac_diff</span> <span class="o">-</span> <span class="n">np</span><span class="o">.</span><span class="n">round</span><span class="p">(</span><span class="n">frac_diff</span><span class="p">)</span>
|
|
325
|
+
<span class="n">cart_diff</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">frac_diff</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">lattice</span><span class="p">)</span>
|
|
326
|
+
<span class="n">distance</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">cart_diff</span><span class="p">,</span> <span class="n">axis</span><span class="o">=-</span><span class="mi">1</span><span class="p">)</span>
|
|
327
|
+
<span class="k">return</span> <span class="n">distance</span>
|
|
314
328
|
|
|
315
329
|
<span class="k">def</span><span class="w"> </span><span class="nf">_calc_lattice</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
316
330
|
<span class="w"> </span><span class="sd">"""Calculate lattice."""</span>
|
|
@@ -365,7 +379,7 @@
|
|
|
365
379
|
<span class="n">num_atoms</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">sym_symbols</span><span class="p">)</span>
|
|
366
380
|
<span class="bp">self</span><span class="o">.</span><span class="n">adjacency_mat</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">((</span><span class="n">num_atoms</span><span class="p">,</span> <span class="n">num_atoms</span><span class="p">),</span> <span class="n">dtype</span><span class="o">=</span><span class="nb">bool</span><span class="p">)</span>
|
|
367
381
|
|
|
368
|
-
<span class="
|
|
382
|
+
<span class="n">distance</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_apply_minimum_image</span><span class="p">()</span>
|
|
369
383
|
|
|
370
384
|
<span class="k">try</span><span class="p">:</span>
|
|
371
385
|
<span class="n">covalent_distance</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="bp">self</span><span class="o">.</span><span class="n">COVALENT_RADII</span><span class="p">[</span><span class="n">symbol</span><span class="p">]</span> <span class="k">for</span> <span class="n">symbol</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_symbols</span><span class="p">])</span> \
|
|
@@ -373,7 +387,6 @@
|
|
|
373
387
|
<span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
|
|
374
388
|
<span class="k">raise</span> <span class="n">ElementPropertiesIsNotDefinedError</span><span class="p">(</span><span class="s1">'Element properties is not defined.'</span><span class="p">)</span>
|
|
375
389
|
|
|
376
|
-
<span class="n">distance</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">cart_coords</span><span class="p">[:,</span> <span class="n">np</span><span class="o">.</span><span class="n">newaxis</span><span class="p">,</span> <span class="p">:]</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">cart_coords</span><span class="p">[</span><span class="n">np</span><span class="o">.</span><span class="n">newaxis</span><span class="p">,</span> <span class="p">:,</span> <span class="p">:],</span> <span class="n">axis</span><span class="o">=-</span><span class="mi">1</span><span class="p">)</span>
|
|
377
390
|
<span class="bp">self</span><span class="o">.</span><span class="n">adjacency_mat</span><span class="p">[(</span><span class="n">distance</span> <span class="o"><=</span> <span class="n">covalent_distance</span> <span class="o">*</span> <span class="mf">1.3</span><span class="p">)</span> <span class="o">&</span> <span class="p">(</span><span class="n">distance</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">)]</span> <span class="o">=</span> <span class="mi">1</span>
|
|
378
391
|
|
|
379
392
|
<span class="k">def</span><span class="w"> </span><span class="nf">_operate_sym</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
|
|
@@ -530,10 +543,11 @@
|
|
|
530
543
|
<span class="k">if</span> <span class="s1">'?'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">tmp_atom_data</span><span class="p">[</span><span class="n">atom_data_index</span><span class="p">[</span><span class="s1">'_atom_site_label'</span><span class="p">]]:</span>
|
|
531
544
|
<span class="k">if</span> <span class="n">atom_data_index</span><span class="p">[</span><span class="s1">'_atom_site_type_symbol'</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
|
|
532
545
|
<span class="n">symbol_label</span> <span class="o">=</span> <span class="n">tmp_atom_data</span><span class="p">[</span><span class="n">atom_data_index</span><span class="p">[</span><span class="s1">'_atom_site_label'</span><span class="p">]]</span>
|
|
533
|
-
<span class="n">symbol</span> <span class="o">=</span> <span class="n">symbol_label</span>
|
|
534
|
-
<span class="k">
|
|
535
|
-
<span class="n">symbol</span> <span class="o">=</span> <span class="n">symbol</span><span class="o">.</span><span class="n">
|
|
536
|
-
<span class="
|
|
546
|
+
<span class="n">symbol</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">match</span><span class="p">(</span><span class="sa">r</span><span class="s1">'[A-Z][a-z]?'</span><span class="p">,</span> <span class="n">symbol_label</span><span class="p">)</span>
|
|
547
|
+
<span class="k">if</span> <span class="n">symbol</span><span class="p">:</span>
|
|
548
|
+
<span class="n">symbol</span> <span class="o">=</span> <span class="n">symbol</span><span class="o">.</span><span class="n">group</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
|
|
549
|
+
<span class="k">else</span><span class="p">:</span>
|
|
550
|
+
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="sa">f</span><span class="s1">'Symbol label </span><span class="si">{</span><span class="n">symbol_label</span><span class="si">}</span><span class="s1"> is not valid.'</span><span class="p">)</span>
|
|
537
551
|
<span class="k">else</span><span class="p">:</span>
|
|
538
552
|
<span class="n">symbol_label</span> <span class="o">=</span> <span class="n">tmp_atom_data</span><span class="p">[</span><span class="n">atom_data_index</span><span class="p">[</span><span class="s1">'_atom_site_label'</span><span class="p">]]</span>
|
|
539
553
|
<span class="n">symbol</span> <span class="o">=</span> <span class="n">tmp_atom_data</span><span class="p">[</span><span class="n">atom_data_index</span><span class="p">[</span><span class="s1">'_atom_site_type_symbol'</span><span class="p">]]</span>
|
|
@@ -547,11 +561,10 @@
|
|
|
547
561
|
<span class="c1"># get symmetry operation information</span>
|
|
548
562
|
<span class="k">elif</span> <span class="n">is_read_sym</span><span class="p">:</span>
|
|
549
563
|
<span class="k">if</span> <span class="s2">"'"</span> <span class="ow">in</span> <span class="n">line</span><span class="p">:</span>
|
|
550
|
-
<span class="n">line</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="nb">map</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">x</span><span class="o">.</span><span class="n">strip</span><span class="p">()</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span> <span class="s1">''</span><span class="p">)
|
|
551
|
-
<span class="bp">self</span><span class="o">.</span><span class="n">symmetry_pos</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">line</span><span class="p">[</span><span class="n">symmetry_data_index</span><span class="p">]</span><span class="o">.</span><span class="n">lower</span><span class="p">())</span>
|
|
564
|
+
<span class="n">line</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="nb">map</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">x</span><span class="o">.</span><span class="n">strip</span><span class="p">()</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span> <span class="s1">''</span><span class="p">)</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s2">"'"</span><span class="p">,</span> <span class="s2">""</span><span class="p">),</span> <span class="n">line</span><span class="o">.</span><span class="n">split</span><span class="p">()))</span>
|
|
552
565
|
<span class="k">else</span><span class="p">:</span>
|
|
553
566
|
<span class="n">line</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="nb">map</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">x</span><span class="o">.</span><span class="n">strip</span><span class="p">()</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span> <span class="s1">''</span><span class="p">),</span> <span class="n">line</span><span class="o">.</span><span class="n">split</span><span class="p">()))</span>
|
|
554
|
-
|
|
567
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">symmetry_pos</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">line</span><span class="p">[</span><span class="n">symmetry_data_index</span><span class="p">]</span><span class="o">.</span><span class="n">lower</span><span class="p">())</span>
|
|
555
568
|
|
|
556
569
|
<span class="bp">self</span><span class="o">.</span><span class="n">symbols</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">symbols</span><span class="p">)</span>
|
|
557
570
|
<span class="bp">self</span><span class="o">.</span><span class="n">coordinates</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">coordinates</span><span class="p">)</span>
|
|
@@ -596,6 +609,35 @@
|
|
|
596
609
|
<span class="n">sub_matrix</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">adjacency_mat</span><span class="p">[</span><span class="n">np</span><span class="o">.</span><span class="n">ix_</span><span class="p">(</span><span class="n">index_group</span><span class="p">,</span> <span class="n">index_group</span><span class="p">)]</span>
|
|
597
610
|
<span class="bp">self</span><span class="o">.</span><span class="n">sub_matrices</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">sub_matrix</span><span class="p">)</span>
|
|
598
611
|
|
|
612
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">_unwrap_molecules</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
613
|
+
<span class="w"> </span><span class="sd">"""Unwrap molecules using the adjacency matrix based on the minimum image convention."""</span>
|
|
614
|
+
<span class="k">for</span> <span class="n">atom_group</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">bonded_atoms</span><span class="p">:</span>
|
|
615
|
+
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">atom_group</span><span class="p">)</span> <span class="o"><=</span> <span class="mi">1</span><span class="p">:</span>
|
|
616
|
+
<span class="k">continue</span>
|
|
617
|
+
|
|
618
|
+
<span class="n">criterion_idx</span> <span class="o">=</span> <span class="n">atom_group</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
|
|
619
|
+
|
|
620
|
+
<span class="c1"># Depth-first search</span>
|
|
621
|
+
<span class="n">visited</span> <span class="o">=</span> <span class="p">{</span><span class="n">criterion_idx</span><span class="p">}</span>
|
|
622
|
+
<span class="n">stack</span> <span class="o">=</span> <span class="n">deque</span><span class="p">([</span><span class="n">criterion_idx</span><span class="p">])</span>
|
|
623
|
+
|
|
624
|
+
<span class="k">while</span> <span class="n">stack</span><span class="p">:</span>
|
|
625
|
+
<span class="n">current_idx</span> <span class="o">=</span> <span class="n">stack</span><span class="o">.</span><span class="n">popleft</span><span class="p">()</span>
|
|
626
|
+
<span class="n">current_coord</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span><span class="p">[</span><span class="n">current_idx</span><span class="p">]</span>
|
|
627
|
+
|
|
628
|
+
<span class="k">for</span> <span class="n">neighbor_idx</span> <span class="ow">in</span> <span class="n">atom_group</span><span class="p">:</span>
|
|
629
|
+
<span class="k">if</span> <span class="n">neighbor_idx</span> <span class="ow">in</span> <span class="n">visited</span><span class="p">:</span>
|
|
630
|
+
<span class="k">continue</span>
|
|
631
|
+
|
|
632
|
+
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">adjacency_mat</span><span class="p">[</span><span class="n">current_idx</span><span class="p">,</span> <span class="n">neighbor_idx</span><span class="p">]:</span>
|
|
633
|
+
<span class="c1"># Minimum image convention</span>
|
|
634
|
+
<span class="n">frac_diff</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span><span class="p">[</span><span class="n">neighbor_idx</span><span class="p">]</span> <span class="o">-</span> <span class="n">current_coord</span>
|
|
635
|
+
<span class="n">frac_diff</span> <span class="o">=</span> <span class="n">frac_diff</span> <span class="o">-</span> <span class="n">np</span><span class="o">.</span><span class="n">round</span><span class="p">(</span><span class="n">frac_diff</span><span class="p">)</span>
|
|
636
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">sym_coords</span><span class="p">[</span><span class="n">neighbor_idx</span><span class="p">]</span> <span class="o">=</span> <span class="n">current_coord</span> <span class="o">+</span> <span class="n">frac_diff</span>
|
|
637
|
+
|
|
638
|
+
<span class="n">visited</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">neighbor_idx</span><span class="p">)</span>
|
|
639
|
+
<span class="n">stack</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">neighbor_idx</span><span class="p">)</span>
|
|
640
|
+
|
|
599
641
|
<div class="viewcode-block" id="CifReader.calc_cen_of_weight">
|
|
600
642
|
<a class="viewcode-back" href="../../../mcal.utils.html#mcal.utils.cif_reader.CifReader.calc_cen_of_weight">[docs]</a>
|
|
601
643
|
<span class="k">def</span><span class="w"> </span><span class="nf">calc_cen_of_weight</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">coordinates</span><span class="p">:</span> <span class="n">NDArray</span><span class="p">[</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">])</span> <span class="o">-></span> <span class="n">NDArray</span><span class="p">[</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">]:</span>
|
|
@@ -246,7 +246,7 @@
|
|
|
246
246
|
</section>
|
|
247
247
|
<section id="module-mcal.utils.cif_reader">
|
|
248
248
|
<span id="mcal-utils-cif-reader-module"></span><h2>mcal.utils.cif_reader module<a class="headerlink" href="#module-mcal.utils.cif_reader" title="Link to this heading">¶</a></h2>
|
|
249
|
-
<p>CifReader beta (
|
|
249
|
+
<p>CifReader beta (2026/01/29)</p>
|
|
250
250
|
<dl class="py class">
|
|
251
251
|
<dt class="sig sig-object py" id="mcal.utils.cif_reader.CifReader">
|
|
252
252
|
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mcal.utils.cif_reader.</span></span><span class="sig-name descname"><span class="pre">CifReader</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cif_path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/mcal/utils/cif_reader.html#CifReader"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#mcal.utils.cif_reader.CifReader" title="Link to this definition">¶</a></dt>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Search.setIndex({"alltitles": {"--cellsize <number>": [[0, "cellsize-number"]], "--fullcal": [[0, "fullcal"]], "--mc": [[0, "mc"]], "--ode": [[0, "ode"]], "--resume": [[0, "resume"]], "-M, --method <method>": [[0, "m-method-method"]], "-c, --cpu <number>": [[0, "c-cpu-number"]], "-g, --g09": [[0, "g-g09"]], "-m, --mem <memory>": [[0, "m-mem-memory"]], "-p, --pickle": [[0, "p-pickle"]], "-r, --read": [[0, "r-read"]], "-rp, --read_pickle": [[0, "rp-read-pickle"]], "API Reference": [[0, "api-reference"], [0, null]], "Acknowledgements": [[0, "acknowledgements"]], "Authors": [[0, "authors"]], "Basic Calculations": [[0, "basic-calculations"]], "Basic Examples": [[0, "basic-examples"]], "Basic Usage": [[0, "basic-usage"]], "Calculation Control": [[0, "calculation-control"]], "Calculation Settings": [[0, "calculation-settings"]], "Comparing Diffusion Coefficients": [[0, "comparing-diffusion-coefficients"]], "Diffusion Coefficient Calculation Methods": [[0, "diffusion-coefficient-calculation-methods"]], "Features": [[0, "features"]], "High-Precision Calculations": [[0, "high-precision-calculations"]], "If calculation stops midway": [[0, "if-calculation-stops-midway"]], "Indices and Tables": [[0, "indices-and-tables"]], "Installation": [[0, "installation"]], "License": [[0, "license"]], "Memory shortage error": [[0, "memory-shortage-error"]], "Module contents": [[1, "module-mcal"], [2, "module-mcal.calculations"], [3, "module-mcal.utils"]], "Notes": [[0, "notes"]], "Options": [[0, "options"]], "Output": [[0, "output"]], "Output Settings": [[0, "output-settings"]], "Overview": [[0, "overview"]], "Practical Usage Examples": [[0, "practical-usage-examples"]], "Required Arguments": [[0, "required-arguments"]], "Requirements": [[0, "requirements"]], "Reusing Results": [[0, "reusing-results"]], "Standard Output": [[0, "standard-output"]], "Submodules": [[1, "submodules"], [2, "submodules"], [3, "submodules"]], "Subpackages": [[1, "subpackages"]], "To reduce calculation time": [[0, "to-reduce-calculation-time"]], "Troubleshooting": [[0, "troubleshooting"]], "Verify Installation": [[0, "verify-installation"]], "mcal": [[4, null]], "mcal Documentation": [[0, null]], "mcal Usage Manual": [[0, "mcal-usage-manual"]], "mcal package": [[1, null]], "mcal.calculations package": [[2, null]], "mcal.calculations.hopping_mobility_model module": [[2, "module-mcal.calculations.hopping_mobility_model"]], "mcal.calculations.rcal module": [[2, "module-mcal.calculations.rcal"]], "mcal.mcal module": [[1, "module-mcal.mcal"]], "mcal.utils package": [[3, null]], "mcal.utils.cif_reader module": [[3, "module-mcal.utils.cif_reader"]], "mcal.utils.gaus_log_reader module": [[3, "module-mcal.utils.gaus_log_reader"]], "mcal.utils.gjf_maker module": [[3, "module-mcal.utils.gjf_maker"]]}, "docnames": ["index", "mcal", "mcal.calculations", "mcal.utils", "modules"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["index.rst", "mcal.rst", "mcal.calculations.rst", "mcal.utils.rst", "modules.rst"], "indexentries": {"add_adjacency_mat() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.add_adjacency_mat", false]], "add_coordinates() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.add_coordinates", false]], "add_link() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.add_link", false]], "add_root() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.add_root", false]], "add_symbols() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.add_symbols", false]], "atom_weight() (in module mcal.mcal)": [[1, "mcal.mcal.atom_weight", false]], "atomic_weights (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.ATOMIC_WEIGHTS", false]], "cal_cen_of_weight() (in module mcal.mcal)": [[1, "mcal.mcal.cal_cen_of_weight", false]], "cal_distance_between_cen_of_weight() (in module mcal.mcal)": [[1, "mcal.mcal.cal_distance_between_cen_of_weight", false]], "cal_eigenvalue_decomposition() (in module mcal.mcal)": [[1, "mcal.mcal.cal_eigenvalue_decomposition", false]], "cal_min_distance() (in module mcal.mcal)": [[1, "mcal.mcal.cal_min_distance", false]], "cal_moment_of_inertia() (in module mcal.mcal)": [[1, "mcal.mcal.cal_moment_of_inertia", false]], "cal_pinv() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.cal_pinv", false]], "calc_cen_of_weight() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.calc_cen_of_weight", false]], "calc_reorganization() (mcal.calculations.rcal.rcal method)": [[2, "mcal.calculations.rcal.Rcal.calc_reorganization", false]], "check_error_term() (mcal.calculations.rcal.rcal static method)": [[2, "mcal.calculations.rcal.Rcal.check_error_term", false]], "check_extension_log() (mcal.calculations.rcal.rcal method)": [[2, "mcal.calculations.rcal.Rcal.check_extension_log", false]], "check_normal_termination() (in module mcal.utils.gaus_log_reader)": [[3, "mcal.utils.gaus_log_reader.check_normal_termination", false]], "check_reorganization_energy_completion() (in module mcal.mcal)": [[1, "mcal.mcal.check_reorganization_energy_completion", false]], "check_transfer_integral_completion() (in module mcal.mcal)": [[1, "mcal.mcal.check_transfer_integral_completion", false]], "cifreader (class in mcal.utils.cif_reader)": [[3, "mcal.utils.cif_reader.CifReader", false]], "close() (mcal.utils.gaus_log_reader.filereader method)": [[3, "mcal.utils.gaus_log_reader.FileReader.close", false]], "convert_cart_to_frac() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.convert_cart_to_frac", false]], "convert_frac_to_cart() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.convert_frac_to_cart", false]], "covalent_radii (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.COVALENT_RADII", false]], "create_chk_file() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.create_chk_file", false]], "create_reorg_gjf() (in module mcal.mcal)": [[1, "mcal.mcal.create_reorg_gjf", false]], "create_rwf_file() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.create_rwf_file", false]], "create_ti_gjf() (in module mcal.mcal)": [[1, "mcal.mcal.create_ti_gjf", false]], "demo() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.demo", false]], "diffusion_coefficient_tensor() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.diffusion_coefficient_tensor", false]], "diffusion_coefficient_tensor_mc() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.diffusion_coefficient_tensor_MC", false]], "diffusion_coefficient_tensor_ode() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.diffusion_coefficient_tensor_ODE", false]], "element_prop (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.ELEMENT_PROP", false]], "element_prop (mcal.utils.gjf_maker.gjfmaker attribute)": [[3, "mcal.utils.gjf_maker.GjfMaker.ELEMENT_PROP", false]], "elementpropertiesisnotdefinederror": [[3, "mcal.utils.cif_reader.ElementPropertiesIsNotDefinedError", false]], "elements_num (mcal.utils.gjf_maker.gjfmaker attribute)": [[3, "mcal.utils.gjf_maker.GjfMaker.ELEMENTS_NUM", false]], "expand_mols() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.expand_mols", false]], "export_gjf() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.export_gjf", false]], "export_mol_file() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.export_mol_file", false]], "export_unit_cell_file() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.export_unit_cell_file", false]], "export_xyz_file() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.export_xyz_file", false]], "extract_energy() (mcal.calculations.rcal.rcal method)": [[2, "mcal.calculations.rcal.Rcal.extract_energy", false]], "fileio (class in mcal.utils.cif_reader)": [[3, "mcal.utils.cif_reader.FileIO", false]], "filereader (class in mcal.utils.gaus_log_reader)": [[3, "mcal.utils.gaus_log_reader.FileReader", false]], "gaustermerror": [[2, "mcal.calculations.rcal.GausTermError", false]], "gjfmaker (class in mcal.utils.gjf_maker)": [[3, "mcal.utils.gjf_maker.GjfMaker", false]], "main() (in module mcal.calculations.rcal)": [[2, "mcal.calculations.rcal.main", false]], "main() (in module mcal.mcal)": [[1, "mcal.mcal.main", false]], "marcus_rate() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.marcus_rate", false]], "mcal": [[1, "module-mcal", false]], "mcal.calculations": [[2, "module-mcal.calculations", false]], "mcal.calculations.hopping_mobility_model": [[2, "module-mcal.calculations.hopping_mobility_model", false]], "mcal.calculations.rcal": [[2, "module-mcal.calculations.rcal", false]], "mcal.mcal": [[1, "module-mcal.mcal", false]], "mcal.utils": [[3, "module-mcal.utils", false]], "mcal.utils.cif_reader": [[3, "module-mcal.utils.cif_reader", false]], "mcal.utils.gaus_log_reader": [[3, "module-mcal.utils.gaus_log_reader", false]], "mcal.utils.gjf_maker": [[3, "module-mcal.utils.gjf_maker", false]], "mobility_tensor() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.mobility_tensor", false]], "module": [[1, "module-mcal", false], [1, "module-mcal.mcal", false], [2, "module-mcal.calculations", false], [2, "module-mcal.calculations.hopping_mobility_model", false], [2, "module-mcal.calculations.rcal", false], [3, "module-mcal.utils", false], [3, "module-mcal.utils.cif_reader", false], [3, "module-mcal.utils.gaus_log_reader", false], [3, "module-mcal.utils.gjf_maker", false]], "opt() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.opt", false]], "osctypeerror": [[1, "mcal.mcal.OSCTypeError", false], [2, "mcal.calculations.rcal.OSCTypeError", false]], "output_detail() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.output_detail", false]], "parent_dir (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.parent_dir", false]], "parent_dir (mcal.utils.gjf_maker.gjfmaker attribute)": [[3, "mcal.utils.gjf_maker.GjfMaker.parent_dir", false]], "print_mobility() (in module mcal.mcal)": [[1, "mcal.mcal.print_mobility", false]], "print_reorg_energy() (in module mcal.mcal)": [[1, "mcal.mcal.print_reorg_energy", false]], "print_tensor() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.print_tensor", false]], "print_tensor() (in module mcal.mcal)": [[1, "mcal.mcal.print_tensor", false]], "print_timestamp() (mcal.calculations.rcal.rcal static method)": [[2, "mcal.calculations.rcal.Rcal.print_timestamp", false]], "print_transfer_integral() (in module mcal.mcal)": [[1, "mcal.mcal.print_transfer_integral", false]], "rcal (class in mcal.calculations.rcal)": [[2, "mcal.calculations.rcal.Rcal", false]], "read_pickle() (in module mcal.mcal)": [[1, "mcal.mcal.read_pickle", false]], "remove_duplicates() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.remove_duplicates", false]], "reset_variable() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.reset_variable", false]], "reversed_readline() (mcal.utils.gaus_log_reader.filereader method)": [[3, "mcal.utils.gaus_log_reader.FileReader.reversed_readline", false]], "set_charge_spin() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_charge_spin", false]], "set_coordinates() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_coordinates", false]], "set_function() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_function", false]], "set_resource() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_resource", false]], "set_symbols() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_symbols", false]], "set_title() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_title", false]], "symmetryisnotdefinederror": [[3, "mcal.utils.cif_reader.SymmetryIsNotDefinedError", false]], "zvalueisnotmatcherror": [[3, "mcal.utils.cif_reader.ZValueIsNotMatchError", false]]}, "objects": {"": [[1, 0, 0, "-", "mcal"]], "mcal": [[2, 0, 0, "-", "calculations"], [1, 0, 0, "-", "mcal"], [3, 0, 0, "-", "utils"]], "mcal.calculations": [[2, 0, 0, "-", "hopping_mobility_model"], [2, 0, 0, "-", "rcal"]], "mcal.calculations.hopping_mobility_model": [[2, 1, 1, "", "cal_pinv"], [2, 1, 1, "", "demo"], [2, 1, 1, "", "diffusion_coefficient_tensor"], [2, 1, 1, "", "diffusion_coefficient_tensor_MC"], [2, 1, 1, "", "diffusion_coefficient_tensor_ODE"], [2, 1, 1, "", "marcus_rate"], [2, 1, 1, "", "mobility_tensor"], [2, 1, 1, "", "print_tensor"]], "mcal.calculations.rcal": [[2, 2, 1, "", "GausTermError"], [2, 2, 1, "", "OSCTypeError"], [2, 3, 1, "", "Rcal"], [2, 1, 1, "", "main"]], "mcal.calculations.rcal.Rcal": [[2, 4, 1, "", "calc_reorganization"], [2, 4, 1, "", "check_error_term"], [2, 4, 1, "", "check_extension_log"], [2, 4, 1, "", "extract_energy"], [2, 4, 1, "", "print_timestamp"]], "mcal.mcal": [[1, 2, 1, "", "OSCTypeError"], [1, 1, 1, "", "atom_weight"], [1, 1, 1, "", "cal_cen_of_weight"], [1, 1, 1, "", "cal_distance_between_cen_of_weight"], [1, 1, 1, "", "cal_eigenvalue_decomposition"], [1, 1, 1, "", "cal_min_distance"], [1, 1, 1, "", "cal_moment_of_inertia"], [1, 1, 1, "", "check_reorganization_energy_completion"], [1, 1, 1, "", "check_transfer_integral_completion"], [1, 1, 1, "", "create_reorg_gjf"], [1, 1, 1, "", "create_ti_gjf"], [1, 1, 1, "", "main"], [1, 1, 1, "", "print_mobility"], [1, 1, 1, "", "print_reorg_energy"], [1, 1, 1, "", "print_tensor"], [1, 1, 1, "", "print_transfer_integral"], [1, 1, 1, "", "read_pickle"]], "mcal.utils": [[3, 0, 0, "-", "cif_reader"], [3, 0, 0, "-", "gaus_log_reader"], [3, 0, 0, "-", "gjf_maker"]], "mcal.utils.cif_reader": [[3, 3, 1, "", "CifReader"], [3, 2, 1, "", "ElementPropertiesIsNotDefinedError"], [3, 3, 1, "", "FileIO"], [3, 2, 1, "", "SymmetryIsNotDefinedError"], [3, 2, 1, "", "ZValueIsNotMatchError"]], "mcal.utils.cif_reader.CifReader": [[3, 5, 1, "", "ATOMIC_WEIGHTS"], [3, 5, 1, "", "COVALENT_RADII"], [3, 5, 1, "", "ELEMENT_PROP"], [3, 4, 1, "", "calc_cen_of_weight"], [3, 4, 1, "", "convert_cart_to_frac"], [3, 4, 1, "", "convert_frac_to_cart"], [3, 4, 1, "", "expand_mols"], [3, 4, 1, "", "export_unit_cell_file"], [3, 5, 1, "", "parent_dir"], [3, 4, 1, "", "remove_duplicates"]], "mcal.utils.cif_reader.FileIO": [[3, 4, 1, "", "add_adjacency_mat"], [3, 4, 1, "", "add_coordinates"], [3, 4, 1, "", "add_symbols"], [3, 4, 1, "", "export_mol_file"], [3, 4, 1, "", "export_xyz_file"]], "mcal.utils.gaus_log_reader": [[3, 3, 1, "", "FileReader"], [3, 1, 1, "", "check_normal_termination"]], "mcal.utils.gaus_log_reader.FileReader": [[3, 4, 1, "", "close"], [3, 4, 1, "", "reversed_readline"]], "mcal.utils.gjf_maker": [[3, 3, 1, "", "GjfMaker"]], "mcal.utils.gjf_maker.GjfMaker": [[3, 5, 1, "", "ELEMENTS_NUM"], [3, 5, 1, "", "ELEMENT_PROP"], [3, 4, 1, "", "add_link"], [3, 4, 1, "", "add_root"], [3, 4, 1, "", "create_chk_file"], [3, 4, 1, "", "create_rwf_file"], [3, 4, 1, "", "export_gjf"], [3, 4, 1, "", "opt"], [3, 4, 1, "", "output_detail"], [3, 5, 1, "", "parent_dir"], [3, 4, 1, "", "reset_variable"], [3, 4, 1, "", "set_charge_spin"], [3, 4, 1, "", "set_coordinates"], [3, 4, 1, "", "set_function"], [3, 4, 1, "", "set_resource"], [3, 4, 1, "", "set_symbols"], [3, 4, 1, "", "set_title"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "exception", "Python exception"], "3": ["py", "class", "Python class"], "4": ["py", "method", "Python method"], "5": ["py", "attribute", "Python attribute"]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:exception", "3": "py:class", "4": "py:method", "5": "py:attribute"}, "terms": {"": [2, 3], "0": [0, 2, 3], "00": 3, "0000": 3, "0001": 3, "001": 2, "0026": 3, "007": 3, "008": 3, "0080": 3, "01": 3, "011": 3, "0122": 3, "014": 3, "0140": 3, "02": 3, "03": 3, "0300": 3, "04": 3, "0400": 3, "05": [2, 3], "06": [2, 3], "07": 3, "078": 3, "08": 3, "085": 3, "09": 0, "098": 3, "1": [0, 1, 2, 3], "10": [0, 2, 3], "100": [2, 3], "10000": 2, "101": 3, "102": 3, "103": 3, "104": 3, "105": 3, "106": 3, "107": 3, "108": 3, "109": 3, "11": 3, "110": 3, "111": 3, "112": 3, "113": 3, "114": 3, "115": 3, "116": 3, "117": 3, "118": 3, "119": 3, "12": 3, "120": 3, "121": 3, "126": 3, "127": 3, "13": 3, "131": 3, "132": 3, "137": 3, "138": 3, "14": 3, "140": 3, "144": 3, "15": 3, "150": 3, "151": 3, "157": 3, "158": 3, "16": [0, 1, 3], "162": 3, "164": 3, "167": 3, "168": 3, "16gb": [0, 1], "17": 3, "173": 3, "174": 3, "178": 3, "18": 3, "180": 3, "183": 3, "186": 3, "19": 3, "190": 3, "192": 3, "195": 3, "196": 3, "1e": 2, "2": [0, 1, 2, 3], "20": 3, "200": [2, 3], "2000": 3, "2025": [2, 3], "204": 3, "207": 3, "208": 3, "21": 3, "22": 3, "224": 3, "23": 3, "231": 3, "232": 3, "238": 3, "24": 3, "25": 3, "26": 3, "27": 3, "28": 3, "29": 3, "3": [0, 3], "30": 3, "300": 2, "305": 3, "31": 3, "311g": [0, 1], "31g": [0, 1], "32": [0, 3], "33": 3, "34": 3, "35": 3, "36": 3, "37": 3, "38": 3, "39": 3, "3x3": 2, "3x3x3": [0, 1], "4": [0, 1, 3], "40": [2, 3], "41": 3, "42": 3, "43": 3, "44": 3, "45": 3, "46": 3, "468": 3, "47": 3, "48": 3, "49": 3, "5": 3, "50": 3, "51": 3, "52": 3, "53": 3, "54": 3, "546": 3, "55": 3, "56": 3, "57": 3, "58": 3, "59": 3, "5x5x5": [0, 1], "6": [0, 1, 3], "60": 3, "61": 3, "62": 3, "63": 3, "64": 3, "65": 3, "66": 3, "67": 3, "68": 3, "69": 3, "693": 3, "7": 3, "70": 3, "71": 3, "72": 3, "723": 3, "73": 3, "74": 3, "75": 3, "76": 3, "77": 3, "78": 3, "79": 3, "798": 3, "7x7x7": 0, "8": [0, 1, 3], "80": 3, "81": 3, "8192": 3, "82": 3, "83": 3, "84": 3, "845": 3, "85": 3, "86": 3, "867": 3, "87": 3, "88": 3, "89": 3, "9": [0, 2, 3], "90": 3, "904": 3, "906": 3, "91": 3, "92": 3, "922": 3, "93": 3, "933": 3, "938": 3, "94": 3, "9400": 3, "942": 3, "95": 3, "956": 3, "96": 3, "97": 3, "971": 3, "974": 3, "98": 3, "9800": 3, "982": 3, "99": 3, "996": 3, "998": 3, "999": 3, "A": 3, "As": 3, "At": 3, "Be": 3, "For": [0, 3], "If": 3, "In": 3, "It": 0, "No": 3, "The": [0, 2, 3], "With": 1, "ac": [0, 3], "add": 3, "add_adjacency_mat": [1, 3], "add_coordin": [1, 3], "add_link": [1, 3], "add_root": [1, 3], "add_symbol": [1, 3], "adjac": 3, "adjacency_mat": 3, "after": 0, "ag": 3, "aid": 0, "al": 3, "algorithm": 2, "all": [0, 1, 2], "am": 3, "amount": 0, "ani": [1, 2, 3], "anisotropi": [0, 1], "anoth": 1, "ar": [0, 1, 3], "around": [0, 3], "arrai": [2, 3], "atom": [1, 3], "atom_weight": [1, 4], "atomic_weight": [1, 3], "au": 3, "awai": 3, "axi": 2, "b": [2, 3], "b3lyp": [0, 1], "ba": 3, "base": [1, 2, 3], "basenam": 1, "basi": 0, "basic": 1, "beta": 3, "between": [0, 1], "bh": 3, "bi": 3, "bismuth": 3, "bk": 3, "bond": 3, "bool": [1, 2, 3], "box": 2, "br": 3, "break": 3, "buffer_s": 3, "c": [1, 2, 3], "ca": 3, "cal_cen_of_weight": [1, 4], "cal_distance_between_cen_of_weight": [1, 4], "cal_eigenvalue_decomposit": [1, 4], "cal_min_dist": [1, 4], "cal_moment_of_inertia": [1, 4], "cal_pinv": [1, 2], "calc_cen_of_weight": [1, 3], "calc_reorgan": [1, 2], "calcul": [1, 3, 4], "can": 0, "carlo": [0, 1, 2], "cart_coord": 3, "cartesian": 3, "cd": 3, "ce": 3, "cell": [0, 2, 3], "cellsiz": 1, "center": [0, 1, 3], "central": 0, "cf": 3, "charg": 3, "check": [1, 2, 3], "check_error_term": [1, 2], "check_extension_log": [1, 2], "check_normal_termin": [1, 3], "check_reorganization_energy_complet": [1, 4], "check_transfer_integral_complet": [1, 4], "chemic": 0, "chk": 3, "chk_rwf_name": 3, "cif": [0, 1, 3], "cif_filenam": 0, "cif_path": 3, "cif_path_without_ext": 1, "cif_read": [1, 4], "cifread": [1, 3], "cl": 3, "class": [2, 3], "close": [1, 3], "cm": 3, "cn": 3, "co": 3, "code": 2, "coeffici": 2, "column": 3, "command": 2, "comment": 3, "compar": 1, "complet": 1, "comput": 0, "consid": [0, 1], "consum": 0, "contain": [1, 3], "content": 4, "continu": [0, 1], "convert": 3, "convert_cart_to_frac": [1, 3], "convert_frac_to_cart": [1, 3], "coordin": [1, 3], "coordinates1": 1, "coordinates2": 1, "coords1": 1, "coords2": 1, "correctli": 3, "covalent_radii": [1, 3], "covalent_radiu": 3, "cpu": [1, 3], "cpu_num": 3, "cr": 3, "creat": [0, 1, 3], "create_chk_fil": [1, 3], "create_reorg_gjf": [1, 4], "create_rwf_fil": [1, 3], "create_ti_gjf": [1, 4], "crystal": [0, 1, 3], "cu": 3, "cutoff": 2, "cycl": 3, "d": [0, 1, 2, 3], "db": 3, "decomposit": [1, 2], "default": [0, 1, 2, 3], "defin": 3, "demo": [1, 2], "depend": 0, "detail": [0, 2, 3], "detect": 3, "determin": 0, "deuterium": 3, "dict": [1, 3], "dictionari": [1, 3], "differ": [0, 1], "differenti": [0, 2], "diffus": 2, "diffusion_coefficient_tensor": [1, 2], "diffusion_coefficient_tensor_mc": [1, 2], "diffusion_coefficient_tensor_od": [1, 2], "dimer": 1, "direct": [0, 3], "directori": [1, 3], "disabl": 0, "distanc": [0, 1], "document": 3, "dtype": [1, 2, 3], "dummi": 3, "duplic": 3, "dy": 3, "e": 3, "each": 0, "eigenvalu": [0, 1, 2], "eigenvector": [0, 1], "electron": 0, "element": 3, "element_prop": [1, 3], "elementpropertiesisnotdefinederror": [1, 3], "elements_num": [1, 3], "email": 0, "enabl": 0, "end": 3, "energi": [0, 1, 2], "ensur": 0, "environ": 0, "equat": [0, 2], "er": 3, "error": 2, "etc": 3, "eu": 3, "ev": [1, 2], "exampl": [1, 3], "except": [1, 2, 3], "execut": [0, 2], "exist": [0, 1], "expand": [0, 1, 3], "expand_mol": [1, 3], "expand_rang": 3, "export": 3, "export_gjf": [1, 3], "export_mol_fil": [1, 3], "export_unit_cell_fil": [1, 3], "export_xyz_fil": [1, 3], "extens": [1, 2], "extension_log": 1, "extract": [2, 3], "extract_energi": [1, 2], "f": 3, "fals": [2, 3], "faster": 0, "fe": 3, "fellow": 0, "file": [0, 1, 2, 3], "file_nam": [1, 3], "file_path": 3, "fileio": [1, 3], "fileread": [1, 3], "fl": 3, "flerovium": 3, "float": [1, 2, 3], "float64": [1, 2, 3], "fm": 3, "format": 3, "fr": 3, "frac_coord": 3, "fraction": 3, "from": [0, 1, 2, 3], "fullcal": 1, "function": 3, "g16": 2, "ga": 3, "gau_com": 2, "gaus_log_read": [1, 4], "gaussian": [0, 1, 2, 3], "gaustermerror": [1, 2], "gb": [0, 1, 3], "gd": 3, "ge": 3, "gener": 3, "get": 1, "gillespi": 2, "git": 3, "github": 0, "given": 3, "gjf": [1, 2, 3], "gjf_basenam": 1, "gjf_file": [1, 2], "gjf_maker": [1, 4], "gjfmaker": [1, 3], "grant": 0, "group": 3, "h": [0, 3], "he": 3, "header": 3, "header1": 3, "header2": 3, "helium": 3, "help": 0, "hf": 3, "hg": 3, "high": 1, "hiroyuki": 0, "ho": 3, "homo": 0, "hop": 2, "hop_mcal": 1, "hopping_mobility_model": [1, 4], "hydrogen": 3, "i": [0, 1, 2, 3], "increas": 0, "index": [0, 3], "inertia": [0, 1], "inform": 3, "inner": 3, "input": 2, "int": [1, 2, 3], "integr": [0, 1, 2], "interrupt": 0, "invers": 2, "ion": [1, 2], "ir": 3, "is_output_detail": 2, "j": [2, 3], "jp": 0, "jp25kj0647": 0, "jsp": 0, "k": [2, 3], "kei": 3, "kinet": [0, 1], "koki": 0, "kr": 3, "la": 3, "laboratori": 0, "larg": 0, "larger": 0, "last": 2, "lattic": 2, "lead": 3, "level": 0, "li": 3, "librari": 0, "line": [2, 3], "link": 3, "list": [1, 2, 3], "liter": [1, 2, 3], "lithium": 3, "livermorium": 3, "log": [0, 1, 2, 3], "log_fil": 3, "lr": 3, "lu": 3, "lumo": 0, "lv": 3, "m": 1, "mai": 3, "main": [1, 2, 4], "make": 0, "manag": 3, "marcus_r": [1, 2], "match": 3, "matrix": [2, 3], "matsui": 0, "max_rat": 2, "max_step": 2, "maximum": 2, "mc": [1, 3], "md": 3, "mean": 2, "mem": 1, "mem_num": 3, "mem_unit": 3, "memori": [1, 3], "messag": 1, "method": 1, "mg": 3, "minimum": 1, "mit": 0, "mn": 3, "mo": 3, "mobil": [0, 1, 2], "mobility_tensor": [1, 2], "modul": [0, 4], "mol": 3, "molecul": [0, 2, 3], "molecular": 3, "moment": [0, 1], "monom": 1, "monomer1": 1, "monomer2": 1, "monomolecular": 3, "mont": [0, 1, 2], "more": 0, "moscovium": 3, "msg": [1, 2], "mt": 3, "mu": 1, "must": 0, "n": [0, 1, 2, 3], "na": 3, "name": [1, 2, 3], "nan": 3, "nb": 3, "nd": 3, "ndarrai": [1, 2, 3], "ne": 3, "neg": 2, "neighbor": 1, "neighbor_mol": 1, "nest": 3, "neutral": [1, 2], "newer": 0, "nh": 3, "ni": 3, "none": [1, 2, 3], "normal": [0, 1, 3], "np": [1, 2, 3], "number": [1, 2, 3], "numer": 2, "numpi": [0, 2], "o": 3, "object": [2, 3], "od": [1, 2], "offset": 3, "og": 3, "oganesson": 3, "one": [1, 2, 3], "onli": 2, "only_read": 2, "opt": [1, 3], "opt_ion": [1, 2], "opt_neutr": [1, 2], "optim": 3, "option": [1, 2, 3], "ordinari": [0, 2], "organ": [0, 2], "origin": 3, "osc_typ": [0, 1, 2], "osctypeerror": [1, 2, 4], "otherwis": 3, "outer": 3, "output": [2, 3], "output_detail": [1, 3], "ozawa": 0, "p": [1, 2, 3], "pa": 3, "packag": [0, 4], "page": 0, "pair": 0, "panda": 0, "paramet": [1, 2, 3], "parent_dir": [1, 3], "particl": 2, "path": [0, 1, 3], "pb": 3, "pd": 3, "period": 3, "pickl": 1, "pip": 0, "pkl": [0, 1], "pkl_filenam": 0, "pleas": 0, "pm": 3, "po": 3, "posixpath": 3, "pr": 3, "precis": 1, "print": [1, 2, 3], "print_mobl": [1, 4], "print_reorg_energi": [1, 4], "print_tensor": [1, 2, 4], "print_timestamp": [1, 2], "print_transfer_integr": [1, 4], "process": 0, "produc": 3, "project": 0, "properti": 3, "protactinium": 3, "pseudo": 2, "pt": 3, "pu": 3, "py": [1, 2], "python": [0, 1], "quantum": 0, "r": 1, "ra": 3, "rais": [2, 3], "rang": [0, 1], "rate": 2, "rb": 3, "rcal": [1, 4], "rcond": 2, "re": 3, "read": [1, 2, 3], "read_pickl": [1, 4], "reader": 3, "rel": 3, "releas": 0, "remov": 3, "remove_dupl": [1, 3], "remove_radical_flag": 3, "reorg_energi": 1, "reorgan": [0, 1, 2], "replac": 0, "repres": 3, "research": 0, "reset": 3, "reset_vari": [1, 3], "resourc": 1, "result": 1, "resum": 1, "return": [1, 2, 3], "reversed_readlin": [1, 3], "rf": 3, "rg": 3, "rh": 3, "rn": 3, "roel": 0, "root": 3, "row": 3, "rp": 1, "ru": 3, "run": [0, 1], "rwf": 3, "sampl": 3, "save": [0, 1, 3], "save_dir": [1, 3], "sb": 3, "sc": 3, "se": 3, "search": 0, "see": 0, "semiconductor": [0, 1, 2], "set": [1, 3], "set_charge_spin": [1, 3], "set_coordin": [1, 3], "set_funct": [1, 3], "set_resourc": [1, 3], "set_symbol": [1, 3], "set_titl": [1, 3], "sg": 3, "shape": 3, "should": 2, "si": 3, "significantli": 0, "sim_typ": 1, "simul": [1, 2], "singular": 2, "size": [0, 2], "skip": [1, 2], "skip_cal": 2, "skip_specified_c": 2, "sm": 3, "small": 2, "smaller": 0, "sn": 3, "solut": 2, "sourc": [1, 2, 3], "specifi": [0, 2], "speedup": [0, 1], "spin": 3, "sr": 3, "src": 3, "static": 2, "step": 2, "str": [1, 2, 3], "structur": [0, 3], "subaru": 3, "submodul": 4, "subpackag": 4, "suffici": 0, "supercel": [0, 1], "support": 0, "sure": 0, "symbol": [1, 3], "symbols1": 1, "symbols2": 1, "symmetri": 3, "symmetryisnotdefinederror": [1, 3], "system": 0, "t": [2, 3], "ta": 3, "tb": 3, "tc": 3, "tcal": 0, "te": 3, "temperatur": 2, "tennessin": 3, "tensor": [0, 1, 2], "term": 2, "termin": [0, 1, 2, 3], "th": [2, 3], "thi": [0, 2, 3], "thorium": 3, "ti": 3, "tight": 3, "timestamp": 2, "titl": 3, "tl": 3, "tm": 3, "tol": 3, "toler": 3, "tool": 0, "total": 2, "transfer": [0, 1, 2], "true": [1, 2, 3], "tupl": [1, 2, 3], "two": 1, "txt": 3, "type": [0, 1, 2, 3], "u": [0, 3], "under": 0, "union": 1, "uniqu": [1, 3], "unique_mol": 1, "unit": [0, 3], "univers": 0, "uranium": 3, "us": [0, 1, 2, 3], "usag": 1, "user": 3, "util": [1, 4], "v": 3, "valu": [1, 2, 3], "valueerror": 2, "vari": 0, "variabl": 3, "vdw_radiu": 3, "vector": [1, 2], "w": 3, "wa": [0, 2], "weight": [0, 1, 3], "when": 3, "while": 3, "widen": [0, 1], "within": 3, "without": [0, 1], "work": 0, "x": 3, "xe": 3, "xxx": [0, 1], "xxx_result": [0, 1], "xyz": 3, "y": 3, "yamagata": 0, "yb": 3, "you": 0, "your": 0, "yu": 0, "yz": 0, "z": 3, "zero": 2, "zn": 3, "zr": 3, "zvalueisnotmatcherror": [1, 3]}, "titles": ["mcal Documentation", "mcal package", "mcal.calculations package", "mcal.utils package", "mcal"], "titleterms": {"If": 0, "To": 0, "acknowledg": 0, "api": 0, "argument": 0, "author": 0, "basic": 0, "c": 0, "calcul": [0, 2], "cellsiz": 0, "cif_read": 3, "coeffici": 0, "compar": 0, "content": [1, 2, 3], "control": 0, "cpu": 0, "diffus": 0, "document": 0, "error": 0, "exampl": 0, "featur": 0, "fullcal": 0, "g": 0, "g09": 0, "gaus_log_read": 3, "gjf_maker": 3, "high": 0, "hopping_mobility_model": 2, "indic": 0, "instal": 0, "licens": 0, "m": 0, "manual": 0, "mc": 0, "mcal": [0, 1, 2, 3, 4], "mem": 0, "memori": 0, "method": 0, "midwai": 0, "modul": [1, 2, 3], "note": 0, "number": 0, "od": 0, "option": 0, "output": 0, "overview": 0, "p": 0, "packag": [1, 2, 3], "pickl": 0, "practic": 0, "precis": 0, "r": 0, "rcal": 2, "read": 0, "read_pickl": 0, "reduc": 0, "refer": 0, "requir": 0, "result": 0, "resum": 0, "reus": 0, "rp": 0, "set": 0, "shortag": 0, "standard": 0, "stop": 0, "submodul": [1, 2, 3], "subpackag": 1, "tabl": 0, "time": 0, "troubleshoot": 0, "usag": 0, "util": 3, "verifi": 0}})
|
|
1
|
+
Search.setIndex({"alltitles": {"--cellsize <number>": [[0, "cellsize-number"]], "--fullcal": [[0, "fullcal"]], "--mc": [[0, "mc"]], "--ode": [[0, "ode"]], "--resume": [[0, "resume"]], "-M, --method <method>": [[0, "m-method-method"]], "-c, --cpu <number>": [[0, "c-cpu-number"]], "-g, --g09": [[0, "g-g09"]], "-m, --mem <memory>": [[0, "m-mem-memory"]], "-p, --pickle": [[0, "p-pickle"]], "-r, --read": [[0, "r-read"]], "-rp, --read_pickle": [[0, "rp-read-pickle"]], "API Reference": [[0, "api-reference"], [0, null]], "Acknowledgements": [[0, "acknowledgements"]], "Authors": [[0, "authors"]], "Basic Calculations": [[0, "basic-calculations"]], "Basic Examples": [[0, "basic-examples"]], "Basic Usage": [[0, "basic-usage"]], "Calculation Control": [[0, "calculation-control"]], "Calculation Settings": [[0, "calculation-settings"]], "Comparing Diffusion Coefficients": [[0, "comparing-diffusion-coefficients"]], "Diffusion Coefficient Calculation Methods": [[0, "diffusion-coefficient-calculation-methods"]], "Features": [[0, "features"]], "High-Precision Calculations": [[0, "high-precision-calculations"]], "If calculation stops midway": [[0, "if-calculation-stops-midway"]], "Indices and Tables": [[0, "indices-and-tables"]], "Installation": [[0, "installation"]], "License": [[0, "license"]], "Memory shortage error": [[0, "memory-shortage-error"]], "Module contents": [[1, "module-mcal"], [2, "module-mcal.calculations"], [3, "module-mcal.utils"]], "Notes": [[0, "notes"]], "Options": [[0, "options"]], "Output": [[0, "output"]], "Output Settings": [[0, "output-settings"]], "Overview": [[0, "overview"]], "Practical Usage Examples": [[0, "practical-usage-examples"]], "Required Arguments": [[0, "required-arguments"]], "Requirements": [[0, "requirements"]], "Reusing Results": [[0, "reusing-results"]], "Standard Output": [[0, "standard-output"]], "Submodules": [[1, "submodules"], [2, "submodules"], [3, "submodules"]], "Subpackages": [[1, "subpackages"]], "To reduce calculation time": [[0, "to-reduce-calculation-time"]], "Troubleshooting": [[0, "troubleshooting"]], "Verify Installation": [[0, "verify-installation"]], "mcal": [[4, null]], "mcal Documentation": [[0, null]], "mcal Usage Manual": [[0, "mcal-usage-manual"]], "mcal package": [[1, null]], "mcal.calculations package": [[2, null]], "mcal.calculations.hopping_mobility_model module": [[2, "module-mcal.calculations.hopping_mobility_model"]], "mcal.calculations.rcal module": [[2, "module-mcal.calculations.rcal"]], "mcal.mcal module": [[1, "module-mcal.mcal"]], "mcal.utils package": [[3, null]], "mcal.utils.cif_reader module": [[3, "module-mcal.utils.cif_reader"]], "mcal.utils.gaus_log_reader module": [[3, "module-mcal.utils.gaus_log_reader"]], "mcal.utils.gjf_maker module": [[3, "module-mcal.utils.gjf_maker"]]}, "docnames": ["index", "mcal", "mcal.calculations", "mcal.utils", "modules"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["index.rst", "mcal.rst", "mcal.calculations.rst", "mcal.utils.rst", "modules.rst"], "indexentries": {"add_adjacency_mat() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.add_adjacency_mat", false]], "add_coordinates() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.add_coordinates", false]], "add_link() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.add_link", false]], "add_root() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.add_root", false]], "add_symbols() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.add_symbols", false]], "atom_weight() (in module mcal.mcal)": [[1, "mcal.mcal.atom_weight", false]], "atomic_weights (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.ATOMIC_WEIGHTS", false]], "cal_cen_of_weight() (in module mcal.mcal)": [[1, "mcal.mcal.cal_cen_of_weight", false]], "cal_distance_between_cen_of_weight() (in module mcal.mcal)": [[1, "mcal.mcal.cal_distance_between_cen_of_weight", false]], "cal_eigenvalue_decomposition() (in module mcal.mcal)": [[1, "mcal.mcal.cal_eigenvalue_decomposition", false]], "cal_min_distance() (in module mcal.mcal)": [[1, "mcal.mcal.cal_min_distance", false]], "cal_moment_of_inertia() (in module mcal.mcal)": [[1, "mcal.mcal.cal_moment_of_inertia", false]], "cal_pinv() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.cal_pinv", false]], "calc_cen_of_weight() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.calc_cen_of_weight", false]], "calc_reorganization() (mcal.calculations.rcal.rcal method)": [[2, "mcal.calculations.rcal.Rcal.calc_reorganization", false]], "check_error_term() (mcal.calculations.rcal.rcal static method)": [[2, "mcal.calculations.rcal.Rcal.check_error_term", false]], "check_extension_log() (mcal.calculations.rcal.rcal method)": [[2, "mcal.calculations.rcal.Rcal.check_extension_log", false]], "check_normal_termination() (in module mcal.utils.gaus_log_reader)": [[3, "mcal.utils.gaus_log_reader.check_normal_termination", false]], "check_reorganization_energy_completion() (in module mcal.mcal)": [[1, "mcal.mcal.check_reorganization_energy_completion", false]], "check_transfer_integral_completion() (in module mcal.mcal)": [[1, "mcal.mcal.check_transfer_integral_completion", false]], "cifreader (class in mcal.utils.cif_reader)": [[3, "mcal.utils.cif_reader.CifReader", false]], "close() (mcal.utils.gaus_log_reader.filereader method)": [[3, "mcal.utils.gaus_log_reader.FileReader.close", false]], "convert_cart_to_frac() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.convert_cart_to_frac", false]], "convert_frac_to_cart() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.convert_frac_to_cart", false]], "covalent_radii (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.COVALENT_RADII", false]], "create_chk_file() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.create_chk_file", false]], "create_reorg_gjf() (in module mcal.mcal)": [[1, "mcal.mcal.create_reorg_gjf", false]], "create_rwf_file() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.create_rwf_file", false]], "create_ti_gjf() (in module mcal.mcal)": [[1, "mcal.mcal.create_ti_gjf", false]], "demo() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.demo", false]], "diffusion_coefficient_tensor() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.diffusion_coefficient_tensor", false]], "diffusion_coefficient_tensor_mc() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.diffusion_coefficient_tensor_MC", false]], "diffusion_coefficient_tensor_ode() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.diffusion_coefficient_tensor_ODE", false]], "element_prop (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.ELEMENT_PROP", false]], "element_prop (mcal.utils.gjf_maker.gjfmaker attribute)": [[3, "mcal.utils.gjf_maker.GjfMaker.ELEMENT_PROP", false]], "elementpropertiesisnotdefinederror": [[3, "mcal.utils.cif_reader.ElementPropertiesIsNotDefinedError", false]], "elements_num (mcal.utils.gjf_maker.gjfmaker attribute)": [[3, "mcal.utils.gjf_maker.GjfMaker.ELEMENTS_NUM", false]], "expand_mols() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.expand_mols", false]], "export_gjf() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.export_gjf", false]], "export_mol_file() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.export_mol_file", false]], "export_unit_cell_file() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.export_unit_cell_file", false]], "export_xyz_file() (mcal.utils.cif_reader.fileio method)": [[3, "mcal.utils.cif_reader.FileIO.export_xyz_file", false]], "extract_energy() (mcal.calculations.rcal.rcal method)": [[2, "mcal.calculations.rcal.Rcal.extract_energy", false]], "fileio (class in mcal.utils.cif_reader)": [[3, "mcal.utils.cif_reader.FileIO", false]], "filereader (class in mcal.utils.gaus_log_reader)": [[3, "mcal.utils.gaus_log_reader.FileReader", false]], "gaustermerror": [[2, "mcal.calculations.rcal.GausTermError", false]], "gjfmaker (class in mcal.utils.gjf_maker)": [[3, "mcal.utils.gjf_maker.GjfMaker", false]], "main() (in module mcal.calculations.rcal)": [[2, "mcal.calculations.rcal.main", false]], "main() (in module mcal.mcal)": [[1, "mcal.mcal.main", false]], "marcus_rate() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.marcus_rate", false]], "mcal": [[1, "module-mcal", false]], "mcal.calculations": [[2, "module-mcal.calculations", false]], "mcal.calculations.hopping_mobility_model": [[2, "module-mcal.calculations.hopping_mobility_model", false]], "mcal.calculations.rcal": [[2, "module-mcal.calculations.rcal", false]], "mcal.mcal": [[1, "module-mcal.mcal", false]], "mcal.utils": [[3, "module-mcal.utils", false]], "mcal.utils.cif_reader": [[3, "module-mcal.utils.cif_reader", false]], "mcal.utils.gaus_log_reader": [[3, "module-mcal.utils.gaus_log_reader", false]], "mcal.utils.gjf_maker": [[3, "module-mcal.utils.gjf_maker", false]], "mobility_tensor() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.mobility_tensor", false]], "module": [[1, "module-mcal", false], [1, "module-mcal.mcal", false], [2, "module-mcal.calculations", false], [2, "module-mcal.calculations.hopping_mobility_model", false], [2, "module-mcal.calculations.rcal", false], [3, "module-mcal.utils", false], [3, "module-mcal.utils.cif_reader", false], [3, "module-mcal.utils.gaus_log_reader", false], [3, "module-mcal.utils.gjf_maker", false]], "opt() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.opt", false]], "osctypeerror": [[1, "mcal.mcal.OSCTypeError", false], [2, "mcal.calculations.rcal.OSCTypeError", false]], "output_detail() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.output_detail", false]], "parent_dir (mcal.utils.cif_reader.cifreader attribute)": [[3, "mcal.utils.cif_reader.CifReader.parent_dir", false]], "parent_dir (mcal.utils.gjf_maker.gjfmaker attribute)": [[3, "mcal.utils.gjf_maker.GjfMaker.parent_dir", false]], "print_mobility() (in module mcal.mcal)": [[1, "mcal.mcal.print_mobility", false]], "print_reorg_energy() (in module mcal.mcal)": [[1, "mcal.mcal.print_reorg_energy", false]], "print_tensor() (in module mcal.calculations.hopping_mobility_model)": [[2, "mcal.calculations.hopping_mobility_model.print_tensor", false]], "print_tensor() (in module mcal.mcal)": [[1, "mcal.mcal.print_tensor", false]], "print_timestamp() (mcal.calculations.rcal.rcal static method)": [[2, "mcal.calculations.rcal.Rcal.print_timestamp", false]], "print_transfer_integral() (in module mcal.mcal)": [[1, "mcal.mcal.print_transfer_integral", false]], "rcal (class in mcal.calculations.rcal)": [[2, "mcal.calculations.rcal.Rcal", false]], "read_pickle() (in module mcal.mcal)": [[1, "mcal.mcal.read_pickle", false]], "remove_duplicates() (mcal.utils.cif_reader.cifreader method)": [[3, "mcal.utils.cif_reader.CifReader.remove_duplicates", false]], "reset_variable() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.reset_variable", false]], "reversed_readline() (mcal.utils.gaus_log_reader.filereader method)": [[3, "mcal.utils.gaus_log_reader.FileReader.reversed_readline", false]], "set_charge_spin() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_charge_spin", false]], "set_coordinates() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_coordinates", false]], "set_function() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_function", false]], "set_resource() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_resource", false]], "set_symbols() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_symbols", false]], "set_title() (mcal.utils.gjf_maker.gjfmaker method)": [[3, "mcal.utils.gjf_maker.GjfMaker.set_title", false]], "symmetryisnotdefinederror": [[3, "mcal.utils.cif_reader.SymmetryIsNotDefinedError", false]], "zvalueisnotmatcherror": [[3, "mcal.utils.cif_reader.ZValueIsNotMatchError", false]]}, "objects": {"": [[1, 0, 0, "-", "mcal"]], "mcal": [[2, 0, 0, "-", "calculations"], [1, 0, 0, "-", "mcal"], [3, 0, 0, "-", "utils"]], "mcal.calculations": [[2, 0, 0, "-", "hopping_mobility_model"], [2, 0, 0, "-", "rcal"]], "mcal.calculations.hopping_mobility_model": [[2, 1, 1, "", "cal_pinv"], [2, 1, 1, "", "demo"], [2, 1, 1, "", "diffusion_coefficient_tensor"], [2, 1, 1, "", "diffusion_coefficient_tensor_MC"], [2, 1, 1, "", "diffusion_coefficient_tensor_ODE"], [2, 1, 1, "", "marcus_rate"], [2, 1, 1, "", "mobility_tensor"], [2, 1, 1, "", "print_tensor"]], "mcal.calculations.rcal": [[2, 2, 1, "", "GausTermError"], [2, 2, 1, "", "OSCTypeError"], [2, 3, 1, "", "Rcal"], [2, 1, 1, "", "main"]], "mcal.calculations.rcal.Rcal": [[2, 4, 1, "", "calc_reorganization"], [2, 4, 1, "", "check_error_term"], [2, 4, 1, "", "check_extension_log"], [2, 4, 1, "", "extract_energy"], [2, 4, 1, "", "print_timestamp"]], "mcal.mcal": [[1, 2, 1, "", "OSCTypeError"], [1, 1, 1, "", "atom_weight"], [1, 1, 1, "", "cal_cen_of_weight"], [1, 1, 1, "", "cal_distance_between_cen_of_weight"], [1, 1, 1, "", "cal_eigenvalue_decomposition"], [1, 1, 1, "", "cal_min_distance"], [1, 1, 1, "", "cal_moment_of_inertia"], [1, 1, 1, "", "check_reorganization_energy_completion"], [1, 1, 1, "", "check_transfer_integral_completion"], [1, 1, 1, "", "create_reorg_gjf"], [1, 1, 1, "", "create_ti_gjf"], [1, 1, 1, "", "main"], [1, 1, 1, "", "print_mobility"], [1, 1, 1, "", "print_reorg_energy"], [1, 1, 1, "", "print_tensor"], [1, 1, 1, "", "print_transfer_integral"], [1, 1, 1, "", "read_pickle"]], "mcal.utils": [[3, 0, 0, "-", "cif_reader"], [3, 0, 0, "-", "gaus_log_reader"], [3, 0, 0, "-", "gjf_maker"]], "mcal.utils.cif_reader": [[3, 3, 1, "", "CifReader"], [3, 2, 1, "", "ElementPropertiesIsNotDefinedError"], [3, 3, 1, "", "FileIO"], [3, 2, 1, "", "SymmetryIsNotDefinedError"], [3, 2, 1, "", "ZValueIsNotMatchError"]], "mcal.utils.cif_reader.CifReader": [[3, 5, 1, "", "ATOMIC_WEIGHTS"], [3, 5, 1, "", "COVALENT_RADII"], [3, 5, 1, "", "ELEMENT_PROP"], [3, 4, 1, "", "calc_cen_of_weight"], [3, 4, 1, "", "convert_cart_to_frac"], [3, 4, 1, "", "convert_frac_to_cart"], [3, 4, 1, "", "expand_mols"], [3, 4, 1, "", "export_unit_cell_file"], [3, 5, 1, "", "parent_dir"], [3, 4, 1, "", "remove_duplicates"]], "mcal.utils.cif_reader.FileIO": [[3, 4, 1, "", "add_adjacency_mat"], [3, 4, 1, "", "add_coordinates"], [3, 4, 1, "", "add_symbols"], [3, 4, 1, "", "export_mol_file"], [3, 4, 1, "", "export_xyz_file"]], "mcal.utils.gaus_log_reader": [[3, 3, 1, "", "FileReader"], [3, 1, 1, "", "check_normal_termination"]], "mcal.utils.gaus_log_reader.FileReader": [[3, 4, 1, "", "close"], [3, 4, 1, "", "reversed_readline"]], "mcal.utils.gjf_maker": [[3, 3, 1, "", "GjfMaker"]], "mcal.utils.gjf_maker.GjfMaker": [[3, 5, 1, "", "ELEMENTS_NUM"], [3, 5, 1, "", "ELEMENT_PROP"], [3, 4, 1, "", "add_link"], [3, 4, 1, "", "add_root"], [3, 4, 1, "", "create_chk_file"], [3, 4, 1, "", "create_rwf_file"], [3, 4, 1, "", "export_gjf"], [3, 4, 1, "", "opt"], [3, 4, 1, "", "output_detail"], [3, 5, 1, "", "parent_dir"], [3, 4, 1, "", "reset_variable"], [3, 4, 1, "", "set_charge_spin"], [3, 4, 1, "", "set_coordinates"], [3, 4, 1, "", "set_function"], [3, 4, 1, "", "set_resource"], [3, 4, 1, "", "set_symbols"], [3, 4, 1, "", "set_title"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "exception", "Python exception"], "3": ["py", "class", "Python class"], "4": ["py", "method", "Python method"], "5": ["py", "attribute", "Python attribute"]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:exception", "3": "py:class", "4": "py:method", "5": "py:attribute"}, "terms": {"": [2, 3], "0": [0, 2, 3], "00": 3, "0000": 3, "0001": 3, "001": 2, "0026": 3, "007": 3, "008": 3, "0080": 3, "01": 3, "011": 3, "0122": 3, "014": 3, "0140": 3, "02": 3, "03": 3, "0300": 3, "04": 3, "0400": 3, "05": [2, 3], "06": [2, 3], "07": 3, "078": 3, "08": 3, "085": 3, "09": 0, "098": 3, "1": [0, 1, 2, 3], "10": [0, 2, 3], "100": [2, 3], "10000": 2, "101": 3, "102": 3, "103": 3, "104": 3, "105": 3, "106": 3, "107": 3, "108": 3, "109": 3, "11": 3, "110": 3, "111": 3, "112": 3, "113": 3, "114": 3, "115": 3, "116": 3, "117": 3, "118": 3, "119": 3, "12": 3, "120": 3, "121": 3, "126": 3, "127": 3, "13": 3, "131": 3, "132": 3, "137": 3, "138": 3, "14": 3, "140": 3, "144": 3, "15": 3, "150": 3, "151": 3, "157": 3, "158": 3, "16": [0, 1, 3], "162": 3, "164": 3, "167": 3, "168": 3, "16gb": [0, 1], "17": 3, "173": 3, "174": 3, "178": 3, "18": 3, "180": 3, "183": 3, "186": 3, "19": 3, "190": 3, "192": 3, "195": 3, "196": 3, "1e": 2, "2": [0, 1, 2, 3], "20": 3, "200": [2, 3], "2000": 3, "2025": [2, 3], "2026": 3, "204": 3, "207": 3, "208": 3, "21": 3, "22": 3, "224": 3, "23": 3, "231": 3, "232": 3, "238": 3, "24": 3, "25": 3, "26": 3, "27": 3, "28": 3, "29": 3, "3": [0, 3], "30": 3, "300": 2, "305": 3, "31": 3, "311g": [0, 1], "31g": [0, 1], "32": [0, 3], "33": 3, "34": 3, "35": 3, "36": 3, "37": 3, "38": 3, "39": 3, "3x3": 2, "3x3x3": [0, 1], "4": [0, 1, 3], "40": [2, 3], "41": 3, "42": 3, "43": 3, "44": 3, "45": 3, "46": 3, "468": 3, "47": 3, "48": 3, "49": 3, "5": 3, "50": 3, "51": 3, "52": 3, "53": 3, "54": 3, "546": 3, "55": 3, "56": 3, "57": 3, "58": 3, "59": 3, "5x5x5": [0, 1], "6": [0, 1, 3], "60": 3, "61": 3, "62": 3, "63": 3, "64": 3, "65": 3, "66": 3, "67": 3, "68": 3, "69": 3, "693": 3, "7": 3, "70": 3, "71": 3, "72": 3, "723": 3, "73": 3, "74": 3, "75": 3, "76": 3, "77": 3, "78": 3, "79": 3, "798": 3, "7x7x7": 0, "8": [0, 1, 3], "80": 3, "81": 3, "8192": 3, "82": 3, "83": 3, "84": 3, "845": 3, "85": 3, "86": 3, "867": 3, "87": 3, "88": 3, "89": 3, "9": [0, 2, 3], "90": 3, "904": 3, "906": 3, "91": 3, "92": 3, "922": 3, "93": 3, "933": 3, "938": 3, "94": 3, "9400": 3, "942": 3, "95": 3, "956": 3, "96": 3, "97": 3, "971": 3, "974": 3, "98": 3, "9800": 3, "982": 3, "99": 3, "996": 3, "998": 3, "999": 3, "A": 3, "As": 3, "At": 3, "Be": 3, "For": [0, 3], "If": 3, "In": 3, "It": 0, "No": 3, "The": [0, 2, 3], "With": 1, "ac": [0, 3], "add": 3, "add_adjacency_mat": [1, 3], "add_coordin": [1, 3], "add_link": [1, 3], "add_root": [1, 3], "add_symbol": [1, 3], "adjac": 3, "adjacency_mat": 3, "after": 0, "ag": 3, "aid": 0, "al": 3, "algorithm": 2, "all": [0, 1, 2], "am": 3, "amount": 0, "ani": [1, 2, 3], "anisotropi": [0, 1], "anoth": 1, "ar": [0, 1, 3], "around": [0, 3], "arrai": [2, 3], "atom": [1, 3], "atom_weight": [1, 4], "atomic_weight": [1, 3], "au": 3, "awai": 3, "axi": 2, "b": [2, 3], "b3lyp": [0, 1], "ba": 3, "base": [1, 2, 3], "basenam": 1, "basi": 0, "basic": 1, "beta": 3, "between": [0, 1], "bh": 3, "bi": 3, "bismuth": 3, "bk": 3, "bond": 3, "bool": [1, 2, 3], "box": 2, "br": 3, "break": 3, "buffer_s": 3, "c": [1, 2, 3], "ca": 3, "cal_cen_of_weight": [1, 4], "cal_distance_between_cen_of_weight": [1, 4], "cal_eigenvalue_decomposit": [1, 4], "cal_min_dist": [1, 4], "cal_moment_of_inertia": [1, 4], "cal_pinv": [1, 2], "calc_cen_of_weight": [1, 3], "calc_reorgan": [1, 2], "calcul": [1, 3, 4], "can": 0, "carlo": [0, 1, 2], "cart_coord": 3, "cartesian": 3, "cd": 3, "ce": 3, "cell": [0, 2, 3], "cellsiz": 1, "center": [0, 1, 3], "central": 0, "cf": 3, "charg": 3, "check": [1, 2, 3], "check_error_term": [1, 2], "check_extension_log": [1, 2], "check_normal_termin": [1, 3], "check_reorganization_energy_complet": [1, 4], "check_transfer_integral_complet": [1, 4], "chemic": 0, "chk": 3, "chk_rwf_name": 3, "cif": [0, 1, 3], "cif_filenam": 0, "cif_path": 3, "cif_path_without_ext": 1, "cif_read": [1, 4], "cifread": [1, 3], "cl": 3, "class": [2, 3], "close": [1, 3], "cm": 3, "cn": 3, "co": 3, "code": 2, "coeffici": 2, "column": 3, "command": 2, "comment": 3, "compar": 1, "complet": 1, "comput": 0, "consid": [0, 1], "consum": 0, "contain": [1, 3], "content": 4, "continu": [0, 1], "convert": 3, "convert_cart_to_frac": [1, 3], "convert_frac_to_cart": [1, 3], "coordin": [1, 3], "coordinates1": 1, "coordinates2": 1, "coords1": 1, "coords2": 1, "correctli": 3, "covalent_radii": [1, 3], "covalent_radiu": 3, "cpu": [1, 3], "cpu_num": 3, "cr": 3, "creat": [0, 1, 3], "create_chk_fil": [1, 3], "create_reorg_gjf": [1, 4], "create_rwf_fil": [1, 3], "create_ti_gjf": [1, 4], "crystal": [0, 1, 3], "cu": 3, "cutoff": 2, "cycl": 3, "d": [0, 1, 2, 3], "db": 3, "decomposit": [1, 2], "default": [0, 1, 2, 3], "defin": 3, "demo": [1, 2], "depend": 0, "detail": [0, 2, 3], "detect": 3, "determin": 0, "deuterium": 3, "dict": [1, 3], "dictionari": [1, 3], "differ": [0, 1], "differenti": [0, 2], "diffus": 2, "diffusion_coefficient_tensor": [1, 2], "diffusion_coefficient_tensor_mc": [1, 2], "diffusion_coefficient_tensor_od": [1, 2], "dimer": 1, "direct": [0, 3], "directori": [1, 3], "disabl": 0, "distanc": [0, 1], "document": 3, "dtype": [1, 2, 3], "dummi": 3, "duplic": 3, "dy": 3, "e": 3, "each": 0, "eigenvalu": [0, 1, 2], "eigenvector": [0, 1], "electron": 0, "element": 3, "element_prop": [1, 3], "elementpropertiesisnotdefinederror": [1, 3], "elements_num": [1, 3], "email": 0, "enabl": 0, "end": 3, "energi": [0, 1, 2], "ensur": 0, "environ": 0, "equat": [0, 2], "er": 3, "error": 2, "etc": 3, "eu": 3, "ev": [1, 2], "exampl": [1, 3], "except": [1, 2, 3], "execut": [0, 2], "exist": [0, 1], "expand": [0, 1, 3], "expand_mol": [1, 3], "expand_rang": 3, "export": 3, "export_gjf": [1, 3], "export_mol_fil": [1, 3], "export_unit_cell_fil": [1, 3], "export_xyz_fil": [1, 3], "extens": [1, 2], "extension_log": 1, "extract": [2, 3], "extract_energi": [1, 2], "f": 3, "fals": [2, 3], "faster": 0, "fe": 3, "fellow": 0, "file": [0, 1, 2, 3], "file_nam": [1, 3], "file_path": 3, "fileio": [1, 3], "fileread": [1, 3], "fl": 3, "flerovium": 3, "float": [1, 2, 3], "float64": [1, 2, 3], "fm": 3, "format": 3, "fr": 3, "frac_coord": 3, "fraction": 3, "from": [0, 1, 2, 3], "fullcal": 1, "function": 3, "g16": 2, "ga": 3, "gau_com": 2, "gaus_log_read": [1, 4], "gaussian": [0, 1, 2, 3], "gaustermerror": [1, 2], "gb": [0, 1, 3], "gd": 3, "ge": 3, "gener": 3, "get": 1, "gillespi": 2, "git": 3, "github": 0, "given": 3, "gjf": [1, 2, 3], "gjf_basenam": 1, "gjf_file": [1, 2], "gjf_maker": [1, 4], "gjfmaker": [1, 3], "grant": 0, "group": 3, "h": [0, 3], "he": 3, "header": 3, "header1": 3, "header2": 3, "helium": 3, "help": 0, "hf": 3, "hg": 3, "high": 1, "hiroyuki": 0, "ho": 3, "homo": 0, "hop": 2, "hop_mcal": 1, "hopping_mobility_model": [1, 4], "hydrogen": 3, "i": [0, 1, 2, 3], "increas": 0, "index": [0, 3], "inertia": [0, 1], "inform": 3, "inner": 3, "input": 2, "int": [1, 2, 3], "integr": [0, 1, 2], "interrupt": 0, "invers": 2, "ion": [1, 2], "ir": 3, "is_output_detail": 2, "j": [2, 3], "jp": 0, "jp25kj0647": 0, "jsp": 0, "k": [2, 3], "kei": 3, "kinet": [0, 1], "koki": 0, "kr": 3, "la": 3, "laboratori": 0, "larg": 0, "larger": 0, "last": 2, "lattic": 2, "lead": 3, "level": 0, "li": 3, "librari": 0, "line": [2, 3], "link": 3, "list": [1, 2, 3], "liter": [1, 2, 3], "lithium": 3, "livermorium": 3, "log": [0, 1, 2, 3], "log_fil": 3, "lr": 3, "lu": 3, "lumo": 0, "lv": 3, "m": 1, "mai": 3, "main": [1, 2, 4], "make": 0, "manag": 3, "marcus_r": [1, 2], "match": 3, "matrix": [2, 3], "matsui": 0, "max_rat": 2, "max_step": 2, "maximum": 2, "mc": [1, 3], "md": 3, "mean": 2, "mem": 1, "mem_num": 3, "mem_unit": 3, "memori": [1, 3], "messag": 1, "method": 1, "mg": 3, "minimum": 1, "mit": 0, "mn": 3, "mo": 3, "mobil": [0, 1, 2], "mobility_tensor": [1, 2], "modul": [0, 4], "mol": 3, "molecul": [0, 2, 3], "molecular": 3, "moment": [0, 1], "monom": 1, "monomer1": 1, "monomer2": 1, "monomolecular": 3, "mont": [0, 1, 2], "more": 0, "moscovium": 3, "msg": [1, 2], "mt": 3, "mu": 1, "must": 0, "n": [0, 1, 2, 3], "na": 3, "name": [1, 2, 3], "nan": 3, "nb": 3, "nd": 3, "ndarrai": [1, 2, 3], "ne": 3, "neg": 2, "neighbor": 1, "neighbor_mol": 1, "nest": 3, "neutral": [1, 2], "newer": 0, "nh": 3, "ni": 3, "none": [1, 2, 3], "normal": [0, 1, 3], "np": [1, 2, 3], "number": [1, 2, 3], "numer": 2, "numpi": [0, 2], "o": 3, "object": [2, 3], "od": [1, 2], "offset": 3, "og": 3, "oganesson": 3, "one": [1, 2, 3], "onli": 2, "only_read": 2, "opt": [1, 3], "opt_ion": [1, 2], "opt_neutr": [1, 2], "optim": 3, "option": [1, 2, 3], "ordinari": [0, 2], "organ": [0, 2], "origin": 3, "osc_typ": [0, 1, 2], "osctypeerror": [1, 2, 4], "otherwis": 3, "outer": 3, "output": [2, 3], "output_detail": [1, 3], "ozawa": 0, "p": [1, 2, 3], "pa": 3, "packag": [0, 4], "page": 0, "pair": 0, "panda": 0, "paramet": [1, 2, 3], "parent_dir": [1, 3], "particl": 2, "path": [0, 1, 3], "pb": 3, "pd": 3, "period": 3, "pickl": 1, "pip": 0, "pkl": [0, 1], "pkl_filenam": 0, "pleas": 0, "pm": 3, "po": 3, "posixpath": 3, "pr": 3, "precis": 1, "print": [1, 2, 3], "print_mobl": [1, 4], "print_reorg_energi": [1, 4], "print_tensor": [1, 2, 4], "print_timestamp": [1, 2], "print_transfer_integr": [1, 4], "process": 0, "produc": 3, "project": 0, "properti": 3, "protactinium": 3, "pseudo": 2, "pt": 3, "pu": 3, "py": [1, 2], "python": [0, 1], "quantum": 0, "r": 1, "ra": 3, "rais": [2, 3], "rang": [0, 1], "rate": 2, "rb": 3, "rcal": [1, 4], "rcond": 2, "re": 3, "read": [1, 2, 3], "read_pickl": [1, 4], "reader": 3, "rel": 3, "releas": 0, "remov": 3, "remove_dupl": [1, 3], "remove_radical_flag": 3, "reorg_energi": 1, "reorgan": [0, 1, 2], "replac": 0, "repres": 3, "research": 0, "reset": 3, "reset_vari": [1, 3], "resourc": 1, "result": 1, "resum": 1, "return": [1, 2, 3], "reversed_readlin": [1, 3], "rf": 3, "rg": 3, "rh": 3, "rn": 3, "roel": 0, "root": 3, "row": 3, "rp": 1, "ru": 3, "run": [0, 1], "rwf": 3, "sampl": 3, "save": [0, 1, 3], "save_dir": [1, 3], "sb": 3, "sc": 3, "se": 3, "search": 0, "see": 0, "semiconductor": [0, 1, 2], "set": [1, 3], "set_charge_spin": [1, 3], "set_coordin": [1, 3], "set_funct": [1, 3], "set_resourc": [1, 3], "set_symbol": [1, 3], "set_titl": [1, 3], "sg": 3, "shape": 3, "should": 2, "si": 3, "significantli": 0, "sim_typ": 1, "simul": [1, 2], "singular": 2, "size": [0, 2], "skip": [1, 2], "skip_cal": 2, "skip_specified_c": 2, "sm": 3, "small": 2, "smaller": 0, "sn": 3, "solut": 2, "sourc": [1, 2, 3], "specifi": [0, 2], "speedup": [0, 1], "spin": 3, "sr": 3, "src": 3, "static": 2, "step": 2, "str": [1, 2, 3], "structur": [0, 3], "subaru": 3, "submodul": 4, "subpackag": 4, "suffici": 0, "supercel": [0, 1], "support": 0, "sure": 0, "symbol": [1, 3], "symbols1": 1, "symbols2": 1, "symmetri": 3, "symmetryisnotdefinederror": [1, 3], "system": 0, "t": [2, 3], "ta": 3, "tb": 3, "tc": 3, "tcal": 0, "te": 3, "temperatur": 2, "tennessin": 3, "tensor": [0, 1, 2], "term": 2, "termin": [0, 1, 2, 3], "th": [2, 3], "thi": [0, 2, 3], "thorium": 3, "ti": 3, "tight": 3, "timestamp": 2, "titl": 3, "tl": 3, "tm": 3, "tol": 3, "toler": 3, "tool": 0, "total": 2, "transfer": [0, 1, 2], "true": [1, 2, 3], "tupl": [1, 2, 3], "two": 1, "txt": 3, "type": [0, 1, 2, 3], "u": [0, 3], "under": 0, "union": 1, "uniqu": [1, 3], "unique_mol": 1, "unit": [0, 3], "univers": 0, "uranium": 3, "us": [0, 1, 2, 3], "usag": 1, "user": 3, "util": [1, 4], "v": 3, "valu": [1, 2, 3], "valueerror": 2, "vari": 0, "variabl": 3, "vdw_radiu": 3, "vector": [1, 2], "w": 3, "wa": [0, 2], "weight": [0, 1, 3], "when": 3, "while": 3, "widen": [0, 1], "within": 3, "without": [0, 1], "work": 0, "x": 3, "xe": 3, "xxx": [0, 1], "xxx_result": [0, 1], "xyz": 3, "y": 3, "yamagata": 0, "yb": 3, "you": 0, "your": 0, "yu": 0, "yz": 0, "z": 3, "zero": 2, "zn": 3, "zr": 3, "zvalueisnotmatcherror": [1, 3]}, "titles": ["mcal Documentation", "mcal package", "mcal.calculations package", "mcal.utils package", "mcal"], "titleterms": {"If": 0, "To": 0, "acknowledg": 0, "api": 0, "argument": 0, "author": 0, "basic": 0, "c": 0, "calcul": [0, 2], "cellsiz": 0, "cif_read": 3, "coeffici": 0, "compar": 0, "content": [1, 2, 3], "control": 0, "cpu": 0, "diffus": 0, "document": 0, "error": 0, "exampl": 0, "featur": 0, "fullcal": 0, "g": 0, "g09": 0, "gaus_log_read": 3, "gjf_maker": 3, "high": 0, "hopping_mobility_model": 2, "indic": 0, "instal": 0, "licens": 0, "m": 0, "manual": 0, "mc": 0, "mcal": [0, 1, 2, 3, 4], "mem": 0, "memori": 0, "method": 0, "midwai": 0, "modul": [1, 2, 3], "note": 0, "number": 0, "od": 0, "option": 0, "output": 0, "overview": 0, "p": 0, "packag": [1, 2, 3], "pickl": 0, "practic": 0, "precis": 0, "r": 0, "rcal": 2, "read": 0, "read_pickl": 0, "reduc": 0, "refer": 0, "requir": 0, "result": 0, "resum": 0, "reus": 0, "rp": 0, "set": 0, "shortag": 0, "standard": 0, "stop": 0, "submodul": [1, 2, 3], "subpackag": 1, "tabl": 0, "time": 0, "troubleshoot": 0, "usag": 0, "util": 3, "verifi": 0}})
|
|
@@ -140,7 +140,7 @@ def main():
|
|
|
140
140
|
cif_path_without_ext = f'{directory}/{filename}'
|
|
141
141
|
|
|
142
142
|
print('----------------------------------------')
|
|
143
|
-
print(' mcal 0.1.
|
|
143
|
+
print(' mcal 0.1.6 (2026/01/29) by Matsui Lab. ')
|
|
144
144
|
print('----------------------------------------')
|
|
145
145
|
|
|
146
146
|
if args.read_pickle:
|
|
@@ -471,8 +471,8 @@ def cal_eigenvalue_decomposition(mobility_tensor: NDArray[np.float64]) -> Tuple[
|
|
|
471
471
|
Tuple[NDArray[np.float64], NDArray[np.float64]]
|
|
472
472
|
Eigenvalue(mobility value) and eigenvector(mobility vector)
|
|
473
473
|
"""
|
|
474
|
-
value, vector = np.linalg.
|
|
475
|
-
return value, vector
|
|
474
|
+
value, vector = np.linalg.eigh(mobility_tensor)
|
|
475
|
+
return value[::-1], vector[:, ::-1]
|
|
476
476
|
|
|
477
477
|
|
|
478
478
|
def cal_min_distance(
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
"""CifReader beta (
|
|
1
|
+
"""CifReader beta (2026/01/29)"""
|
|
2
2
|
import os
|
|
3
3
|
import re
|
|
4
|
+
import warnings
|
|
5
|
+
from collections import deque
|
|
4
6
|
from itertools import product
|
|
5
7
|
from pathlib import Path
|
|
6
8
|
from typing import Dict, List, Literal, Tuple
|
|
7
|
-
import warnings
|
|
8
9
|
|
|
9
10
|
import numpy as np
|
|
10
11
|
import pandas as pd
|
|
@@ -67,13 +68,26 @@ class CifReader:
|
|
|
67
68
|
self._make_adjacency_mat()
|
|
68
69
|
self._split_mols()
|
|
69
70
|
self._put_unit_cell()
|
|
71
|
+
self._unwrap_molecules()
|
|
72
|
+
self._put_unit_cell()
|
|
73
|
+
# Remove duplicates again as they may occur when moving atoms into the unit cell
|
|
70
74
|
self.sym_symbols, self.sym_coords = self.remove_duplicates(self.sym_symbols, self.sym_coords)
|
|
71
75
|
self._make_adjacency_mat()
|
|
72
76
|
self._split_mols()
|
|
73
77
|
self._calc_z_value()
|
|
74
78
|
|
|
75
79
|
if self._ref_z_value != 0 and self.z_value != self._ref_z_value:
|
|
76
|
-
raise ZValueIsNotMatchError(
|
|
80
|
+
raise ZValueIsNotMatchError(
|
|
81
|
+
f'Z value is not match. Z value in cif file is {self._ref_z_value}, but calculated Z value is {self.z_value}.'
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
def _apply_minimum_image(self):
|
|
85
|
+
"""Apply minimum image convention."""
|
|
86
|
+
frac_diff = self.sym_coords[:, np.newaxis, :] - self.sym_coords[np.newaxis, :, :]
|
|
87
|
+
frac_diff = frac_diff - np.round(frac_diff)
|
|
88
|
+
cart_diff = np.dot(frac_diff, self.lattice)
|
|
89
|
+
distance = np.linalg.norm(cart_diff, axis=-1)
|
|
90
|
+
return distance
|
|
77
91
|
|
|
78
92
|
def _calc_lattice(self):
|
|
79
93
|
"""Calculate lattice."""
|
|
@@ -128,7 +142,7 @@ class CifReader:
|
|
|
128
142
|
num_atoms = len(self.sym_symbols)
|
|
129
143
|
self.adjacency_mat = np.zeros((num_atoms, num_atoms), dtype=bool)
|
|
130
144
|
|
|
131
|
-
|
|
145
|
+
distance = self._apply_minimum_image()
|
|
132
146
|
|
|
133
147
|
try:
|
|
134
148
|
covalent_distance = np.array([self.COVALENT_RADII[symbol] for symbol in self.sym_symbols]) \
|
|
@@ -136,7 +150,6 @@ class CifReader:
|
|
|
136
150
|
except KeyError:
|
|
137
151
|
raise ElementPropertiesIsNotDefinedError('Element properties is not defined.')
|
|
138
152
|
|
|
139
|
-
distance = np.linalg.norm(self.cart_coords[:, np.newaxis, :] - self.cart_coords[np.newaxis, :, :], axis=-1)
|
|
140
153
|
self.adjacency_mat[(distance <= covalent_distance * 1.3) & (distance != 0)] = 1
|
|
141
154
|
|
|
142
155
|
def _operate_sym(self) -> None:
|
|
@@ -293,10 +306,11 @@ class CifReader:
|
|
|
293
306
|
if '?' not in tmp_atom_data[atom_data_index['_atom_site_label']]:
|
|
294
307
|
if atom_data_index['_atom_site_type_symbol'] is None:
|
|
295
308
|
symbol_label = tmp_atom_data[atom_data_index['_atom_site_label']]
|
|
296
|
-
symbol = symbol_label
|
|
297
|
-
|
|
298
|
-
symbol = symbol.
|
|
299
|
-
|
|
309
|
+
symbol = re.match(r'[A-Z][a-z]?', symbol_label)
|
|
310
|
+
if symbol:
|
|
311
|
+
symbol = symbol.group(0)
|
|
312
|
+
else:
|
|
313
|
+
raise ValueError(f'Symbol label {symbol_label} is not valid.')
|
|
300
314
|
else:
|
|
301
315
|
symbol_label = tmp_atom_data[atom_data_index['_atom_site_label']]
|
|
302
316
|
symbol = tmp_atom_data[atom_data_index['_atom_site_type_symbol']]
|
|
@@ -310,11 +324,10 @@ class CifReader:
|
|
|
310
324
|
# get symmetry operation information
|
|
311
325
|
elif is_read_sym:
|
|
312
326
|
if "'" in line:
|
|
313
|
-
line = list(map(lambda x: x.strip().replace(' ', ''), line.split(
|
|
314
|
-
self.symmetry_pos.append(line[symmetry_data_index].lower())
|
|
327
|
+
line = list(map(lambda x: x.strip().replace(' ', '').replace("'", ""), line.split()))
|
|
315
328
|
else:
|
|
316
329
|
line = list(map(lambda x: x.strip().replace(' ', ''), line.split()))
|
|
317
|
-
|
|
330
|
+
self.symmetry_pos.append(line[symmetry_data_index].lower())
|
|
318
331
|
|
|
319
332
|
self.symbols = np.array(self.symbols)
|
|
320
333
|
self.coordinates = np.array(self.coordinates)
|
|
@@ -359,6 +372,35 @@ class CifReader:
|
|
|
359
372
|
sub_matrix = self.adjacency_mat[np.ix_(index_group, index_group)]
|
|
360
373
|
self.sub_matrices.append(sub_matrix)
|
|
361
374
|
|
|
375
|
+
def _unwrap_molecules(self):
|
|
376
|
+
"""Unwrap molecules using the adjacency matrix based on the minimum image convention."""
|
|
377
|
+
for atom_group in self.bonded_atoms:
|
|
378
|
+
if len(atom_group) <= 1:
|
|
379
|
+
continue
|
|
380
|
+
|
|
381
|
+
criterion_idx = atom_group[0]
|
|
382
|
+
|
|
383
|
+
# Depth-first search
|
|
384
|
+
visited = {criterion_idx}
|
|
385
|
+
stack = deque([criterion_idx])
|
|
386
|
+
|
|
387
|
+
while stack:
|
|
388
|
+
current_idx = stack.popleft()
|
|
389
|
+
current_coord = self.sym_coords[current_idx]
|
|
390
|
+
|
|
391
|
+
for neighbor_idx in atom_group:
|
|
392
|
+
if neighbor_idx in visited:
|
|
393
|
+
continue
|
|
394
|
+
|
|
395
|
+
if self.adjacency_mat[current_idx, neighbor_idx]:
|
|
396
|
+
# Minimum image convention
|
|
397
|
+
frac_diff = self.sym_coords[neighbor_idx] - current_coord
|
|
398
|
+
frac_diff = frac_diff - np.round(frac_diff)
|
|
399
|
+
self.sym_coords[neighbor_idx] = current_coord + frac_diff
|
|
400
|
+
|
|
401
|
+
visited.add(neighbor_idx)
|
|
402
|
+
stack.append(neighbor_idx)
|
|
403
|
+
|
|
362
404
|
def calc_cen_of_weight(self, coordinates: NDArray[np.float64]) -> NDArray[np.float64]:
|
|
363
405
|
"""Calculate center of weight.
|
|
364
406
|
|
|
@@ -1244,7 +1244,7 @@ wheels = [
|
|
|
1244
1244
|
|
|
1245
1245
|
[[package]]
|
|
1246
1246
|
name = "yu-mcal"
|
|
1247
|
-
version = "0.1.
|
|
1247
|
+
version = "0.1.6"
|
|
1248
1248
|
source = { editable = "." }
|
|
1249
1249
|
dependencies = [
|
|
1250
1250
|
{ name = "numpy", version = "2.0.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" },
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|