Commit 5dac895c authored by S.Rost's avatar S.Rost

unfolding bands, integreation into kpoints.f in a nicer way

parent 1f33ea5a
......@@ -34,42 +34,6 @@ contains
END IF
END IF
IF (banddos%unfoldband) THEN
CALL unfold_band_kpts(banddos,p_cell,cell,p_kpts,kpts)
IF (.NOT.l_kpts) THEN
IF (.NOT.oneD%odd%d1) THEN
IF (input%l_wann) THEN
sym_hlp=sym
sym_hlp%nop=1
sym_hlp%nop2=1
CALL kptgen_hybrid(p_kpts,sym_hlp%invs,noco%l_soc,sym_hlp%nop,sym_hlp%mrot,sym_hlp%tau)
ELSE IF (.FALSE.) THEN !this was used to generate q-points in jij case
sym_hlp=sym
sym_hlp%nop=1
sym_hlp%nop2=1
CALL julia(sym_hlp,p_cell,input,noco,banddos,p_kpts,.FALSE.,.TRUE.)
ELSE IF (kpts%l_gamma.and.(banddos%ndir.eq.0)) THEN
CALL kptgen_hybrid(p_kpts,sym%invs,noco%l_soc,sym%nop,sym%mrot,sym%tau)
ELSE
CALL julia(sym,p_cell,input,noco,banddos,p_kpts,.FALSE.,.TRUE.)
END IF
ELSE
CALL juDFT_error('Error: No kpoint set generation for 1D systems yet!', calledby = 'kpoints')
CALL od_kptsgen (kpts%nkpt)
END IF
END IF
!Rescale weights and kpoints
p_kpts%wtkpt(:) = p_kpts%wtkpt(:) / sum(p_kpts%wtkpt)
p_kpts%bk(:,:) = p_kpts%bk(:,:) / p_kpts%posScale
p_kpts%posScale = 1.0
IF (p_kpts%nkpt3(3).EQ.0) p_kpts%nkpt3(3) = 1
CALL find_supercell_kpts(banddos,p_cell,cell,p_kpts,kpts)
ELSE
IF (.NOT.l_kpts) THEN
IF (.NOT.oneD%odd%d1) THEN
IF (input%l_wann) THEN
......@@ -85,16 +49,20 @@ contains
ELSE IF (kpts%l_gamma.and.(banddos%ndir.eq.0)) THEN
CALL kptgen_hybrid(kpts,sym%invs,noco%l_soc,sym%nop,sym%mrot,sym%tau)
ELSE
CALL julia(sym,cell,input,noco,banddos,kpts,.FALSE.,.TRUE.)
IF (banddos%unfoldband) THEN
CALL unfold_band_kpts(banddos,p_cell,cell,p_kpts,kpts)
CALL julia(sym,p_cell,input,noco,banddos,p_kpts,.FALSE.,.TRUE.)
CALL find_supercell_kpts(banddos,p_cell,cell,p_kpts,kpts)
ELSE
CALL julia(sym,cell,input,noco,banddos,kpts,.FALSE.,.TRUE.)
END IF
END IF
ELSE
CALL juDFT_error('Error: No kpoint set generation for 1D systems yet!', calledby = 'kpoints')
CALL od_kptsgen (kpts%nkpt)
END IF
END IF
!Rescale weights and kpoints
kpts%wtkpt(:) = kpts%wtkpt(:) / sum(kpts%wtkpt)
kpts%bk(:,:) = kpts%bk(:,:) / kpts%posScale
kpts%posScale = 1.0
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment