Example (XMOLECULE): H2O exposed to x-ray pulse

This examples propagates a water molecule using the xmolecule electronic structure toolkit. The first set of examples employs the Hartree-Fock-Slater electronic structure model and numerical atomic orbitals that are automatically generated based on atomic electronic structure calculations using XATOM. This example combines ab-initio molecular dynamics and Monte-Carlo-based electronic population dynamics.

In the second set of examples, the same calculations are conducted using the Hartree-Fock method and a Gaussian basis set [6-31G(d,p)] is used.

See:

Examples/xpyder/h2o_xmol/

Preparation

Make sure you have installed XMOLECULE and XATOM. Make sure that the XATOM_PATH environment variable is set to the the path of the xatom binary, for example using:

export XATOM_PATH=$HOME/XATOM/build/src/xatom

Details of the Inputfile input_gs

The file input_gs is the input file used for the calculation:

$SYSTEM
    qchemistry  = xmolecule
    xunit       = bohr
$END


$trajectory
    dt = 0.5   fs
    tf = 80.0   fs
    rrot = True
    rcom = True
$end

$quantum
    type    = gs
$end

$cartPOS
  O  -0.000000    -0.000000     0.116743
  H  -0.000000    -1.498103     1.205793
  H  -0.000000     1.498103     1.205793
$end

$cartVEL
  O     0.000000     0.000000     0.000000
  H     0.000000     0.000000     0.000000
  H     0.000000     0.000000     0.000000
$end
  1. $SYSTEM

    • qchemistry = xmolecule indicates that xmolecule is used for quantum chemistry engine.

  1. $trajectory

    • “dt” is the time step used for the calculation (in fs).

    • “tf” is the time of the last time step (in fs).

    • rrot = True indicates that overall rotation is removed during the simulation.

    • rcom = True indicates that overall momentum is removed during the simulation.

  2. quantum

    • type = bo specifies Born-Oppenheimer dynamics. That means we stay at a fixed surface

  3. cartPOS and cartVEL. These give the intial positions and velocities of the atoms.

Running ground state dynamics

To run the first example (neutral ground state water), execute:

xpyder -i input_gs -d gs

Output data for ground state dynamics

The folder gs contains output files for the ground state calculation without any electron dynamics.

  1. R.log contains the position of the atoms for each time step.

  2. V.log contains the velocity of the atoms.

  3. E.log contains the potential energy, kinetic energy and total energy of the trajectory.

  4. partial.log shows partial charges (Mulliken charges) for different time steps.

Details of the Inputfile input_core

The file input_core adds the following sections to the earlier input file:

$xmolecule
   MOM=yes
   occupation=12222
$end

$mced
   dte = 0.01 fs
   ratio = 0.1
$end

The additional section $xmolecule conains input parameters for the electronic structure calculation: MOM switches on the maximum-overlap method, occupation describes the electronic configuration as string of occupation numbers.

The additional section $mced indicates that electronic state populations are supposed to be propagated. The electronic populations are integrated using an adaptive time step. The option dte gives the smallest possible time step. The option ratio gives the maximal ratio between the MD (section $trajectory parameter “dt”) time step and electronic population integration.

Running the decaying core ionized dynamics

To run the second example (core ionized water decaying), execute:

xpyder -i input_core -d core

Output data for core-ionized state dynamics

The folder core contains output files for the core ionized state calculation. The following additional files appear: 1. event.log protocols photoionization/ decay events 2. charge.log shows total charge for different time steps 4. occupation.log shows electronic configuration for different time steps

Details of the Inputfile input_pulse

The file input_pulse adds/modifies the following sections compared to the earlier input files:

$xmolecule
   PE = 1000.0 # photon energy in eV
   MOM=yes
$end

$efield
   envelope = gaussian-fluence
   center = 20.0 fs
   fwhm = 10.0 fs
   amplitude = 1.0e14 ppmum
$end

The additional parameter PE = 1000.0 specifies the photon energy (in eV) to be considered. Here a pulse of 1000 eV is employed. The additional section $efield specifies the x-ray pulse. The parameter evelope = gaussian-fluence indicates that in fact not field parameters are given, but fluence parameters for a temporally Gaussian shaped pulse. The temporal center of the pulse and its full width at half maximum are specified by center and fwhm. The amplitude (amplitude) is given in units photons per micro meter (“ppmum”).

Running the dynamics: water exposed to intense x-ray pulse

To run the third example (water exposed to massive ionizing x-ray pulse), execute:

xpyder -i input_pulse -d pulse

Output data: water exposed to intense x-ray pulse

In the folder pulse the additional file pulse.log appears containing the temporal pulse envelope.

Details of the Inputfile input_pulse_fixed

The file input_pulse_fixed adds the parameter fix_geom = yes in the $xmolecule section

$xmolecule
    PE = 1000.0 # photon energy in eV
    MOM = yes
    fix_geom = yes
$end

The option fix_geom = yes keeps the geometry fixed through the whole calculation.

Details of the Inputfiles for Hartree-Fock and Gaussian orbital sets

The files input_gs_gto, input_core_gto, and input_pulse_gto contain the following additional parameters in the $xmolecule section:

gto = 6-31G_star_star
HF = yes
ionization_dynamics = yes
openshell = yes

These options specify the usage of Hartree-Fock and a Gaussian basis set. The option ionization_dynamics = yes is required for the ad-hoc calculation of photoionization cross sections and fluorescence/Auger-Meitner decay rates. The option openshell = yes becomes necessary to indicate that for open-shell configurations, energies and gradients are calculated for the high-spin configuration employing restricted open-shell Hartree-Fock.