Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
fleur
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
52
Issues
52
List
Boards
Labels
Service Desk
Milestones
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
fleur
fleur
Commits
7b713720
Commit
7b713720
authored
May 17, 2018
by
Gregor Michalicek
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bugfix for results%neig in SOC case
parent
1dd7aea6
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
32 additions
and
21 deletions
+32
-21
cdn/eparas.f90
cdn/eparas.f90
+1
-4
eigen_soc/eigenso.F90
eigen_soc/eigenso.F90
+30
-16
main/fleur.F90
main/fleur.F90
+1
-1
No files found.
cdn/eparas.f90
View file @
7b713720
...
...
@@ -60,16 +60,13 @@ CONTAINS
!
IF
((
ikpt
.LE.
mpi
%
isize
)
.AND..NOT.
l_evp
)
THEN
IF
(
l_mcd
)
THEN
mcd
%
mcd
(:,:,:,
ikpt
,
jsp
)
=
0.0
ENDIF
regCharges
%
ener
(:,:,
jsp
)
=
0.0
regCharges
%
sqal
(:,:,
jsp
)
=
0.0
regCharges
%
enerlo
(:,:,
jsp
)
=
0.0
regCharges
%
sqlo
(:,:,
jsp
)
=
0.0
dos
%
qal
(:,:,:,
ikpt
,
jsp
)
=
0.0
END
IF
!
!---> l-decomposed density for each occupied state
!
! DO 140 i = (skip_t+1),ne ! this I need for all states
...
...
eigen_soc/eigenso.F90
View file @
7b713720
...
...
@@ -21,7 +21,7 @@ MODULE m_eigenso
!
CONTAINS
SUBROUTINE
eigenso
(
eig_id
,
mpi
,
DIMENSION
,
stars
,
vacuum
,
atoms
,
sphhar
,&
obsolete
,
sym
,
cell
,
noco
,
input
,
kpts
,
oneD
,
vTot
,
enpara
)
obsolete
,
sym
,
cell
,
noco
,
input
,
kpts
,
oneD
,
vTot
,
enpara
,
results
)
USE
m_eig66_io
,
ONLY
:
read_eig
,
write_eig
USE
m_spnorb
...
...
@@ -33,21 +33,22 @@ CONTAINS
#endif
IMPLICIT
NONE
TYPE
(
t_mpi
),
INTENT
(
IN
)
::
mpi
TYPE
(
t_dimension
),
INTENT
(
IN
)
::
DIMENSION
TYPE
(
t_oneD
),
INTENT
(
IN
)
::
oneD
TYPE
(
t_obsolete
),
INTENT
(
IN
)
::
obsolete
TYPE
(
t_input
),
INTENT
(
IN
)
::
input
TYPE
(
t_vacuum
),
INTENT
(
IN
)
::
vacuum
TYPE
(
t_noco
),
INTENT
(
IN
)
::
noco
TYPE
(
t_sym
),
INTENT
(
IN
)
::
sym
TYPE
(
t_stars
),
INTENT
(
IN
)
::
stars
TYPE
(
t_cell
),
INTENT
(
IN
)
::
cell
TYPE
(
t_kpts
),
INTENT
(
IN
)
::
kpts
TYPE
(
t_sphhar
),
INTENT
(
IN
)
::
sphhar
TYPE
(
t_atoms
),
INTENT
(
IN
)
::
atoms
TYPE
(
t_potden
),
INTENT
(
IN
)
::
vTot
TYPE
(
t_enpara
),
INTENT
(
IN
)
::
enpara
TYPE
(
t_mpi
),
INTENT
(
IN
)
::
mpi
TYPE
(
t_dimension
),
INTENT
(
IN
)
::
DIMENSION
TYPE
(
t_oneD
),
INTENT
(
IN
)
::
oneD
TYPE
(
t_obsolete
),
INTENT
(
IN
)
::
obsolete
TYPE
(
t_input
),
INTENT
(
IN
)
::
input
TYPE
(
t_vacuum
),
INTENT
(
IN
)
::
vacuum
TYPE
(
t_noco
),
INTENT
(
IN
)
::
noco
TYPE
(
t_sym
),
INTENT
(
IN
)
::
sym
TYPE
(
t_stars
),
INTENT
(
IN
)
::
stars
TYPE
(
t_cell
),
INTENT
(
IN
)
::
cell
TYPE
(
t_kpts
),
INTENT
(
IN
)
::
kpts
TYPE
(
t_sphhar
),
INTENT
(
IN
)
::
sphhar
TYPE
(
t_atoms
),
INTENT
(
IN
)
::
atoms
TYPE
(
t_potden
),
INTENT
(
IN
)
::
vTot
TYPE
(
t_enpara
),
INTENT
(
IN
)
::
enpara
TYPE
(
t_results
),
INTENT
(
INOUT
)
::
results
! ..
! .. Scalar Arguments ..
INTEGER
,
INTENT
(
IN
)
::
eig_id
...
...
@@ -155,6 +156,19 @@ CONTAINS
ENDIF
! (input%eonly) ELSE
deallocate
(
zso
)
ENDDO
! DO nk
! Sorry for the following strange workaround to fill the results%neig and results%eig arrays.
! At some point someone should have a closer look at how the eigenvalues are
! distributed and fill the arrays without using the eigenvalue-IO.
DO
jspin
=
1
,
wannierspin
DO
nk
=
1
,
kpts
%
nkpt
CALL
read_eig
(
eig_id
,
nk
,
jspin
,
results
%
neig
(
nk
,
jspin
),
results
%
eig
(:,
nk
,
jspin
))
#ifdef CPP_MPI
CALL
MPI_BARRIER
(
mpi
%
MPI_COMM
,
ierr
)
#endif
END
DO
END
DO
RETURN
END
SUBROUTINE
eigenso
END
MODULE
m_eigenso
main/fleur.F90
View file @
7b713720
...
...
@@ -278,7 +278,7 @@ CONTAINS
! WRITE(6,fmt='(A)') 'Starting 2nd variation ...'
IF
(
noco
%
l_soc
.AND..NOT.
noco
%
l_noco
)
&
CALL
eigenso
(
eig_id
,
mpi
,
DIMENSION
,
stars
,
vacuum
,
atoms
,
sphhar
,&
obsolete
,
sym
,
cell
,
noco
,
input
,
kpts
,
oneD
,
vTot
,
enpara
)
obsolete
,
sym
,
cell
,
noco
,
input
,
kpts
,
oneD
,
vTot
,
enpara
,
results
)
CALL
timestop
(
"generation of hamiltonian and diagonalization (total)"
)
#ifdef CPP_MPI
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment