Commit e2d4123a authored by Gregor Michalicek's avatar Gregor Michalicek

Improve EELS inp.xml input

parent 98a4c075
......@@ -1803,12 +1803,21 @@ SUBROUTINE r_inpXML(&
coreSpecInput%atomType = evaluateFirstIntOnly(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@atomType'))
coreSpecInput%lx = evaluateFirstIntOnly(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@lmax'))
coreSpecInput%edge = TRIM(ADJUSTL(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@edgeType')))
coreSpecInput%edgeidx(:) = 0
coreSpecInput%edgeidx(1) = evaluateFirstIntOnly(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@edgeIndex'))
coreSpecInput%emn = evaluateFirstOnly(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@eMin'))
coreSpecInput%emx = evaluateFirstOnly(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@eMax'))
tempInt = evaluateFirstIntOnly(xmlGetAttributeValue(TRIM(ADJUSTL(xPathA))//'/@numPoints'))
coreSpecInput%ein = (coreSpecInput%emx - coreSpecInput%emn) / (tempInt - 1.0)
xPathB = TRIM(ADJUSTL(xPathA))//'/edgeIndices'
xPathB = TRIM(ADJUSTL(xPathB))//'/text()'
valueString = xmlGetAttributeValue(TRIM(ADJUSTL(xPathB)))
numTokens = countStringTokens(valueString)
coreSpecInput%edgeidx(:) = 0
IF(numTokens.GT.SIZE(coreSpecInput%edgeidx)) THEN
CALL juDFT_error('More EELS edge indices provided than allowed.',calledby='r_inpXML')
END IF
DO i = 1, MAX(numTokens,SIZE(coreSpecInput%edgeidx))
coreSpecInput%edgeidx(i) = evaluateFirstIntOnly(popFirstStringToken(valueString))
END DO
END IF
! Read in optional Wannier functions parameters
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -147,6 +147,8 @@
<plotting iplot="F" score="F" plplot="F"/>
<chargeDensitySlicing numkpt="0" minEigenval=".00000000" maxEigenval=".00000000" nnne="0" pallst="F"/>
<specialOutput eonly="F" bmt="F"/>
<coreSpectrum eKin="300.0" atomType="1" lmax="2" edgeType="L" edgeIndex="3" eMin="-1.0" eMax="15.0" numPoints="17" verbose="T" />
<coreSpectrum eKin="300.0" atomType="1" lmax="2" edgeType="L" eMin="-1.0" eMax="15.0" numPoints="17" verbose="T">
<edgeIndices> 3 </edgeIndices>
</coreSpectrum>
</output>
</fleurInput>
......@@ -147,6 +147,8 @@
<plotting iplot="F" score="F" plplot="F"/>
<chargeDensitySlicing numkpt="0" minEigenval=".00000000" maxEigenval=".00000000" nnne="0" pallst="F"/>
<specialOutput eonly="F" bmt="F"/>
<coreSpectrum eKin="300.0" atomType="1" lmax="2" edgeType="L" edgeIndex="3" eMin="-1.0" eMax="15.0" numPoints="17" verbose="F" />
<coreSpectrum eKin="300.0" atomType="1" lmax="2" edgeType="L" eMin="-1.0" eMax="15.0" numPoints="17" verbose="F">
<edgeIndices> 3 </edgeIndices>
</coreSpectrum>
</output>
</fleurInput>
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