species
Type |
Status |
---|---|
CML extraction template |
|
HTML5 representation |
Attribute |
Value |
---|---|
source |
QuantumEspresso log |
id |
species |
name |
Atomic species |
pattern |
^\s*atomic\s+species.* |
endPattern |
\s* |
endOffset |
1 |
xml:base |
initialization/atomic-species.xml |
Input
atomic species valence mass pseudopotential
Fe1 16.00 55.84500 Fe( 1.00)
Fe2 16.00 55.84500 Fe( 1.00)
O 6.00 15.99990 O ( 1.00)
H 1.00 1.00790 H ( 1.00)
Output text
1<comment class="example.output" id="species">
2 <module cmlx:templateRef="species">
3 <list cmlx:templateRef="species">
4 <array dataType="xsd:string" dictRef="qex:specie" size="4">Fe1 Fe2 O H</array>
5 <array dataType="xsd:double" dictRef="x:valelectrons" size="4">16.00 16.00 6.00 1.00</array>
6 <array dataType="xsd:double" dictRef="cc:mass" size="4">55.84500 55.84500 15.99990 1.00790</array>
7 <array dataType="xsd:string" dictRef="cc:elementType" size="4">Fe Fe O H</array>
8 <array dataType="xsd:double" dictRef="qex:pseudopot" size="4">1.00 1.00 1.00 1.00</array>
9 </list>
10 <map id="speciesToAtomTypeMap">
11 <link from="Fe1" to="Fe" />
12 <link from="Fe2" to="Fe" />
13 <link from="O" to="O" />
14 <link from="H" to="H" />
15 </map>
16 </module>
17 </comment>
Template definition
1<record repeat="1" />
2<record id="species" repeat="*">{A,qex:specie}{F,x:valelectrons}{F,cc:mass}{A,cc:elementType}\({F,qex:pseudopot}\).*</record>
3<transform process="addMap" xpath="." id="speciesToAtomTypeMap" from=".//cml:scalar[@dictRef='qex:specie']" to=".//cml:scalar[@dictRef='cc:elementType']" />
4<transform process="createArray" xpath="." from=".//cml:scalar[@dictRef='qex:specie']" />
5<transform process="createArray" xpath="." from=".//cml:scalar[@dictRef='x:valelectrons']" />
6<transform process="createArray" xpath="." from=".//cml:scalar[@dictRef='cc:mass']" />
7<transform process="createArray" xpath="." from=".//cml:scalar[@dictRef='cc:elementType']" />
8<transform process="createArray" xpath="." from=".//cml:scalar[@dictRef='qex:pseudopot']" />
9<transform process="pullup" xpath=".//cml:array" />
10<transform process="delete" xpath=".//cml:list[count(*)=0]" />
11<transform process="delete" xpath=".//cml:list[count(*)=0]" />