nuclei

This module contains data relative to the nuclei (coordinates, charge, nuclear repulsion energy, etc). The coordinates are expressed in atomic units.

EZFIO parameters

nucl_num

Number of nuclei

nucl_label

Nuclear labels

nucl_charge

Nuclear charges

nucl_coord

Nuclear coordinates in the format (:, {x,y,z})

io_nuclear_repulsion

Read/Write Nuclear Repulsion from/to disk [ Write | Read | None ]

Default: None

nuclear_repulsion

Nuclear repulsion (Computed automaticaly or Read in the EZFIO)

Providers

center_of_mass

File : nuclei/nuclei.irp.f

double precision, allocatable   :: center_of_mass       (3)

Center of mass of the molecule

Needs:

  • element_name

  • nucl_charge

  • nucl_coord

  • nucl_num

Needed by:

  • inertia_tensor

element_mass

File : nuclei/nuclei.irp.f

character*(4), allocatable      :: element_name (0:127)
double precision, allocatable   :: element_mass (0:127)

Array of the name of element, sorted by nuclear charge (integer)

Needs:

  • mpi_master

Needed by:

  • center_of_mass

  • inertia_tensor

element_name

File : nuclei/nuclei.irp.f

character*(4), allocatable      :: element_name (0:127)
double precision, allocatable   :: element_mass (0:127)

Array of the name of element, sorted by nuclear charge (integer)

Needs:

  • mpi_master

Needed by:

  • center_of_mass

  • inertia_tensor

inertia_tensor

File : nuclei/inertia.irp.f

double precision, allocatable   :: inertia_tensor       (3,3)

Inertia tensor

Needs:

  • center_of_mass

  • element_name

  • nucl_charge

  • nucl_coord

  • nucl_num

Needed by:

  • inertia_tensor_eigenvectors

inertia_tensor_eigenvalues

File : nuclei/inertia.irp.f

double precision, allocatable   :: inertia_tensor_eigenvectors  (3,3)
double precision, allocatable   :: inertia_tensor_eigenvalues   (3)

Eigenvectors/eigenvalues of the inertia_tensor. Used to find normal orientation.

Needs:

  • inertia_tensor

inertia_tensor_eigenvectors

File : nuclei/inertia.irp.f

double precision, allocatable   :: inertia_tensor_eigenvectors  (3,3)
double precision, allocatable   :: inertia_tensor_eigenvalues   (3)

Eigenvectors/eigenvalues of the inertia_tensor. Used to find normal orientation.

Needs:

  • inertia_tensor

nucl_coord

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_coord   (nucl_num,3)

Nuclear coordinates in the format (:, {x,y,z})

Needs:

  • ezfio_filename

  • mpi_master

  • nucl_charge

  • nucl_label

  • nucl_num

  • output_wall_time_0

Needed by:

  • ao_deriv2_x

  • ao_deriv_1_x

  • ao_dipole_x

  • ao_integrals_n_e

  • ao_integrals_n_e_per_atom

  • ao_overlap

  • ao_overlap_abs

  • ao_pseudo_integrals_local

  • ao_pseudo_integrals_non_local

  • ao_spread_x

  • ao_two_e_integral_schwartz

  • ao_two_e_integrals_in_map

  • center_of_mass

  • inertia_tensor

  • nucl_coord_transp

  • nucl_dist_2

  • nuclear_repulsion

nucl_coord_transp

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_coord_transp    (3,nucl_num)

Transposed array of nucl_coord

Needs:

  • nucl_coord

  • nucl_num

