kpoints

Implementation level

Type

Status

CML extraction template

image1

HTML5 representation

image2

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

1<comment class="example.output" id="kpoints">
2        <module cmlx:templateRef="kpoints">
3            <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>
4            <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>
5            <array dataType="xsd:double" dictRef="qex:kpointweight" size="4">0.2500000 0.2500000 0.2500000 0.2500000</array>
6        </module>
7    </comment>

Output text

1<comment class="example.output" id="kpoints2">
2        <module cmlx:templateRef="kpoints">
3            <matrix cols="3" dataType="xsd:double" dictRef="qex:kpointlist.cartesian" rows="1">0.0000000 0.0000000 0.0000000</matrix>
4         </module>
5    </comment>

Template definition

 1<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>
 2        </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>
 3        </template>
 4    </templateList>
 5<transform process="createMatrix" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.cartesian']/cml:list/cml:array" dictRef="qex:kpointlist.cartesian" />
 6<transform process="createMatrix" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.crystal']/cml:list/cml:array" dictRef="qex:kpointlist" />
 7<transform process="createArray" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.cartesian']/cml:list/cml:scalar[@dictRef='qex:kpointweight']" />
 8<transform process="createArray" xpath="." from=".//cml:list[@cmlx:templateRef='kpoints.crystal']/cml:list/cml:scalar[@dictRef='qex:kpointweight']" />
 9<transform process="pullup" xpath=".//cml:matrix" repeat="3" />
10<transform process="pullup" xpath=".//cml:array" repeat="3" />
11<transform process="delete" xpath=".//cml:scalar[@dictRef='cc:serial']" />
12<transform process="delete" xpath=".//cml:scalar[@dictRef='qex:kpointweight']" />
13<transform process="delete" xpath=".//cml:list[count(*) = 0]" />
14<transform process="delete" xpath=".//cml:list[count(*) = 0]" />
15<transform process="delete" xpath=".//cml:module[count(*) = 0]" />
16<transform process="delete" xpath=".//cml:array[@dictRef='qex:kpointweight'][position() > 1]" />