kpoints ​
Implementation level ​
Type | Status |
---|---|
CML extraction template | |
HTML5 representation |
Template attributes ​
Attribute | Value |
---|---|
source | QuantumEspresso log |
id | kpoints |
name | kpoints |
pattern | ^\s+number of k points=.* |
endPattern | \s*$\s{1,4}\S+.* |
endPattern2 | \s*$\s*Dense\s*grid.* |
endPattern3 | ~ |
endOffset | 0 |
xml:base | kpoints.xml |
Input ​
number of k points= 4 gaussian smearing, width (Ry)= 0.0200
cart. coord. in units 2pi/alat
k( 1) = ( 0.0000000 0.0000000 0.0000000), wk = 0.2500000
k( 2) = ( 0.0000000 -0.5773503 0.0000000), wk = 0.2500000
k( 3) = ( 0.5000000 -0.2886751 0.0000000), wk = 0.2500000
k( 4) = ( -0.5000000 -0.2886751 0.0000000), wk = 0.2500000
cryst. coord.
k( 1) = ( 0.0000000 0.0000000 0.0000000), wk = 0.2500000
k( 2) = ( 0.0000000 -0.5000000 0.0000000), wk = 0.2500000
k( 3) = ( 0.5000000 -0.5000000 0.0000000), wk = 0.2500000
k( 4) = ( -0.5000000 0.0000000 0.0000000), wk = 0.2500000
Dense grid: 1711295 G-vectors FFT dimensions: ( 120, 120, 320)
Input ​
number of k points= 1
cart. coord. in units 2pi/alat
k( 1) = ( 0.0000000 0.0000000 0.0000000), wk = 2.0000000
Dense grid: 345264 G-vectors FFT dimensions: ( 125, 128, 90)
Output text ​
xml
<comment class="example.output" id="kpoints">
<module cmlx:templateRef="kpoints">
<matrix cols="3" dataType="xsd:double" dictRef="qex:kpointlist.cartesian" rows="4">0.0000000 0.0000000 0.0000000 0.0000000 -0.5773503 0.0000000 0.5000000 -0.2886751 0.0000000 -0.5000000 -0.2886751 0.0000000</matrix>
<matrix cols="3" dataType="xsd:double" dictRef="qex:kpointlist" rows="4">0.0000000 0.0000000 0.0000000 0.0000000 -0.5000000 0.0000000 0.5000000 -0.5000000 0.0000000 -0.5000000 0.0000000 0.0000000</matrix>
<array dataType="xsd:double" dictRef="qex:kpointweight" size="4">0.2500000 0.2500000 0.2500000 0.2500000</array>
</module>
</comment>
Output text ​
xml
<comment class="example.output" id="kpoints2">
<module cmlx:templateRef="kpoints">
<matrix cols="3" dataType="xsd:double" dictRef="qex:kpointlist.cartesian" rows="1">0.0000000 0.0000000 0.0000000</matrix>
</module>
</comment>
Template definition ​
xml
<templateList> <template pattern="\s*cart\.\scoord\.\sin\sunits\s2pi\/alat.*" endPattern="\s*" endPattern2="~"> <record /> <record id="kpoints.cartesian" repeat="*">\s*k\({I,cc:serial}\)\s=\s\({3F,x:coords}\),\s*wk\s*={F,qex:kpointweight}</record>
</template> <template pattern="\s*cryst\.\scoord.*" endPattern="\s*" endPattern2="~"> <record /> <record id="kpoints.crystal" repeat="*">\s*k\({I,cc:serial}\)\s=\s\({3F,x:coords}\),\s*wk\s*={F,qex:kpointweight}</record>
</template>
</templateList>
<transform process="createMatrix" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.cartesian']/cml:list/cml:array" dictRef="qex:kpointlist.cartesian" />
<transform process="createMatrix" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.crystal']/cml:list/cml:array" dictRef="qex:kpointlist" />
<transform process="createArray" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.cartesian']/cml:list/cml:scalar[@dictRef='qex:kpointweight']" />
<transform process="createArray" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.crystal']/cml:list/cml:scalar[@dictRef='qex:kpointweight']" />
<transform process="pullup" xpath=".//cml:matrix" repeat="3" />
<transform process="pullup" xpath=".//cml:array" repeat="3" />
<transform process="delete" xpath=".//cml:scalar[@dictRef='cc:serial']" />
<transform process="delete" xpath=".//cml:scalar[@dictRef='qex:kpointweight']" />
<transform process="delete" xpath=".//cml:list[count(*) = 0]" />
<transform process="delete" xpath=".//cml:list[count(*) = 0]" />
<transform process="delete" xpath=".//cml:module[count(*) = 0]" />
<transform process="delete" xpath=".//cml:array[@dictRef='qex:kpointweight'][position() > 1]" />