thermochemistry

Implementation level

Type

Status

CML extraction template

image1

HTML5 representation

image2

Template attributes

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]" />