mulliken


Implementation level

Type

Status

CML extraction template

image1

HTML5 representation

image2

Template attributes

Attribute

Value

source

Gaussian log

id

mulliken

name

mulliken

repeat

*

newline

$

pattern

\s*Mulliken\s*([Aa]tomic)?\s*charges:\s*

endPattern

\s*Charge=.*

endOffset

1

xml:base

l601/l601.mulliken.xml

Input

Mulliken atomic charges:
             1
    1  C   -0.619218
    2  H    0.154804
    3  H    0.154804
    4  H    0.154804
    5  H    0.154804
Sum of Mulliken charges=   0.00000
Atomic charges with hydrogens summed into heavy atoms:
             1
    1  C    0.000000
    2  H    0.000000
    3  H    0.000000
    4  H    0.000000
    5  H    0.000000
Sum of Mulliken charges=   0.00000
Electronic spatial extent (au):  <R**2>=    36.2154
Charge=     0.0000 electrons

Output text

 1<comment class="example.output" id="l601.mulliken">
 2    <module cmlx:templateRef="mulliken">
 3      <module cmlx:lineCount="8" cmlx:templateRef="l601.mullik">
 4        <scalar dataType="xsd:string" dictRef="g:title">Mulliken atomic charges:</scalar>
 5        <scalar dataType="xsd:integer" dictRef="cc:serial">1</scalar>
 6        <list cmlx:lineCount="5" cmlx:templateRef="row">
 7          <array dataType="xsd:integer" dictRef="cc:serial" size="5">1 2 3 4 5</array>
 8          <array dataType="xsd:string" dictRef="cc:elementType" size="5">C H H H H</array>
 9          <array dataType="xsd:double" dictRef="x:charge" size="5">-0.619218 0.154804 0.154804 0.154804 0.154804</array>
10        </list>
11        <scalar dataType="xsd:string" dictRef="x:type">Mulliken</scalar>
12        <scalar dataType="xsd:double" dictRef="x:chargesum">0.0</scalar>
13      </module>
14      <module cmlx:lineCount="8" cmlx:templateRef="l601.mullik">
15        <scalar dataType="xsd:string" dictRef="g:title">Atomic charges with hydrogens summed into heavy atoms:</scalar>
16        <scalar dataType="xsd:integer" dictRef="cc:serial">1</scalar>
17        <list cmlx:lineCount="5" cmlx:templateRef="row">
18          <array dataType="xsd:integer" dictRef="cc:serial" size="5">1 2 3 4 5</array>
19          <array dataType="xsd:string" dictRef="cc:elementType" size="5">C H H H H</array>
20          <array dataType="xsd:double" dictRef="x:charge" size="5">0.0 0.0 0.0 0.0 0.0</array>
21        </list>
22        <scalar dataType="xsd:string" dictRef="x:type">Mulliken</scalar>
23        <scalar dataType="xsd:double" dictRef="x:chargesum">0.0</scalar>
24      </module>
25      <scalar dataType="xsd:double" dictRef="g:electextent2">36.2154</scalar>
26      <scalar dataType="xsd:double" dictRef="g:charge">0.0</scalar>
27    </module>
28  </comment>

Template definition

 1<templateList>  <template id="l601.mullik" repeat="*" pattern=".*[Aa]tomic\scharges.*|\s*Mulliken\scharges.*|\s+Atomic\scharges\swith\shydrogens\ssummed.*|\s+APT\satomic\scharges.*|\s+Mulliken\scharges\swith\shydrogens.*" endPattern="\s*Sum of.*" endOffset="1">    <record id="title">{X,g:title}</record>    <record id="serial">{I,cc:serial}</record>    <record id="row" makeArray="true" repeat="*">{I,cc:serial}{A,cc:elementType}{F,x:charge}</record>    <record id="sum">\s+Sum\sof.*={F,x:chargesum}</record>
 2    </template>  <template id="l601.spatial" pattern="\s*Electronic spatial extent.*" repeat="*" endPattern=".*" endOffset="0">    <record id="l601.elect">\s*Electronic spatial extent.*={F,g:electextent2}\s*</record>
 3    </template>  <template id="l601.charge" pattern="\s*Charge\s*=.*" repeat="*" endPattern=".*" endOffset="0">    <record id="l601.charge">\s*Charge=\s*{F,g:charge}\s*electrons\s*</record>
 4    </template>  <template pattern="\s*" endPattern=".*">    <record repeat="1" />
 5    </template>  <xi:include href="l601.mullikenspin.xml" />
 6  </templateList>
 7<transform process="pullup" xpath=".//cml:scalar" />
 8<transform process="pullup" xpath=".//cml:list/cml:scalar" />
 9<transform process="pullup" xpath=".//cml:module[@cmlx:templateRef='l601.spatial']/cml:scalar" />
10<transform process="pullup" xpath=".//cml:module[@cmlx:templateRef='l601.charge']/cml:scalar" />
11<transform process="delete" xpath=".//cml:module[@cmlx:templateRef='l601.spatial']" />
12<transform process="delete" xpath=".//cml:module[@cmlx:templateRef='l601.charge']" />
13<transform process="delete" xpath=".//cml:list[count(*)=0]" />
14<transform process="delete" xpath=".//cml:list[count(*)=0]" />