forked from materialsproject/pymatgen
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pymatgen.electronic_structure.boltztrap.html
961 lines (909 loc) · 61.5 KB
/
pymatgen.electronic_structure.boltztrap.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
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>pymatgen.electronic_structure.boltztrap module — pymatgen 2019.5.1 documentation</title>
<link rel="stylesheet" href="_static/proBlue.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/language_data.js"></script>
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
<link rel="shortcut icon" href="_static/favicon.ico"/>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-33990148-1']);
_gaq.push(['_trackPageview']);
</script>
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">pymatgen 2019.5.1 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="module-pymatgen.electronic_structure.boltztrap">
<span id="pymatgen-electronic-structure-boltztrap-module"></span><h1>pymatgen.electronic_structure.boltztrap module<a class="headerlink" href="#module-pymatgen.electronic_structure.boltztrap" title="Permalink to this headline">¶</a></h1>
<dl class="class">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer">
<em class="property">class </em><code class="descname">BoltztrapAnalyzer</code><span class="sig-paren">(</span><em>gap=None</em>, <em>mu_steps=None</em>, <em>cond=None</em>, <em>seebeck=None</em>, <em>kappa=None</em>, <em>hall=None</em>, <em>doping=None</em>, <em>mu_doping=None</em>, <em>seebeck_doping=None</em>, <em>cond_doping=None</em>, <em>kappa_doping=None</em>, <em>hall_doping=None</em>, <em>intrans=None</em>, <em>dos=None</em>, <em>dos_partial=None</em>, <em>carrier_conc=None</em>, <em>vol=None</em>, <em>warning=None</em>, <em>bz_bands=None</em>, <em>bz_kpoints=None</em>, <em>fermi_surface_data=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer" 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>Class used to store all the data from a boltztrap run</p>
<p>Constructor taking directly all the data generated by Boltztrap. You
won’t probably use it directly but instead use the from_files and
from_dict methods.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>gap</strong> – The gap after interpolation in eV</p></li>
<li><p><strong>mu_steps</strong> – The steps of electron chemical potential (or Fermi
level) in eV.</p></li>
<li><p><strong>cond</strong> – The electronic conductivity tensor divided by a constant
relaxation time (sigma/tau) at different temperature and
fermi levels.
The format is {temperature: [array of 3x3 tensors at each
fermi level in mu_steps]}. The units are 1/(Ohm*m*s).</p></li>
<li><p><strong>seebeck</strong> – The Seebeck tensor at different temperatures and fermi
levels. The format is {temperature: [array of 3x3 tensors at
each fermi level in mu_steps]}. The units are V/K</p></li>
<li><p><strong>kappa</strong> – The electronic thermal conductivity tensor divided by a
constant relaxation time (kappa/tau) at different temperature
and fermi levels. The format is {temperature: [array of 3x3
tensors at each fermi level in mu_steps]}
The units are W/(m*K*s)</p></li>
<li><p><strong>hall</strong> – The hall tensor at different temperature and fermi levels
The format is {temperature: [array of 27 coefficients list at
each fermi level in mu_steps]}
The units are m^3/C</p></li>
<li><p><strong>doping</strong> – The different doping levels that have been given to
Boltztrap. The format is {‘p’:[],’n’:[]} with an array of
doping levels. The units are cm^-3</p></li>
<li><p><strong>mu_doping</strong> – Gives the electron chemical potential (or Fermi level)
for a given set of doping.
Format is {‘p’:{temperature: [fermi levels],’n’:{temperature:
[fermi levels]}}
the fermi level array is ordered according to the doping
levels in doping units for doping are in cm^-3 and for Fermi
level in eV</p></li>
<li><p><strong>seebeck_doping</strong> – The Seebeck tensor at different temperatures and
doping levels. The format is {‘p’: {temperature: [Seebeck
tensors]}, ‘n’:{temperature: [Seebeck tensors]}}
The [Seebeck tensors] array is ordered according to the
doping levels in doping units for doping are in cm^-3 and for
Seebeck in V/K</p></li>
<li><p><strong>cond_doping</strong> – The electronic conductivity tensor divided by a
constant relaxation time (sigma/tau) at different
temperatures and doping levels
The format is {‘p’:{temperature: [conductivity tensors]},
‘n’:{temperature: [conductivity tensors]}}
The [conductivity tensors] array is ordered according to the
doping levels in doping units for doping are in cm^-3 and for
conductivity in 1/(Ohm*m*s)</p></li>
<li><p><strong>kappa_doping</strong> – The thermal conductivity tensor divided by a constant
relaxation time (kappa/tau) at different temperatures and
doping levels.
The format is {‘p’:{temperature: [thermal conductivity
tensors]},’n’:{temperature: [thermal conductivity tensors]}}
The [thermal conductivity tensors] array is ordered according
to the doping levels in doping units for doping are in cm^-3
and for thermal conductivity in W/(m*K*s)</p></li>
<li><p><strong>hall_doping</strong> – The Hall tensor at different temperatures and doping
levels.
The format is {‘p’:{temperature: [Hall tensors]},
‘n’:{temperature: [Hall tensors]}}
The [Hall tensors] array is ordered according to the doping
levels in doping and each Hall tensor is represented by a 27
coefficients list.
The units are m^3/C</p></li>
<li><p><strong>intrans</strong> – a dictionary of inputs e.g. {“scissor”: 0.0}</p></li>
<li><p><strong>carrier_conc</strong> – The concentration of carriers in electron (or hole)
per unit cell</p></li>
<li><p><strong>dos</strong> – The dos computed by Boltztrap given as a pymatgen Dos object</p></li>
<li><p><strong>dos_partial</strong> – Data for the partial DOS projected on sites and
orbitals</p></li>
<li><p><strong>vol</strong> – Volume of the unit cell in angstrom cube (A^3)</p></li>
<li><p><strong>warning</strong> – string if BoltzTraP outputted a warning, else None</p></li>
<li><p><strong>bz_bands</strong> – Data for interpolated bands on a k-point line
(run_type=BANDS)</p></li>
<li><p><strong>bz_kpoints</strong> – k-point in reciprocal coordinates for interpolated
bands (run_type=BANDS)</p></li>
<li><p><strong>fermi_surface_data</strong> – energy values in a 3D grid imported from the
output .cube file.</p></li>
</ul>
</dd>
</dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.as_dict">
<code class="descname">as_dict</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.as_dict"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.as_dict" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.check_acc_bzt_bands">
<em class="property">static </em><code class="descname">check_acc_bzt_bands</code><span class="sig-paren">(</span><em>sbs_bz</em>, <em>sbs_ref</em>, <em>warn_thr=(0.03</em>, <em>0.03)</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.check_acc_bzt_bands"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.check_acc_bzt_bands" title="Permalink to this definition">¶</a></dt>
<dd><p>Compare sbs_bz BandStructureSymmLine calculated with boltztrap with
the sbs_ref BandStructureSymmLine as reference (from MP for
instance), computing correlation and energy difference for eight bands
around the gap (semiconductors) or fermi level (metals).
warn_thr is a threshold to get a warning in the accuracy of Boltztap
interpolated bands.
Return a dictionary with these keys:
- “N”: the index of the band compared; inside each there are:</p>
<blockquote>
<div><ul class="simple">
<li><p>“Corr”: correlation coefficient for the 8 compared bands</p></li>
<li><p>“Dist”: energy distance for the 8 compared bands</p></li>
<li><p>“branch_name”: energy distance for that branch</p></li>
</ul>
</div></blockquote>
<ul class="simple">
<li><p>“avg_corr”: average of correlation coefficient over the 8 bands</p></li>
<li><p>“avg_dist”: average of energy distance over the 8 bands</p></li>
<li><p>“nb_list”: list of indexes of the 8 compared bands</p></li>
<li><dl class="simple">
<dt>“acc_thr”: list of two float corresponing to the two warning</dt><dd><p>thresholds in input</p>
</dd>
</dl>
</li>
<li><dl class="simple">
<dt>“acc_err”: list of two bools:</dt><dd><p>True if the avg_corr > warn_thr[0], and
True if the avg_dist > warn_thr[1]</p>
</dd>
</dl>
</li>
</ul>
<p>See also compare_sym_bands function doc</p>
</dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.from_dict">
<em class="property">static </em><code class="descname">from_dict</code><span class="sig-paren">(</span><em>data</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.from_dict"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.from_dict" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.from_files">
<em class="property">static </em><code class="descname">from_files</code><span class="sig-paren">(</span><em>path_dir</em>, <em>dos_spin=1</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.from_files"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.from_files" title="Permalink to this definition">¶</a></dt>
<dd><p>get a BoltztrapAnalyzer object from a set of files</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path_dir</strong> – directory where the boltztrap files are</p></li>
<li><p><strong>dos_spin</strong> – in DOS mode, set to 1 for spin up and -1 for spin down</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>a BoltztrapAnalyzer object</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_average_eff_mass">
<code class="descname">get_average_eff_mass</code><span class="sig-paren">(</span><em>output='eigs'</em>, <em>doping_levels=True</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_average_eff_mass"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_average_eff_mass" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives the average effective mass tensor. We call it average because
it takes into account all the bands
and regions in the Brillouin zone. This is different than the standard
textbook effective mass which relates
often to only one (parabolic) band.
The average effective mass tensor is defined as the integrated
average of the second derivative of E(k)
This effective mass tensor takes into account:
-non-parabolicity
-multiple extrema
-multiple bands</p>
<p>For more information about it. See:</p>
<p>Hautier, G., Miglio, A., Waroquiers, D., Rignanese, G., & Gonze,
X. (2014).
How Does Chemistry Influence Electron Effective Mass in Oxides?
A High-Throughput Computational Analysis. Chemistry of Materials,
26(19), 5447–5458. doi:10.1021/cm404079a</p>
<p>or</p>
<p>Hautier, G., Miglio, A., Ceder, G., Rignanese, G.-M., & Gonze,
X. (2013).
Identification and design principles of low hole effective mass
p-type transparent conducting oxides.
Nature Communications, 4, 2292. doi:10.1038/ncomms3292</p>
<p>Depending on the value of output, we have either the full 3x3
effective mass tensor,
its 3 eigenvalues or an average</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> (<em>string</em>) – ‘eigs’ for eigenvalues, ‘tensor’ for the full</p></li>
<li><p><strong>and 'average' for an average</strong> (<em>tensor</em>) – </p></li>
<li><p><strong>doping_levels</strong> (<em>boolean</em>) – True for the results to be given at</p></li>
<li><p><strong>doping levels</strong><strong>, </strong><strong>False for results</strong> (<em>different</em>) – </p></li>
<li><p><strong>different electron chemical potentials</strong> (<em>at</em>) – </p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>{temp:[]},’n’:{temp:[]}}
with an array of effective mass tensor, eigenvalues of average
value (depending on output) for each temperature and for each
doping level.
The ‘p’ links to hole effective mass tensor and ‘n’ to electron
effective mass tensor.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>If doping_levels=True,a dictionary {‘p’</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_carrier_concentration">
<code class="descname">get_carrier_concentration</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_carrier_concentration"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_carrier_concentration" title="Permalink to this definition">¶</a></dt>
<dd><p>gives the carrier concentration (in cm^-3)</p>
<dl class="simple">
<dt>Returns</dt><dd><p>a dictionary {temp:[]} with an array of carrier concentration
(in cm^-3) at each temperature
The array relates to each step of electron chemical potential</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_complete_dos">
<code class="descname">get_complete_dos</code><span class="sig-paren">(</span><em>structure</em>, <em>analyzer_for_second_spin=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_complete_dos"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_complete_dos" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives a CompleteDos object with the DOS from the interpolated
projected band structure
:param the structure:
:type the structure: necessary to identify sites for projection
:param analyzer_for_second_spin must be specified to have a:
:param CompleteDos with both Spin components:</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>a CompleteDos object</p>
</dd>
</dl>
<p>Example of use in case of spin polarized case:</p>
<blockquote>
<div><p>BoltztrapRunner(bs=bs,nelec=10,run_type=”DOS”,spin=1).run(path_dir=’dos_up/’)
an_up=BoltztrapAnalyzer.from_files(“dos_up/boltztrap/”,dos_spin=1)</p>
<p>BoltztrapRunner(bs=bs,nelec=10,run_type=”DOS”,spin=-1).run(path_dir=’dos_dw/’)
an_dw=BoltztrapAnalyzer.from_files(“dos_dw/boltztrap/”,dos_spin=-1)</p>
<p>cdos=an_up.get_complete_dos(bs.structure,an_dw)</p>
</div></blockquote>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_complexity_factor">
<code class="descname">get_complexity_factor</code><span class="sig-paren">(</span><em>output='average'</em>, <em>temp=300</em>, <em>doping_levels=False</em>, <em>Lambda=0.5</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_complexity_factor"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_complexity_factor" title="Permalink to this definition">¶</a></dt>
<dd><p>Fermi surface complexity factor respect to calculated as explained in Ref.
Gibbs, Z. M. et al., Effective mass and fermi surface complexity factor
from ab initio band structure calculations.
npj Computational Materials 3, 8 (2017).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> – ‘average’ returns the complexity factor calculated using the average
of the three diagonal components of the seebeck and conductivity tensors.
‘tensor’ returns the complexity factor respect to the three
diagonal components of seebeck and conductivity tensors.</p></li>
<li><p><strong>doping_levels</strong> – False means that the complexity factor is calculated
for every value of the chemical potential
True means that the complexity factor is calculated
for every value of the doping levels for both n and p types</p></li>
<li><p><strong>temp</strong> – temperature of calculated seebeck and conductivity.</p></li>
<li><p><strong>Lambda</strong> – fitting parameter used to model the scattering (0.5 means constant
relaxation time).</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>a list of values for the complexity factor w.r.t the chemical potential,
if doping_levels is set at False;
a dict with n an p keys that contain a list of values for the complexity factor
w.r.t the doping levels, if doping_levels is set at True;
if ‘tensor’ is selected, each element of the lists is a list containing
the three components of the complexity factor.</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_conductivity">
<code class="descname">get_conductivity</code><span class="sig-paren">(</span><em>output='eigs'</em>, <em>doping_levels=True</em>, <em>relaxation_time=1e-14</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_conductivity"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_conductivity" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives the conductivity (1/Ohm*m) in either a full 3x3 tensor
form, as 3 eigenvalues, or as the average value
(trace/3.0) If doping_levels=True, the results are given at
different p and n doping
levels (given by self.doping), otherwise it is given as a series
of electron chemical potential values</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> (<em>string</em>) – the type of output. ‘tensor’ give the full</p></li>
<li><p><strong>tensor</strong><strong>, </strong><strong>'eigs' its 3 eigenvalues and</strong> (<em>3x3</em>) – </p></li>
<li><p><strong>the average of the three eigenvalues</strong> (<em>'average'</em>) – </p></li>
<li><p><strong>doping_levels</strong> (<em>boolean</em>) – True for the results to be given at</p></li>
<li><p><strong>doping levels</strong><strong>, </strong><strong>False for results</strong> (<em>different</em>) – </p></li>
<li><p><strong>different electron chemical potentials</strong> (<em>at</em>) – </p></li>
<li><p><strong>relaxation_time</strong> (<em>float</em>) – constant relaxation time in secs</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><p>{‘p’:[],’n’:[]}}.
The ‘p’ links to conductivity
at p-type doping and ‘n’ to the conductivity at n-type
doping. Otherwise,
returns a {temp:[]} dictionary. The result contains either
the sorted three eigenvalues of the symmetric
conductivity tensor (format=’eigs’) or a full tensor (3x3
array) (output=’tensor’) or as an average
(output=’average’).
The result includes a given constant relaxation time</p>
<p>units are 1/Ohm*m</p>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>If doping_levels=True, a dictionary {temp</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_extreme">
<code class="descname">get_extreme</code><span class="sig-paren">(</span><em>target_prop</em>, <em>maximize=True</em>, <em>min_temp=None</em>, <em>max_temp=None</em>, <em>min_doping=None</em>, <em>max_doping=None</em>, <em>isotropy_tolerance=0.05</em>, <em>use_average=True</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_extreme"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_extreme" title="Permalink to this definition">¶</a></dt>
<dd><p>This method takes in eigenvalues over a range of carriers,
temperatures, and doping levels, and tells you what is the “best”
value that can be achieved for the given target_property. Note that
this method searches the doping dict only, not the full mu dict.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>target_prop</strong> – target property, i.e. “seebeck”, “power factor”,
“conductivity”, “kappa”, or “zt”</p></li>
<li><p><strong>maximize</strong> – True to maximize, False to minimize (e.g. kappa)</p></li>
<li><p><strong>min_temp</strong> – minimum temperature allowed</p></li>
<li><p><strong>max_temp</strong> – maximum temperature allowed</p></li>
<li><p><strong>min_doping</strong> – minimum doping allowed (e.g., 1E18)</p></li>
<li><p><strong>max_doping</strong> – maximum doping allowed (e.g., 1E20)</p></li>
<li><p><strong>isotropy_tolerance</strong> – tolerance for isotropic (0.05 = 5%)</p></li>
<li><p><strong>use_average</strong> – True for avg of eigenval, False for max eigenval</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>{“value”, “temperature”, “doping”, “isotropic”}</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>A dictionary with keys {“p”, “n”, “best”} with sub-keys</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_hall_carrier_concentration">
<code class="descname">get_hall_carrier_concentration</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_hall_carrier_concentration"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_hall_carrier_concentration" title="Permalink to this definition">¶</a></dt>
<dd><p>gives the Hall carrier concentration (in cm^-3). This is the trace of
the Hall tensor (see Boltztrap source code) Hall carrier concentration
are not always exactly the same than carrier concentration.</p>
<dl class="simple">
<dt>Returns</dt><dd><p>a dictionary {temp:[]} with an array of Hall carrier concentration
(in cm^-3) at each temperature The array relates to each step of
electron chemical potential</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_mu_bounds">
<code class="descname">get_mu_bounds</code><span class="sig-paren">(</span><em>temp=300</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_mu_bounds"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_mu_bounds" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_power_factor">
<code class="descname">get_power_factor</code><span class="sig-paren">(</span><em>output='eigs'</em>, <em>doping_levels=True</em>, <em>relaxation_time=1e-14</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_power_factor"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_power_factor" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives the power factor (Seebeck^2 * conductivity) in units
microW/(m*K^2) in either a full 3x3 tensor form,
as 3 eigenvalues, or as the average value (trace/3.0) If
doping_levels=True, the results are given at
different p and n doping levels (given by self.doping), otherwise it
is given as a series of
electron chemical potential values</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> (<em>string</em>) – the type of output. ‘tensor’ give the full 3x3</p></li>
<li><p><strong>'eigs' its 3 eigenvalues and</strong> (<em>tensor</em><em>,</em>) – </p></li>
<li><p><strong>the average of the three eigenvalues</strong> (<em>'average'</em>) – </p></li>
<li><p><strong>doping_levels</strong> (<em>boolean</em>) – True for the results to be given at</p></li>
<li><p><strong>doping levels</strong><strong>, </strong><strong>False for results</strong> (<em>different</em>) – </p></li>
<li><p><strong>different electron chemical potentials</strong> (<em>at</em>) – </p></li>
<li><p><strong>relaxation_time</strong> (<em>float</em>) – constant relaxation time in secs</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><p>{‘p’:[],’n’:[]}}. The
‘p’ links to power factor
at p-type doping and ‘n’ to the conductivity at n-type doping.
Otherwise,
returns a {temp:[]} dictionary. The result contains either the
sorted three eigenvalues of the symmetric
power factor tensor (format=’eigs’) or a full tensor (3x3 array) (
output=’tensor’) or as an average
(output=’average’).
The result includes a given constant relaxation time</p>
<p>units are microW/(m K^2)</p>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>If doping_levels=True, a dictionnary {temp</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_seebeck">
<code class="descname">get_seebeck</code><span class="sig-paren">(</span><em>output='eigs'</em>, <em>doping_levels=True</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_seebeck"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_seebeck" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives the seebeck coefficient (microV/K) in either a
full 3x3 tensor form, as 3 eigenvalues, or as the average value
(trace/3.0) If doping_levels=True, the results are given at
different p and n doping
levels (given by self.doping), otherwise it is given as a series
of electron chemical potential values</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> (<em>string</em>) – the type of output. ‘tensor’ give the full</p></li>
<li><p><strong>tensor</strong><strong>, </strong><strong>'eigs' its 3 eigenvalues and</strong> (<em>3x3</em>) – </p></li>
<li><p><strong>the average of the three eigenvalues</strong> (<em>'average'</em>) – </p></li>
<li><p><strong>doping_levels</strong> (<em>boolean</em>) – True for the results to be given at</p></li>
<li><p><strong>doping levels</strong><strong>, </strong><strong>False for results</strong> (<em>different</em>) – </p></li>
<li><p><strong>different electron chemical potentials</strong> (<em>at</em>) – </p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><p>{‘p’:[],’n’:[]}}.
The ‘p’ links to Seebeck at p-type doping
and ‘n’ to the Seebeck at n-type doping. Otherwise, returns a
{temp:[]} dictionary
The result contains either the sorted three eigenvalues of
the symmetric
Seebeck tensor (output=’eigs’) or a full tensor (3x3 array) (
output=’tensor’) or as an average
(output=’average’).</p>
<p>units are microV/K</p>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>If doping_levels=True, a dictionary {temp</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_seebeck_eff_mass">
<code class="descname">get_seebeck_eff_mass</code><span class="sig-paren">(</span><em>output='average'</em>, <em>temp=300</em>, <em>doping_levels=False</em>, <em>Lambda=0.5</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_seebeck_eff_mass"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_seebeck_eff_mass" title="Permalink to this definition">¶</a></dt>
<dd><p>Seebeck effective mass calculated as explained in Ref.
Gibbs, Z. M. et al., Effective mass and fermi surface complexity factor
from ab initio band structure calculations.
npj Computational Materials 3, 8 (2017).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> – ‘average’ returns the seebeck effective mass calculated using
the average of the three diagonal components of the seebeck tensor.
‘tensor’ returns the seebeck effective mass respect to the three
diagonal components of the seebeck tensor.</p></li>
<li><p><strong>doping_levels</strong> – False means that the seebeck effective mass is calculated
for every value of the chemical potential
True means that the seebeck effective mass is calculated
for every value of the doping levels for both n and p types</p></li>
<li><p><strong>temp</strong> – temperature of calculated seebeck.</p></li>
<li><p><strong>Lambda</strong> – fitting parameter used to model the scattering (0.5 means constant
relaxation time).</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>a list of values for the seebeck effective mass w.r.t the chemical potential,
if doping_levels is set at False;
a dict with n an p keys that contain a list of values for the seebeck effective
mass w.r.t the doping levels, if doping_levels is set at True;
if ‘tensor’ is selected, each element of the lists is a list containing
the three components of the seebeck effective mass.</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_symm_bands">
<code class="descname">get_symm_bands</code><span class="sig-paren">(</span><em>structure</em>, <em>efermi</em>, <em>kpt_line=None</em>, <em>labels_dict=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_symm_bands"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_symm_bands" title="Permalink to this definition">¶</a></dt>
<dd><p>Function useful to read bands from Boltztrap output and get a
BandStructureSymmLine object comparable with that one from a DFT
calculation (if the same kpt_line is provided). Default kpt_line
and labels_dict is the standard path of high symmetry k-point for
the specified structure. They could be extracted from the
BandStructureSymmLine object that you want to compare with. efermi
variable must be specified to create the BandStructureSymmLine
object (usually it comes from DFT or Boltztrap calc)</p>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_thermal_conductivity">
<code class="descname">get_thermal_conductivity</code><span class="sig-paren">(</span><em>output='eigs'</em>, <em>doping_levels=True</em>, <em>k_el=True</em>, <em>relaxation_time=1e-14</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_thermal_conductivity"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_thermal_conductivity" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives the electronic part of the thermal conductivity in either a
full 3x3 tensor form,
as 3 eigenvalues, or as the average value (trace/3.0) If
doping_levels=True, the results are given at
different p and n doping levels (given by self.doping), otherwise it
is given as a series of
electron chemical potential values</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> (<em>string</em>) – the type of output. ‘tensor’ give the full 3x3</p></li>
<li><p><strong>'eigs' its 3 eigenvalues and</strong> (<em>tensor</em><em>,</em>) – </p></li>
<li><p><strong>the average of the three eigenvalues</strong> (<em>'average'</em>) – </p></li>
<li><p><strong>doping_levels</strong> (<em>boolean</em>) – True for the results to be given at</p></li>
<li><p><strong>doping levels</strong><strong>, </strong><strong>False for results</strong> (<em>different</em>) – </p></li>
<li><p><strong>different electron chemical potentials</strong> (<em>at</em>) – </p></li>
<li><p><strong>k_el</strong> (<em>boolean</em>) – True for k_0-PF*T, False for k_0</p></li>
<li><p><strong>relaxation_time</strong> (<em>float</em>) – constant relaxation time in secs</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><p>{‘p’:[],’n’:[]}}. The
‘p’ links to thermal conductivity
at p-type doping and ‘n’ to the thermal conductivity at n-type
doping. Otherwise,
returns a {temp:[]} dictionary. The result contains either the
sorted three eigenvalues of the symmetric
conductivity tensor (format=’eigs’) or a full tensor (3x3 array) (
output=’tensor’) or as an average
(output=’average’).
The result includes a given constant relaxation time</p>
<p>units are W/mK</p>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>If doping_levels=True, a dictionary {temp</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_zt">
<code class="descname">get_zt</code><span class="sig-paren">(</span><em>output='eigs'</em>, <em>doping_levels=True</em>, <em>relaxation_time=1e-14</em>, <em>kl=1.0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.get_zt"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.get_zt" title="Permalink to this definition">¶</a></dt>
<dd><p>Gives the ZT coefficient (S^2*cond*T/thermal cond) in either a full
3x3 tensor form,
as 3 eigenvalues, or as the average value (trace/3.0) If
doping_levels=True, the results are given at
different p and n doping levels (given by self.doping), otherwise it
is given as a series of
electron chemical potential values. We assume a constant relaxation
time and a constant
lattice thermal conductivity</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>output</strong> (<em>string</em>) – the type of output. ‘tensor’ give the full 3x3</p></li>
<li><p><strong>'eigs' its 3 eigenvalues and</strong> (<em>tensor</em><em>,</em>) – </p></li>
<li><p><strong>the average of the three eigenvalues</strong> (<em>'average'</em>) – </p></li>
<li><p><strong>doping_levels</strong> (<em>boolean</em>) – True for the results to be given at</p></li>
<li><p><strong>doping levels</strong><strong>, </strong><strong>False for results</strong> (<em>different</em>) – </p></li>
<li><p><strong>different electron chemical potentials</strong> (<em>at</em>) – </p></li>
<li><p><strong>relaxation_time</strong> (<em>float</em>) – constant relaxation time in secs</p></li>
<li><p><strong>k_l</strong> (<em>float</em>) – lattice thermal cond in W/(m*K)</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>{‘p’:[],’n’:[]}}. The
‘p’ links to ZT
at p-type doping and ‘n’ to the ZT at n-type doping. Otherwise,
returns a {temp:[]} dictionary. The result contains either the
sorted three eigenvalues of the symmetric
ZT tensor (format=’eigs’) or a full tensor (3x3 array) (
output=’tensor’) or as an average
(output=’average’).
The result includes a given constant relaxation time and lattice
thermal conductivity</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>If doping_levels=True, a dictionary {temp</p>
</dd>
</dl>
</dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_cond_and_hall">
<em class="property">static </em><code class="descname">parse_cond_and_hall</code><span class="sig-paren">(</span><em>path_dir</em>, <em>doping_levels=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.parse_cond_and_hall"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_cond_and_hall" title="Permalink to this definition">¶</a></dt>
<dd><p>Parses the conductivity and Hall tensors
:param path_dir: Path containing .condtens / .halltens files
:param doping_levels: ([float]) - doping lvls, parse outtrans to get this</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>mu_steps, cond, seebeck, kappa, hall, pn_doping_levels,
mu_doping, seebeck_doping, cond_doping, kappa_doping,
hall_doping, carrier_conc</p>
</dd>
</dl>
</dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_intrans">
<em class="property">static </em><code class="descname">parse_intrans</code><span class="sig-paren">(</span><em>path_dir</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.parse_intrans"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_intrans" title="Permalink to this definition">¶</a></dt>
<dd><p>Parses boltztrap.intrans mainly to extract the value of scissor applied to the bands or some other inputs
:param path_dir: (str) dir containing the boltztrap.intrans file</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>a dictionary containing various inputs that had been used in the Boltztrap run.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>intrans (dict)</p>
</dd>
</dl>
</dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_outputtrans">
<em class="property">static </em><code class="descname">parse_outputtrans</code><span class="sig-paren">(</span><em>path_dir</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.parse_outputtrans"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_outputtrans" title="Permalink to this definition">¶</a></dt>
<dd><p>Parses .outputtrans file</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>path_dir</strong> – dir containing boltztrap.outputtrans</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>tuple - (run_type, warning, efermi, gap, doping_levels)</p>
</dd>
</dl>
</dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_struct">
<em class="property">static </em><code class="descname">parse_struct</code><span class="sig-paren">(</span><em>path_dir</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.parse_struct"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_struct" title="Permalink to this definition">¶</a></dt>
<dd><p>Parses boltztrap.struct file (only the volume)
:param path_dir: (str) dir containing the boltztrap.struct file</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>(float) volume</p>
</dd>
</dl>
</dd></dl>
<dl class="staticmethod">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_transdos">
<em class="property">static </em><code class="descname">parse_transdos</code><span class="sig-paren">(</span><em>path_dir</em>, <em>efermi</em>, <em>dos_spin=1</em>, <em>trim_dos=False</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapAnalyzer.parse_transdos"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapAnalyzer.parse_transdos" title="Permalink to this definition">¶</a></dt>
<dd><p>Parses .transdos (total DOS) and .transdos_x_y (partial DOS) files
:param path_dir: (str) dir containing DOS files
:param efermi: (float) Fermi energy
:param dos_spin: (int) -1 for spin down, +1 for spin up
:param trim_dos: (bool) whether to post-process / trim DOS</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>tuple - (DOS, dict of partial DOS)</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="exception">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapError">
<em class="property">exception </em><code class="descname">BoltztrapError</code><span class="sig-paren">(</span><em>msg</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapError"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Exception</span></code></p>
<p>Exception class for boltztrap.
Raised when the boltztrap gives an error</p>
</dd></dl>
<dl class="class">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner">
<em class="property">class </em><code class="descname">BoltztrapRunner</code><span class="sig-paren">(</span><em>bs</em>, <em>nelec</em>, <em>dos_type='HISTO'</em>, <em>energy_grid=0.005</em>, <em>lpfac=10</em>, <em>run_type='BOLTZ'</em>, <em>band_nb=None</em>, <em>tauref=0</em>, <em>tauexp=0</em>, <em>tauen=0</em>, <em>soc=False</em>, <em>doping=None</em>, <em>energy_span_around_fermi=1.5</em>, <em>scissor=0.0</em>, <em>kpt_line=None</em>, <em>spin=None</em>, <em>cond_band=False</em>, <em>tmax=1300</em>, <em>tgrid=50</em>, <em>symprec=0.001</em>, <em>cb_cut=10</em>, <em>timeout=7200</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">monty.json.MSONable</span></code></p>
<p>This class is used to run Boltztrap on a band structure object.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bs</strong> – A band structure object</p></li>
<li><p><strong>nelec</strong> – the number of electrons</p></li>
<li><p><strong>dos_type</strong> – two options for the band structure integration: “HISTO”
(histogram) or “TETRA” using the tetrahedon method. TETRA
typically gives better results (especially for DOSes)
but takes more time</p></li>
<li><p><strong>energy_grid</strong> – the energy steps used for the integration (eV)</p></li>
<li><p><strong>lpfac</strong> – the number of interpolation points in the real space. By
default 10 gives 10 time more points in the real space than
the number of kpoints given in reciprocal space</p></li>
<li><p><strong>run_type</strong> – type of boltztrap usage. by default
- BOLTZ: (default) compute transport coefficients
- BANDS: interpolate all bands contained in the energy range
specified in energy_span_around_fermi variable, along specified
k-points
- DOS: compute total and partial dos (custom BoltzTraP code
needed!)
- FERMI: compute fermi surface or more correctly to
get certain bands interpolated</p></li>
<li><p><strong>band_nb</strong> – indicates a band number. Used for Fermi Surface interpolation
(run_type=”FERMI”)</p></li>
<li><p><strong>spin</strong> – specific spin component (1: up, -1: down) of the band selected
in FERMI mode (mandatory).</p></li>
<li><p><strong>cond_band</strong> – if a conduction band is specified in FERMI mode,
set this variable as True</p></li>
<li><p><strong>tauref</strong> – reference relaxation time. Only set to a value different than
zero if we want to model beyond the constant relaxation time.</p></li>
<li><p><strong>tauexp</strong> – exponent for the energy in the non-constant relaxation time
approach</p></li>
<li><p><strong>tauen</strong> – reference energy for the non-constant relaxation time approach</p></li>
<li><p><strong>soc</strong> – results from spin-orbit coupling (soc) computations give
typically non-polarized (no spin up or down) results but single
electron occupations. If the band structure comes from a soc
computation, you should set soc to True (default False)</p></li>
<li><p><strong>doping</strong> – the fixed doping levels you want to compute. Boltztrap provides
both transport values depending on electron chemical potential
(fermi energy) and for a series of fixed carrier
concentrations. By default, this is set to 1e16 to 1e22 in
increments of factors of 10.</p></li>
<li><p><strong>energy_span_around_fermi</strong> – usually the interpolation is not needed on the entire energy
range but on a specific range around the fermi level.
This energy gives this range in eV. by default it is 1.5 eV.
If DOS or BANDS type are selected, this range is automatically
set to cover the entire energy range.</p></li>
<li><p><strong>scissor</strong> – scissor to apply to the band gap (eV). This applies a scissor
operation moving the band edges without changing the band
shape. This is useful to correct the often underestimated band
gap in DFT. Default is 0.0 (no scissor)</p></li>
<li><p><strong>kpt_line</strong> – list of fractional coordinates of kpoints as arrays or list of
Kpoint objects for BANDS mode calculation (standard path of
high symmetry k-points is automatically set as default)</p></li>
<li><p><strong>tmax</strong> – Maximum temperature (K) for calculation (default=1300)</p></li>
<li><p><strong>tgrid</strong> – Temperature interval for calculation (default=50)</p></li>
<li><p><strong>symprec</strong> – 1e-3 is the default in pymatgen. If the kmesh has been
generated using a different symprec, it has to be specified
to avoid a “factorization error” in BoltzTraP calculation.
If a kmesh that spans the whole Brillouin zone has been used,
or to disable all the symmetries, set symprec to None.</p></li>
<li><p><strong>cb_cut</strong> – by default 10% of the highest conduction bands are
removed because they are often not accurate.
Tune cb_cut to change the percentage (0-100) of bands
that are removed.</p></li>
<li><p><strong>timeout</strong> – overall time limit (in seconds): mainly to avoid infinite
loop when trying to find Fermi levels.</p></li>
</ul>
</dd>
</dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.as_dict">
<code class="descname">as_dict</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.as_dict"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.as_dict" title="Permalink to this definition">¶</a></dt>
<dd><p>A JSON serializable dict representation of an object.</p>
</dd></dl>
<dl class="attribute">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.bs">
<code class="descname">bs</code><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.bs" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.nelec">
<code class="descname">nelec</code><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.nelec" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.run">
<code class="descname">run</code><span class="sig-paren">(</span><em>path_dir=None</em>, <em>convergence=True</em>, <em>write_input=True</em>, <em>clear_dir=False</em>, <em>max_lpfac=150</em>, <em>min_egrid=5e-05</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.run"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.run" title="Permalink to this definition">¶</a></dt>
<dd><p>Write inputs (optional), run BoltzTraP, and ensure
convergence (optional)
:param path_dir: directory in which to run BoltzTraP
:type path_dir: str
:param convergence: whether to check convergence and make</p>
<blockquote>
<div><p>corrections if needed</p>
</div></blockquote>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>write_input</strong> – (bool) whether to write input files before the run
(required for convergence mode)</p></li>
<li><p><strong>clear_dir</strong> – (bool) whether to remove all files in the path_dir
before starting</p></li>
<li><p><strong>max_lpfac</strong> – (float) maximum lpfac value to try before reducing egrid
in convergence mode</p></li>
<li><p><strong>min_egrid</strong> – (float) minimum egrid value to try before giving up in
convergence mode</p></li>
</ul>
</dd>
</dl>
<p>Returns:</p>
</dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_def">
<code class="descname">write_def</code><span class="sig-paren">(</span><em>output_file</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.write_def"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_def" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_energy">
<code class="descname">write_energy</code><span class="sig-paren">(</span><em>output_file</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.write_energy"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_energy" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_input">
<code class="descname">write_input</code><span class="sig-paren">(</span><em>output_dir</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.write_input"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_input" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_intrans">
<code class="descname">write_intrans</code><span class="sig-paren">(</span><em>output_file</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.write_intrans"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_intrans" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_proj">
<code class="descname">write_proj</code><span class="sig-paren">(</span><em>output_file_proj</em>, <em>output_file_def</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.write_proj"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_proj" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_struct">
<code class="descname">write_struct</code><span class="sig-paren">(</span><em>output_file</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#BoltztrapRunner.write_struct"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.BoltztrapRunner.write_struct" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="function">
<dt id="pymatgen.electronic_structure.boltztrap.compare_sym_bands">
<code class="descname">compare_sym_bands</code><span class="sig-paren">(</span><em>bands_obj</em>, <em>bands_ref_obj</em>, <em>nb=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#compare_sym_bands"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.compare_sym_bands" title="Permalink to this definition">¶</a></dt>
<dd><p>Compute the mean of correlation between bzt and vasp bandstructure on
sym line, for all bands and locally (for each branches) the difference
squared (%) if nb is specified.</p>
</dd></dl>
<dl class="function">
<dt id="pymatgen.electronic_structure.boltztrap.eta_from_seebeck">
<code class="descname">eta_from_seebeck</code><span class="sig-paren">(</span><em>seeb</em>, <em>Lambda</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#eta_from_seebeck"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.eta_from_seebeck" title="Permalink to this definition">¶</a></dt>
<dd><p>It takes a value of seebeck and adjusts the analytic seebeck until it’s equal
Returns: eta where the two seebeck coefficients are equal
(reduced chemical potential)</p>
</dd></dl>
<dl class="function">
<dt id="pymatgen.electronic_structure.boltztrap.read_cube_file">
<code class="descname">read_cube_file</code><span class="sig-paren">(</span><em>filename</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#read_cube_file"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.read_cube_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>
<dl class="function">
<dt id="pymatgen.electronic_structure.boltztrap.seebeck_eff_mass_from_carr">
<code class="descname">seebeck_eff_mass_from_carr</code><span class="sig-paren">(</span><em>eta</em>, <em>n</em>, <em>T</em>, <em>Lambda</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#seebeck_eff_mass_from_carr"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.seebeck_eff_mass_from_carr" title="Permalink to this definition">¶</a></dt>
<dd><p>Calculate seebeck effective mass at a certain carrier concentration
eta in kB*T units, n in cm-3, T in K, returns mass in m0 units</p>
</dd></dl>
<dl class="function">
<dt id="pymatgen.electronic_structure.boltztrap.seebeck_eff_mass_from_seebeck_carr">
<code class="descname">seebeck_eff_mass_from_seebeck_carr</code><span class="sig-paren">(</span><em>seeb</em>, <em>n</em>, <em>T</em>, <em>Lambda</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#seebeck_eff_mass_from_seebeck_carr"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.seebeck_eff_mass_from_seebeck_carr" title="Permalink to this definition">¶</a></dt>
<dd><p>Find the chemical potential where analytic and calculated seebeck are identical
and then calculate the seebeck effective mass at that chemical potential and
a certain carrier concentration n</p>
</dd></dl>
<dl class="function">
<dt id="pymatgen.electronic_structure.boltztrap.seebeck_spb">
<code class="descname">seebeck_spb</code><span class="sig-paren">(</span><em>eta</em>, <em>Lambda=0.5</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/electronic_structure/boltztrap.html#seebeck_spb"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.electronic_structure.boltztrap.seebeck_spb" title="Permalink to this definition">¶</a></dt>
<dd><p>Seebeck analytic formula in the single parabolic model</p>
</dd></dl>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="_sources/pymatgen.electronic_structure.boltztrap.rst.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
</form>
</div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">pymatgen 2019.5.1 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
© Copyright 2011, Pymatgen Development Team.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.0.1.
</div>
<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>