36 double *grpp_origin,
double *arep_matrix,
37 double *so_x_matrix,
double *so_y_matrix,
38 double *so_z_matrix) {
42 double *buf_arep = (
double *)calloc(size,
sizeof(
double));
43 double *buf_so_x = (
double *)calloc(size,
sizeof(
double));
44 double *buf_so_y = (
double *)calloc(size,
sizeof(
double));
45 double *buf_so_z = (
double *)calloc(size,
sizeof(
double));
47 memset(arep_matrix, 0,
sizeof(
double) * size);
48 memset(so_x_matrix, 0,
sizeof(
double) * size);
49 memset(so_y_matrix, 0,
sizeof(
double) * size);
50 memset(so_z_matrix, 0,
sizeof(
double) * size);
62 for (
int L = 0; L < grpp_operator->
n_arep; L++) {
64 grpp_operator->
U_arep[L], buf_arep);
71 for (
int i_so = 0; i_so < grpp_operator->
n_esop; i_so++) {
74 buf_so_x, buf_so_y, buf_so_z);
76 int L = so_potential->
L;
77 libgrpp_daxpy(size, 2.0 / (2 * L + 1), buf_so_x, so_x_matrix);
78 libgrpp_daxpy(size, 2.0 / (2 * L + 1), buf_so_y, so_y_matrix);
79 libgrpp_daxpy(size, 2.0 / (2 * L + 1), buf_so_z, so_z_matrix);
90 shell_A, shell_B, grpp_origin, grpp_operator->
n_oc_shells,
91 grpp_operator->
U_oc, grpp_operator->
oc_shells, buf_arep, buf_so_x,
void libgrpp_full_grpp_integrals(libgrpp_shell_t *shell_A, libgrpp_shell_t *shell_B, libgrpp_grpp_t *grpp_operator, double *grpp_origin, double *arep_matrix, double *so_x_matrix, double *so_y_matrix, double *so_z_matrix)
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)
void libgrpp_spin_orbit_integrals(libgrpp_shell_t *shell_A, libgrpp_shell_t *shell_B, double *rpp_origin, libgrpp_potential_t *potential, double *so_x_matrix, double *so_y_matrix, double *so_z_matrix)