thermochemistry
Type |
Status |
---|---|
CML extraction template |
|
HTML5 representation |
Attribute |
Value |
---|---|
source |
Turbomole log |
id |
thermochemistry |
name |
Thermochemistry from free entalphy program |
pattern |
\s*\-{10,}.*$\s*your\s*wishes\s*are\s*: |
endPattern |
\s*tstart=.* |
endOffset |
1 |
xml:base |
thermochemistry.xml |
Input
------------------
your wishes are :
------------------
pstart= 0.1000 pend= 0.1000 nump= 1
tstart= 298.1 tend= 298.1 numt= 1
Output text
1<comment class="example.output" id="thermochemistry">
2 <module cmlx:templateRef="thermochemistry">
3 <scalar dataType="xsd:double" dictRef="t:press.start" units="nonsi:bar">1.0</scalar>
4 <scalar dataType="xsd:double" dictRef="t:press.end" units="nonsi:bar">1.0</scalar>
5 <scalar dataType="xsd:double" dictRef="t:temp.start" units="si:k">298.1</scalar>
6 <scalar dataType="xsd:double" dictRef="t:temp.end" units="si:k">298.1</scalar>
7 </module>
8 </comment>
Template definition
1<record repeat="4" />
2<record id="press">\s*pstart={F,t:press.start}pend={F,t:press.end}.*</record>
3<record repeat="1" />
4<record id="temp">\s*tstart={F,t:temp.start}tend={F,t:temp.end}.*</record>
5<transform process="operateScalar" xpath=".//cml:list[@cmlx:templateRef='press']//cml:scalar" args="operator=multiply operand=10" />
6<transform process="addUnits" xpath=".//cml:list[@cmlx:templateRef='temp']//cml:scalar" value="si:k" />
7<transform process="addUnits" xpath=".//cml:list[@cmlx:templateRef='press']//cml:scalar" value="nonsi:bar" />
8<transform process="pullup" xpath=".//cml:scalar" repeat="2" />
9<transform process="delete" xpath=".//cml:list[count(*)=0]" />
10<transform process="delete" xpath=".//cml:list[count(*)=0]" />