nucl_dist

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_dist_2  (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_x      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_y      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_z      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist    (nucl_num,nucl_num)

nucl_dist : Nucleus-nucleus distances nucl_dist_2 : Nucleus-nucleus distances squared nucl_dist_vec : Nucleus-nucleus distances vectors

Needs:

  • nucl_coord

  • nucl_num

Needed by:

  • nucl_dist_inv

nucl_dist_2

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_dist_2  (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_x      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_y      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_z      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist    (nucl_num,nucl_num)

nucl_dist : Nucleus-nucleus distances nucl_dist_2 : Nucleus-nucleus distances squared nucl_dist_vec : Nucleus-nucleus distances vectors

Needs:

  • nucl_coord

  • nucl_num

Needed by:

  • nucl_dist_inv

nucl_dist_inv

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_dist_inv        (nucl_num,nucl_num)

Inverse of the distance between nucleus I and nucleus J

Needs:

  • nucl_dist_2

  • nucl_num

nucl_dist_vec_x

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_dist_2  (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_x      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_y      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_z      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist    (nucl_num,nucl_num)

nucl_dist : Nucleus-nucleus distances nucl_dist_2 : Nucleus-nucleus distances squared nucl_dist_vec : Nucleus-nucleus distances vectors

Needs:

  • nucl_coord

  • nucl_num

Needed by:

  • nucl_dist_inv

nucl_dist_vec_y

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_dist_2  (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_x      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_y      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_z      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist    (nucl_num,nucl_num)

nucl_dist : Nucleus-nucleus distances nucl_dist_2 : Nucleus-nucleus distances squared nucl_dist_vec : Nucleus-nucleus distances vectors

Needs:

  • nucl_coord

  • nucl_num

Needed by:

  • nucl_dist_inv

nucl_dist_vec_z

File : nuclei/nuclei.irp.f

double precision, allocatable   :: nucl_dist_2  (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_x      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_y      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist_vec_z      (nucl_num,nucl_num)
double precision, allocatable   :: nucl_dist    (nucl_num,nucl_num)

nucl_dist : Nucleus-nucleus distances nucl_dist_2 : Nucleus-nucleus distances squared nucl_dist_vec : Nucleus-nucleus distances vectors

Needs:

  • nucl_coord

  • nucl_num

Needed by:

  • nucl_dist_inv

nuclear_repulsion

File : nuclei/nuclei.irp.f

double precision        :: nuclear_repulsion

Nuclear repulsion energy

Needs:

  • io_nuclear_repulsion

  • mpi_master

  • nucl_charge

  • nucl_coord

  • nucl_num

  • output_wall_time_0

Needed by:

  • ci_energy

  • core_energy

  • psi_energy_with_nucl_rep

slater_bragg_radii

File : nuclei/atomic_radii.irp.f

double precision, allocatable   :: slater_bragg_radii   (0:100)

atomic radii in Angstrom defined in table I of JCP 41, 3199 (1964) Slater execpt for the Hydrogen atom where we took the value of Becke (1988, JCP)

Needed by:

  • slater_bragg_radii_per_atom

  • slater_bragg_radii_ua

slater_bragg_radii_per_atom

File : nuclei/atomic_radii.irp.f

double precision, allocatable   :: slater_bragg_radii_per_atom  (nucl_num)

Needs:

  • nucl_charge

  • nucl_num

  • slater_bragg_radii

Needed by:

  • slater_bragg_type_inter_distance

slater_bragg_radii_per_atom_ua

File : nuclei/atomic_radii.irp.f

double precision, allocatable   :: slater_bragg_radii_per_atom_ua       (nucl_num)

Needs:

  • nucl_charge

  • nucl_num

  • slater_bragg_radii_ua

Needed by:

  • slater_bragg_type_inter_distance_ua

slater_bragg_radii_ua

File : nuclei/atomic_radii.irp.f

double precision, allocatable   :: slater_bragg_radii_ua        (0:100)

Needs:

  • slater_bragg_radii

Needed by:

  • slater_bragg_radii_per_atom_ua

slater_bragg_type_inter_distance

File : nuclei/atomic_radii.irp.f

double precision, allocatable   :: slater_bragg_type_inter_distance     (nucl_num,nucl_num)

Needs:

  • nucl_num

  • slater_bragg_radii_per_atom

slater_bragg_type_inter_distance_ua

File : nuclei/atomic_radii.irp.f

double precision, allocatable   :: slater_bragg_type_inter_distance_ua  (nucl_num,nucl_num)

Needs:

  • nucl_num

  • slater_bragg_radii_per_atom_ua