Dear Mohammad,
first of all:
Please take into account that I did the modifications to BoltzTraP more
than 4 years ago and didn't use the program since that time.
You really need to check the details by yourself. Do a test calculation
for some simple material - one where you have maybe one band
filled, with quadratic dispersion, where one can calculate everything
also by hand. Furthermore, the program will still give you the
conductivity and such in SI units for the 3D cell - you need to
multiply/divide at some point with the length of the cell in the z
direction.
It took me some time to get things right and I can't find the notes at
the moment as I meanwhile needed to move 2 times.
The modifications:
In the src directory of the BoltzTraP 1.2.5, I modified 2 files,
fermiintegrals.F90 and gmlib2.F90.
The changes are given in the attached fermiintegrals.diff and
gmlib2.diff. Yet, these also include some commented tests I did at this
time.
AGAIN: Please check carefully, I cannot guarantee anything and be sure
that you get the units right (3D compared to 2D).
Read the original BoltzTraP paper!
Regards
Thomas
On 01/03/19 14:41, Ubaid Mohd wrote:
Dear users,
Is there any need to change the any *.F90 file in the BoltzTrap code
to make the code for 2D materials, if yes, which file to be edit for
using the code in 2D materials?
Thanks and regards
/Mohammad Ubaid/
/PhD Research Scholar/
/Department of Physics/
/Jamia Millia Islamia University/
/New Delhi - 110025/
On Thu, Dec 27, 2018 at 10:48 AM Ubaid Mohd <[email protected]
<mailto:[email protected]>> wrote:
Hi sir,
I tried with
" print(nsym)
except:
nsym=1"
after code " i += 1 " in line 115.
But still I am getting the error;
File "./qe2boltz.py", line 117
print(nsym)
^
IndentationError: unindent does not match any outer indentation level
Here is my edited script and nscf output. Please have a look.
Thanks and Regards
/Mohammad Ubaid/
/PhD Research Scholar/
/Department of Physics/
/Jamia Millia Islamia University/
/New Delhi - 110025/
On Wed, Dec 26, 2018 at 5:36 PM Ubaid Mohd <[email protected]
<mailto:[email protected]>> wrote:
I am not able to fix because I don't know python. Here is my
script, so could you please fix that and send the script.
Regards
/Mohammad Ubaid/
/PhD Research Scholar/
/Department of Physics/
/Jamia Millia Islamia University/
/New Delhi - 110025/
On Wed, Dec 26, 2018 at 5:28 PM DongKyu Lee
<[email protected] <mailto:[email protected]>> wrote:
Dear Ubaid Mohd,
The python script can not find symmetry-information when
"nosym = .true.".
It will be fixed by adding code to handle error exception.
I solved the problem as adding
"
try:
print(nsym)
except:
nsym=1
"
after code " i += 1 " in line 115.
Sincerely,
/************************************************************************
Dongkyu Lee**/**Master Candidate
Computational Many-Body Physics Group
Department of Physics and Photon Science
Gwangju Institute of Science and Technology [GIST]
Gwangju 61005, South Korea
Office. +82-62-715-2855
Mobile. +82-10-5000-0016
[email protected] <mailto:[email protected]>
**************************************************************************/
------------------------------
Message: 4
Date: Wed, 26 Dec 2018 13:42:08 +0530
From: Ubaid Mohd <[email protected]
<mailto:[email protected]>>
To: [email protected]
<mailto:[email protected]>
Subject: [QE-users] QE_2_BoltzTrap
Message-ID:
<cacgvgwgbqb7zfv+ihuhehjupvznmz0vc-epovpzgy+xqsea...@mail.gmail.com
<mailto:cacgvgwgbqb7zfv%2bihuhehjupvznmz0vc-epovpzgy%[email protected]>>
Content-Type: text/plain; charset="utf-8"
Dear users,
I am using BoltzTrap for thermoelectric properties. I am
following the
steps like scf and nscf calculation, then using the
script qe2boltz.py to
convert the data for BoltzTrap. Some times script converts
the data without
any error and some times I got this error:
Traceback (most recent call last):
File "/pkg/chem/boltztrap125/util/qe2boltz.py", line 253,
in <module>
sys.exit(main())
File "/pkg/chem/boltztrap125/util/qe2boltz.py", line 130,
in main
for ir in range(nsym):
UnboundLocalError: local variable 'nsym' referenced before
assignment.
I am unable to sort out the error but I can say it may be
due nscf input.
So please guide me how to sort out this error?
Thanks and regards
*Mohammad Ubaid*
*PhD Research Scholar*
*Department of Physics*
*Jamia Millia Islamia University*
*New Delhi - 110025*
_______________________________________________
users mailing list
[email protected]
<mailto:[email protected]>
https://lists.quantum-espresso.org/mailman/listinfo/users
_______________________________________________
users mailing list
[email protected]
https://lists.quantum-espresso.org/mailman/listinfo/users
--
Dr. rer. nat. Thomas Brumme
Wilhelm-Ostwald-Institute for Physical and Theoretical Chemistry
Leipzig University
Phillipp-Rosenthal-Strasse 31
04103 Leipzig
Tel: +49 (0)341 97 36456
email: [email protected]
56a57,58
> !test
> ! write(*,*)'deltaef = ',deltaef
57a60
> ! write(*,*)'deltaef = ',deltaef
81c84,88
<
---
> !TB 2014
> !OPEN(666,FILE='minv_sigxy', STATUS='unknown', FORM='formatted')
> !OPEN(667,FILE='fermifunc', STATUS='unknown', FORM='formatted')
> !write(*,*)'spinorb',spinorbit
> !TB 2014
122a130,135
>
> !TB 2014
> !factor1=fermi(efermi,-1.8*RYDBERG,temp)*spinorbit
> !factor2=dfermide(efermi,-1.8*RYDBERG,temp)*spinorbit
> !WRITE(667,*)efermi/RYDBERG,factor1,factor2
>
204a218,221
> !TB 2014
> !CLOSE(666)
> !CLOSE(667)
> !TB 2014
239c256
< INTEGER :: i,j,k
---
> INTEGER :: i,j,k, tmp
250c267
< REAL(8) :: minv_sigxy(3,3),seebeck(3,3),thermal(3,3),hall(3,3,3)
---
> REAL(8) :: minv_sigxy(2,2),seebeck(3,3),thermal(3,3),hall(3,3,3)
254a272,274
> !TB 2014
> minv_sigxy=ZERO
> !TB 2014
303a324
>
304a326
> ! write(*,*)'test: spinorbit = ',spinorbit,' lifetime = ',lifetime
307,317c329,342
< cond(1:3,1:3) = -cond(1:3,1:3)*deltaef &
< * OHM *METER*SECOND
< nu(1:3,1:3) = -nu(1:3,1:3)*deltaef/temp &
< * METER * SECOND / AMPERE
< kappa(1:3,1:3)=-kappa(1:3,1:3)*deltaef/temp &
< * METER * SECOND / WATT
< sigxyz(1:3,1:3,1:3)=-sigxyz*deltaef &
< * OHM**2 * SECOND**3 * AMPERE / METER
< specheat = specheat*deltaef &
< * MOL / JOULE
< CALL invert_3x3(cond,minv_sigxy,i)
---
> cond(1:3,1:3) = -cond(1:3,1:3)*deltaef &
> * OHM *METER*SECOND
> nu(1:3,1:3) = -nu(1:3,1:3)*deltaef/temp &
> * METER * SECOND / AMPERE
> kappa(1:3,1:3)=-kappa(1:3,1:3)*deltaef/temp &
> * METER * SECOND / WATT
> sigxyz(1:3,1:3,1:3)=-sigxyz*deltaef &
> * OHM**2 * SECOND**3 * AMPERE / METER
> specheat = specheat*deltaef &
> * MOL / JOULE
> !TB 2014: reduce halltensor to 2D
> !changed below invert_3x3 to invert_2x2
> minv_sigxy(1:2,1:2)=cond(1:2,1:2)
> CALL invert_2x2(minv_sigxy,minv_sigxy,i)
321,323c346,350
< DO i=1,3
< DO j=1,3
< DO ialp=1,3
---
> !TB 2014: reduce seebeck to 2D
> ! changed below everything from 1,3 to 1,2
> DO i=1,2
> DO j=1,2
> DO ialp=1,2
330,334c357,366
< DO i=1,3
< DO j=1,3
< DO k=1,3
< DO ialp=1,3
< DO ibet=1,3
---
> !TB 2014: reduce halltensor to 2D
> ! changed below k FROM going from 1 to 3 TO 3
> ! i,j from 1,3 to 1,2
> ! ialp,ibet from 1,3 to 1,2
> !WRITE(666,*)efermi/RYDBERG,minv_sigxy(1:2,1:2), lifetime
> DO i=1,2
> DO j=1,2
> DO k=3,3
> DO ialp=1,2
> DO ibet=1,2
85a86,102
> !TB 2014
> SUBROUTINE invert_2x2(mat1,inv_mat1,idet)
> USE defs
> IMPLICIT NONE
> REAL(8) :: mat1(2,2),inv_mat1(2,2),det,determ1
> INTEGER :: idet
> inv_mat1(1,1)=mat1(2,2)
> inv_mat1(1,2)=-mat1(1,2)
> inv_mat1(2,1)=-mat1(2,1)
> inv_mat1(2,2)=mat1(1,1)
> det=determ1(mat1)
> idet=1
> IF(det < test) idet=0
> inv_mat1(1:2,1:2)=inv_mat1(1:2,1:2)/det
> END SUBROUTINE invert_2x2
> !TB 2014
>
104a122,130
>
> !TB 2014
> REAL(8) FUNCTION determ1(a)
> ! return the determinante of a 2x2 matrix
> IMPLICIT NONE
> REAL(8) :: a(2,2)
> determ1=a(1,1)*a(2,2)-a(1,2)*a(2,1)
> END FUNCTION determ1
> !TB 2014
_______________________________________________
users mailing list
[email protected]
https://lists.quantum-espresso.org/mailman/listinfo/users