![]() |
(git:b77b4be)
|
#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "grpp_factorial.h"
#include "grpp_lmatrix.h"
#include "grpp_overlap.h"
#include "grpp_spherical_harmonics.h"
#include "grpp_utils.h"
#include "libgrpp.h"
Go to the source code of this file.
Macros | |
#define | M_PI 3.14159265358979323846 |
Functions | |
void | libgrpp_outercore_potential_integrals_part_1 (libgrpp_shell_t *shell_A, libgrpp_shell_t *shell_B, double *C, libgrpp_potential_t *oc_potential, libgrpp_shell_t *oc_shell, double *arep_matrix, double *so_x_matrix, double *so_y_matrix, double *so_z_matrix) |
void | libgrpp_outercore_potential_integrals_part_2 (libgrpp_shell_t *shell_A, libgrpp_shell_t *shell_B, double *C, libgrpp_potential_t *oc_potential_1, libgrpp_shell_t *oc_shell_1, libgrpp_potential_t *oc_potential_2, libgrpp_shell_t *oc_shell_2, double *arep_matrix, double *so_x_matrix, double *so_y_matrix, double *so_z_matrix) |
static double | calculate_delta_integral (libgrpp_potential_t *oc_pot_1, libgrpp_shell_t *oc_shell_1, libgrpp_potential_t *oc_pot_2, libgrpp_shell_t *oc_shell_2) |
static void | transform_to_sph_basis_ket (int dim_bra, int dim_ket_cart, int dim_ket_sph, double *A_in, double *A_out, double *S_lm_coef) |
static void | transform_to_sph_basis_bra (int dim_bra_cart, int dim_bra_sph, int dim_ket, double *A_in, double *A_out, double *S_lm_coef) |
static double | ang_norm_factor (int lx, int ly, int lz) |
static double | analytic_one_center_rpp_integral_contracted (libgrpp_shell_t *bra, libgrpp_shell_t *ket, libgrpp_potential_t *pot) |
static double | analytic_one_center_rpp_integral_primitive (int L, double alpha1, double alpha2, int n, double zeta) |
static double | radial_gto_norm_factor (int L, double alpha) |
void | libgrpp_outercore_potential_integrals (libgrpp_shell_t *shell_A, libgrpp_shell_t *shell_B, double *rpp_origin, int num_oc_shells, libgrpp_potential_t **oc_potentials, libgrpp_shell_t **oc_shells, double *arep, double *esop_x, double *esop_y, double *esop_z) |
#define M_PI 3.14159265358979323846 |
Definition at line 27 of file grpp_outercore_integrals.c.
void libgrpp_outercore_potential_integrals_part_1 | ( | libgrpp_shell_t * | shell_A, |
libgrpp_shell_t * | shell_B, | ||
double * | C, | ||
libgrpp_potential_t * | oc_potential, | ||
libgrpp_shell_t * | oc_shell, | ||
double * | arep_matrix, | ||
double * | so_x_matrix, | ||
double * | so_y_matrix, | ||
double * | so_z_matrix | ||
) |
integration of the non-local outercore potential: the U*|nlj><nlj| + |nlj><nlj|*U part
Definition at line 133 of file grpp_outercore_integrals.c.
void libgrpp_outercore_potential_integrals_part_2 | ( | libgrpp_shell_t * | shell_A, |
libgrpp_shell_t * | shell_B, | ||
double * | C, | ||
libgrpp_potential_t * | oc_potential_1, | ||
libgrpp_shell_t * | oc_shell_1, | ||
libgrpp_potential_t * | oc_potential_2, | ||
libgrpp_shell_t * | oc_shell_2, | ||
double * | arep_matrix, | ||
double * | so_x_matrix, | ||
double * | so_y_matrix, | ||
double * | so_z_matrix | ||
) |
integration of the non-local outercore potential: the |nlj><nlj| U |n'lj><n'lj| part
Definition at line 276 of file grpp_outercore_integrals.c.
|
static |
Calculation of radial "delta" integrals. Is performed analytically.
Definition at line 409 of file grpp_outercore_integrals.c.
|
static |
Transforms matrix from the basis of unitary sphere polynomials to the basis of real spherical harmonics S_lm (separately for 'bra' and 'ket' vectors)
Definition at line 506 of file grpp_outercore_integrals.c.
|
static |
Definition at line 523 of file grpp_outercore_integrals.c.
|
static |
Definition at line 541 of file grpp_outercore_integrals.c.
|
static |
analytic formula for one-center RPP integral between two contracted gaussian functions.
Definition at line 431 of file grpp_outercore_integrals.c.
|
static |
analytic formula for one-center RPP integral between two gaussian primitives. normalization factors are omitted here.
Definition at line 467 of file grpp_outercore_integrals.c.
|
static |
calculate normalization factor for the radial Gaussian-type orbital: G(r) = N * r^L * exp(-alpha * r^2)
Definition at line 486 of file grpp_outercore_integrals.c.
void libgrpp_outercore_potential_integrals | ( | libgrpp_shell_t * | shell_A, |
libgrpp_shell_t * | shell_B, | ||
double * | rpp_origin, | ||
int | num_oc_shells, | ||
libgrpp_potential_t ** | oc_potentials, | ||
libgrpp_shell_t ** | oc_shells, | ||
double * | arep, | ||
double * | esop_x, | ||
double * | esop_y, | ||
double * | esop_z | ||
) |
Calculates non-local contributions to the scalar-relativistic ECP and effective spin-orbit interaction matrices from the outercore (OC) potentials.
Definition at line 82 of file grpp_outercore_integrals.c.