(git:cdd058b)
Loading...
Searching...
No Matches
grpp_type1_mcmurchie_davidson.c File Reference
#include <assert.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "grpp_type1_mcmurchie_davidson.h"
#include "grpp_norm_gaussian.h"
#include "grpp_specfunc.h"
#include "grpp_utils.h"
#include "libgrpp.h"

Go to the source code of this file.

Data Structures

struct  mmd_data

Macros

#define LMAX   LIBGRPP_MAX_BASIS_L

Functions

static void evaluate_rpp_type1_mmd_n2_primitive_shell_pair (libgrpp_shell_t *shell_A, double alpha_A, libgrpp_shell_t *shell_B, double alpha_B, double *rpp_origin, double rpp_alpha, double *rpp_matrix)
void libgrpp_evaluate_rpp_type1_mmd_n1_primitive_shell_pair (libgrpp_shell_t *shell_A, double alpha_A, libgrpp_shell_t *shell_B, double alpha_B, double *rpp_origin, double rpp_alpha, double *rpp_matrix)
static void evaluate_rpp_type1_mmd_n0_primitive_shell_pair (libgrpp_shell_t *shell_A, double alpha_A, libgrpp_shell_t *shell_B, double alpha_B, double *rpp_origin, double rpp_alpha, double *rpp_matrix)
static void setup_E_array (struct mmd_data *data, int L_A, int L_B)
static void setup_R_array (struct mmd_data *data, int L_A, int L_B)
static void setup_G_array (struct mmd_data *data, int L_A, int L_B)
void libgrpp_type1_integrals_mcmurchie_davidson_1978 (libgrpp_shell_t *shell_A, libgrpp_shell_t *shell_B, double *origin_C, double alpha_C, int ecp_power, double *rpp_matrix)

Macro Definition Documentation

◆ LMAX

#define LMAX   LIBGRPP_MAX_BASIS_L

Definition at line 57 of file grpp_type1_mcmurchie_davidson.c.

Function Documentation

◆ evaluate_rpp_type1_mmd_n2_primitive_shell_pair()

void evaluate_rpp_type1_mmd_n2_primitive_shell_pair ( libgrpp_shell_t * shell_A,
double alpha_A,
libgrpp_shell_t * shell_B,
double alpha_B,
double * rpp_origin,
double rpp_alpha,
double * rpp_matrix )
static

Integrals of the operator: e^{-ar^2}

Definition at line 345 of file grpp_type1_mcmurchie_davidson.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ libgrpp_evaluate_rpp_type1_mmd_n1_primitive_shell_pair()

void libgrpp_evaluate_rpp_type1_mmd_n1_primitive_shell_pair ( libgrpp_shell_t * shell_A,
double alpha_A,
libgrpp_shell_t * shell_B,
double alpha_B,
double * rpp_origin,
double rpp_alpha,
double * rpp_matrix )

Integrals of the operator: e^{-ar^2}/r

Definition at line 248 of file grpp_type1_mcmurchie_davidson.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ evaluate_rpp_type1_mmd_n0_primitive_shell_pair()

void evaluate_rpp_type1_mmd_n0_primitive_shell_pair ( libgrpp_shell_t * shell_A,
double alpha_A,
libgrpp_shell_t * shell_B,
double alpha_B,
double * rpp_origin,
double rpp_alpha,
double * rpp_matrix )
static

Integrals of the operator: e^{-ar^2}/r^2

Definition at line 152 of file grpp_type1_mcmurchie_davidson.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setup_E_array()

void setup_E_array ( struct mmd_data * data,
int L_A,
int L_B )
static

Calculates E^{ij}_t coefficients in the MMD scheme.

Definition at line 528 of file grpp_type1_mcmurchie_davidson.c.

Here is the caller graph for this function:

◆ setup_R_array()

void setup_R_array ( struct mmd_data * data,
int L_A,
int L_B )
static

Calculation of the R_{tuv}^N auxiliary integrals for the 1/r operator

Definition at line 422 of file grpp_type1_mcmurchie_davidson.c.

Here is the caller graph for this function:

◆ setup_G_array()

void setup_G_array ( struct mmd_data * data,
int L_A,
int L_B )
static

Calculation of the R_{tuv}^N auxiliary integrals for the 1/r^2 operator

Definition at line 472 of file grpp_type1_mcmurchie_davidson.c.

Here is the caller graph for this function:

◆ libgrpp_type1_integrals_mcmurchie_davidson_1978()

void libgrpp_type1_integrals_mcmurchie_davidson_1978 ( libgrpp_shell_t * shell_A,
libgrpp_shell_t * shell_B,
double * origin_C,
double alpha_C,
int ecp_power,
double * rpp_matrix )

General interface for the McMurchie-Davidson algorithm for integrals over the radially local RPP operator.

Definition at line 101 of file grpp_type1_mcmurchie_davidson.c.

Here is the call graph for this function:
Here is the caller graph for this function: