Objects Mixture Species Molecule Manifold <Prev Next>

Custom Population Functions

As an alternative to the built in Boltzmann population distributions, or specifying a population for each state individually (see Non-Boltzmann Populations), a function can be given in terms of various standard state properties instead. This is done by creating a "Custom Population Function" object under the appropriate Manifold object. The standard mathematical operators are available, and possible functions might include:

exp(-E/(kB*T)) The standard Boltzmann equation that PGOPHER would use, providing Tvib and Tspin are set to their default values.(T is automatically created as a parameter here.)
exp(-b*(J-Jcentre)^2)
A Gaussian distribution is J, centered on Jcentre. (Jcentre is automatically created as a parameter here .)
Result*(E<Emax)
Standard distribution, but discarding all states above Emax. The comparison operators evaluate to 1 if the comparison is true, and 0 for false allowing simple if...then...else logic. (Emax is automatically created as a parameter.)
sqrt(max(Emax-E,0))
A statistical distribution with a cut off energy of Emax. (Emax is automatically created as a parameter.)
Result*(1+2*(mod(J,3)=0))
Standard distribution, but scaling levels with J divisible by 3 by 3.

Notes:

Built In Variables

Result
The population PGOPHER would use if Active is set to false
E
The state energy
kB
The Boltzmann constant in the current energy units/K
J
J for the state
Symmetry
The symmetry number of the state
Index
The eigenvalue number of the state

Additional quantum numbers are also available, depending on the molecule type. They are based on the dominant basis state, so may not be exact for strongly mixed states.

For asymmetric tops the standard quantum numbers Ka and Kc are available.

For linear molecules:
Omega
The Omega quantum number
Fn The spin component, 1 for F1, 2 for F2, etc.

For symmetric tops:
K
The absolute value of K
Kl The sign of Kl

In addition any parameter can be referred to by giving the name in dotted notation. For example the current value of Tvib can be referred to using Simulation.Tvib.

Settings

Active Set true to use the function provided to calculate the population