Commit 12a4ad96 authored by Daniel Wortmann's avatar Daniel Wortmann

Added symmetry check in MAE-forcetheorem

parent 6730f4ae
......@@ -25,15 +25,25 @@ MODULE m_types_mae
CONTAINS
SUBROUTINE mae_init(this,theta_s,phi_s)
USE m_calculator
USE m_socsym
USE m_types
IMPLICIT NONE
CLASS(t_forcetheo_mae),INTENT(INOUT):: this
TYPE(t_cell),INTENT(IN) :: cell
TYPE(t_sym),INTENT(IN) :: sym
CHARACTER(len=*),INTENT(INOUT) :: theta_s,phi_s
LOGICAL::error(sym%nop)
CALL evaluateList(this%theta,theta_s)
CALL evaluateList(this%phi,phi_s)
IF (SIZE(this%phi).NE.SIZE(this%theta)) CALL &
judft_error("Lists for theta/phi must have the same length in MAE force theorem calculations")
DO n=1,SIZE(this%phi)
CALL soc_sym(sym%nop,sym%mrot,this%theta(n),this%phi(n),cell%amat,error)
IF (ANY(error)) CALL judft_error("Force theory choice of SOC-SQA breaks symmetry")
END DO
ALLOCATE(this%evsum(SIZE(this%phi)))
this%evsum=0
END SUBROUTINE mae_init
......
......@@ -1789,7 +1789,7 @@ input%preconditioning_param = evaluateFirstOnly(xmlGetAttributeValue('/fleurInpu
ALLOCATE(t_forcetheo_mae::forcetheo)
SELECT TYPE(forcetheo)
TYPE IS(t_forcetheo_mae) !this is ok, we just allocated the type...
CALL forcetheo%init(lString,nString)
CALL forcetheo%init(cell,sym,lString,nString)
END SELECT
ENDIF
!spin-spiral dispersion
......
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