-
Notifications
You must be signed in to change notification settings - Fork 835
/
pymatgen.analysis.path_finder.html
474 lines (344 loc) · 27.4 KB
/
pymatgen.analysis.path_finder.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>pymatgen.analysis.path_finder module — pymatgen 2021.1.28 documentation</title>
<link rel="canonical" href="https://pymatgen.orgpymatgen.analysis.path_finder.html"/>
<script type="text/javascript" src="_static/js/modernizr.min.js"></script>
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/language_data.js"></script>
<script async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/css/custom.css" type="text/css" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="pymatgen.analysis.phase_diagram module" href="pymatgen.analysis.phase_diagram.html" />
<link rel="prev" title="pymatgen.analysis.nmr module" href="pymatgen.analysis.nmr.html" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-33990148-1']);
_gaq.push(['_trackPageview']);
</script>
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" style="background: linear-gradient(0deg, rgba(23,63,162,1) 0%, rgba(0,70,192,1) 100%)" >
<a href="index.html" class="icon icon-home"> pymatgen
</a>
<div class="version">
2021.1.28
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li>
<li class="toctree-l1"><a class="reference internal" href="change_log.html">Change log</a></li>
<li class="toctree-l1"><a class="reference internal" href="usage.html">Usage</a></li>
<li class="toctree-l1"><a class="reference internal" href="team.html">Development Team</a></li>
<li class="toctree-l1"><a class="reference internal" href="references.html">References</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="modules.html">API Docs</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="pymatgen.html">pymatgen package</a><ul class="current">
<li class="toctree-l3 current"><a class="reference internal" href="pymatgen.html#subpackages">Subpackages</a><ul class="current">
<li class="toctree-l4"><a class="reference internal" href="pymatgen.alchemy.html">pymatgen.alchemy package</a></li>
<li class="toctree-l4 current"><a class="reference internal" href="pymatgen.analysis.html">pymatgen.analysis package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.apps.html">pymatgen.apps package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.cli.html">pymatgen.cli package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.command_line.html">pymatgen.command_line package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.core.html">pymatgen.core package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.electronic_structure.html">pymatgen.electronic_structure package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.entries.html">pymatgen.entries package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.ext.html">pymatgen.ext package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.io.html">pymatgen.io package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.optimization.html">pymatgen.optimization package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.phonon.html">pymatgen.phonon package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.plugins.html">pymatgen.plugins package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.symmetry.html">pymatgen.symmetry package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.transformations.html">pymatgen.transformations package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.util.html">pymatgen.util package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pymatgen.vis.html">pymatgen.vis package</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="pymatgen.html#submodules">Submodules</a></li>
<li class="toctree-l3"><a class="reference internal" href="pymatgen.html#module-pymatgen">Module contents</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">pymatgen</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content style-external-links">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> »</li>
<li><a href="modules.html">pymatgen</a> »</li>
<li><a href="pymatgen.html">pymatgen package</a> »</li>
<li><a href="pymatgen.analysis.html">pymatgen.analysis package</a> »</li>
<li>pymatgen.analysis.path_finder module</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/materialsproject/pymatgen/blob/master/docs_rst/pymatgen.analysis.path_finder.rst" class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="module-pymatgen.analysis.path_finder">
<span id="pymatgen-analysis-path-finder-module"></span><h1>pymatgen.analysis.path_finder module<a class="headerlink" href="#module-pymatgen.analysis.path_finder" title="Permalink to this headline">¶</a></h1>
<p>This module finds diffusion paths through a structure based on a given
potential field.</p>
<p>If you use PathFinder algorithm for your research, please consider citing the
following work:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Ziqin</span> <span class="n">Rong</span><span class="p">,</span> <span class="n">Daniil</span> <span class="n">Kitchaev</span><span class="p">,</span> <span class="n">Pieremanuele</span> <span class="n">Canepa</span><span class="p">,</span> <span class="n">Wenxuan</span> <span class="n">Huang</span><span class="p">,</span> <span class="n">Gerbrand</span>
<span class="n">Ceder</span><span class="p">,</span> <span class="n">The</span> <span class="n">Journal</span> <span class="n">of</span> <span class="n">Chemical</span> <span class="n">Physics</span> <span class="mi">145</span> <span class="p">(</span><span class="mi">7</span><span class="p">),</span> <span class="mi">074112</span>
</pre></div>
</div>
<dl class="py class">
<dt id="pymatgen.analysis.path_finder.ChgcarPotential">
<em class="property">class </em><code class="sig-name descname">ChgcarPotential</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">chgcar</span></em>, <em class="sig-param"><span class="n">smear</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">normalize</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L436-L456"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.ChgcarPotential" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pymatgen.analysis.path_finder.StaticPotential" title="pymatgen.analysis.path_finder.StaticPotential"><code class="xref py py-class docutils literal notranslate"><span class="pre">pymatgen.analysis.path_finder.StaticPotential</span></code></a></p>
<p>Implements a potential field based on the charge density output from VASP.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>chgcar</strong> – Chgcar object based on a VASP run of the structure of
interest (Chgcar.from_file(“CHGCAR”))</p></li>
<li><p><strong>smear</strong> – Whether or not to apply a Gaussian smearing to the
potential</p></li>
<li><p><strong>normalize</strong> – Whether or not to normalize the potential to range
from 0 to 1</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py class">
<dt id="pymatgen.analysis.path_finder.FreeVolumePotential">
<em class="property">class </em><code class="sig-name descname">FreeVolumePotential</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">struct</span></em>, <em class="sig-param"><span class="n">dim</span></em>, <em class="sig-param"><span class="n">smear</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">normalize</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L459-L496"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.FreeVolumePotential" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pymatgen.analysis.path_finder.StaticPotential" title="pymatgen.analysis.path_finder.StaticPotential"><code class="xref py py-class docutils literal notranslate"><span class="pre">pymatgen.analysis.path_finder.StaticPotential</span></code></a></p>
<p>Implements a potential field based on geometric distances from atoms in the
structure - basically, the potential
is lower at points farther away from any atoms in the structure.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>struct</strong> – Unit cell on which to base the potential</p></li>
<li><p><strong>dim</strong> – Grid size for the potential</p></li>
<li><p><strong>smear</strong> – Whether or not to apply a Gaussian smearing to the
potential</p></li>
<li><p><strong>normalize</strong> – Whether or not to normalize the potential to range
from 0 to 1</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py class">
<dt id="pymatgen.analysis.path_finder.MixedPotential">
<em class="property">class </em><code class="sig-name descname">MixedPotential</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">potentials</span></em>, <em class="sig-param"><span class="n">coefficients</span></em>, <em class="sig-param"><span class="n">smear</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">normalize</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L499-L521"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.MixedPotential" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pymatgen.analysis.path_finder.StaticPotential" title="pymatgen.analysis.path_finder.StaticPotential"><code class="xref py py-class docutils literal notranslate"><span class="pre">pymatgen.analysis.path_finder.StaticPotential</span></code></a></p>
<p>Implements a potential that is a weighted sum of some other potentials</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>potentials</strong> – List of objects extending the StaticPotential superclass</p></li>
<li><p><strong>coefficients</strong> – Mixing weights for the elements of the potentials list</p></li>
<li><p><strong>smear</strong> – Whether or not to apply a Gaussian smearing to the potential</p></li>
<li><p><strong>normalize</strong> – Whether or not to normalize the potential to range from
0 to 1</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py class">
<dt id="pymatgen.analysis.path_finder.NEBPathfinder">
<em class="property">class </em><code class="sig-name descname">NEBPathfinder</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">start_struct</span></em>, <em class="sig-param"><span class="n">end_struct</span></em>, <em class="sig-param"><span class="n">relax_sites</span></em>, <em class="sig-param"><span class="n">v</span></em>, <em class="sig-param"><span class="n">n_images</span><span class="o">=</span><span class="default_value">20</span></em>, <em class="sig-param"><span class="n">mid_struct</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L36-L324"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.NEBPathfinder" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>General pathfinder for interpolating between two structures, where the
interpolating path is calculated with the elastic band method with
respect to the given static potential for sites whose indices are given
in relax_sites, and is linear otherwise.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>end_struct</strong> (<em>start_struct</em><em>,</em>) – Endpoint structures to interpolate</p></li>
<li><p><strong>relax_sites</strong> – List of site indices whose interpolation paths should
be relaxed</p></li>
<li><p><strong>v</strong> – Static potential field to use for the elastic band relaxation</p></li>
<li><p><strong>n_images</strong> – Number of interpolation images to generate</p></li>
<li><p><strong>mid_struct</strong> – (optional) additional structure between the start and end structures to help</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.NEBPathfinder.images">
<em class="property">property </em><code class="sig-name descname">images</code><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.NEBPathfinder.images" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a list of structures interpolating between the start and
endpoint structures.</p>
</dd></dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.NEBPathfinder.interpolate">
<code class="sig-name descname">interpolate</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L65-L114"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.NEBPathfinder.interpolate" title="Permalink to this definition">¶</a></dt>
<dd><p>Finds a set of n_images from self.s1 to self.s2, where all sites except
for the ones given in relax_sites, the interpolation is linear (as in
pymatgen.core.structure.interpolate), and for the site indices given
in relax_sites, the path is relaxed by the elastic band method within
the static potential V.</p>
<p>If a mid point is defined we will interpolate from s1–> mid –>s2
The final number of images will still be n_images.</p>
</dd></dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.NEBPathfinder.plot_images">
<code class="sig-name descname">plot_images</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">outfile</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L124-L143"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.NEBPathfinder.plot_images" title="Permalink to this definition">¶</a></dt>
<dd><p>Generates a POSCAR with the calculated diffusion path with respect to the first endpoint.
:param outfile: Output file for the POSCAR</p>
</dd></dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.NEBPathfinder.string_relax">
<em class="property">static </em><code class="sig-name descname">string_relax</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">start</span></em>, <em class="sig-param"><span class="n">end</span></em>, <em class="sig-param"><span class="n">V</span></em>, <em class="sig-param"><span class="n">n_images</span><span class="o">=</span><span class="default_value">25</span></em>, <em class="sig-param"><span class="n">dr</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">h</span><span class="o">=</span><span class="default_value">3.0</span></em>, <em class="sig-param"><span class="n">k</span><span class="o">=</span><span class="default_value">0.17</span></em>, <em class="sig-param"><span class="n">min_iter</span><span class="o">=</span><span class="default_value">100</span></em>, <em class="sig-param"><span class="n">max_iter</span><span class="o">=</span><span class="default_value">10000</span></em>, <em class="sig-param"><span class="n">max_tol</span><span class="o">=</span><span class="default_value">5e-06</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L145-L295"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.NEBPathfinder.string_relax" title="Permalink to this definition">¶</a></dt>
<dd><p>Implements path relaxation via the elastic band method. In general, the
method is to define a path by a set of points (images) connected with
bands with some elasticity constant k. The images then relax along the
forces found in the potential field V, counterbalanced by the elastic
response of the elastic band. In general the endpoints of the band can
be allowed to relax also to their local minima, but in this calculation
they are kept fixed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>end</strong> (<em>start</em><em>,</em>) – Endpoints of the path calculation given in discrete
coordinates with respect to the grid in V</p></li>
<li><p><strong>V</strong> – potential field through which to calculate the path</p></li>
<li><p><strong>n_images</strong> – number of images used to define the path. In general
anywhere from 20 to 40 seems to be good.</p></li>
<li><p><strong>dr</strong> – Conversion ratio from discrete coordinates to real coordinates
for each of the three coordinate vectors</p></li>
<li><p><strong>h</strong> – Step size for the relaxation. h = 0.1 works reliably, but is
slow. h=10 diverges with large gradients but for the types of
gradients seen in CHGCARs, works pretty reliably</p></li>
<li><p><strong>k</strong> – Elastic constant for the band (in real units, not discrete)</p></li>
<li><p><strong>max_iter</strong> (<em>min_iter</em><em>,</em>) – Number of optimization steps the string will
take before exiting (even if unconverged)</p></li>
<li><p><strong>max_tol</strong> – Convergence threshold such that if the string moves by
less than max_tol in a step, and at least min_iter steps have
passed, the algorithm will terminate. Depends strongly on the
size of the gradients in V, but 5e-6 works reasonably well for
CHGCARs.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt id="pymatgen.analysis.path_finder.StaticPotential">
<em class="property">class </em><code class="sig-name descname">StaticPotential</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">struct</span></em>, <em class="sig-param"><span class="n">pot</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L327-L433"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.StaticPotential" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>Defines a general static potential for diffusion calculations. Implements
grid-rescaling and smearing for the potential grid. Also provides a
function to normalize the potential from 0 to 1 (recommended).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>struct</strong> – atomic structure of the potential</p></li>
<li><p><strong>pot</strong> – volumentric data to be used as a potential</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.StaticPotential.gaussian_smear">
<code class="sig-name descname">gaussian_smear</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">r</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L388-L433"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.StaticPotential.gaussian_smear" title="Permalink to this definition">¶</a></dt>
<dd><p>Applies an isotropic Gaussian smear of width (standard deviation) r to
the potential field. This is necessary to avoid finding paths through
narrow minima or nodes that may exist in the field (although any
potential or charge distribution generated from GGA should be
relatively smooth anyway). The smearing obeys periodic
boundary conditions at the edges of the cell.</p>
<dl class="simple">
<dt>:param r - Smearing width in cartesian coordinates, in the same units</dt><dd><p>as the structure lattice vectors</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.StaticPotential.get_v">
<code class="sig-name descname">get_v</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L342-L346"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.StaticPotential.get_v" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the potential</p>
</dd></dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.StaticPotential.normalize">
<code class="sig-name descname">normalize</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L348-L353"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.StaticPotential.normalize" title="Permalink to this definition">¶</a></dt>
<dd><p>Sets the potential range 0 to 1.</p>
</dd></dl>
<dl class="py method">
<dt id="pymatgen.analysis.path_finder.StaticPotential.rescale_field">
<code class="sig-name descname">rescale_field</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">new_dim</span></em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/v2021.1.28/pymatgen/analysis/path_finder.py#L355-L386"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.analysis.path_finder.StaticPotential.rescale_field" title="Permalink to this definition">¶</a></dt>
<dd><p>Changes the discretization of the potential field by linear
interpolation. This is necessary if the potential field
obtained from DFT is strangely skewed, or is too fine or coarse. Obeys
periodic boundary conditions at the edges of
the cell. Alternatively useful for mixing potentials that originally
are on different grids.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>new_dim</strong> – tuple giving the numpy shape of the new grid</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</div>
</div>
</div>
<footer>
<hr/>
<div role="contentinfo">
<p>
© Copyright 2011, Pymatgen Development Team
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<div class="footer">This page uses <a href="http://analytics.google.com/">
Google Analytics</a> to collect statistics. You can disable it by blocking
the JavaScript coming from www.google-analytics.com.
<script type="text/javascript">
(function() {
var ga = document.createElement('script');
ga.src = ('https:' == document.location.protocol ?
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
ga.setAttribute('async', 'true');
document.documentElement.firstChild.appendChild(ga);
})();
</script>
</div>
</body>
</html>