symmetry

Implementation level

Type

Status

CML extraction template

image1

HTML5 representation

image2

Template attributes

Attribute

Value

source

MOLCAS log

id

symmetry

name

Symmetry information

pattern

\s*\+\+\s*Symmetry\sinformation.*

pattern2

\s*\-\-\-\s*Group\sGenerators\s*\-\-\-\s*

endPattern

\s*\-\-\s*

endPattern2

\s{10,}\S+.*$\s{0,5}\S+.*

endPattern3

~

endOffset

1

repeat

*

xml:base

modules/symmetry.xml

Input

++    Symmetry information:
---------------------

              --- Group Generators ---
              Reflection in the yz-plane
              Reflection in the xz-plane
              Reflection in the xy-plane

              Character Table for D2h

                       E   s(yz) s(xz) C2(z) s(xy) C2(y) C2(x)   i
              ag       1     1     1     1     1     1     1     1
              b3u      1    -1     1    -1     1    -1     1    -1  x
              b2u      1     1    -1    -1     1     1    -1    -1  y
              b1g      1    -1    -1     1     1    -1    -1     1  xy, Rz
              b1u      1     1     1     1    -1    -1    -1    -1  z
              b2g      1    -1     1    -1    -1     1    -1     1  xz, Ry
              b3g      1     1    -1    -1    -1    -1     1     1  yz, Rx
              au       1    -1    -1     1    -1     1     1    -1  I
--

Output text

 1<comment class="example.output" id="symmetry">
 2         <module cmlx:templateRef="symmetry">
 3            <scalar dataType="xsd:string" dictRef="m:symmdesc">Reflection in the yz-plane</scalar>
 4            <scalar dataType="xsd:string" dictRef="m:symmdesc">Reflection in the xz-plane</scalar>
 5            <scalar dataType="xsd:string" dictRef="m:symmdesc">Reflection in the xy-plane</scalar>
 6            <module cmlx:templateRef="charactertable">
 7               <list dictRef="m:symelemexample">
 8                  <scalar dataType="xsd:string" dictRef="m:symelemexample" />
 9                  <scalar dataType="xsd:string" dictRef="m:symelemexample">x</scalar>
10                  <scalar dataType="xsd:string" dictRef="m:symelemexample">y</scalar>
11                  <scalar dataType="xsd:string" dictRef="m:symelemexample">xy, Rz</scalar>
12                  <scalar dataType="xsd:string" dictRef="m:symelemexample">z</scalar>
13                  <scalar dataType="xsd:string" dictRef="m:symelemexample">xz, Ry</scalar>
14                  <scalar dataType="xsd:string" dictRef="m:symelemexample">yz, Rx</scalar>
15                  <scalar dataType="xsd:string" dictRef="m:symelemexample">I</scalar>
16               </list>
17               <scalar dataType="xsd:string" dictRef="m:symmelemdesc">D2h</scalar>
18               <array dataType="xsd:string" dictRef="m:symmelementrow" size="8">E s(yz) s(xz) C2(z) s(xy) C2(y) C2(x) i</array>
19               <array dataType="xsd:string" dictRef="m:irreductiblerepcol" size="8">ag b3u b2u b1g b1u b2g b3g au</array>
20
21               <matrix cols="8" dataType="xsd:integer" dictRef="m:characters" rows="8">1 1 1 1 1 1 1 1 1 -1 1 -1 1 -1 1 -1 1 1 -1 -1 1 1 -1 -1 1 -1 -1 1 1 -1 -1 1 1 1 1 1 -1 -1 -1 -1 1 -1 1 -1 -1 1 -1 1 1 1 -1 -1 -1 -1 1 1 1 -1 -1 1 -1 1 1 -1</matrix>
22            </module>
23         </module>
24    </comment>

Template definition

 1<templateList>  <template pattern="\s*\-\-\-\s*Group\sGenerators\s*\-\-\-\s*" endPattern="\s*">    <record />    <record repeat="*">{X,m:symmdesc}</record>    <transform process="pullup" xpath=".//cml:scalar" repeat="2" />
 2        </template>  <template id="charactertable" pattern="\s*Character\sTable\sfor.*" endPattern=".*\S\s*$\s*" endPattern2="\s{10,}\S+.*$\s{0,5}\S+.*" endPattern3="~" endOffset="1">    <record>\s*Character\sTable\sfor{X,m:symmelemdesc}</record>    <record />    <record>{1_20A,m:symmelementrow}</record>    <record repeat="*">{A,m:irreductiblerepcol}{1_20I,m:characters}{X,m:symelemexample}</record>
 3        </template>
 4    </templateList>
 5<transform process="createArray" xpath=".//cml:module[@cmlx:templateRef='charactertable']" from=".//cml:scalar[@dictRef='m:irreductiblerepcol']" />
 6<transform process="createMatrix" xpath=".//cml:module[@cmlx:templateRef='charactertable']" from=".//cml:array[@dictRef='m:characters']" dictRef="m:characters" />
 7<transform process="addChild" xpath=".//cml:module[@cmlx:templateRef='charactertable']" elementName="cml:list" dictRef="m:symelemexample" />
 8<transform process="move" xpath=".//cml:scalar[@dictRef='m:symelemexample']" to=".//cml:module[@cmlx:templateRef='charactertable']/cml:list[@dictRef='m:symelemexample']" />
 9<transform process="move" xpath=".//cml:scalar[@dictRef='m:symmelemdesc']" to=".//cml:module[@cmlx:templateRef='charactertable']" />
10<transform process="move" xpath=".//cml:array" to=".//cml:module[@cmlx:templateRef='charactertable']" />
11<transform process="move" xpath=".//cml:matrix" to=".//cml:module[@cmlx:templateRef='charactertable']" />
12<transform process="delete" xpath=".//cml:list[count(*)=0]" />
13<transform process="delete" xpath=".//cml:list[count(*)=0]" />
14<transform process="delete" xpath=".//cml:module[count(*)=0]" />