MolSSI Integral Reference Project
gpt.h
Go to the documentation of this file.
1 /*! \file
2  *
3  * \brief Calculation of the Gaussian Product Theorem terms
4  */
5 
6 #pragma once
7 
8 #include <arb.h>
9 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 /*! \brief Computes terms from the Gaussian Product Theorem using
15  * interval arithmetic
16  *
17  * The input parameters \p A and \p B, are expected to be arrays
18  * of 3 elements.
19  *
20  * The output parameters \p P, \p PA, and \p PB are also expected
21  * to be arrays 3 elements.
22  *
23  * See \ref gaussian_product_theorem
24  *
25  * \param [in] alpha1 Exponent of the first gaussian
26  * \param [in] alpha2 Exponent of the second gaussian
27  * \param [in] A XYZ coordinates of the first gaussian.
28  * \param [in] B XYZ coordinates of the second gaussian
29  * \param [out] gamma Combined exponent (\p alpha1 + \p alpha2)
30  * \param [out] P Coordinates of the new gaussian
31  * \param [out] PA XYZ distances between the new gaussian
32  * and the first gaussian
33  * \param [out] PB XYZ distances between the new gaussian
34  * and the second gaussian
35  * \param [out] AB2 Total distance between the first and second gaussians
36  *
37  * \param [in] working_prec The working precision (binary digits/bits) to use
38  * in the calculation
39  */
40 void mirp_gpt(const arb_t alpha1, const arb_t alpha2,
41  arb_srcptr A, arb_srcptr B,
42  arb_t gamma,
43  arb_ptr P, arb_ptr PA, arb_ptr PB,
44  arb_t AB2,
45  slong working_prec);
46 
47 
48 #ifdef __cplusplus
49 }
50 #endif
51 
void mirp_gpt(const arb_t alpha1, const arb_t alpha2, arb_srcptr A, arb_srcptr B, arb_t gamma, arb_ptr P, arb_ptr PA, arb_ptr PB, arb_t AB2, slong working_prec)
Computes terms from the Gaussian Product Theorem using interval arithmetic.
Definition: gpt.c:8