Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
SWIFTsim
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
SWIFT
SWIFTsim
Commits
30bff542
Commit
30bff542
authored
7 years ago
by
Matthieu Schaller
Browse files
Options
Downloads
Patches
Plain Diff
Do not inline the test functions in tests/testGravityDerivatives.c
parent
9609e647
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
tests/testGravityDerivatives.c
+56
-59
56 additions, 59 deletions
tests/testGravityDerivatives.c
with
56 additions
and
59 deletions
tests/testGravityDerivatives.c
+
56
−
59
View file @
30bff542
...
...
@@ -40,10 +40,7 @@
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_000
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
r_inv
;
}
double
D_000
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
r_inv
;
}
/*************************/
/* 1st order derivatives */
...
...
@@ -57,7 +54,7 @@ INLINE static double D_000(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_100
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_100
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
r_x
*
r_inv
*
r_inv
*
r_inv
;
}
...
...
@@ -70,7 +67,7 @@ INLINE static double D_100(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_010
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_010
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
r_y
*
r_inv
*
r_inv
*
r_inv
;
}
...
...
@@ -83,7 +80,7 @@ INLINE static double D_010(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_001
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_001
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
r_z
*
r_inv
*
r_inv
*
r_inv
;
}
...
...
@@ -100,7 +97,7 @@ INLINE static double D_001(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_200
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_200
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv3
=
r_inv
*
r_inv2
;
const
double
r_inv5
=
r_inv3
*
r_inv2
;
...
...
@@ -115,7 +112,7 @@ INLINE static double D_200(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_020
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_020
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv3
=
r_inv
*
r_inv2
;
const
double
r_inv5
=
r_inv3
*
r_inv2
;
...
...
@@ -130,7 +127,7 @@ INLINE static double D_020(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_002
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_002
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv3
=
r_inv
*
r_inv2
;
const
double
r_inv5
=
r_inv3
*
r_inv2
;
...
...
@@ -146,7 +143,7 @@ INLINE static double D_002(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_110
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_110
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
return
3
.
*
r_x
*
r_y
*
r_inv5
;
...
...
@@ -161,7 +158,7 @@ INLINE static double D_110(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_101
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_101
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
return
3
.
*
r_x
*
r_z
*
r_inv5
;
...
...
@@ -176,7 +173,7 @@ INLINE static double D_101(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_011
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_011
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
return
3
.
*
r_y
*
r_z
*
r_inv5
;
...
...
@@ -194,7 +191,7 @@ INLINE static double D_011(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_300
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_300
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -209,7 +206,7 @@ INLINE static double D_300(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_030
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_030
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -224,7 +221,7 @@ INLINE static double D_030(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_003
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_003
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -240,7 +237,7 @@ INLINE static double D_003(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_210
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_210
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -256,7 +253,7 @@ INLINE static double D_210(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_201
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_201
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -272,7 +269,7 @@ INLINE static double D_201(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_120
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_120
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -288,7 +285,7 @@ INLINE static double D_120(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_021
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_021
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -304,7 +301,7 @@ INLINE static double D_021(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_102
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_102
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -320,7 +317,7 @@ INLINE static double D_102(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_012
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_012
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv2
=
r_inv
*
r_inv
;
const
double
r_inv5
=
r_inv2
*
r_inv2
*
r_inv
;
const
double
r_inv7
=
r_inv5
*
r_inv2
;
...
...
@@ -336,7 +333,7 @@ INLINE static double D_012(double r_x, double r_y, double r_z, double r_inv) {
* @param r_z z-coordinate of the distance vector (\f$ r_z \f$).
* @param r_inv Inverse of the norm of the distance vector (\f$ |r|^{-1} \f$)
*/
INLINE
static
double
D_111
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_111
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
const
double
r_inv3
=
r_inv
*
r_inv
*
r_inv
;
const
double
r_inv7
=
r_inv3
*
r_inv3
*
r_inv
;
return
-
15
.
*
r_x
*
r_y
*
r_z
*
r_inv7
;
...
...
@@ -351,7 +348,7 @@ INLINE static double D_111(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_004
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_004
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_z
*
r_z
*
r_z
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
6
.
0
*
...
...
@@ -366,7 +363,7 @@ INLINE static double D_004(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_013
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_013
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_z
*
r_z
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
3
.
0
*
...
...
@@ -380,7 +377,7 @@ INLINE static double D_013(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_022
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_022
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_z
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -397,7 +394,7 @@ INLINE static double D_022(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_031
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_031
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_y
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
3
.
0
*
...
...
@@ -410,7 +407,7 @@ INLINE static double D_031(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_040
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_040
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_y
*
r_y
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
6
.
0
*
...
...
@@ -425,7 +422,7 @@ INLINE static double D_040(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_103
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_103
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_z
*
r_z
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
3
.
0
*
...
...
@@ -439,7 +436,7 @@ INLINE static double D_103(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_112
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_112
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_z
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -453,7 +450,7 @@ INLINE static double D_112(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_121
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_121
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_y
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -467,7 +464,7 @@ INLINE static double D_121(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_130
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_130
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_y
*
r_y
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
3
.
0
*
...
...
@@ -481,7 +478,7 @@ INLINE static double D_130(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_202
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_202
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_z
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -498,7 +495,7 @@ INLINE static double D_202(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_211
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_211
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_y
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -512,7 +509,7 @@ INLINE static double D_211(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_220
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_220
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_y
*
r_y
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -529,7 +526,7 @@ INLINE static double D_220(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_301
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_301
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_z
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
3
.
0
*
...
...
@@ -543,7 +540,7 @@ INLINE static double D_301(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_310
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_310
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_y
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
3
.
0
*
...
...
@@ -556,7 +553,7 @@ INLINE static double D_310(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_400
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_400
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_x
)
-
15
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
6
.
0
*
...
...
@@ -574,7 +571,7 @@ INLINE static double D_400(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_005
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_005
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_z
*
r_z
*
r_z
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -590,7 +587,7 @@ INLINE static double D_005(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_014
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_014
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_z
*
r_z
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -606,7 +603,7 @@ INLINE static double D_014(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_023
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_023
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_z
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -624,7 +621,7 @@ INLINE static double D_023(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_032
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_032
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_y
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -642,7 +639,7 @@ INLINE static double D_032(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_041
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_041
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_y
*
r_y
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -657,7 +654,7 @@ INLINE static double D_041(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_050
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_050
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_y
*
r_y
*
r_y
*
r_y
*
r_y
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -673,7 +670,7 @@ INLINE static double D_050(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_104
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_104
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_z
*
r_z
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -689,7 +686,7 @@ INLINE static double D_104(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_113
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_113
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_z
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -703,7 +700,7 @@ INLINE static double D_113(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_122
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_122
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_y
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -720,7 +717,7 @@ INLINE static double D_122(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_131
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_131
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_y
*
r_y
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -734,7 +731,7 @@ INLINE static double D_131(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_140
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_140
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_y
*
r_y
*
r_y
*
r_y
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -750,7 +747,7 @@ INLINE static double D_140(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_203
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_203
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_z
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -768,7 +765,7 @@ INLINE static double D_203(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_212
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_212
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_y
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -785,7 +782,7 @@ INLINE static double D_212(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_221
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_221
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_y
*
r_y
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -802,7 +799,7 @@ INLINE static double D_221(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_230
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_230
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_y
*
r_y
*
r_y
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -820,7 +817,7 @@ INLINE static double D_230(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_302
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_302
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_z
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -838,7 +835,7 @@ INLINE static double D_302(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_311
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_311
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_y
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -852,7 +849,7 @@ INLINE static double D_311(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_320
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_320
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_y
*
r_y
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -870,7 +867,7 @@ INLINE static double D_320(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_401
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_401
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_x
*
r_z
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -886,7 +883,7 @@ INLINE static double D_401(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_410
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_410
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_x
*
r_y
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
@@ -901,7 +898,7 @@ INLINE static double D_410(double r_x, double r_y, double r_z, double r_inv) {
*
* Note that r_inv = 1./sqrt(r_x^2 + r_y^2 + r_z^2)
*/
INLINE
static
double
D_500
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
double
D_500
(
double
r_x
,
double
r_y
,
double
r_z
,
double
r_inv
)
{
return
-
945
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
(
r_x
*
r_x
*
r_x
*
r_x
*
r_x
)
+
105
.
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
r_inv
*
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment