"""
Molecular integrals over Gaussian basis functions generated by sympleints.
See https://github.com/eljost/sympleints for more information.
sympleints version: 0.1.dev103+g56f68c5.d20240122
sympy version: 1.12
sympleints was executed with the following arguments:
/home/johannes/.pyenv/versions/sympleints/bin/sympleints --norm cgto --keys ~2c2e ~3c2e_sph ~coul --opt-basic --prefix opt_new
lmax = 4
lauxmax = 6
out_dir = .
prefix = opt_new
keys = ['~2c2e', '~3c2e_sph', '~coul']
sph = False
opt_basic = True
boys_func = sympleints.testing.boys
normalize = cgto
"""
"""
Dipole integrals are given in the order:
for cart_dir in (x, y, z):
for bf_a in basis_functions_a:
for bf_b in basis_functions_b:
dipole_integrals(cart_dir, bf_a, bf_b)
So for <s_a|μ|s_b> it will be:
<s_a|x|s_b>
<s_a|y|s_b>
<s_a|z|s_b>
"""
import numba
from numba import i8, f8
import numpy
func_type = numba.types.FunctionType(
numba.types.void(f8, f8, f8[:], f8, f8, f8[:], f8[:], f8[::1])
)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_00(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (ss) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = ax * bx * x0
x2 = (
5.56832799683170785
* da
* db
* x0**1.5
* numpy.exp(-x1 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
# 3 item(s)
result[0] += x2 * (x0 * (ax * A[0] + bx * B[0]) - R[0])
result[1] += x2 * (x0 * (ax * A[1] + bx * B[1]) - R[1])
result[2] += x2 * (x0 * (ax * A[2] + bx * B[2]) - R[2])
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_10(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (ps) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = 0.5 * x0
x2 = -x0 * (ax * A[0] + bx * B[0])
x3 = x2 + A[0]
x4 = x2 + R[0]
x5 = ax * bx * x0
x6 = (
5.56832799683170785
* da
* db
* x0**1.5
* numpy.exp(-x5 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x7 = -x0 * (ax * A[1] + bx * B[1])
x8 = x7 + A[1]
x9 = x4 * x6
x10 = -x0 * (ax * A[2] + bx * B[2])
x11 = x10 + A[2]
x12 = x7 + R[1]
x13 = x12 * x6
x14 = x10 + R[2]
x15 = x14 * x6
# 9 item(s)
result[0] += x6 * (x1 + x3 * x4)
result[1] += x8 * x9
result[2] += x11 * x9
result[3] += x13 * x3
result[4] += x6 * (x1 + x12 * x8)
result[5] += x11 * x13
result[6] += x15 * x3
result[7] += x15 * x8
result[8] += x6 * (x1 + x11 * x14)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_01(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_10."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_10(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 3, 1), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_20(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (ds) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = x0 * (ax * A[0] + bx * B[0])
x2 = -x1
x3 = x2 + A[0]
x4 = x2 + R[0]
x5 = x3 * x4
x6 = ax * bx * x0
x7 = (
5.56832799683170785
* da
* db
* x0**1.5
* numpy.exp(-x6 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x8 = 1.73205080756887729 * x7
x9 = 0.166666666666666667 * x8
x10 = x0 * (ax * A[1] + bx * B[1])
x11 = -x10
x12 = x11 + A[1]
x13 = 0.5 * x0
x14 = x7 * (x13 + x5)
x15 = x0 * (ax * A[2] + bx * B[2])
x16 = -x15
x17 = x16 + A[2]
x18 = x12**2 + x13
x19 = 0.333333333333333333 * x8
x20 = x19 * x4
x21 = x17 * x7
x22 = x13 + x17**2
x23 = x13 + x3**2
x24 = x11 + R[1]
x25 = x19 * x24
x26 = x12 * x24
x27 = x7 * (x13 + x26)
x28 = x16 + R[2]
x29 = x19 * x28
x30 = x17 * x28
x31 = x7 * (x13 + x30)
# 18 item(s)
result[0] += -x9 * (x0 * (-2.0 * x1 + A[0] + R[0]) + x3 * (x0 + 2.0 * x5))
result[1] += -x12 * x14
result[2] += -x14 * x17
result[3] += -x18 * x20
result[4] += -x12 * x21 * x4
result[5] += -x20 * x22
result[6] += -x23 * x25
result[7] += -x27 * x3
result[8] += -x21 * x24 * x3
result[9] += -x9 * (x0 * (-2.0 * x10 + A[1] + R[1]) + x12 * (x0 + 2.0 * x26))
result[10] += -x17 * x27
result[11] += -x22 * x25
result[12] += -x23 * x29
result[13] += -x12 * x28 * x3 * x7
result[14] += -x3 * x31
result[15] += -x18 * x29
result[16] += -x12 * x31
result[17] += -x9 * (x0 * (-2.0 * x15 + A[2] + R[2]) + x17 * (x0 + 2.0 * x30))
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_02(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_20."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_20(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 6, 1), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_30(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (fs) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = x0 * (ax * A[0] + bx * B[0])
x2 = -x1
x3 = x2 + A[0]
x4 = x3**2
x5 = 3.0 * x0
x6 = x2 + R[0]
x7 = x3 * x6
x8 = x0 * (-2.0 * x1 + A[0] + R[0]) + x3 * (x0 + 2.0 * x7)
x9 = ax * bx * x0
x10 = (
5.56832799683170785
* da
* db
* numpy.exp(-x9 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x11 = x0**1.5 * x10
x12 = 3.87298334620741689 * x11
x13 = 0.0166666666666666667 * x12
x14 = x0 * (ax * A[1] + bx * B[1])
x15 = -x14
x16 = x15 + A[1]
x17 = x11 * x16
x18 = 1.73205080756887729
x19 = 0.166666666666666667 * x18
x20 = x19 * x8
x21 = x0 * (ax * A[2] + bx * B[2])
x22 = -x21
x23 = x22 + A[2]
x24 = x11 * x23
x25 = x16**2
x26 = 0.5 * x0
x27 = 0.333333333333333333 * x18
x28 = x27 * (x25 + x26)
x29 = x26 + x7
x30 = x0**1.5 * x10
x31 = x29 * x30
x32 = x23**2
x33 = x27 * (x26 + x32)
x34 = 0.0666666666666666667 * x12
x35 = x34 * x6
x36 = 1.5 * x0
x37 = x16 * (x25 + x36)
x38 = x23 * (x32 + x36)
x39 = x15 + R[1]
x40 = x34 * x39
x41 = x3 * (x36 + x4)
x42 = x16 * x39
x43 = x26 + x42
x44 = x30 * x43
x45 = x27 * (x26 + x4)
x46 = x0 * (-2.0 * x14 + A[1] + R[1]) + x16 * (x0 + 2.0 * x42)
x47 = x19 * x46
x48 = x11 * x3
x49 = x22 + R[2]
x50 = x34 * x49
x51 = x23 * x49
x52 = x26 + x51
x53 = x30 * x52
x54 = x0 * (-2.0 * x21 + A[2] + R[2]) + x23 * (x0 + 2.0 * x51)
x55 = x19 * x54
# 30 item(s)
result[0] += x13 * (x0 * (2.0 * x4 + x5 + 4.0 * x7) + 2.0 * x3 * x8)
result[1] += x17 * x20
result[2] += x20 * x24
result[3] += x28 * x31
result[4] += x16 * x24 * x29
result[5] += x31 * x33
result[6] += x35 * x37
result[7] += x24 * x28 * x6
result[8] += x17 * x33 * x6
result[9] += x35 * x38
result[10] += x40 * x41
result[11] += x44 * x45
result[12] += x24 * x39 * x45
result[13] += x47 * x48
result[14] += x24 * x3 * x43
result[15] += x33 * x39 * x48
result[16] += x13 * (x0 * (2.0 * x25 + 4.0 * x42 + x5) + 2.0 * x16 * x46)
result[17] += x24 * x47
result[18] += x33 * x44
result[19] += x38 * x40
result[20] += x41 * x50
result[21] += x17 * x45 * x49
result[22] += x45 * x53
result[23] += x28 * x48 * x49
result[24] += x17 * x3 * x52
result[25] += x48 * x55
result[26] += x37 * x50
result[27] += x28 * x53
result[28] += x17 * x55
result[29] += x13 * (x0 * (2.0 * x32 + x5 + 4.0 * x51) + 2.0 * x23 * x54)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_03(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_30."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_30(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 10, 1), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_40(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (gs) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = 0.5 / (ax + bx)
x1 = (ax + bx) ** (-1.0)
x2 = -x1 * (ax * A[0] + bx * B[0])
x3 = -x2 - A[0]
x4 = ax * bx * x1
x5 = numpy.exp(-x4 * (A[0] - B[0]) ** 2)
x6 = 1.77245385090551603 * numpy.sqrt(x1)
x7 = x5 * x6
x8 = x3 * x7
x9 = -x2 - R[0]
x10 = x7 * x9
x11 = x0 * (x10 + x8)
x12 = x0 * x7
x13 = x8 * x9
x14 = x12 + x13
x15 = x14 * x3
x16 = x3**2 * x7
x17 = x12 + x16
x18 = x3 * (2.0 * x12 + x17)
x19 = 3.0 * x12
x20 = x11 + x15
x21 = x0 * (2.0 * x13 + x16 + x19) + x20 * x3
x22 = numpy.exp(-x4 * (A[1] - B[1]) ** 2)
x23 = da * db
x24 = numpy.exp(-x4 * (A[2] - B[2]) ** 2)
x25 = 3.14159265358979324 * x1 * x24
x26 = x23 * x25
x27 = x22 * x26
x28 = 0.0975900072948533179
x29 = x27 * x28
x30 = -x1 * (ax * A[1] + bx * B[1])
x31 = -x30 - A[1]
x32 = 0.258198889747161126
x33 = x27 * x32
x34 = x21 * x33
x35 = -x1 * (ax * A[2] + bx * B[2])
x36 = -x35 - A[2]
x37 = x22 * x6
x38 = x31**2 * x37
x39 = x0 * x37
x40 = x38 + x39
x41 = x24 * x6
x42 = 0.333333333333333333 * x23
x43 = x20 * x42
x44 = 1.73205080756887729
x45 = x31 * x44
x46 = x25 * x36
x47 = x36**2 * x41
x48 = x0 * x41
x49 = x47 + x48
x50 = x31 * (2.0 * x39 + x40)
x51 = x23 * x32
x52 = x14 * x51
x53 = x36 * x41
x54 = x40 * x42
x55 = x14 * x44
x56 = x31 * x37
x57 = x42 * x49
x58 = x36 * (2.0 * x48 + x49)
x59 = 3.0 * x39
x60 = x28 * x5
x61 = x26 * x60
x62 = x61 * (x0 * (3.0 * x38 + x59) + x31 * x50)
x63 = x36 * x5
x64 = x26 * x32
x65 = x50 * x64
x66 = x31 * x5
x67 = 3.14159265358979324 * x1 * x22
x68 = x51 * x67
x69 = x58 * x68
x70 = 3.0 * x48
x71 = x23 * x60 * x67
x72 = x71 * (x0 * (3.0 * x47 + x70) + x36 * x58)
x73 = -x30 - R[1]
x74 = x29 * (x0 * (3.0 * x16 + x19) + x18 * x3)
x75 = x56 * x73
x76 = x39 + x75
x77 = x51 * x76
x78 = x18 * x33
x79 = x37 * x73
x80 = x0 * (x56 + x79)
x81 = x31 * x76
x82 = x80 + x81
x83 = x42 * x82
x84 = x44 * x76
x85 = x17 * x42
x86 = x3 * x5
x87 = x0 * (x38 + x59 + 2.0 * x75) + x31 * x82
x88 = x64 * x87
x89 = -x35 - R[2]
x90 = x53 * x89
x91 = x48 + x90
x92 = x51 * x91
x93 = x41 * x89
x94 = x44 * x91
x95 = x0 * (x53 + x93)
x96 = x36 * x91
x97 = x95 + x96
x98 = x42 * x97
x99 = x0 * (x47 + x70 + 2.0 * x90) + x36 * x97
x100 = x68 * x99
# 45 item(s)
result[0] += x29 * (x0 * (3.0 * x11 + 3.0 * x15 + x18) + x21 * x3)
result[1] += x31 * x34
result[2] += x34 * x36
result[3] += x40 * x41 * x43
result[4] += x22 * x43 * x45 * x46
result[5] += x37 * x43 * x49
result[6] += x41 * x50 * x52
result[7] += x53 * x54 * x55
result[8] += x55 * x56 * x57
result[9] += x37 * x52 * x58
result[10] += x62 * x9
result[11] += x63 * x65 * x9
result[12] += x10 * x40 * x57
result[13] += x66 * x69 * x9
result[14] += x72 * x9
result[15] += x73 * x74
result[16] += x18 * x41 * x77
result[17] += x36 * x73 * x78
result[18] += x17 * x41 * x83
result[19] += x53 * x84 * x85
result[20] += x17 * x57 * x79
result[21] += x86 * x88
result[22] += x44 * x46 * x83 * x86
result[23] += x57 * x8 * x84
result[24] += x69 * x73 * x86
result[25] += x61 * (x0 * (x50 + 3.0 * x80 + 3.0 * x81) + x31 * x87)
result[26] += x63 * x88
result[27] += x49 * x7 * x83
result[28] += x58 * x7 * x77
result[29] += x72 * x73
result[30] += x74 * x89
result[31] += x31 * x78 * x89
result[32] += x18 * x37 * x92
result[33] += x17 * x54 * x93
result[34] += x56 * x85 * x94
result[35] += x17 * x37 * x98
result[36] += x65 * x86 * x89
result[37] += x54 * x8 * x94
result[38] += x45 * x67 * x86 * x98
result[39] += x100 * x86
result[40] += x62 * x89
result[41] += x50 * x7 * x92
result[42] += x40 * x7 * x98
result[43] += x100 * x66
result[44] += x71 * (x0 * (x58 + 3.0 * x95 + 3.0 * x96) + x36 * x99)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_04(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_40."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_40(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 15, 1), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_11(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (pp) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = x0 * (ax * A[0] + bx * B[0])
x2 = -x1
x3 = x2 + B[0]
x4 = x2 + R[0]
x5 = x3 * x4
x6 = x2 + A[0]
x7 = 0.5 * x0
x8 = ax * bx * x0
x9 = (
5.56832799683170785
* da
* db
* numpy.sqrt(x0)
* numpy.exp(-x8 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x10 = x7 * x9
x11 = x0 * (ax * A[1] + bx * B[1])
x12 = -x11
x13 = x12 + B[1]
x14 = x0 * x9
x15 = x14 * (x4 * x6 + x7)
x16 = x0 * (ax * A[2] + bx * B[2])
x17 = -x16
x18 = x17 + B[2]
x19 = x12 + A[1]
x20 = x14 * (x5 + x7)
x21 = x13 * x19 + x7
x22 = x14 * x4
x23 = x17 + A[2]
x24 = x18 * x23 + x7
x25 = x3 * x6 + x7
x26 = x12 + R[1]
x27 = x14 * x26
x28 = x13 * x26
x29 = x14 * (x28 + x7)
x30 = x14 * (x19 * x26 + x7)
x31 = x17 + R[2]
x32 = x14 * x31
x33 = x18 * x31
x34 = x14 * (x33 + x7)
x35 = x14 * (x23 * x31 + x7)
# 27 item(s)
result[0] += -x10 * (x0 * (-2.0 * x1 + B[0] + R[0]) + x6 * (x0 + 2.0 * x5))
result[1] += -x13 * x15
result[2] += -x15 * x18
result[3] += -x19 * x20
result[4] += -x21 * x22
result[5] += -x18 * x19 * x22
result[6] += -x20 * x23
result[7] += -x13 * x22 * x23
result[8] += -x22 * x24
result[9] += -x25 * x27
result[10] += -x29 * x6
result[11] += -x18 * x27 * x6
result[12] += -x3 * x30
result[13] += -x10 * (x0 * (-2.0 * x11 + B[1] + R[1]) + x19 * (x0 + 2.0 * x28))
result[14] += -x18 * x30
result[15] += -x23 * x27 * x3
result[16] += -x23 * x29
result[17] += -x24 * x27
result[18] += -x25 * x32
result[19] += -x13 * x32 * x6
result[20] += -x34 * x6
result[21] += -x19 * x3 * x32
result[22] += -x21 * x32
result[23] += -x19 * x34
result[24] += -x3 * x35
result[25] += -x13 * x35
result[26] += -x10 * (x0 * (-2.0 * x16 + B[2] + R[2]) + x23 * (x0 + 2.0 * x33))
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_21(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (dp) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = 3.0 * x0
x2 = x0 * (ax * A[0] + bx * B[0])
x3 = -x2
x4 = x3 + A[0]
x5 = x3 + B[0]
x6 = x4 * x5
x7 = 2.0 * x6
x8 = x3 + R[0]
x9 = x4 * x8
x10 = 2.0 * x9
x11 = x5 * x8
x12 = 2.0 * x11
x13 = -2.0 * x2
x14 = x13 + R[0]
x15 = x0 * (x14 + B[0]) + x4 * (x0 + x12)
x16 = 1.73205080756887729
x17 = ax * bx * x0
x18 = (
5.56832799683170785
* da
* db
* numpy.exp(-x17 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x19 = numpy.sqrt(x0) * x18
x20 = x0 * x19
x21 = x16 * x20
x22 = 0.0833333333333333333 * x21
x23 = x0 * (ax * A[1] + bx * B[1])
x24 = -x23
x25 = x24 + B[1]
x26 = 0.166666666666666667 * x21
x27 = x26 * (x0 * (x14 + A[0]) + x4 * (x0 + x10))
x28 = x0 * (ax * A[2] + bx * B[2])
x29 = -x28
x30 = x29 + B[2]
x31 = x24 + A[1]
x32 = 0.5 * x0
x33 = x19 * x32
x34 = x15 * x33
x35 = x25 * x31
x36 = x32 + x35
x37 = x32 + x9
x38 = x0**1.5 * x18
x39 = x37 * x38
x40 = x20 * x37
x41 = x29 + A[2]
x42 = x30 * x41
x43 = x32 + x42
x44 = 0.333333333333333333 * x31**2 + 0.333333333333333333 * x32
x45 = x11 + x32
x46 = x16 * x38
x47 = x45 * x46
x48 = -2.0 * x23
x49 = x48 + B[1]
x50 = 2.0 * x35
x51 = x0 * (x49 + A[1]) + x31 * (x0 + x50)
x52 = x26 * x8
x53 = x21 * x8
x54 = x20 * x41
x55 = x20 * x43
x56 = 0.333333333333333333 * x32 + 0.333333333333333333 * x41**2
x57 = -2.0 * x28
x58 = x57 + B[2]
x59 = 2.0 * x42
x60 = x0 * (x58 + A[2]) + x41 * (x0 + x59)
x61 = x0 * (x13 + A[0] + B[0]) + x4 * (x0 + x7)
x62 = x24 + R[1]
x63 = x26 * x62
x64 = x25 * x62
x65 = x32 + x64
x66 = x46 * x65
x67 = 0.333333333333333333 * x32 + 0.333333333333333333 * x4**2
x68 = x21 * x62
x69 = x32 + x6
x70 = x31 * x62
x71 = x32 + x70
x72 = x38 * x71
x73 = 2.0 * x64
x74 = x0 * (x49 + R[1]) + x31 * (x0 + x73)
x75 = x33 * x74
x76 = x20 * x4
x77 = 2.0 * x70
x78 = x26 * (x0 * (x48 + A[1] + R[1]) + x31 * (x0 + x77))
x79 = x29 + R[2]
x80 = x26 * x79
x81 = x21 * x79
x82 = x30 * x79
x83 = x32 + x82
x84 = x46 * x83
x85 = x20 * x31
x86 = x41 * x79
x87 = x32 + x86
x88 = x38 * x87
x89 = 2.0 * x82
x90 = x0 * (x58 + R[2]) + x41 * (x0 + x89)
x91 = x33 * x90
x92 = 2.0 * x86
x93 = x26 * (x0 * (x57 + A[2] + R[2]) + x41 * (x0 + x92))
# 54 item(s)
result[0] += x22 * (x0 * (x1 + x10 + x12 + x7) + 2.0 * x15 * x4)
result[1] += x25 * x27
result[2] += x27 * x30
result[3] += x31 * x34
result[4] += x36 * x39
result[5] += x30 * x31 * x40
result[6] += x34 * x41
result[7] += x25 * x40 * x41
result[8] += x39 * x43
result[9] += x44 * x47
result[10] += x51 * x52
result[11] += x30 * x44 * x53
result[12] += x31 * x45 * x54
result[13] += x36 * x54 * x8
result[14] += x31 * x55 * x8
result[15] += x47 * x56
result[16] += x25 * x53 * x56
result[17] += x52 * x60
result[18] += x61 * x63
result[19] += x66 * x67
result[20] += x30 * x67 * x68
result[21] += x69 * x72
result[22] += x4 * x75
result[23] += x30 * x71 * x76
result[24] += x54 * x62 * x69
result[25] += x4 * x54 * x65
result[26] += x4 * x55 * x62
result[27] += x5 * x78
result[28] += x22 * (x0 * (x1 + x50 + x73 + x77) + 2.0 * x31 * x74)
result[29] += x30 * x78
result[30] += x5 * x54 * x71
result[31] += x41 * x75
result[32] += x43 * x72
result[33] += x5 * x56 * x68
result[34] += x56 * x66
result[35] += x60 * x63
result[36] += x61 * x80
result[37] += x25 * x67 * x81
result[38] += x67 * x84
result[39] += x69 * x79 * x85
result[40] += x36 * x76 * x79
result[41] += x31 * x76 * x83
result[42] += x69 * x88
result[43] += x25 * x76 * x87
result[44] += x4 * x91
result[45] += x44 * x5 * x81
result[46] += x51 * x80
result[47] += x44 * x84
result[48] += x5 * x85 * x87
result[49] += x36 * x88
result[50] += x31 * x91
result[51] += x5 * x93
result[52] += x25 * x93
result[53] += x22 * (x0 * (x1 + x59 + x89 + x92) + 2.0 * x41 * x90)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_12(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_21."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_21(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 6, 3), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_31(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (fp) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = x0 * (ax * A[0] + bx * B[0])
x2 = -2.0 * x1
x3 = x0 * (x2 + B[0] + R[0])
x4 = -x1
x5 = x4 + B[0]
x6 = x4 + R[0]
x7 = x5 * x6
x8 = 2.0 * x7
x9 = x4 + A[0]
x10 = x9 * (x0 + x8)
x11 = x2 + A[0]
x12 = x6 * x9
x13 = 2.0 * x12
x14 = x0 * (x11 + R[0]) + x9 * (x0 + x13)
x15 = x5 * x9
x16 = 2.0 * x15
x17 = x0 * (x11 + B[0]) + x9 * (x0 + x16)
x18 = 3.0 * x0
x19 = x10 + x3
x20 = 2.0 * x9
x21 = x0 * (x13 + x16 + x18 + x8) + x19 * x20
x22 = 3.87298334620741689
x23 = ax * bx * x0
x24 = (
5.56832799683170785
* da
* db
* numpy.exp(-x23 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x25 = numpy.sqrt(x0) * x24
x26 = x0 * x25
x27 = x22 * x26
x28 = 0.0166666666666666667 * x27
x29 = x0 * (ax * A[1] + bx * B[1])
x30 = -x29
x31 = x30 + B[1]
x32 = x9**2
x33 = x18 + 2.0 * x32
x34 = x28 * (x0 * (4.0 * x12 + x33) + x14 * x20)
x35 = x0 * (ax * A[2] + bx * B[2])
x36 = -x35
x37 = x36 + B[2]
x38 = x30 + A[1]
x39 = 1.73205080756887729
x40 = x38 * x39
x41 = 0.0833333333333333333 * x26
x42 = x21 * x41
x43 = 0.5 * x0
x44 = x31 * x38
x45 = x43 + x44
x46 = x0**1.5 * x24
x47 = 0.166666666666666667 * x39
x48 = x46 * x47
x49 = x14 * x48
x50 = x26 * x47
x51 = x14 * x50
x52 = x36 + A[2]
x53 = x39 * x52
x54 = x37 * x52
x55 = x43 + x54
x56 = x38**2
x57 = x43 + x56
x58 = x19 * x48
x59 = -2.0 * x29
x60 = x59 + B[1]
x61 = 2.0 * x44
x62 = x0 * (x60 + A[1]) + x38 * (x0 + x61)
x63 = x46 * (x12 + x43)
x64 = x47 * x63
x65 = 0.333333333333333333 * x57
x66 = x39 * x63
x67 = x25 * x43 * x52
x68 = x52**2
x69 = x43 + x68
x70 = 0.333333333333333333 * x69
x71 = -2.0 * x35
x72 = x71 + B[2]
x73 = 2.0 * x54
x74 = x0 * (x72 + A[2]) + x52 * (x0 + x73)
x75 = 1.5 * x0
x76 = x38 * (x56 + x75)
x77 = x46 * (x43 + x7)
x78 = 0.0666666666666666667 * x22
x79 = x77 * x78
x80 = x18 + 2.0 * x56
x81 = 2.0 * x38
x82 = x0 * (4.0 * x44 + x80) + x62 * x81
x83 = x28 * x6
x84 = 0.0666666666666666667 * x27
x85 = x6 * x84
x86 = x50 * x6
x87 = x39 * x46
x88 = x6 * x87
x89 = x52 * (x68 + x75)
x90 = x18 + 2.0 * x68
x91 = 2.0 * x52
x92 = x0 * (4.0 * x54 + x90) + x74 * x91
x93 = x0 * (4.0 * x15 + x33) + x17 * x20
x94 = x30 + R[1]
x95 = x28 * x94
x96 = x9 * (x32 + x75)
x97 = x31 * x94
x98 = x43 + x97
x99 = x46 * x98
x100 = x78 * x99
x101 = x84 * x94
x102 = x38 * x94
x103 = x46 * (x102 + x43)
x104 = x103 * x47
x105 = x32 + x43
x106 = x0 * (x60 + R[1])
x107 = 2.0 * x97
x108 = x38 * (x0 + x107)
x109 = x106 + x108
x110 = x109 * x48
x111 = 0.333333333333333333 * x105
x112 = x103 * x39
x113 = x50 * x94
x114 = x87 * x94
x115 = x15 + x43
x116 = 2.0 * x102
x117 = x0 * (x59 + A[1] + R[1]) + x38 * (x0 + x116)
x118 = x117 * x48
x119 = x0 * (x107 + x116 + x18 + x61) + x109 * x81
x120 = x119 * x41
x121 = x39 * x9
x122 = x117 * x50
x123 = x87 * x9
x124 = x28 * (x0 * (4.0 * x102 + x80) + x117 * x81)
x125 = x36 + R[2]
x126 = x125 * x28
x127 = x125 * x84
x128 = x125 * x37
x129 = x128 + x43
x130 = x129 * x46
x131 = x130 * x78
x132 = x125 * x50
x133 = x125 * x87
x134 = x125 * x52
x135 = x46 * (x134 + x43)
x136 = x135 * x47
x137 = x135 * x39
x138 = x0 * (x72 + R[2])
x139 = 2.0 * x128
x140 = x52 * (x0 + x139)
x141 = x138 + x140
x142 = x141 * x48
x143 = 2.0 * x134
x144 = x0 * (x71 + A[2] + R[2]) + x52 * (x0 + x143)
x145 = x144 * x48
x146 = x144 * x50
x147 = x0 * (x139 + x143 + x18 + x73) + x141 * x91
x148 = x147 * x41
x149 = x28 * (x0 * (4.0 * x134 + x90) + x144 * x91)
# 90 item(s)
result[0] += -x28 * (x0 * (2.0 * x10 + x14 + x17 + 2.0 * x3) + x21 * x9)
result[1] += -x31 * x34
result[2] += -x34 * x37
result[3] += -x40 * x42
result[4] += -x45 * x49
result[5] += -x37 * x38 * x51
result[6] += -x42 * x53
result[7] += -x31 * x51 * x52
result[8] += -x49 * x55
result[9] += -x57 * x58
result[10] += -x62 * x64
result[11] += -x37 * x65 * x66
result[12] += -x19 * x38 * x67
result[13] += -x45 * x52 * x63
result[14] += -x38 * x55 * x63
result[15] += -x58 * x69
result[16] += -x31 * x66 * x70
result[17] += -x64 * x74
result[18] += -x76 * x79
result[19] += -x82 * x83
result[20] += -x37 * x76 * x85
result[21] += -x53 * x65 * x77
result[22] += -x52 * x62 * x86
result[23] += -x55 * x65 * x88
result[24] += -x40 * x70 * x77
result[25] += -x45 * x70 * x88
result[26] += -x38 * x74 * x86
result[27] += -x79 * x89
result[28] += -x31 * x85 * x89
result[29] += -x83 * x92
result[30] += -x93 * x95
result[31] += -x100 * x96
result[32] += -x101 * x37 * x96
result[33] += -x104 * x17
result[34] += -x105 * x110
result[35] += -x111 * x112 * x37
result[36] += -x113 * x17 * x52
result[37] += -x111 * x53 * x99
result[38] += -x111 * x114 * x55
result[39] += -x115 * x118
result[40] += -x120 * x121
result[41] += -x122 * x37 * x9
result[42] += -x103 * x115 * x52
result[43] += -x109 * x67 * x9
result[44] += -x103 * x55 * x9
result[45] += -x114 * x115 * x70
result[46] += -x123 * x70 * x98
result[47] += -x113 * x74 * x9
result[48] += -x124 * x5
result[49] += -x28 * (x0 * (2.0 * x106 + 2.0 * x108 + x117 + x62) + x119 * x38)
result[50] += -x124 * x37
result[51] += -x122 * x5 * x52
result[52] += -x120 * x53
result[53] += -x118 * x55
result[54] += -x112 * x5 * x70
result[55] += -x110 * x69
result[56] += -x104 * x74
result[57] += -x101 * x5 * x89
result[58] += -x100 * x89
result[59] += -x92 * x95
result[60] += -x126 * x93
result[61] += -x127 * x31 * x96
result[62] += -x131 * x96
result[63] += -x132 * x17 * x38
result[64] += -x111 * x133 * x45
result[65] += -x111 * x130 * x40
result[66] += -x136 * x17
result[67] += -x111 * x137 * x31
result[68] += -x105 * x142
result[69] += -x115 * x133 * x65
result[70] += -x132 * x62 * x9
result[71] += -x123 * x129 * x65
result[72] += -x115 * x135 * x38
result[73] += -x135 * x45 * x9
result[74] += -x141 * x25 * x38 * x43 * x9
result[75] += -x115 * x145
result[76] += -x146 * x31 * x9
result[77] += -x121 * x148
result[78] += -x127 * x5 * x76
result[79] += -x126 * x82
result[80] += -x131 * x76
result[81] += -x137 * x5 * x65
result[82] += -x136 * x62
result[83] += -x142 * x57
result[84] += -x146 * x38 * x5
result[85] += -x145 * x45
result[86] += -x148 * x40
result[87] += -x149 * x5
result[88] += -x149 * x31
result[89] += -x28 * (x0 * (2.0 * x138 + 2.0 * x140 + x144 + x74) + x147 * x52)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_13(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_31."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_31(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 10, 3), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_41(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (gp) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = 0.5 / (ax + bx)
x1 = (ax + bx) ** (-1.0)
x2 = ax * bx * x1
x3 = numpy.exp(-x2 * (A[0] - B[0]) ** 2)
x4 = 1.77245385090551603 * numpy.sqrt(x1)
x5 = x3 * x4
x6 = x0 * x5
x7 = 3.0 * x6
x8 = -x1 * (ax * A[0] + bx * B[0])
x9 = -x8 - B[0]
x10 = -x8 - A[0]
x11 = x10 * x5
x12 = x11 * x9
x13 = -x8 - R[0]
x14 = x11 * x13
x15 = x5 * x9
x16 = x13 * x15
x17 = x0 * (x12 + x14 + x16 + x7)
x18 = x13 * x5
x19 = x0 * (x15 + x18)
x20 = x16 + x6
x21 = x10 * x20
x22 = x19 + x21
x23 = x10 * x22
x24 = x10**2 * x5
x25 = x24 + x7
x26 = x0 * (x11 + x18)
x27 = x14 + x6
x28 = x10 * x27
x29 = x26 + x28
x30 = x0 * (2.0 * x14 + x25) + x10 * x29
x31 = x0 * (x11 + x15)
x32 = x12 + x6
x33 = x10 * x32
x34 = x31 + x33
x35 = x0 * (2.0 * x12 + x25) + x10 * x34
x36 = x17 + x23
x37 = x0 * (2.0 * x19 + 2.0 * x21 + x29 + x34) + x10 * x36
x38 = da * db
x39 = 0.0975900072948533179 * x38
x40 = numpy.exp(-x2 * (A[1] - B[1]) ** 2)
x41 = numpy.exp(-x2 * (A[2] - B[2]) ** 2)
x42 = 3.14159265358979324 * x1 * x41
x43 = x40 * x42
x44 = x39 * x43
x45 = -x1 * (ax * A[1] + bx * B[1])
x46 = -x45 - B[1]
x47 = x24 + x6
x48 = 2.0 * x0 * x11 + x10 * x47
x49 = x44 * (x0 * (3.0 * x26 + 3.0 * x28 + x48) + x10 * x30)
x50 = -x1 * (ax * A[2] + bx * B[2])
x51 = -x50 - B[2]
x52 = -x45 - A[1]
x53 = 0.258198889747161126 * x38
x54 = x52 * x53
x55 = x37 * x43
x56 = x0 * x4
x57 = x40 * x56
x58 = x4 * x40
x59 = x52 * x58
x60 = x46 * x59
x61 = x57 + x60
x62 = x4 * x41
x63 = x30 * x53
x64 = x43 * x63
x65 = -x50 - A[2]
x66 = x53 * x65
x67 = x41 * x56
x68 = x62 * x65
x69 = x51 * x68
x70 = x67 + x69
x71 = x52**2 * x58
x72 = x57 + x71
x73 = 0.333333333333333333 * x38
x74 = x72 * x73
x75 = x46 * x58
x76 = x0 * (x59 + x75)
x77 = x52 * x61
x78 = x76 + x77
x79 = x29 * x73
x80 = x51 * x62
x81 = 1.73205080756887729
x82 = x65 * x73 * x81
x83 = x79 * x81
x84 = x62 * x65**2
x85 = x67 + x84
x86 = x73 * x85
x87 = x0 * (x68 + x80)
x88 = x65 * x70
x89 = x87 + x88
x90 = x52 * (2.0 * x57 + x72)
x91 = x53 * x62
x92 = 3.0 * x57
x93 = x71 + x92
x94 = x0 * (2.0 * x60 + x93) + x52 * x78
x95 = x27 * x53
x96 = x22 * x81
x97 = x27 * x81
x98 = x73 * x97
x99 = x65 * (2.0 * x67 + x85)
x100 = x53 * x58
x101 = 3.0 * x67
x102 = x101 + x84
x103 = x0 * (x102 + 2.0 * x69) + x65 * x89
x104 = x0 * (3.0 * x71 + x92) + x52 * x90
x105 = x20 * x39
x106 = x3 * x39
x107 = x106 * x42
x108 = x107 * (x0 * (3.0 * x76 + 3.0 * x77 + x90) + x52 * x94)
x109 = x104 * x107
x110 = x53 * x90
x111 = x3 * x42
x112 = x111 * x66
x113 = x53 * x99
x114 = 3.14159265358979324 * x1 * x40
x115 = x114 * x3
x116 = x103 * x115
x117 = x0 * (x101 + 3.0 * x84) + x65 * x99
x118 = x106 * x114
x119 = x117 * x118
x120 = x118 * (x0 * (3.0 * x87 + 3.0 * x88 + x99) + x103 * x65)
x121 = -x45 - R[1]
x122 = x44 * (x0 * (3.0 * x31 + 3.0 * x33 + x48) + x10 * x35)
x123 = x0 * (3.0 * x24 + x7) + x10 * x48
x124 = x121 * x75
x125 = x124 + x57
x126 = x125 * x39
x127 = x123 * x44
x128 = x121 * x59
x129 = x128 + x57
x130 = x121 * x58
x131 = x0 * (x130 + x75)
x132 = x125 * x52
x133 = x131 + x132
x134 = x48 * x53
x135 = x35 * x43
x136 = x0 * (x130 + x59)
x137 = x129 * x52
x138 = x136 + x137
x139 = x138 * x73
x140 = x0 * (x124 + x128 + x60 + x92)
x141 = x133 * x52
x142 = x140 + x141
x143 = x47 * x73
x144 = x129 * x81
x145 = x144 * x73
x146 = x68 * x81
x147 = x0 * (2.0 * x128 + x93) + x138 * x52
x148 = x0 * (2.0 * x131 + 2.0 * x132 + x138 + x78) + x142 * x52
x149 = x111 * x148
x150 = x10 * x53
x151 = x111 * x150
x152 = x11 * x81
x153 = x107 * (x0 * (3.0 * x136 + 3.0 * x137 + x90) + x147 * x52)
x154 = x5 * x53
x155 = -x50 - R[2]
x156 = x155 * x80
x157 = x156 + x67
x158 = x157 * x39
x159 = x155 * x62
x160 = x155 * x68
x161 = x160 + x67
x162 = x0 * (x159 + x80)
x163 = x157 * x65
x164 = x162 + x163
x165 = x161 * x81
x166 = x165 * x73
x167 = x59 * x81
x168 = x0 * (x159 + x68)
x169 = x161 * x65
x170 = x168 + x169
x171 = x170 * x73
x172 = x0 * (x101 + x156 + x160 + x69)
x173 = x164 * x65
x174 = x172 + x173
x175 = x0 * (x102 + 2.0 * x160) + x170 * x65
x176 = x115 * x175
x177 = x0 * (2.0 * x162 + 2.0 * x163 + x170 + x89) + x174 * x65
x178 = x115 * x177
x179 = x118 * (x0 * (3.0 * x168 + 3.0 * x169 + x99) + x175 * x65)
# 135 item(s)
result[0] += x44 * (x0 * (3.0 * x17 + 3.0 * x23 + x30 + x35) + x10 * x37)
result[1] += x46 * x49
result[2] += x49 * x51
result[3] += x54 * x55
result[4] += x61 * x62 * x63
result[5] += x51 * x52 * x64
result[6] += x55 * x66
result[7] += x46 * x64 * x65
result[8] += x58 * x63 * x70
result[9] += x36 * x62 * x74
result[10] += x62 * x78 * x79
result[11] += x29 * x74 * x80
result[12] += x36 * x43 * x52 * x82
result[13] += x61 * x68 * x83
result[14] += x59 * x70 * x83
result[15] += x36 * x58 * x86
result[16] += x29 * x75 * x86
result[17] += x58 * x79 * x89
result[18] += x22 * x90 * x91
result[19] += x27 * x91 * x94
result[20] += x80 * x90 * x95
result[21] += x68 * x74 * x96
result[22] += x68 * x78 * x98
result[23] += x70 * x74 * x97
result[24] += x59 * x86 * x96
result[25] += x61 * x86 * x97
result[26] += x59 * x89 * x98
result[27] += x100 * x22 * x99
result[28] += x75 * x95 * x99
result[29] += x100 * x103 * x27
result[30] += x104 * x105 * x62
result[31] += x108 * x13
result[32] += x109 * x13 * x51
result[33] += x110 * x20 * x68
result[34] += x112 * x13 * x94
result[35] += x110 * x18 * x70
result[36] += x20 * x72 * x86
result[37] += x18 * x78 * x86
result[38] += x18 * x74 * x89
result[39] += x113 * x20 * x59
result[40] += x113 * x18 * x61
result[41] += x116 * x13 * x54
result[42] += x105 * x117 * x58
result[43] += x119 * x13 * x46
result[44] += x120 * x13
result[45] += x121 * x122
result[46] += x123 * x126 * x62
result[47] += x121 * x127 * x51
result[48] += x129 * x35 * x91
result[49] += x133 * x48 * x91
result[50] += x129 * x134 * x80
result[51] += x121 * x135 * x66
result[52] += x125 * x134 * x68
result[53] += x130 * x134 * x70
result[54] += x139 * x34 * x62
result[55] += x142 * x143 * x62
result[56] += x138 * x143 * x80
result[57] += x145 * x34 * x68
result[58] += x133 * x143 * x146
result[59] += x143 * x144 * x70
result[60] += x130 * x34 * x86
result[61] += x125 * x47 * x86
result[62] += x130 * x143 * x89
result[63] += x147 * x32 * x91
result[64] += x149 * x150
result[65] += x147 * x151 * x51
result[66] += x139 * x146 * x32
result[67] += x10 * x111 * x142 * x82
result[68] += x139 * x152 * x70
result[69] += x144 * x32 * x86
result[70] += x133 * x152 * x86
result[71] += x11 * x145 * x89
result[72] += x113 * x130 * x32
result[73] += x11 * x113 * x125
result[74] += x116 * x121 * x150
result[75] += x153 * x9
result[76] += x107 * (x0 * (3.0 * x140 + 3.0 * x141 + x147 + x94) + x148 * x52)
result[77] += x153 * x51
result[78] += x112 * x147 * x9
result[79] += x149 * x66
result[80] += x147 * x154 * x70
result[81] += x138 * x15 * x86
result[82] += x142 * x5 * x86
result[83] += x139 * x5 * x89
result[84] += x113 * x129 * x15
result[85] += x133 * x154 * x99
result[86] += x103 * x129 * x154
result[87] += x119 * x121 * x9
result[88] += x117 * x126 * x5
result[89] += x120 * x121
result[90] += x122 * x155
result[91] += x127 * x155 * x46
result[92] += x123 * x158 * x58
result[93] += x135 * x155 * x54
result[94] += x134 * x159 * x61
result[95] += x134 * x157 * x59
result[96] += x100 * x161 * x35
result[97] += x134 * x161 * x75
result[98] += x100 * x164 * x48
result[99] += x159 * x34 * x74
result[100] += x143 * x159 * x78
result[101] += x157 * x47 * x74
result[102] += x166 * x34 * x59
result[103] += x143 * x165 * x61
result[104] += x143 * x164 * x167
result[105] += x171 * x34 * x58
result[106] += x143 * x170 * x75
result[107] += x143 * x174 * x58
result[108] += x110 * x159 * x32
result[109] += x151 * x155 * x94
result[110] += x11 * x110 * x157
result[111] += x165 * x32 * x74
result[112] += x11 * x166 * x78
result[113] += x152 * x164 * x74
result[114] += x167 * x171 * x32
result[115] += x152 * x171 * x61
result[116] += x10 * x115 * x174 * x52 * x73 * x81
result[117] += x100 * x175 * x32
result[118] += x150 * x176 * x46
result[119] += x150 * x178
result[120] += x109 * x155 * x9
result[121] += x108 * x155
result[122] += x104 * x158 * x5
result[123] += x110 * x15 * x161
result[124] += x154 * x161 * x94
result[125] += x154 * x164 * x90
result[126] += x15 * x170 * x74
result[127] += x171 * x5 * x78
result[128] += x174 * x5 * x74
result[129] += x176 * x54 * x9
result[130] += x154 * x175 * x61
result[131] += x178 * x54
result[132] += x179 * x9
result[133] += x179 * x46
result[134] += x118 * (x0 * (x103 + 3.0 * x172 + 3.0 * x173 + x175) + x177 * x65)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_14(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_41."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_41(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 15, 3), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_22(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (dd) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = x0 * (ax * A[0] + bx * B[0])
x2 = -x1
x3 = x2 + B[0]
x4 = x2 + R[0]
x5 = x3 * x4
x6 = 2.0 * x5
x7 = x0 + x6
x8 = x3 * x7
x9 = x2 + A[0]
x10 = x7 * x9
x11 = -2.0 * x1
x12 = x11 + B[0]
x13 = x12 + R[0]
x14 = 3.0 * x0
x15 = x0 * (x12 + A[0])
x16 = x3 * x9
x17 = 2.0 * x16
x18 = x0 + x17
x19 = x15 + x18 * x3
x20 = x4 * x9
x21 = 2.0 * x20
x22 = x0 * (x14 + x17 + x21 + x6)
x23 = x0 * x13
x24 = x10 + x23
x25 = 2.0 * x24
x26 = x22 + x25 * x3
x27 = ax * bx * x0
x28 = (
5.56832799683170785
* da
* db
* numpy.exp(-x27 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x29 = numpy.sqrt(x0) * x28
x30 = x0 * x29
x31 = 0.0833333333333333333 * x30
x32 = x0 * (ax * A[1] + bx * B[1])
x33 = -x32
x34 = x33 + B[1]
x35 = 1.73205080756887729
x36 = x31 * x35
x37 = x36 * (x22 + x25 * x9)
x38 = x0 * (ax * A[2] + bx * B[2])
x39 = -x38
x40 = x39 + B[2]
x41 = 0.166666666666666667 * x0 * (x11 + A[0] + R[0]) + 0.166666666666666667 * x9 * (
x0 + x21
)
x42 = x34**2
x43 = 0.5 * x0
x44 = x0**1.5 * x28
x45 = x44 * (x42 + x43)
x46 = x30 * x35
x47 = x40 * x46
x48 = x40**2
x49 = x44 * (x43 + x48)
x50 = x33 + A[1]
x51 = x26 * x36
x52 = x34 * x50
x53 = x44 * (x43 + x52)
x54 = 0.5 * x24
x55 = x29 * x43
x56 = x24 * x55
x57 = -2.0 * x32
x58 = x57 + B[1]
x59 = x0 * (x58 + A[1])
x60 = 2.0 * x52
x61 = x0 + x60
x62 = x34 * x61 + x59
x63 = x20 + x43
x64 = 0.166666666666666667 * x44
x65 = x35 * x64
x66 = x63 * x65
x67 = 0.333333333333333333 * x35
x68 = x63 * x67
x69 = x39 + A[2]
x70 = x40 * x69
x71 = x43 + x70
x72 = x44 * x71
x73 = -2.0 * x38
x74 = x73 + B[2]
x75 = x0 * (x74 + A[2])
x76 = 2.0 * x70
x77 = x0 + x76
x78 = x40 * x77 + x75
x79 = x43 + x50**2
x80 = x23 + x8
x81 = x64 * x80
x82 = x50 * x61 + x59
x83 = x43 + x5
x84 = x65 * x83
x85 = x44 * x67
x86 = x83 * x85
x87 = 2.0 * x50
x88 = x0 * (x14 + 2.0 * x42 + 4.0 * x52) + x62 * x87
x89 = x31 * x4
x90 = 0.166666666666666667 * x4
x91 = 0.333333333333333333 * x4
x92 = x46 * x69
x93 = 0.166666666666666667 * x92
x94 = x46 * x90
x95 = x43 + x69**2
x96 = x69 * x77 + x75
x97 = 2.0 * x69
x98 = x0 * (x14 + 2.0 * x48 + 4.0 * x70) + x78 * x97
x99 = x3**2
x100 = x0 * (x14 + 4.0 * x16 + 2.0 * x99) + 2.0 * x19 * x9
x101 = x33 + R[1]
x102 = x101 * x31
x103 = x15 + x18 * x9
x104 = x101 * x34
x105 = x104 + x43
x106 = x105 * x65
x107 = 0.166666666666666667 * x101
x108 = x43 + x9**2
x109 = x58 + R[1]
x110 = x0 * x109
x111 = 2.0 * x104
x112 = x0 + x111
x113 = x112 * x34
x114 = x110 + x113
x115 = x114 * x64
x116 = x105 * x85
x117 = 0.333333333333333333 * x101
x118 = x101 * x50
x119 = x118 + x43
x120 = x119 * x65
x121 = x16 + x43
x122 = x121 * x44
x123 = x112 * x50
x124 = x110 + x123
x125 = 0.5 * x124
x126 = 2.0 * x118
x127 = x0 * (x111 + x126 + x14 + x60)
x128 = 2.0 * x124 * x34 + x127
x129 = x128 * x36
x130 = x124 * x55
x131 = x119 * x67
x132 = x107 * x46
x133 = x0 * (x57 + A[1] + R[1]) + x50 * (x0 + x126)
x134 = x43 + x99
x135 = x134 * x64
x136 = x36 * (x124 * x87 + x127)
x137 = 0.166666666666666667 * x133
x138 = x134 * x44
x139 = x39 + R[2]
x140 = x139 * x31
x141 = 0.166666666666666667 * x46
x142 = x139 * x141
x143 = x139 * x40
x144 = x143 + x43
x145 = x144 * x65
x146 = 0.333333333333333333 * x139
x147 = x144 * x85
x148 = x74 + R[2]
x149 = x0 * x148
x150 = 2.0 * x143
x151 = x0 + x150
x152 = x151 * x40
x153 = x149 + x152
x154 = x153 * x64
x155 = x139 * x69
x156 = x155 + x43
x157 = x156 * x65
x158 = x151 * x69
x159 = x149 + x158
x160 = 0.5 * x159
x161 = x156 * x67
x162 = x159 * x55
x163 = 2.0 * x155
x164 = x0 * (x14 + x150 + x163 + x76)
x165 = 2.0 * x159 * x40 + x164
x166 = x165 * x36
x167 = x0 * (x73 + A[2] + R[2]) + x69 * (x0 + x163)
x168 = 0.166666666666666667 * x167
x169 = x36 * (x159 * x97 + x164)
# 108 item(s)
result[0] += -x31 * (x0 * (2.0 * x10 + x13 * x14 + x19 + x8) + x26 * x9)
result[1] += -x34 * x37
result[2] += -x37 * x40
result[3] += -x41 * x45
result[4] += -x34 * x41 * x47
result[5] += -x41 * x49
result[6] += -x50 * x51
result[7] += -x53 * x54
result[8] += -x40 * x50 * x56
result[9] += -x62 * x66
result[10] += -x40 * x53 * x63
result[11] += -x49 * x50 * x68
result[12] += -x51 * x69
result[13] += -x34 * x56 * x69
result[14] += -x54 * x72
result[15] += -x45 * x68 * x69
result[16] += -x34 * x63 * x72
result[17] += -x66 * x78
result[18] += -x79 * x81
result[19] += -x82 * x84
result[20] += -x40 * x79 * x86
result[21] += -x88 * x89
result[22] += -x47 * x82 * x90
result[23] += -x49 * x79 * x91
result[24] += -x50 * x80 * x93
result[25] += -x53 * x69 * x83
result[26] += -x50 * x72 * x83
result[27] += -x62 * x90 * x92
result[28] += -x4 * x53 * x71
result[29] += -x50 * x78 * x94
result[30] += -x81 * x95
result[31] += -x34 * x86 * x95
result[32] += -x84 * x96
result[33] += -x45 * x91 * x95
result[34] += -x34 * x94 * x96
result[35] += -x89 * x98
result[36] += -x100 * x102
result[37] += -x103 * x106
result[38] += -x103 * x107 * x47
result[39] += -x108 * x115
result[40] += -x108 * x116 * x40
result[41] += -x108 * x117 * x49
result[42] += -x120 * x19
result[43] += -x122 * x125
result[44] += -x119 * x122 * x40
result[45] += -x129 * x9
result[46] += -x130 * x40 * x9
result[47] += -x131 * x49 * x9
result[48] += -x101 * x19 * x93
result[49] += -x105 * x122 * x69
result[50] += -x101 * x121 * x72
result[51] += -x114 * x9 * x93
result[52] += -x105 * x72 * x9
result[53] += -x132 * x78 * x9
result[54] += -x133 * x135
result[55] += -x136 * x3
result[56] += -x137 * x3 * x47
result[57] += -x31 * (x0 * (x109 * x14 + x113 + 2.0 * x123 + x62) + x128 * x50)
result[58] += -x136 * x40
result[59] += -x137 * x49
result[60] += -x131 * x138 * x69
result[61] += -x130 * x3 * x69
result[62] += -x119 * x3 * x72
result[63] += -x129 * x69
result[64] += -x125 * x72
result[65] += -x120 * x78
result[66] += -x117 * x138 * x95
result[67] += -x116 * x3 * x95
result[68] += -x132 * x3 * x96
result[69] += -x115 * x95
result[70] += -x106 * x96
result[71] += -x102 * x98
result[72] += -x100 * x140
result[73] += -x103 * x142 * x34
result[74] += -x103 * x145
result[75] += -x108 * x146 * x45
result[76] += -x108 * x147 * x34
result[77] += -x108 * x154
result[78] += -x142 * x19 * x50
result[79] += -x121 * x139 * x53
result[80] += -x122 * x144 * x50
result[81] += -x142 * x62 * x9
result[82] += -x144 * x53 * x9
result[83] += -x141 * x153 * x50 * x9
result[84] += -x157 * x19
result[85] += -x122 * x156 * x34
result[86] += -x122 * x160
result[87] += -x161 * x45 * x9
result[88] += -x162 * x34 * x9
result[89] += -x166 * x9
result[90] += -x138 * x146 * x79
result[91] += -x142 * x3 * x82
result[92] += -x147 * x3 * x79
result[93] += -x140 * x88
result[94] += -x145 * x82
result[95] += -x154 * x79
result[96] += -x138 * x161 * x50
result[97] += -x156 * x3 * x53
result[98] += -x162 * x3 * x50
result[99] += -x157 * x62
result[100] += -x160 * x53
result[101] += -x166 * x50
result[102] += -x135 * x167
result[103] += -x168 * x3 * x34 * x46
result[104] += -x169 * x3
result[105] += -x168 * x45
result[106] += -x169 * x34
result[107] += -x31 * (x0 * (x14 * x148 + x152 + 2.0 * x158 + x78) + x165 * x69)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_32(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (fd) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = 3.0 * x0
x2 = x0 * (ax * A[0] + bx * B[0])
x3 = -x2
x4 = x3 + A[0]
x5 = x3 + B[0]
x6 = x4 * x5
x7 = 2.0 * x6
x8 = x3 + R[0]
x9 = x4 * x8
x10 = 2.0 * x9
x11 = x5 * x8
x12 = 2.0 * x11
x13 = x0 * (x1 + x10 + x12 + x7)
x14 = -2.0 * x2
x15 = x14 + B[0]
x16 = x15 + R[0]
x17 = x0 * x16
x18 = x0 + x12
x19 = x18 * x4
x20 = x17 + x19
x21 = 4.0 * x20
x22 = x5**2
x23 = x1 + 4.0 * x6
x24 = x0 * (x15 + A[0])
x25 = x0 + x7
x26 = x25 * x5
x27 = x24 + x26
x28 = 2.0 * x4
x29 = x0 * (2.0 * x22 + x23) + x27 * x28
x30 = x18 * x5
x31 = 2.0 * x19
x32 = x13 + 2.0 * x20 * x5
x33 = x0 * (x1 * x16 + x27 + x30 + x31) + x32 * x4
x34 = 2.2360679774997897
x35 = ax * bx * x0
x36 = (
5.56832799683170785
* da
* db
* numpy.exp(-x35 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x37 = x0**1.5 * x36
x38 = x34 * x37
x39 = 0.00833333333333333333 * x38
x40 = x0 * (ax * A[1] + bx * B[1])
x41 = -x40
x42 = x41 + B[1]
x43 = 3.87298334620741689
x44 = x42 * x43
x45 = x0 * (x14 + A[0] + R[0]) + x4 * (x0 + x10)
x46 = x25 * x4
x47 = x24 + x46
x48 = x13 + x20 * x28
x49 = 0.0166666666666666667 * x37
x50 = x49 * (x0 * (2.0 * x17 + x31 + x45 + x47) + x4 * x48)
x51 = x0 * (ax * A[2] + bx * B[2])
x52 = -x51
x53 = x52 + B[2]
x54 = x43 * x53
x55 = x4**2
x56 = 2.0 * x55
x57 = (
0.0166666666666666667 * x0 * (x1 + x56 + 4.0 * x9)
+ 0.0166666666666666667 * x28 * x45
)
x58 = x42**2
x59 = 0.5 * x0
x60 = x0**1.5 * x36
x61 = x60 * (x58 + x59)
x62 = x34 * x61
x63 = x37 * x44
x64 = x53**2
x65 = x60 * (x59 + x64)
x66 = x34 * x65
x67 = x41 + A[1]
x68 = 0.0833333333333333333 * x37
x69 = x33 * x68
x70 = x42 * x67
x71 = x59 + x70
x72 = 1.73205080756887729
x73 = 0.0833333333333333333 * x60
x74 = x72 * x73
x75 = x48 * x74
x76 = x53 * x72
x77 = x48 * x68
x78 = -2.0 * x40
x79 = x78 + B[1]
x80 = x0 * (x79 + A[1])
x81 = 2.0 * x70
x82 = x0 + x81
x83 = x42 * x82
x84 = x80 + x83
x85 = x45 * x73
x86 = x60 * x71
x87 = 0.166666666666666667 * x45
x88 = x72 * x87
x89 = x52 + A[2]
x90 = x72 * x89
x91 = x53 * x89
x92 = x59 + x91
x93 = x60 * x92
x94 = -2.0 * x51
x95 = x94 + B[2]
x96 = x0 * (x95 + A[2])
x97 = 2.0 * x91
x98 = x0 + x97
x99 = x53 * x98
x100 = x96 + x99
x101 = x67**2
x102 = x101 + x59
x103 = x32 * x73
x104 = x67 * x82
x105 = x104 + x80
x106 = x20 * x74
x107 = 0.166666666666666667 * x60
x108 = x102 * x107
x109 = x1 + 4.0 * x70
x110 = 2.0 * x67
x111 = x0 * (x109 + 2.0 * x58) + x110 * x84
x112 = x59 + x9
x113 = x112 * x73
x114 = x107 * x112
x115 = 0.333333333333333333 * x112
x116 = x68 * x90
x117 = 0.5 * x20
x118 = x114 * x72
x119 = x89**2
x120 = x119 + x59
x121 = x107 * x120
x122 = x121 * x72
x123 = x89 * x98
x124 = x123 + x96
x125 = x1 + 4.0 * x91
x126 = 2.0 * x89
x127 = x0 * (x125 + 2.0 * x64) + x100 * x126
x128 = x17 + x30
x129 = x128 * x67
x130 = 1.5 * x0
x131 = x101 + x130
x132 = x131 * x60
x133 = 0.0333333333333333333 * x34
x134 = x132 * x133
x135 = 2.0 * x101
x136 = x0 * (x109 + x135) + x105 * x110
x137 = x11 + x59
x138 = 0.0166666666666666667 * x60
x139 = x138 * x43
x140 = x137 * x139
x141 = 0.0666666666666666667 * x67
x142 = x132 * x141
x143 = 2.0 * x0
x144 = x111 * x67 + x143 * (x104 + 2.0 * x80 + x83)
x145 = 0.0166666666666666667 * x38
x146 = x145 * x8
x147 = x49 * x8
x148 = x128 * x89
x149 = x137 * x72
x150 = x107 * x149
x151 = 0.333333333333333333 * x149
x152 = x68 * x8
x153 = x72 * x93
x154 = 0.166666666666666667 * x8
x155 = x124 * x72
x156 = x119 + x130
x157 = x133 * x60
x158 = x156 * x157
x159 = x156 * x89
x160 = 0.0666666666666666667 * x60
x161 = x160 * x44
x162 = 2.0 * x119
x163 = x0 * (x125 + x162) + x124 * x126
x164 = 0.0666666666666666667 * x62
x165 = x127 * x89 + x143 * (x123 + 2.0 * x96 + x99)
x166 = x143 * (2.0 * x24 + x26 + x46) + x29 * x4
x167 = x41 + R[1]
x168 = x145 * x167
x169 = x0 * (x23 + x56) + x28 * x47
x170 = x167 * x42
x171 = x170 + x59
x172 = x139 * x171
x173 = x167 * x49
x174 = x79 + R[1]
x175 = x0 * x174
x176 = 2.0 * x170
x177 = x0 + x176
x178 = x177 * x42
x179 = x175 + x178
x180 = x179 * x4
x181 = x130 + x55
x182 = x157 * x181
x183 = x171 * x4
x184 = x181 * x4
x185 = x167 * x67
x186 = x185 + x59
x187 = x186 * x73
x188 = x177 * x67
x189 = x175 + x188
x190 = x189 * x74
x191 = x107 * x47
x192 = x55 + x59
x193 = 2.0 * x185
x194 = x0 * (x1 + x176 + x193 + x81)
x195 = x189 * x42
x196 = x194 + 2.0 * x195
x197 = x196 * x73
x198 = x107 * x192
x199 = 0.333333333333333333 * x186
x200 = x167 * x68
x201 = 0.166666666666666667 * x153
x202 = x179 * x89
x203 = 0.333333333333333333 * x171
x204 = x0 * (x78 + A[1] + R[1]) + x67 * (x0 + x193)
x205 = x204 * x73
x206 = x59 + x6
x207 = x110 * x189 + x194
x208 = x207 * x74
x209 = x107 * x206
x210 = 2.0 * x188
x211 = x0 * (x1 * x174 + x178 + x210 + x84) + x196 * x67
x212 = x211 * x68
x213 = 0.166666666666666667 * x4
x214 = x107 * x186
x215 = 0.5 * x189
x216 = x206 * x60
x217 = x4 * x72
x218 = x216 * x72
x219 = x0 * (x1 + x135 + 4.0 * x185) + x110 * x204
x220 = x22 + x59
x221 = x220 * x34
x222 = x138 * x221
x223 = x49 * (x0 * (x105 + 2.0 * x175 + x204 + x210) + x207 * x67)
x224 = x43 * x5
x225 = 0.0166666666666666667 * x219
x226 = x107 * x220
x227 = x220 * x60
x228 = x159 * x160
x229 = x52 + R[2]
x230 = x145 * x229
x231 = x229 * x49
x232 = x229 * x53
x233 = x232 + x59
x234 = x139 * x233
x235 = x95 + R[2]
x236 = x0 * x235
x237 = 2.0 * x232
x238 = x0 + x237
x239 = x238 * x53
x240 = x236 + x239
x241 = x240 * x4
x242 = x229 * x68
x243 = x72 * x86
x244 = 0.166666666666666667 * x243
x245 = x191 * x72
x246 = x233 * x67
x247 = 0.333333333333333333 * x233
x248 = x240 * x67
x249 = x229 * x89
x250 = x249 + x59
x251 = x250 * x73
x252 = x238 * x89
x253 = x236 + x252
x254 = x253 * x74
x255 = 0.333333333333333333 * x250
x256 = x42 * x72
x257 = 2.0 * x249
x258 = x0 * (x1 + x237 + x257 + x97)
x259 = x253 * x53
x260 = x258 + 2.0 * x259
x261 = x260 * x73
x262 = x105 * x72
x263 = x107 * x217
x264 = x107 * x250
x265 = x67 * x72
x266 = 0.5 * x253
x267 = x217 * x68
x268 = x0 * (x94 + A[2] + R[2]) + x89 * (x0 + x257)
x269 = x268 * x73
x270 = x126 * x253 + x258
x271 = x270 * x74
x272 = 2.0 * x252
x273 = x0 * (x1 * x235 + x100 + x239 + x272) + x260 * x89
x274 = x273 * x68
x275 = x0 * (x1 + x162 + 4.0 * x249) + x126 * x268
x276 = 0.0166666666666666667 * x275
x277 = x49 * (x0 * (x124 + 2.0 * x236 + x268 + x272) + x270 * x89)
# 180 item(s)
result[0] += x39 * (x0 * (4.0 * x13 + x21 * x4 + x21 * x5 + x29) + x28 * x33)
result[1] += x44 * x50
result[2] += x50 * x54
result[3] += x57 * x62
result[4] += x53 * x57 * x63
result[5] += x57 * x66
result[6] += x67 * x69
result[7] += x71 * x75
result[8] += x67 * x76 * x77
result[9] += x84 * x85
result[10] += x53 * x86 * x88
result[11] += x65 * x67 * x87
result[12] += x69 * x89
result[13] += x42 * x77 * x90
result[14] += x75 * x92
result[15] += x61 * x87 * x89
result[16] += x42 * x88 * x93
result[17] += x100 * x85
result[18] += x102 * x103
result[19] += x105 * x106
result[20] += x108 * x20 * x76
result[21] += x111 * x113
result[22] += x105 * x114 * x76
result[23] += x102 * x115 * x65
result[24] += x116 * x32 * x67
result[25] += x117 * x86 * x89
result[26] += x117 * x67 * x93
result[27] += x118 * x84 * x89
result[28] += x112 * x71 * x93
result[29] += x100 * x118 * x67
result[30] += x103 * x120
result[31] += x122 * x20 * x42
result[32] += x106 * x124
result[33] += x115 * x120 * x61
result[34] += x118 * x124 * x42
result[35] += x113 * x127
result[36] += x129 * x134
result[37] += x136 * x140
result[38] += x137 * x142 * x54
result[39] += x144 * x146
result[40] += x136 * x147 * x54
result[41] += x131 * x141 * x66 * x8
result[42] += x108 * x148
result[43] += x105 * x150 * x89
result[44] += x102 * x151 * x93
result[45] += x111 * x152 * x89
result[46] += x105 * x153 * x154
result[47] += x100 * x108 * x8
result[48] += x121 * x129
result[49] += x120 * x151 * x86
result[50] += x124 * x150 * x67
result[51] += x121 * x8 * x84
result[52] += x154 * x155 * x86
result[53] += x127 * x152 * x67
result[54] += x148 * x158
result[55] += x137 * x159 * x161
result[56] += x140 * x163
result[57] += x159 * x164 * x8
result[58] += x147 * x163 * x44
result[59] += x146 * x165
result[60] += x166 * x168
result[61] += x169 * x172
result[62] += x169 * x173 * x54
result[63] += x180 * x182
result[64] += x160 * x181 * x183 * x54
result[65] += 0.0666666666666666667 * x167 * x184 * x66
result[66] += x187 * x29
result[67] += x190 * x47
result[68] += x186 * x191 * x76
result[69] += x192 * x197
result[70] += x189 * x198 * x76
result[71] += x192 * x199 * x65
result[72] += x200 * x29 * x89
result[73] += x171 * x191 * x90
result[74] += x167 * x201 * x47
result[75] += x198 * x202
result[76] += x153 * x192 * x203
result[77] += x100 * x167 * x198
result[78] += x205 * x27
result[79] += x206 * x208
result[80] += x204 * x209 * x76
result[81] += x212 * x4
result[82] += x207 * x4 * x68 * x76
result[83] += x204 * x213 * x65
result[84] += x214 * x27 * x90
result[85] += x215 * x216 * x89
result[86] += x186 * x206 * x93
result[87] += x116 * x196 * x4
result[88] += x215 * x4 * x93
result[89] += x100 * x214 * x217
result[90] += x121 * x167 * x27
result[91] += x120 * x203 * x218
result[92] += x155 * x167 * x209
result[93] += x121 * x180
result[94] += x107 * x155 * x183
result[95] += x127 * x200 * x4
result[96] += x219 * x222
result[97] += x223 * x224
result[98] += x225 * x37 * x5 * x54
result[99] += x39 * (
x0 * (x111 + 4.0 * x189 * x67 + 4.0 * x194 + 4.0 * x195) + x110 * x211
)
result[100] += x223 * x54
result[101] += x225 * x66
result[102] += x204 * x226 * x89
result[103] += x116 * x207 * x5
result[104] += x201 * x204 * x5
result[105] += x212 * x89
result[106] += x208 * x92
result[107] += x100 * x205
result[108] += x120 * x199 * x227
result[109] += x122 * x189 * x5
result[110] += x155 * x214 * x5
result[111] += x120 * x197
result[112] += x124 * x190
result[113] += x127 * x187
result[114] += x167 * x221 * x228
result[115] += x171 * x224 * x228
result[116] += x163 * x173 * x224
result[117] += x158 * x202
result[118] += x163 * x172
result[119] += x165 * x168
result[120] += x166 * x230
result[121] += x169 * x231 * x44
result[122] += x169 * x234
result[123] += x164 * x184 * x229
result[124] += x161 * x184 * x233
result[125] += x182 * x241
result[126] += x242 * x29 * x67
result[127] += x229 * x244 * x47
result[128] += x245 * x246
result[129] += x198 * x229 * x84
result[130] += x192 * x243 * x247
result[131] += x198 * x248
result[132] += x251 * x29
result[133] += x245 * x250 * x42
result[134] += x254 * x47
result[135] += x192 * x255 * x61
result[136] += x198 * x253 * x256
result[137] += x192 * x261
result[138] += x108 * x229 * x27
result[139] += x209 * x229 * x262
result[140] += x102 * x218 * x247
result[141] += x111 * x242 * x4
result[142] += x105 * x233 * x263
result[143] += x108 * x241
result[144] += x264 * x265 * x27
result[145] += x206 * x250 * x86
result[146] += x216 * x266 * x67
result[147] += x250 * x263 * x84
result[148] += x266 * x4 * x86
result[149] += x260 * x267 * x67
result[150] += x269 * x27
result[151] += x209 * x256 * x268
result[152] += x206 * x271
result[153] += x213 * x268 * x61
result[154] += x267 * x270 * x42
result[155] += x274 * x4
result[156] += x142 * x221 * x229
result[157] += x136 * x224 * x231
result[158] += 0.0666666666666666667 * x132 * x224 * x246
result[159] += x144 * x230
result[160] += x136 * x234
result[161] += x134 * x248
result[162] += x102 * x227 * x255
result[163] += x262 * x264 * x5
result[164] += x108 * x253 * x5 * x72
result[165] += x111 * x251
result[166] += x105 * x254
result[167] += x102 * x261
result[168] += x226 * x268 * x67
result[169] += x244 * x268 * x5
result[170] += x265 * x270 * x5 * x68
result[171] += x269 * x84
result[172] += x271 * x71
result[173] += x274 * x67
result[174] += x222 * x275
result[175] += x276 * x5 * x63
result[176] += x224 * x277
result[177] += x276 * x62
result[178] += x277 * x44
result[179] += x39 * (
x0 * (x127 + 4.0 * x253 * x89 + 4.0 * x258 + 4.0 * x259) + x126 * x273
)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_23(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_32."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_32(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 10, 6), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_42(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (gd) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = 0.5 / (ax + bx)
x1 = (ax + bx) ** (-1.0)
x2 = -x1 * (ax * A[0] + bx * B[0])
x3 = -x2 - A[0]
x4 = ax * bx * x1
x5 = numpy.exp(-x4 * (A[0] - B[0]) ** 2)
x6 = 1.77245385090551603 * numpy.sqrt(x1)
x7 = x5 * x6
x8 = x0 * x7
x9 = -x2 - R[0]
x10 = -x2 - B[0]
x11 = x10 * x7
x12 = x11 * x9
x13 = x12 + x8
x14 = x13 * x3
x15 = 2.0 * x14
x16 = x7 * x9
x17 = x0 * (x11 + x16)
x18 = x3 * x7
x19 = x0 * (x11 + x18)
x20 = x10 * x18
x21 = x20 + x8
x22 = x21 * x3
x23 = x19 + x22
x24 = x0 * (x16 + x18)
x25 = x18 * x9
x26 = x25 + x8
x27 = x26 * x3
x28 = x24 + x27
x29 = x0 * (x15 + 2.0 * x17 + x23 + x28)
x30 = 3.0 * x8
x31 = x0 * (x12 + x20 + x25 + x30)
x32 = x14 + x17
x33 = x3 * x32
x34 = x31 + x33
x35 = x3 * x34
x36 = x10 * x13
x37 = x10 * x21
x38 = x19 + x37
x39 = x0 * (x15 + 3.0 * x17 + x36 + x38)
x40 = x10 * x32
x41 = x31 + x40
x42 = x3 * x41
x43 = x10**2 * x7
x44 = 2.0 * x20 + x30
x45 = x0 * (x43 + x44)
x46 = x3 * x38
x47 = x45 + x46
x48 = 2.0 * x0 * (2.0 * x19 + x22 + x37) + x3 * x47
x49 = x39 + x42
x50 = x0 * (4.0 * x31 + 2.0 * x33 + 2.0 * x40 + x47) + x3 * x49
x51 = da * db
x52 = 0.0563436169819011052
x53 = x51 * x52
x54 = numpy.exp(-x4 * (A[1] - B[1]) ** 2)
x55 = numpy.exp(-x4 * (A[2] - B[2]) ** 2)
x56 = 3.14159265358979324 * x1 * x55
x57 = x54 * x56
x58 = x53 * x57
x59 = -x1 * (ax * A[1] + bx * B[1])
x60 = -x59 - B[1]
x61 = x57 * x60
x62 = x3**2 * x7
x63 = x0 * (2.0 * x25 + x30 + x62) + x28 * x3
x64 = x0 * (x44 + x62)
x65 = x23 * x3
x66 = x64 + x65
x67 = x29 + x35
x68 = 0.0975900072948533179
x69 = x51 * x68
x70 = x69 * (x0 * (3.0 * x31 + 3.0 * x33 + x63 + x66) + x3 * x67)
x71 = -x1 * (ax * A[2] + bx * B[2])
x72 = -x71 - B[2]
x73 = x57 * x72
x74 = x55 * x6
x75 = x54 * x6
x76 = x60**2 * x75
x77 = x0 * x75
x78 = x51 * (x76 + x77)
x79 = x62 + x8
x80 = x3 * (x79 + 2.0 * x8)
x81 = x0 * (3.0 * x24 + 3.0 * x27 + x80) + x3 * x63
x82 = x52 * x81
x83 = x69 * x72
x84 = x72**2 * x74
x85 = x0 * x74
x86 = x51 * (x84 + x85)
x87 = -x59 - A[1]
x88 = x57 * x87
x89 = 2.2360679774997897
x90 = x51 * x89
x91 = 0.0666666666666666667 * x90
x92 = x50 * x91
x93 = x75 * x87
x94 = x60 * x93
x95 = x77 + x94
x96 = 0.0666666666666666667 * x74
x97 = 3.87298334620741689 * x51
x98 = x67 * x97
x99 = 0.0666666666666666667 * x98
x100 = x60 * x75
x101 = x0 * (x100 + x93)
x102 = x60 * x95
x103 = x101 + x102
x104 = x63 * x90
x105 = 0.0666666666666666667 * x63
x106 = x72 * x74
x107 = x106 * x97
x108 = x105 * x89
x109 = -x71 - A[2]
x110 = x109 * x57
x111 = x109 * x74
x112 = x111 * x72
x113 = x112 + x85
x114 = 0.0666666666666666667 * x75
x115 = x100 * x97
x116 = x0 * (x106 + x111)
x117 = x113 * x72
x118 = x116 + x117
x119 = x75 * x87**2
x120 = x119 + x77
x121 = x120 * x51
x122 = 1.73205080756887729
x123 = 0.111111111111111111 * x122
x124 = x123 * x74
x125 = x87 * x95
x126 = x101 + x125
x127 = 0.333333333333333333 * x51
x128 = x127 * x34
x129 = x120 * x127
x130 = 3.0 * x77
x131 = x130 + 2.0 * x94
x132 = x0 * (x131 + x76)
x133 = x103 * x87
x134 = x132 + x133
x135 = x122 * x28
x136 = 0.111111111111111111 * x135
x137 = x136 * x51
x138 = x127 * x28
x139 = x109 * x127
x140 = x122 * x95
x141 = x127 * x140
x142 = x113 * x127
x143 = x122 * x142
x144 = x109**2 * x74
x145 = x144 + x85
x146 = x123 * x145
x147 = x146 * x51
x148 = x127 * x145
x149 = x109 * x113
x150 = x116 + x149
x151 = 3.0 * x85
x152 = 2.0 * x112 + x151
x153 = x0 * (x152 + x84)
x154 = x109 * x118
x155 = x153 + x154
x156 = x87 * (x120 + 2.0 * x77)
x157 = 0.0666666666666666667 * x156
x158 = x41 * x90
x159 = x0 * (x119 + x131)
x160 = x126 * x87
x161 = x159 + x160
x162 = x32 * x97
x163 = 2.0 * x0 * (2.0 * x101 + x102 + x125) + x134 * x87
x164 = x26 * x89
x165 = x164 * x51
x166 = 0.0666666666666666667 * x26
x167 = x122 * x32
x168 = x126 * x127
x169 = x113 * x122
x170 = x127 * x26
x171 = x127 * x150
x172 = x109 * (x145 + 2.0 * x85)
x173 = 0.0666666666666666667 * x172
x174 = x0 * (x144 + x152)
x175 = x109 * x150
x176 = x174 + x175
x177 = 2.0 * x0 * (2.0 * x116 + x117 + x149) + x109 * x155
x178 = x0 * (3.0 * x119 + x130) + x156 * x87
x179 = x51 * (x17 + x36)
x180 = x179 * x52
x181 = x0 * (3.0 * x101 + 3.0 * x125 + x156) + x161 * x87
x182 = x51 * x74
x183 = x13 * x68
x184 = x183 * x51
x185 = x5 * x53
x186 = x185 * x56
x187 = x186 * (x0 * (3.0 * x132 + 3.0 * x133 + 2.0 * x159 + 2.0 * x160) + x163 * x87)
x188 = x5 * x56
x189 = x181 * x188
x190 = x16 * x52
x191 = x179 * x89
x192 = x13 * x97
x193 = 0.0666666666666666667 * x161
x194 = x109 * x188
x195 = x9 * x91
x196 = x16 * x97
x197 = x16 * x90
x198 = x127 * x13
x199 = x121 * x123
x200 = 0.0666666666666666667 * x176
x201 = 3.14159265358979324 * x1 * x54
x202 = x201 * x5
x203 = x202 * x87
x204 = x0 * (3.0 * x144 + x151) + x109 * x172
x205 = x51 * (x0 * (3.0 * x116 + 3.0 * x149 + x172) + x109 * x176)
x206 = x202 * x60
x207 = x205 * x68
x208 = x185 * x201
x209 = x208 * (x0 * (3.0 * x153 + 3.0 * x154 + 2.0 * x174 + 2.0 * x175) + x109 * x177)
x210 = -x59 - R[1]
x211 = x58 * (x0 * (3.0 * x45 + 3.0 * x46 + 2.0 * x64 + 2.0 * x65) + x3 * x48)
x212 = x0 * (3.0 * x19 + 3.0 * x22 + x80) + x3 * x66
x213 = x100 * x210
x214 = x213 + x77
x215 = x214 * x68
x216 = x212 * x69
x217 = x0 * (x30 + 3.0 * x62) + x3 * x80
x218 = x210 * x75
x219 = x0 * (x100 + x218)
x220 = x214 * x60
x221 = x219 + x220
x222 = x221 * x53
x223 = x215 * x51
x224 = x218 * x52
x225 = x210 * x93
x226 = x225 + x77
x227 = x226 * x89
x228 = x227 * x51
x229 = x214 * x87
x230 = x219 + x229
x231 = x96 * x97
x232 = 0.0666666666666666667 * x66
x233 = 0.0666666666666666667 * x80
x234 = x0 * (x130 + x213 + x225 + x94)
x235 = x230 * x60
x236 = x234 + x235
x237 = x236 * x90
x238 = x210 * x91
x239 = x214 * x97
x240 = x218 * x97
x241 = x233 * x90
x242 = x0 * (x218 + x93)
x243 = x226 * x87
x244 = x242 + x243
x245 = x244 * x51
x246 = x230 * x87
x247 = x234 + x246
x248 = x127 * x247
x249 = x127 * x244
x250 = 2.0 * x229
x251 = x0 * (x103 + 3.0 * x219 + x220 + x250)
x252 = x236 * x87
x253 = x251 + x252
x254 = x123 * x79
x255 = x127 * x79
x256 = x127 * x226
x257 = x127 * x23
x258 = x122 * x230
x259 = x254 * x51
x260 = x0 * (x119 + x130 + 2.0 * x225) + x244 * x87
x261 = x260 * x90
x262 = x0 * (x126 + 2.0 * x219 + x244 + x250)
x263 = x247 * x87
x264 = x262 + x263
x265 = 0.0666666666666666667 * x260
x266 = x188 * x3
x267 = x0 * (x134 + 4.0 * x234 + 2.0 * x235 + 2.0 * x246) + x253 * x87
x268 = x267 * x91
x269 = 0.0666666666666666667 * x97
x270 = x264 * x269
x271 = x265 * x89
x272 = x122 * x21
x273 = x127 * x272
x274 = x173 * x90
x275 = x202 * x3
x276 = x43 + x8
x277 = x276 * x51
x278 = x0 * (x156 + 3.0 * x242 + 3.0 * x243) + x260 * x87
x279 = x278 * x52
x280 = x10 * x69
x281 = x188 * (x0 * (x161 + 3.0 * x234 + 3.0 * x246 + x260) + x264 * x87)
x282 = x11 * x97
x283 = 0.0666666666666666667 * x7
x284 = x283 * x97
x285 = x123 * x7
x286 = -x71 - R[2]
x287 = x51 * x75
x288 = x106 * x286
x289 = x288 + x85
x290 = x289 * x68
x291 = x286 * x74
x292 = x291 * x52
x293 = x290 * x51
x294 = x0 * (x106 + x291)
x295 = x289 * x72
x296 = x294 + x295
x297 = x296 * x53
x298 = x286 * x91
x299 = x291 * x97
x300 = x289 * x97
x301 = x111 * x286
x302 = x301 + x85
x303 = x302 * x89
x304 = x303 * x51
x305 = x109 * x289
x306 = x294 + x305
x307 = x114 * x97
x308 = x0 * (x112 + x151 + x288 + x301)
x309 = x306 * x72
x310 = x308 + x309
x311 = x310 * x90
x312 = x127 * x302
x313 = x122 * x306
x314 = x0 * (x111 + x291)
x315 = x109 * x302
x316 = x314 + x315
x317 = x123 * x316
x318 = x109 * x306
x319 = x308 + x318
x320 = x127 * x319
x321 = 2.0 * x305
x322 = x0 * (x118 + 3.0 * x294 + x295 + x321)
x323 = x109 * x310
x324 = x322 + x323
x325 = x157 * x90
x326 = x127 * x316
x327 = x0 * (x144 + x151 + 2.0 * x301) + x109 * x316
x328 = x327 * x90
x329 = 0.0666666666666666667 * x327
x330 = x0 * (x150 + 2.0 * x294 + x316 + x321)
x331 = x109 * x319
x332 = x330 + x331
x333 = x329 * x89
x334 = x269 * x332
x335 = x0 * (x155 + 4.0 * x308 + 2.0 * x309 + 2.0 * x318) + x109 * x324
x336 = x335 * x91
x337 = x51 * x7
x338 = x0 * (x172 + 3.0 * x314 + 3.0 * x315) + x109 * x327
x339 = x338 * x52
x340 = x202 * (x0 * (x176 + 3.0 * x308 + 3.0 * x318 + x327) + x109 * x332)
# 270 item(s)
result[0] += x58 * (
x0 * (2.0 * x29 + 2.0 * x35 + 3.0 * x39 + 3.0 * x42 + x48) + x3 * x50
)
result[1] += x61 * x70
result[2] += x70 * x73
result[3] += x74 * x78 * x82
result[4] += x61 * x81 * x83
result[5] += x75 * x82 * x86
result[6] += x88 * x92
result[7] += x95 * x96 * x98
result[8] += x73 * x87 * x99
result[9] += x103 * x104 * x96
result[10] += x105 * x107 * x95
result[11] += x108 * x86 * x93
result[12] += x110 * x92
result[13] += x109 * x61 * x99
result[14] += x113 * x114 * x98
result[15] += x108 * x111 * x78
result[16] += x105 * x113 * x115
result[17] += x104 * x114 * x118
result[18] += x121 * x124 * x49
result[19] += x126 * x128 * x74
result[20] += x106 * x129 * x34
result[21] += x134 * x137 * x74
result[22] += x106 * x126 * x138
result[23] += x120 * x136 * x86
result[24] += x139 * x49 * x88
result[25] += x111 * x141 * x34
result[26] += x143 * x34 * x93
result[27] += x103 * x111 * x138
result[28] += x135 * x142 * x95
result[29] += x118 * x138 * x93
result[30] += x147 * x49 * x75
result[31] += x100 * x148 * x34
result[32] += x128 * x150 * x75
result[33] += x136 * x145 * x78
result[34] += x100 * x138 * x150
result[35] += x137 * x155 * x75
result[36] += x157 * x158 * x74
result[37] += x161 * x162 * x96
result[38] += x106 * x157 * x162
result[39] += x163 * x165 * x96
result[40] += x107 * x161 * x166
result[41] += x157 * x164 * x86
result[42] += x111 * x129 * x41
result[43] += x111 * x167 * x168
result[44] += x129 * x169 * x32
result[45] += x111 * x134 * x170
result[46] += x126 * x169 * x170
result[47] += x118 * x120 * x170
result[48] += x148 * x41 * x93
result[49] += x140 * x148 * x32
result[50] += x167 * x171 * x93
result[51] += x103 * x145 * x170
result[52] += x140 * x150 * x170
result[53] += x155 * x170 * x93
result[54] += x158 * x173 * x75
result[55] += x100 * x162 * x173
result[56] += x114 * x162 * x176
result[57] += x164 * x173 * x78
result[58] += x115 * x166 * x176
result[59] += x114 * x165 * x177
result[60] += x178 * x180 * x74
result[61] += x181 * x182 * x183
result[62] += x106 * x178 * x184
result[63] += x187 * x9
result[64] += x189 * x83 * x9
result[65] += x178 * x190 * x86
result[66] += x111 * x157 * x191
result[67] += x111 * x192 * x193
result[68] += x113 * x157 * x192
result[69] += x163 * x194 * x195
result[70] += x113 * x193 * x196
result[71] += x118 * x157 * x197
result[72] += x120 * x146 * x179
result[73] += x126 * x145 * x198
result[74] += x120 * x150 * x198
result[75] += x134 * x147 * x16
result[76] += x126 * x16 * x171
result[77] += x155 * x16 * x199
result[78] += x173 * x191 * x93
result[79] += x173 * x192 * x95
result[80] += x192 * x200 * x93
result[81] += x103 * x173 * x197
result[82] += x196 * x200 * x95
result[83] += x177 * x195 * x203
result[84] += x180 * x204 * x75
result[85] += x100 * x184 * x204
result[86] += x183 * x205 * x75
result[87] += x190 * x204 * x78
result[88] += x206 * x207 * x9
result[89] += x209 * x9
result[90] += x210 * x211
result[91] += x182 * x212 * x215
result[92] += x210 * x216 * x73
result[93] += x217 * x222 * x74
result[94] += x106 * x217 * x223
result[95] += x217 * x224 * x86
result[96] += x228 * x48 * x96
result[97] += x230 * x231 * x66
result[98] += x107 * x226 * x232
result[99] += x233 * x237 * x74
result[100] += x107 * x230 * x233
result[101] += x227 * x233 * x86
result[102] += x110 * x238 * x48
result[103] += x111 * x232 * x239
result[104] += x113 * x232 * x240
result[105] += x111 * x221 * x241
result[106] += x113 * x233 * x239
result[107] += x118 * x218 * x241
result[108] += x124 * x245 * x47
result[109] += x23 * x248 * x74
result[110] += x106 * x23 * x249
result[111] += x182 * x253 * x254
result[112] += x106 * x247 * x255
result[113] += x244 * x254 * x86
result[114] += x111 * x256 * x47
result[115] += x111 * x257 * x258
result[116] += x143 * x226 * x23
result[117] += x111 * x236 * x255
result[118] += x169 * x230 * x255
result[119] += x118 * x226 * x255
result[120] += x147 * x218 * x47
result[121] += x148 * x214 * x23
result[122] += x171 * x218 * x23
result[123] += x147 * x221 * x79
result[124] += x150 * x214 * x255
result[125] += x155 * x218 * x259
result[126] += x261 * x38 * x96
result[127] += x21 * x231 * x264
result[128] += x107 * x21 * x265
result[129] += x266 * x268
result[130] += x266 * x270 * x72
result[131] += x18 * x271 * x86
result[132] += x111 * x249 * x38
result[133] += x111 * x247 * x273
result[134] += x143 * x21 * x244
result[135] += x139 * x253 * x266
result[136] += x143 * x18 * x247
result[137] += x118 * x18 * x249
result[138] += x148 * x226 * x38
result[139] += x148 * x230 * x272
result[140] += x150 * x226 * x273
result[141] += x148 * x18 * x236
result[142] += x171 * x18 * x258
result[143] += x155 * x18 * x256
result[144] += x218 * x274 * x38
result[145] += x173 * x21 * x239
result[146] += x200 * x21 * x240
result[147] += x18 * x221 * x274
result[148] += x18 * x200 * x239
result[149] += x177 * x238 * x275
result[150] += x277 * x279 * x74
result[151] += x280 * x281
result[152] += x188 * x278 * x280 * x72
result[153] += x186 * (
x0 * (x163 + 3.0 * x251 + 3.0 * x252 + 2.0 * x262 + 2.0 * x263) + x267 * x87
)
result[154] += x281 * x83
result[155] += x279 * x7 * x86
result[156] += x111 * x271 * x277
result[157] += x10 * x194 * x270
result[158] += x113 * x265 * x282
result[159] += x194 * x268
result[160] += x113 * x264 * x284
result[161] += x118 * x261 * x283
result[162] += x147 * x244 * x276
result[163] += x11 * x148 * x247
result[164] += x11 * x171 * x244
result[165] += x147 * x253 * x7
result[166] += x150 * x248 * x7
result[167] += x155 * x245 * x285
result[168] += x173 * x227 * x277
result[169] += x173 * x230 * x282
result[170] += x200 * x226 * x282
result[171] += x173 * x237 * x7
result[172] += x176 * x230 * x284
result[173] += x177 * x228 * x283
result[174] += x204 * x224 * x277
result[175] += x11 * x204 * x223
result[176] += x10 * x202 * x207 * x210
result[177] += x204 * x222 * x7
result[178] += x205 * x215 * x7
result[179] += x209 * x210
result[180] += x211 * x286
result[181] += x216 * x286 * x61
result[182] += x212 * x287 * x290
result[183] += x217 * x292 * x78
result[184] += x100 * x217 * x293
result[185] += x217 * x297 * x75
result[186] += x298 * x48 * x88
result[187] += x232 * x299 * x95
result[188] += x232 * x300 * x93
result[189] += x103 * x241 * x291
result[190] += x233 * x300 * x95
result[191] += x241 * x296 * x93
result[192] += x114 * x304 * x48
result[193] += x115 * x232 * x302
result[194] += x306 * x307 * x66
result[195] += x233 * x303 * x78
result[196] += x115 * x233 * x306
result[197] += x233 * x311 * x75
result[198] += x199 * x291 * x47
result[199] += x126 * x257 * x291
result[200] += x129 * x23 * x289
result[201] += x134 * x259 * x291
result[202] += x126 * x255 * x289
result[203] += x121 * x254 * x296
result[204] += x312 * x47 * x93
result[205] += x141 * x23 * x302
result[206] += x257 * x313 * x93
result[207] += x103 * x255 * x302
result[208] += x140 * x255 * x306
result[209] += x255 * x310 * x93
result[210] += x287 * x317 * x47
result[211] += x100 * x257 * x316
result[212] += x23 * x320 * x75
result[213] += x254 * x316 * x78
result[214] += x100 * x255 * x319
result[215] += x254 * x287 * x324
result[216] += x291 * x325 * x38
result[217] += x193 * x21 * x299
result[218] += x157 * x21 * x300
result[219] += x163 * x266 * x298
result[220] += x18 * x193 * x300
result[221] += x18 * x296 * x325
result[222] += x129 * x302 * x38
result[223] += x126 * x273 * x302
result[224] += x129 * x272 * x306
result[225] += x134 * x18 * x312
result[226] += x168 * x18 * x313
result[227] += x129 * x18 * x310
result[228] += x326 * x38 * x93
result[229] += x141 * x21 * x316
result[230] += x273 * x319 * x93
result[231] += x103 * x18 * x326
result[232] += x141 * x18 * x319
result[233] += x127 * x275 * x324 * x87
result[234] += x114 * x328 * x38
result[235] += x115 * x21 * x329
result[236] += x21 * x307 * x332
result[237] += x18 * x333 * x78
result[238] += x275 * x334 * x60
result[239] += x275 * x336
result[240] += x178 * x277 * x292
result[241] += x189 * x280 * x286
result[242] += x11 * x178 * x293
result[243] += x187 * x286
result[244] += x181 * x290 * x337
result[245] += x178 * x297 * x7
result[246] += x157 * x277 * x303
result[247] += x193 * x282 * x302
result[248] += x157 * x282 * x306
result[249] += x163 * x283 * x304
result[250] += x161 * x284 * x306
result[251] += x157 * x311 * x7
result[252] += x120 * x277 * x317
result[253] += x11 * x126 * x326
result[254] += x11 * x129 * x319
result[255] += x134 * x317 * x337
result[256] += x126 * x320 * x7
result[257] += x121 * x285 * x324
result[258] += x277 * x333 * x93
result[259] += x282 * x329 * x95
result[260] += x10 * x203 * x334
result[261] += x103 * x283 * x328
result[262] += x284 * x332 * x95
result[263] += x203 * x336
result[264] += x277 * x339 * x75
result[265] += x206 * x280 * x338
result[266] += x280 * x340
result[267] += x339 * x7 * x78
result[268] += x340 * x60 * x69
result[269] += x208 * (
x0 * (x177 + 3.0 * x322 + 3.0 * x323 + 2.0 * x330 + 2.0 * x331) + x109 * x335
)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_24(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_42."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_42(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 15, 6), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_33(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (ff) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = (ax + bx) ** (-1.0)
x1 = 3.0 * x0
x2 = x0 * (ax * A[0] + bx * B[0])
x3 = -x2
x4 = x3 + A[0]
x5 = x3 + B[0]
x6 = x4 * x5
x7 = 2.0 * x6
x8 = x3 + R[0]
x9 = x4 * x8
x10 = 2.0 * x9
x11 = x5 * x8
x12 = 2.0 * x11
x13 = x0 * (x1 + x10 + x12 + x7)
x14 = -2.0 * x2
x15 = x14 + B[0]
x16 = x15 + R[0]
x17 = x0 * x16
x18 = x0 + x12
x19 = x18 * x4
x20 = x17 + x19
x21 = x20 * x5
x22 = x13 + 2.0 * x21
x23 = x22 * x5
x24 = x22 * x4
x25 = x18 * x5
x26 = 2.0 * x19
x27 = x0 * (x15 + A[0])
x28 = x0 + x7
x29 = x28 * x5
x30 = x27 + x29
x31 = x0 * (x1 * x16 + x25 + x26 + x30)
x32 = 4.0 * x6
x33 = x5**2
x34 = x1 + 2.0 * x33
x35 = x0 * (x32 + x34)
x36 = 2.0 * x4
x37 = x30 * x36 + x35
x38 = x28 * x4
x39 = 2.0 * x0
x40 = x39 * (2.0 * x27 + x29 + x38)
x41 = x37 * x5 + x40
x42 = x0 * (4.0 * x13 + 4.0 * x20 * x4 + 4.0 * x21 + x37)
x43 = x24 + x31
x44 = 2.0 * x5
x45 = x42 + x43 * x44
x46 = ax * bx * x0
x47 = (
5.56832799683170785
* da
* db
* numpy.exp(-x46 * ((A[0] - B[0]) ** 2 + (A[1] - B[1]) ** 2 + (A[2] - B[2]) ** 2))
)
x48 = 0.00833333333333333333 * x47
x49 = x0**1.5
x50 = x48 * x49
x51 = x0 * (ax * A[1] + bx * B[1])
x52 = -x51
x53 = x52 + B[1]
x54 = 2.2360679774997897
x55 = x50 * x54
x56 = x55 * (x36 * x43 + x42)
x57 = x0 * (ax * A[2] + bx * B[2])
x58 = -x57
x59 = x58 + B[2]
x60 = x53**2
x61 = 0.5 * x0
x62 = x60 + x61
x63 = x0 * (x14 + A[0] + R[0]) + x4 * (x0 + x10)
x64 = x27 + x38
x65 = x13 + x20 * x36
x66 = x0 * (2.0 * x17 + x26 + x63 + x64) + x4 * x65
x67 = x0**1.5
x68 = x47 * x67
x69 = 0.0166666666666666667 * x68
x70 = x54 * x69
x71 = x66 * x70
x72 = 3.87298334620741689
x73 = x47 * x49
x74 = 0.0166666666666666667 * x73
x75 = x72 * x74
x76 = x59 * x75
x77 = x59**2
x78 = x61 + x77
x79 = x4**2
x80 = x1 + 2.0 * x79
x81 = x0 * (x80 + 4.0 * x9) + x36 * x63
x82 = x69 * x81
x83 = 1.5 * x0
x84 = x53 * (x60 + x83)
x85 = x70 * x81
x86 = x59 * (x77 + x83)
x87 = x52 + A[1]
x88 = x45 * x55
x89 = x53 * x87
x90 = x61 + x89
x91 = 0.0833333333333333333 * x68
x92 = x43 * x91
x93 = 0.0833333333333333333 * x73
x94 = x43 * x93
x95 = -2.0 * x51
x96 = x95 + B[1]
x97 = x0 * (x96 + A[1])
x98 = 2.0 * x89
x99 = x0 + x98
x100 = x53 * x99
x101 = x100 + x97
x102 = 0.0416666666666666667 * x68
x103 = x102 * x65
x104 = 1.73205080756887729
x105 = x65 * x91
x106 = x104 * x105
x107 = x78 * x87
x108 = 2.0 * x60
x109 = x1 + 4.0 * x89
x110 = x0 * (x108 + x109)
x111 = 2.0 * x101
x112 = x110 + x111 * x53
x113 = x54 * x63
x114 = x48 * x67
x115 = x113 * x114
x116 = x63 * x91
x117 = x68 * x90
x118 = 0.166666666666666667 * x63
x119 = 0.0333333333333333333 * x68
x120 = x113 * x119
x121 = x58 + A[2]
x122 = x121 * x59
x123 = x122 + x61
x124 = x121 * x62
x125 = -2.0 * x57
x126 = x125 + B[2]
x127 = x0 * (x126 + A[2])
x128 = 2.0 * x122
x129 = x0 + x128
x130 = x129 * x59
x131 = x127 + x130
x132 = x62 * x68
x133 = 2.0 * x77
x134 = x1 + 4.0 * x122
x135 = x0 * (x133 + x134)
x136 = 2.0 * x131
x137 = x135 + x136 * x59
x138 = x87**2
x139 = x138 + x61
x140 = x23 + x31
x141 = x140 * x70
x142 = x87 * x99
x143 = x142 + x97
x144 = x102 * x22
x145 = x59 * x91
x146 = x110 + x111 * x87
x147 = x102 * x20
x148 = x104 * x20
x149 = 0.166666666666666667 * x20
x150 = x139 * x68
x151 = x39 * (x100 + x142 + 2.0 * x97)
x152 = x146 * x53 + x151
x153 = x61 + x9
x154 = x153 * x70
x155 = 0.166666666666666667 * x153
x156 = x68 * x78
x157 = 0.0666666666666666667 * x54
x158 = x153 * x157
x159 = x121 * x75
x160 = x121 * x91
x161 = x104 * x22
x162 = x87 * x91
x163 = 0.5 * x123
x164 = x69 * x72
x165 = x153 * x164
x166 = x104 * x155
x167 = x121**2
x168 = x167 + x61
x169 = x53 * x91
x170 = x121 * x129
x171 = x127 + x170
x172 = x121 * x136 + x135
x173 = x68 * x84
x174 = x39 * (2.0 * x127 + x130 + x170)
x175 = x172 * x59 + x174
x176 = x17 + x25
x177 = x0 * (4.0 * x11 + x34) + x176 * x44
x178 = x177 * x69
x179 = x138 + x83
x180 = x179 * x87
x181 = 2.0 * x138
x182 = 2.0 * x87
x183 = x0 * (x109 + x181) + x143 * x182
x184 = x114 * x54
x185 = x176 * x184
x186 = x54 * x59
x187 = x119 * x176
x188 = x146 * x87 + x151
x189 = x11 + x61
x190 = x189 * x70
x191 = x164 * x189
x192 = x157 * x68
x193 = x189 * x192
x194 = 4.0 * x53
x195 = x0 * (x101 * x194 + 6.0 * x101 * x87 + 5.0 * x110) + x152 * x182
x196 = x50 * x8
x197 = x74 * x8
x198 = x70 * x8
x199 = 0.0666666666666666667 * x8
x200 = x68 * x86
x201 = x177 * x70
x202 = 0.166666666666666667 * x150
x203 = x104 * x189
x204 = 0.166666666666666667 * x68
x205 = x123 * x204
x206 = x197 * x54
x207 = x8 * x91
x208 = 0.166666666666666667 * x168
x209 = x208 * x68
x210 = 0.166666666666666667 * x117
x211 = x167 + x83
x212 = x121 * x211
x213 = x212 * x54
x214 = 2.0 * x167
x215 = 2.0 * x121
x216 = x0 * (x134 + x214) + x171 * x215
x217 = x121 * x172 + x174
x218 = 4.0 * x59
x219 = x0 * (6.0 * x121 * x131 + x131 * x218 + 5.0 * x135) + x175 * x215
x220 = x0 * (6.0 * x30 * x4 + 4.0 * x30 * x5 + 5.0 * x35) + x36 * x41
x221 = x52 + R[1]
x222 = x221 * x50
x223 = x37 * x4 + x40
x224 = x221 * x53
x225 = x224 + x61
x226 = x225 * x70
x227 = x221 * x74
x228 = x0 * (x32 + x80) + x36 * x64
x229 = x96 + R[1]
x230 = x0 * x229
x231 = 2.0 * x224
x232 = x0 + x231
x233 = x232 * x53
x234 = x230 + x233
x235 = x184 * x234
x236 = x164 * x225
x237 = x221 * x70
x238 = 2.0 * x53
x239 = x0 * (x1 + x108 + 4.0 * x224) + x234 * x238
x240 = x239 * x69
x241 = x4 * (x79 + x83)
x242 = x119 * x234
x243 = x157 * x241
x244 = 0.0666666666666666667 * x221
x245 = x221 * x87
x246 = x245 + x61
x247 = x246 * x70
x248 = x232 * x87
x249 = x230 + x248
x250 = x102 * x249
x251 = 2.0 * x245
x252 = x0 * (x1 + x231 + x251 + x98)
x253 = x238 * x249 + x252
x254 = x102 * x253
x255 = x104 * x64
x256 = 0.166666666666666667 * x156
x257 = x61 + x79
x258 = 2.0 * x248
x259 = x0 * (x1 * x229 + x101 + x233 + x258)
x260 = x253 * x53
x261 = x259 + x260
x262 = x261 * x70
x263 = x192 * x246
x264 = x227 * x54
x265 = x221 * x91
x266 = x239 * x70
x267 = x204 * x257
x268 = x30 * x44 + x35
x269 = x0 * (x95 + A[1] + R[1]) + x87 * (x0 + x251)
x270 = x184 * x269
x271 = x182 * x249 + x252
x272 = x102 * x271
x273 = x6 + x61
x274 = x253 * x87
x275 = x259 + x274
x276 = x275 * x91
x277 = x104 * x273
x278 = x0 * (x146 + x194 * x249 + 4.0 * x249 * x87 + 4.0 * x252)
x279 = x238 * x275 + x278
x280 = x279 * x55
x281 = x275 * x93
x282 = x4 * x91
x283 = x119 * x54
x284 = x269 * x283
x285 = x164 * x246
x286 = x104 * x30
x287 = x204 * x277
x288 = x104 * x282
x289 = x0 * (x1 + x181 + 4.0 * x245) + x182 * x269
x290 = x289 * x69
x291 = x5 * (x33 + x83)
x292 = x33 + x61
x293 = x0 * (x143 + 2.0 * x230 + x258 + x269) + x271 * x87
x294 = x293 * x70
x295 = x289 * x70
x296 = x55 * (x182 * x275 + x278)
x297 = x204 * x292
x298 = x5 * x91
x299 = x104 * x298
x300 = x291 * x68
x301 = x192 * x292
x302 = x58 + R[2]
x303 = x302 * x50
x304 = x302 * x54 * x74
x305 = x302 * x59
x306 = x305 + x61
x307 = x306 * x70
x308 = x302 * x70
x309 = x164 * x306
x310 = x126 + R[2]
x311 = x0 * x310
x312 = 2.0 * x305
x313 = x0 + x312
x314 = x313 * x59
x315 = x311 + x314
x316 = x184 * x315
x317 = 0.0666666666666666667 * x302
x318 = x283 * x315
x319 = 2.0 * x59
x320 = x0 * (x1 + x133 + 4.0 * x305) + x315 * x319
x321 = x320 * x69
x322 = x302 * x91
x323 = 0.166666666666666667 * x257
x324 = x320 * x70
x325 = x121 * x302
x326 = x325 + x61
x327 = x326 * x70
x328 = x121 * x313
x329 = x311 + x328
x330 = x102 * x329
x331 = 0.166666666666666667 * x132
x332 = 2.0 * x325
x333 = x0 * (x1 + x128 + x312 + x332)
x334 = x319 * x329 + x333
x335 = x102 * x334
x336 = x157 * x326
x337 = 2.0 * x328
x338 = x0 * (x1 * x310 + x131 + x314 + x337)
x339 = x334 * x59
x340 = x338 + x339
x341 = x340 * x70
x342 = x164 * x326
x343 = x0 * (x125 + A[2] + R[2]) + x121 * (x0 + x332)
x344 = x184 * x343
x345 = x215 * x329 + x333
x346 = x102 * x345
x347 = x121 * x334
x348 = x338 + x347
x349 = x348 * x91
x350 = x283 * x343
x351 = x348 * x93
x352 = x0 * (4.0 * x121 * x329 + x172 + x218 * x329 + 4.0 * x333)
x353 = x319 * x348 + x352
x354 = x353 * x55
x355 = x0 * (x1 + x214 + 4.0 * x325) + x215 * x343
x356 = x355 * x69
x357 = x355 * x70
x358 = x0 * (x171 + 2.0 * x311 + x337 + x343) + x121 * x345
x359 = x358 * x70
x360 = x55 * (x215 * x348 + x352)
# 300 item(s)
result[0] += -x50 * (x0 * (2.0 * x23 + 3.0 * x24 + 5.0 * x31 + x41) + x4 * x45)
result[1] += -x53 * x56
result[2] += -x56 * x59
result[3] += -x62 * x71
result[4] += -x53 * x66 * x76
result[5] += -x71 * x78
result[6] += -x82 * x84
result[7] += -x59 * x62 * x85
result[8] += -x53 * x78 * x85
result[9] += -x82 * x86
result[10] += -x87 * x88
result[11] += -x90 * x92
result[12] += -x59 * x87 * x94
result[13] += -x101 * x103
result[14] += -x106 * x59 * x90
result[15] += -x105 * x107
result[16] += -x112 * x115
result[17] += -x101 * x116 * x59
result[18] += -x117 * x118 * x78
result[19] += -x120 * x86 * x87
result[20] += -x121 * x88
result[21] += -x121 * x53 * x94
result[22] += -x123 * x92
result[23] += -x105 * x124
result[24] += -x106 * x123 * x53
result[25] += -x103 * x131
result[26] += -x120 * x121 * x84
result[27] += -x118 * x123 * x132
result[28] += -x116 * x131 * x53
result[29] += -x115 * x137
result[30] += -x139 * x141
result[31] += -x143 * x144
result[32] += -x139 * x145 * x22
result[33] += -x146 * x147
result[34] += -x143 * x145 * x148
result[35] += -x149 * x150 * x78
result[36] += -x152 * x154
result[37] += -x145 * x146 * x153
result[38] += -x143 * x155 * x156
result[39] += -x150 * x158 * x86
result[40] += -x140 * x159 * x87
result[41] += -x160 * x161 * x90
result[42] += -x123 * x161 * x162
result[43] += -x101 * x148 * x160
result[44] += -x117 * x163 * x20
result[45] += -x131 * x148 * x162
result[46] += -x112 * x121 * x165
result[47] += -x101 * x123 * x166 * x68
result[48] += -x117 * x131 * x166
result[49] += -x137 * x165 * x87
result[50] += -x141 * x168
result[51] += -x168 * x169 * x22
result[52] += -x144 * x171
result[53] += -x132 * x149 * x168
result[54] += -x148 * x169 * x171
result[55] += -x147 * x172
result[56] += -x158 * x168 * x173
result[57] += -x132 * x155 * x171
result[58] += -x153 * x169 * x172
result[59] += -x154 * x175
result[60] += -x178 * x180
result[61] += -x183 * x185
result[62] += -x180 * x186 * x187
result[63] += -x188 * x190
result[64] += -x183 * x191 * x59
result[65] += -x107 * x179 * x193
result[66] += -x195 * x196
result[67] += -x186 * x188 * x197
result[68] += -x183 * x198 * x78
result[69] += -x180 * x199 * x200
result[70] += -x121 * x139 * x201
result[71] += -x143 * x160 * x176
result[72] += -x123 * x176 * x202
result[73] += -x146 * x160 * x189
result[74] += -x143 * x203 * x205
result[75] += -x131 * x189 * x202
result[76] += -x121 * x152 * x206
result[77] += -x123 * x146 * x207
result[78] += -x131 * x143 * x207
result[79] += -x137 * x139 * x198
result[80] += -x168 * x201 * x87
result[81] += -x117 * x176 * x208
result[82] += -x162 * x171 * x176
result[83] += -x101 * x189 * x209
result[84] += -x171 * x203 * x210
result[85] += -x162 * x172 * x189
result[86] += -x112 * x168 * x198
result[87] += -x101 * x171 * x207
result[88] += -x172 * x207 * x90
result[89] += -x175 * x206 * x87
result[90] += -x178 * x212
result[91] += -x187 * x213 * x53
result[92] += -x185 * x216
result[93] += -x124 * x193 * x211
result[94] += -x191 * x216 * x53
result[95] += -x190 * x217
result[96] += -x173 * x199 * x212
result[97] += -x198 * x216 * x62
result[98] += -x206 * x217 * x53
result[99] += -x196 * x219
result[100] += -x220 * x222
result[101] += -x223 * x226
result[102] += -x186 * x223 * x227
result[103] += -x228 * x235
result[104] += -x228 * x236 * x59
result[105] += -x228 * x237 * x78
result[106] += -x240 * x241
result[107] += -x186 * x241 * x242
result[108] += -x156 * x225 * x243
result[109] += -x200 * x241 * x244
result[110] += -x247 * x41
result[111] += -x250 * x37
result[112] += -x145 * x246 * x37
result[113] += -x254 * x64
result[114] += -x145 * x249 * x255
result[115] += -x246 * x256 * x64
result[116] += -x257 * x262
result[117] += -x145 * x253 * x257
result[118] += -x249 * x256 * x257
result[119] += -x257 * x263 * x86
result[120] += -x121 * x264 * x41
result[121] += -x160 * x225 * x37
result[122] += -x123 * x265 * x37
result[123] += -x160 * x234 * x64
result[124] += -x205 * x225 * x255
result[125] += -x131 * x265 * x64
result[126] += -x121 * x257 * x266
result[127] += -x123 * x234 * x267
result[128] += -x131 * x225 * x267
result[129] += -x137 * x237 * x257
result[130] += -x268 * x270
result[131] += -x272 * x30
result[132] += -x145 * x269 * x30
result[133] += -x273 * x276
result[134] += -x145 * x271 * x277
result[135] += -x256 * x269 * x273
result[136] += -x280 * x4
result[137] += -x281 * x4 * x59
result[138] += -x271 * x282 * x78
result[139] += -x284 * x4 * x86
result[140] += -x121 * x268 * x285
result[141] += -x160 * x249 * x286
result[142] += -x205 * x246 * x286
result[143] += -x160 * x253 * x277
result[144] += -x163 * x249 * x273 * x68
result[145] += -x131 * x246 * x287
result[146] += -x159 * x261 * x4
result[147] += -x123 * x253 * x288
result[148] += -x131 * x249 * x288
result[149] += -x137 * x285 * x4
result[150] += -x168 * x237 * x268
result[151] += -x209 * x225 * x30
result[152] += -x171 * x265 * x30
result[153] += -x209 * x234 * x273
result[154] += -x171 * x225 * x287
result[155] += -x172 * x265 * x273
result[156] += -x168 * x266 * x4
result[157] += -x171 * x234 * x282
result[158] += -x172 * x225 * x282
result[159] += -x175 * x264 * x4
result[160] += -x290 * x291
result[161] += -x292 * x294
result[162] += -x292 * x295 * x59
result[163] += -x296 * x5
result[164] += -x293 * x5 * x76
result[165] += -x295 * x5 * x78
result[166] += -x50 * (
x0 * (x152 + 5.0 * x259 + 2.0 * x260 + 3.0 * x274) + x279 * x87
)
result[167] += -x296 * x59
result[168] += -x294 * x78
result[169] += -x290 * x86
result[170] += -x121 * x284 * x291
result[171] += -x160 * x271 * x292
result[172] += -x123 * x269 * x297
result[173] += -x121 * x281 * x5
result[174] += -x123 * x271 * x299
result[175] += -x131 * x269 * x298
result[176] += -x121 * x280
result[177] += -x123 * x276
result[178] += -x131 * x272
result[179] += -x137 * x270
result[180] += -x168 * x263 * x291
result[181] += -x209 * x249 * x292
result[182] += -x171 * x246 * x297
result[183] += -x168 * x253 * x298
result[184] += -x171 * x249 * x299
result[185] += -x172 * x246 * x298
result[186] += -x168 * x262
result[187] += -x171 * x254
result[188] += -x172 * x250
result[189] += -x175 * x247
result[190] += -x212 * x244 * x300
result[191] += -x212 * x225 * x301
result[192] += -x216 * x237 * x292
result[193] += -x213 * x242 * x5
result[194] += -x216 * x236 * x5
result[195] += -x217 * x264 * x5
result[196] += -x212 * x240
result[197] += -x216 * x235
result[198] += -x217 * x226
result[199] += -x219 * x222
result[200] += -x220 * x303
result[201] += -x223 * x304 * x53
result[202] += -x223 * x307
result[203] += -x228 * x308 * x62
result[204] += -x228 * x309 * x53
result[205] += -x228 * x316
result[206] += -x173 * x241 * x317
result[207] += -x132 * x243 * x306
result[208] += -x241 * x318 * x53
result[209] += -x241 * x321
result[210] += -x304 * x41 * x87
result[211] += -x322 * x37 * x90
result[212] += -x162 * x306 * x37
result[213] += -x101 * x322 * x64
result[214] += -x210 * x255 * x306
result[215] += -x162 * x315 * x64
result[216] += -x112 * x257 * x308
result[217] += -x101 * x267 * x306
result[218] += -x117 * x315 * x323
result[219] += -x257 * x324 * x87
result[220] += -x327 * x41
result[221] += -x169 * x326 * x37
result[222] += -x330 * x37
result[223] += -x326 * x331 * x64
result[224] += -x169 * x255 * x329
result[225] += -x335 * x64
result[226] += -x173 * x257 * x336
result[227] += -x132 * x323 * x329
result[228] += -x169 * x257 * x334
result[229] += -x257 * x341
result[230] += -x139 * x268 * x308
result[231] += -x143 * x30 * x322
result[232] += -x202 * x30 * x306
result[233] += -x146 * x273 * x322
result[234] += -x143 * x287 * x306
result[235] += -x202 * x273 * x315
result[236] += -x152 * x304 * x4
result[237] += -x146 * x282 * x306
result[238] += -x143 * x282 * x315
result[239] += -x139 * x324 * x4
result[240] += -x268 * x342 * x87
result[241] += -x210 * x286 * x326
result[242] += -x162 * x286 * x329
result[243] += -x101 * x287 * x326
result[244] += -0.5 * x117 * x273 * x329
result[245] += -x162 * x277 * x334
result[246] += -x112 * x342 * x4
result[247] += -x101 * x288 * x329
result[248] += -x288 * x334 * x90
result[249] += -x340 * x4 * x75 * x87
result[250] += -x268 * x344
result[251] += -x169 * x30 * x343
result[252] += -x30 * x346
result[253] += -x273 * x331 * x343
result[254] += -x169 * x277 * x345
result[255] += -x273 * x349
result[256] += -x350 * x4 * x84
result[257] += -x282 * x345 * x62
result[258] += -x351 * x4 * x53
result[259] += -x354 * x4
result[260] += -x180 * x300 * x317
result[261] += -x183 * x292 * x308
result[262] += -x180 * x301 * x306
result[263] += -x188 * x304 * x5
result[264] += -x183 * x309 * x5
result[265] += -x180 * x318 * x5
result[266] += -x195 * x303
result[267] += -x188 * x307
result[268] += -x183 * x316
result[269] += -x180 * x321
result[270] += -x150 * x291 * x336
result[271] += -x143 * x297 * x326
result[272] += -x202 * x292 * x329
result[273] += -x146 * x298 * x326
result[274] += -x143 * x299 * x329
result[275] += -x139 * x298 * x334
result[276] += -x152 * x327
result[277] += -x146 * x330
result[278] += -x143 * x335
result[279] += -x139 * x341
result[280] += -x291 * x350 * x87
result[281] += -x210 * x292 * x343
result[282] += -x162 * x292 * x345
result[283] += -x101 * x298 * x343
result[284] += -x299 * x345 * x90
result[285] += -x351 * x5 * x87
result[286] += -x112 * x344
result[287] += -x101 * x346
result[288] += -x349 * x90
result[289] += -x354 * x87
result[290] += -x291 * x356
result[291] += -x292 * x357 * x53
result[292] += -x292 * x359
result[293] += -x357 * x5 * x62
result[294] += -x358 * x5 * x53 * x75
result[295] += -x360 * x5
result[296] += -x356 * x84
result[297] += -x359 * x62
result[298] += -x360 * x53
result[299] += -x50 * (
x0 * (x175 + 5.0 * x338 + 2.0 * x339 + 3.0 * x347) + x121 * x353
)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_43(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (gf) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = 0.5 / (ax + bx)
x1 = (ax + bx) ** (-1.0)
x2 = -x1 * (ax * A[0] + bx * B[0])
x3 = -x2 - A[0]
x4 = -x2 - B[0]
x5 = ax * bx * x1
x6 = numpy.exp(-x5 * (A[0] - B[0]) ** 2)
x7 = 1.77245385090551603 * numpy.sqrt(x1)
x8 = x6 * x7
x9 = x0 * x8
x10 = -x2 - R[0]
x11 = x4 * x8
x12 = x10 * x11
x13 = x12 + x9
x14 = x13 * x4
x15 = x13 * x3
x16 = 2.0 * x15
x17 = x10 * x8
x18 = x0 * (x11 + x17)
x19 = x3 * x6
x20 = x19 * x7
x21 = x0 * (x11 + x20)
x22 = x20 * x4
x23 = x22 + x9
x24 = x23 * x4
x25 = x21 + x24
x26 = x0 * (x14 + x16 + 3.0 * x18 + x25)
x27 = 3.0 * x9
x28 = x10 * x20
x29 = x0 * (x12 + x22 + x27 + x28)
x30 = x15 + x18
x31 = x30 * x4
x32 = x29 + x31
x33 = x3 * x32
x34 = x26 + x33
x35 = x3 * x34
x36 = x34 * x4
x37 = x3 * x30
x38 = x4**2 * x8
x39 = 2.0 * x22 + x27
x40 = x0 * (x38 + x39)
x41 = x25 * x3
x42 = x40 + x41
x43 = x0 * (4.0 * x29 + 2.0 * x31 + 2.0 * x37 + x42)
x44 = x25 * x4
x45 = 3.0 * x41
x46 = x23 * x3
x47 = 2.0 * x0 * (2.0 * x21 + x24 + x46)
x48 = x4 * x42
x49 = x47 + x48
x50 = x0 * (5.0 * x40 + 2.0 * x44 + x45) + x3 * x49
x51 = x32 * x4
x52 = 3.0 * x33
x53 = x36 + x43
x54 = x0 * (5.0 * x26 + x49 + 2.0 * x51 + x52) + x3 * x53
x55 = da * db
x56 = 0.00952380952380952381 * x55
x57 = 2.64575131106459059 * x56
x58 = numpy.exp(-x5 * (A[1] - B[1]) ** 2)
x59 = numpy.exp(-x5 * (A[2] - B[2]) ** 2)
x60 = 3.14159265358979324 * x1 * x59
x61 = x58 * x60
x62 = x57 * x61
x63 = -x1 * (ax * A[1] + bx * B[1])
x64 = -x63 - B[1]
x65 = 5.91607978309961604 * x56
x66 = x64 * x65
x67 = x21 + x46
x68 = x0 * (x17 + x20)
x69 = x28 + x9
x70 = x3 * x69
x71 = x68 + x70
x72 = x0 * (x16 + 2.0 * x18 + x67 + x71)
x73 = x29 + x37
x74 = x3 * x73
x75 = x3 * x42
x76 = x47 + x75
x77 = x35 + x43
x78 = x61 * (x0 * (3.0 * x26 + x52 + 2.0 * x72 + 2.0 * x74 + x76) + x3 * x77)
x79 = -x1 * (ax * A[2] + bx * B[2])
x80 = -x79 - B[2]
x81 = x65 * x80
x82 = x58 * x7
x83 = x64**2 * x82
x84 = x0 * x82
x85 = x83 + x84
x86 = x59 * x7
x87 = x3**2 * x8
x88 = x0 * (x27 + 2.0 * x28 + x87) + x3 * x71
x89 = x0 * (x39 + x87)
x90 = x3 * x67
x91 = x89 + x90
x92 = x72 + x74
x93 = x0 * (3.0 * x29 + 3.0 * x37 + x88 + x91) + x3 * x92
x94 = x65 * x93
x95 = x61 * x80
x96 = 10.2469507659595984 * x56
x97 = x64 * x96
x98 = x80**2 * x86
x99 = x0 * x86
x100 = x98 + x99
x101 = 2.0 * x84
x102 = x64 * (x101 + x85)
x103 = x87 + x9
x104 = 2.0 * x0
x105 = x103 * x3 + x104 * x20
x106 = x0 * (x105 + 3.0 * x68 + 3.0 * x70) + x3 * x88
x107 = x106 * x57
x108 = x80 * x86
x109 = x106 * x65
x110 = x64 * x82
x111 = 2.0 * x99
x112 = x80 * (x100 + x111)
x113 = -x63 - A[1]
x114 = 0.0666666666666666667 * x55
x115 = x113 * x114
x116 = x54 * x61
x117 = 2.2360679774997897
x118 = x113 * x82
x119 = x118 * x64
x120 = x119 + x84
x121 = x114 * x120
x122 = x117 * x121
x123 = x117 * x77
x124 = x0 * (x110 + x118)
x125 = x120 * x64
x126 = x124 + x125
x127 = x117 * x92
x128 = x114 * x86
x129 = 3.87298334620741689
x130 = x129 * x92
x131 = x100 * x117
x132 = x114 * x92
x133 = 3.0 * x84
x134 = 2.0 * x119 + x133
x135 = x0 * (x134 + x83)
x136 = x126 * x64
x137 = x135 + x136
x138 = x114 * x88
x139 = x117 * x138
x140 = -x79 - A[2]
x141 = x114 * x140
x142 = x140 * x86
x143 = x142 * x80
x144 = x143 + x99
x145 = x114 * x144
x146 = x117 * x145
x147 = x117 * x85
x148 = x0 * (x108 + x142)
x149 = x144 * x80
x150 = x148 + x149
x151 = x114 * x82
x152 = 3.0 * x99
x153 = 2.0 * x143 + x152
x154 = x0 * (x153 + x98)
x155 = x150 * x80
x156 = x154 + x155
x157 = x113**2 * x82
x158 = x157 + x84
x159 = x158 * x55
x160 = 0.0222222222222222222 * x129
x161 = x159 * x160
x162 = x113 * x120
x163 = x124 + x162
x164 = 1.73205080756887729
x165 = x163 * x164
x166 = 0.111111111111111111 * x165
x167 = x55 * x86
x168 = 0.111111111111111111 * x164
x169 = x159 * x168
x170 = x113 * x126
x171 = x135 + x170
x172 = x164 * x73
x173 = 0.111111111111111111 * x172
x174 = 0.333333333333333333 * x55
x175 = x174 * x73
x176 = 0.111111111111111111 * x100
x177 = 2.0 * x0 * (2.0 * x124 + x125 + x162)
x178 = x171 * x64
x179 = x177 + x178
x180 = x55 * x71
x181 = x160 * x180
x182 = x168 * x180
x183 = x115 * x117
x184 = x120 * x174
x185 = x144 * x174
x186 = x117 * x142
x187 = x114 * x71
x188 = x174 * x71
x189 = x117 * x118
x190 = x140**2 * x86
x191 = x190 + x99
x192 = x191 * x55
x193 = x160 * x192
x194 = x168 * x192
x195 = x140 * x144
x196 = x148 + x195
x197 = x164 * x196
x198 = 0.111111111111111111 * x197
x199 = x55 * x82
x200 = 0.111111111111111111 * x85
x201 = x174 * x196
x202 = x140 * x150
x203 = x154 + x202
x204 = x102 * x160
x205 = 2.0 * x0 * (2.0 * x148 + x149 + x195)
x206 = x203 * x80
x207 = x205 + x206
x208 = x113 * (x101 + x158)
x209 = x114 * (x26 + x51)
x210 = x0 * (x134 + x157)
x211 = x113 * x163
x212 = x210 + x211
x213 = x117 * x32
x214 = x117 * x208
x215 = x114 * x214
x216 = x113 * x171
x217 = x177 + x216
x218 = x114 * x30
x219 = x117 * x218
x220 = x129 * x218
x221 = 3.0 * x170
x222 = x0 * (5.0 * x135 + 2.0 * x136 + x221) + x113 * x179
x223 = x114 * x69
x224 = x117 * x223
x225 = x142 * x174
x226 = x158 * x174
x227 = x174 * x69
x228 = x174 * x191
x229 = x164 * x201
x230 = x174 * x203
x231 = x140 * (x111 + x191)
x232 = x117 * x231
x233 = x114 * x232
x234 = x0 * (x153 + x190)
x235 = x140 * x196
x236 = x234 + x235
x237 = x140 * x203
x238 = x205 + x237
x239 = 3.0 * x202
x240 = x0 * (5.0 * x154 + 2.0 * x155 + x239) + x140 * x207
x241 = x0 * (x133 + 3.0 * x157) + x113 * x208
x242 = x14 + x18
x243 = x0 * (2.0 * x12 + x27 + x38) + x242 * x4
x244 = x243 * x57
x245 = x0 * (3.0 * x124 + 3.0 * x162 + x208) + x113 * x212
x246 = x242 * x65
x247 = x0 * (3.0 * x135 + 2.0 * x210 + 2.0 * x211 + x221) + x113 * x217
x248 = x13 * x65
x249 = x13 * x96
x250 = x57 * x6
x251 = x250 * x60
x252 = x251 * (3.0 * x0 * (2.0 * x177 + x178 + x216) + x113 * x222)
x253 = x6 * x60
x254 = x247 * x253
x255 = x17 * x65
x256 = x17 * x57
x257 = x114 * x208
x258 = x114 * x212
x259 = x114 * x13
x260 = x129 * x13
x261 = x141 * x6
x262 = x222 * x60
x263 = x117 * x17
x264 = 0.111111111111111111 * x242
x265 = x13 * x168
x266 = x17 * x55
x267 = x114 * x231
x268 = x114 * x236
x269 = x115 * x6
x270 = 3.14159265358979324 * x1 * x58
x271 = x240 * x270
x272 = x0 * (x152 + 3.0 * x190) + x140 * x231
x273 = x0 * (3.0 * x148 + 3.0 * x195 + x231) + x140 * x236
x274 = x0 * (3.0 * x154 + 2.0 * x234 + 2.0 * x235 + x239) + x140 * x238
x275 = x270 * x6
x276 = x274 * x275
x277 = x250 * x270
x278 = x277 * (3.0 * x0 * (2.0 * x205 + x206 + x237) + x140 * x240)
x279 = -x63 - R[1]
x280 = x62 * (3.0 * x0 * (2.0 * x47 + x48 + x75) + x3 * x50)
x281 = x0 * (3.0 * x40 + x45 + 2.0 * x89 + 2.0 * x90) + x3 * x76
x282 = x110 * x279
x283 = x282 + x84
x284 = x283 * x65
x285 = x281 * x61
x286 = x279 * x82
x287 = x0 * (x110 + x286)
x288 = x283 * x64
x289 = x287 + x288
x290 = x0 * (x105 + 3.0 * x21 + 3.0 * x46) + x3 * x91
x291 = x65 * x86
x292 = x283 * x96
x293 = x100 * x65
x294 = x0 * (x27 + 3.0 * x87) + x105 * x3
x295 = x0 * (x133 + 2.0 * x282 + x83) + x289 * x64
x296 = x57 * x86
x297 = x108 * x65
x298 = x286 * x57
x299 = x118 * x279
x300 = x299 + x84
x301 = x114 * x300
x302 = x113 * x283
x303 = x287 + x302
x304 = x117 * x128
x305 = x117 * x301
x306 = x0 * (x119 + x133 + x282 + x299)
x307 = x303 * x64
x308 = x306 + x307
x309 = x114 * x91
x310 = x108 * x129
x311 = 2.0 * x302
x312 = x0 * (x126 + 3.0 * x287 + x288 + x311)
x313 = x308 * x64
x314 = x312 + x313
x315 = x105 * x114
x316 = x117 * x315
x317 = x50 * x61
x318 = x114 * x186
x319 = x129 * x283
x320 = x117 * x286
x321 = x0 * (x118 + x286)
x322 = x113 * x300
x323 = x321 + x322
x324 = x323 * x55
x325 = x160 * x86
x326 = x113 * x303
x327 = x306 + x326
x328 = x167 * x168
x329 = x168 * x324
x330 = x113 * x308
x331 = x312 + x330
x332 = x174 * x67
x333 = x164 * x176
x334 = x0 * (x171 + 4.0 * x306 + 2.0 * x307 + 2.0 * x326)
x335 = x331 * x64
x336 = x334 + x335
x337 = x103 * x55
x338 = x168 * x337
x339 = x103 * x160
x340 = x174 * x300
x341 = x164 * x332
x342 = x103 * x174
x343 = x286 * x55
x344 = x168 * x67
x345 = x160 * x337
x346 = x40 + x44
x347 = x0 * (x133 + x157 + 2.0 * x299) + x113 * x323
x348 = x114 * x347
x349 = x0 * (x163 + 2.0 * x287 + x311 + x323)
x350 = x113 * x327
x351 = x349 + x350
x352 = x117 * x348
x353 = x113 * x331
x354 = x334 + x353
x355 = x114 * x23
x356 = x117 * x355
x357 = 3.0 * x330
x358 = x0 * (x179 + 5.0 * x312 + 2.0 * x313 + x357) + x113 * x336
x359 = x358 * x60
x360 = x114 * x19
x361 = x117 * x60
x362 = x354 * x361
x363 = x114 * x20
x364 = x174 * x323
x365 = x174 * x23
x366 = x164 * x23
x367 = x174 * x20
x368 = x117 * x363
x369 = x117 * x20
x370 = x38 + x9
x371 = x104 * x11 + x370 * x4
x372 = x0 * (x208 + 3.0 * x321 + 3.0 * x322) + x113 * x347
x373 = x0 * (x212 + 3.0 * x306 + 3.0 * x326 + x347) + x113 * x351
x374 = x253 * (
x0 * (x217 + 3.0 * x312 + 2.0 * x349 + 2.0 * x350 + x357) + x113 * x354
)
x375 = x4 * x65
x376 = x65 * x8
x377 = x57 * x8
x378 = x11 * x129
x379 = x114 * x8
x380 = x117 * x379
x381 = x55 * x8
x382 = x168 * x381
x383 = x160 * x8
x384 = x370 * x65
x385 = x11 * x65
x386 = -x79 - R[2]
x387 = x108 * x386
x388 = x387 + x99
x389 = x388 * x65
x390 = x386 * x86
x391 = x388 * x96
x392 = x0 * (x108 + x390)
x393 = x388 * x80
x394 = x392 + x393
x395 = x65 * x82
x396 = x390 * x57
x397 = x0 * (x152 + 2.0 * x387 + x98) + x394 * x80
x398 = x57 * x82
x399 = x114 * x189
x400 = x117 * x390
x401 = x129 * x388
x402 = x142 * x386
x403 = x402 + x99
x404 = x114 * x403
x405 = x117 * x404
x406 = x140 * x388
x407 = x392 + x406
x408 = x117 * x151
x409 = x110 * x129
x410 = x0 * (x143 + x152 + x387 + x402)
x411 = x407 * x80
x412 = x410 + x411
x413 = 2.0 * x406
x414 = x0 * (x150 + 3.0 * x392 + x393 + x413)
x415 = x412 * x80
x416 = x414 + x415
x417 = x390 * x55
x418 = x174 * x403
x419 = x118 * x174
x420 = x0 * (x142 + x390)
x421 = x140 * x403
x422 = x420 + x421
x423 = x422 * x55
x424 = x160 * x82
x425 = x168 * x423
x426 = x140 * x407
x427 = x410 + x426
x428 = x168 * x199
x429 = x164 * x200
x430 = x140 * x412
x431 = x414 + x430
x432 = x0 * (x203 + 4.0 * x410 + 2.0 * x411 + 2.0 * x426)
x433 = x431 * x80
x434 = x432 + x433
x435 = x174 * x422
x436 = x0 * (x152 + x190 + 2.0 * x402) + x140 * x422
x437 = x114 * x436
x438 = x117 * x437
x439 = x0 * (x196 + 2.0 * x392 + x413 + x422)
x440 = x140 * x427
x441 = x439 + x440
x442 = x140 * x431
x443 = x432 + x442
x444 = x117 * x270 * x443
x445 = 3.0 * x430
x446 = x0 * (x207 + 5.0 * x414 + 2.0 * x415 + x445) + x140 * x434
x447 = x270 * x446
x448 = x0 * (x231 + 3.0 * x420 + 3.0 * x421) + x140 * x436
x449 = x0 * (x236 + 3.0 * x410 + 3.0 * x426 + x436) + x140 * x441
x450 = x275 * (
x0 * (x238 + 3.0 * x414 + 2.0 * x439 + 2.0 * x440 + x445) + x140 * x443
)
# 450 item(s)
result[0] += x62 * (x0 * (3.0 * x35 + 3.0 * x36 + 6.0 * x43 + x50) + x3 * x54)
result[1] += x66 * x78
result[2] += x78 * x81
result[3] += x85 * x86 * x94
result[4] += x93 * x95 * x97
result[5] += x100 * x82 * x94
result[6] += x102 * x107 * x86
result[7] += x108 * x109 * x85
result[8] += x100 * x109 * x110
result[9] += x107 * x112 * x82
result[10] += x115 * x116
result[11] += x122 * x77 * x86
result[12] += x115 * x123 * x95
result[13] += x126 * x127 * x128
result[14] += x108 * x121 * x130
result[15] += x118 * x131 * x132
result[16] += x137 * x138 * x86
result[17] += x108 * x126 * x139
result[18] += x121 * x131 * x88
result[19] += x112 * x118 * x138
result[20] += x116 * x141
result[21] += x123 * x141 * x61 * x64
result[22] += x146 * x77 * x82
result[23] += x132 * x142 * x147
result[24] += x110 * x130 * x145
result[25] += x127 * x150 * x151
result[26] += x102 * x138 * x142
result[27] += x145 * x147 * x88
result[28] += x110 * x139 * x150
result[29] += x138 * x156 * x82
result[30] += x161 * x53 * x86
result[31] += x166 * x167 * x34
result[32] += x108 * x169 * x34
result[33] += x167 * x171 * x173
result[34] += x108 * x163 * x175
result[35] += x159 * x172 * x176
result[36] += x179 * x181 * x86
result[37] += x108 * x171 * x182
result[38] += x165 * x176 * x180
result[39] += x112 * x161 * x71
result[40] += x140 * x183 * x53 * x61
result[41] += x142 * x184 * x34
result[42] += x118 * x185 * x34
result[43] += x126 * x142 * x175
result[44] += x120 * x172 * x185
result[45] += x118 * x150 * x175
result[46] += x137 * x186 * x187
result[47] += x126 * x144 * x188
result[48] += x120 * x150 * x188
result[49] += x156 * x187 * x189
result[50] += x193 * x53 * x82
result[51] += x110 * x194 * x34
result[52] += x198 * x199 * x34
result[53] += x172 * x192 * x200
result[54] += x110 * x201 * x73
result[55] += x173 * x199 * x203
result[56] += x180 * x191 * x204
result[57] += x180 * x197 * x200
result[58] += x110 * x182 * x203
result[59] += x181 * x207 * x82
result[60] += x208 * x209 * x86
result[61] += x128 * x212 * x213
result[62] += x108 * x215 * x32
result[63] += x217 * x219 * x86
result[64] += x108 * x212 * x220
result[65] += x131 * x208 * x218
result[66] += x222 * x223 * x86
result[67] += x108 * x217 * x224
result[68] += x131 * x212 * x223
result[69] += x112 * x208 * x223
result[70] += x158 * x186 * x209
result[71] += x163 * x225 * x32
result[72] += x144 * x226 * x32
result[73] += x171 * x225 * x30
result[74] += x165 * x185 * x30
result[75] += x150 * x226 * x30
result[76] += x142 * x179 * x224
result[77] += x144 * x171 * x227
result[78] += x150 * x163 * x227
result[79] += x156 * x158 * x224
result[80] += x189 * x191 * x209
result[81] += x120 * x228 * x32
result[82] += x118 * x201 * x32
result[83] += x126 * x228 * x30
result[84] += x120 * x229 * x30
result[85] += x118 * x230 * x30
result[86] += x137 * x191 * x224
result[87] += x126 * x196 * x227
result[88] += x120 * x203 * x227
result[89] += x118 * x207 * x224
result[90] += x209 * x231 * x82
result[91] += x110 * x233 * x32
result[92] += x151 * x213 * x236
result[93] += x147 * x218 * x231
result[94] += x110 * x220 * x236
result[95] += x219 * x238 * x82
result[96] += x102 * x223 * x231
result[97] += x147 * x223 * x236
result[98] += x110 * x224 * x238
result[99] += x223 * x240 * x82
result[100] += x241 * x244 * x86
result[101] += x245 * x246 * x86
result[102] += x108 * x241 * x246
result[103] += x247 * x248 * x86
result[104] += x108 * x245 * x249
result[105] += x100 * x241 * x248
result[106] += x10 * x252
result[107] += x10 * x254 * x81
result[108] += x100 * x245 * x255
result[109] += x112 * x241 * x256
result[110] += x142 * x243 * x257
result[111] += x186 * x242 * x258
result[112] += x145 * x214 * x242
result[113] += x186 * x217 * x259
result[114] += x145 * x212 * x260
result[115] += x150 * x214 * x259
result[116] += x10 * x261 * x262
result[117] += x146 * x17 * x217
result[118] += x150 * x258 * x263
result[119] += x156 * x17 * x257
result[120] += x161 * x191 * x243
result[121] += x165 * x192 * x264
result[122] += x159 * x197 * x264
result[123] += x171 * x192 * x265
result[124] += x13 * x163 * x201
result[125] += x159 * x203 * x265
result[126] += x17 * x179 * x193
result[127] += x171 * x198 * x266
result[128] += x166 * x203 * x266
result[129] += x161 * x17 * x207
result[130] += x118 * x243 * x267
result[131] += x121 * x232 * x242
result[132] += x189 * x242 * x268
result[133] += x126 * x232 * x259
result[134] += x121 * x236 * x260
result[135] += x189 * x238 * x259
result[136] += x137 * x17 * x267
result[137] += x126 * x263 * x268
result[138] += x122 * x17 * x238
result[139] += x10 * x269 * x271
result[140] += x244 * x272 * x82
result[141] += x110 * x246 * x272
result[142] += x246 * x273 * x82
result[143] += x248 * x272 * x85
result[144] += x110 * x249 * x273
result[145] += x248 * x274 * x82
result[146] += x102 * x256 * x272
result[147] += x255 * x273 * x85
result[148] += x10 * x276 * x66
result[149] += x10 * x278
result[150] += x279 * x280
result[151] += x281 * x284 * x86
result[152] += x279 * x285 * x81
result[153] += x289 * x290 * x291
result[154] += x108 * x290 * x292
result[155] += x286 * x290 * x293
result[156] += x294 * x295 * x296
result[157] += x289 * x294 * x297
result[158] += x100 * x284 * x294
result[159] += x112 * x294 * x298
result[160] += x301 * x50 * x86
result[161] += x303 * x304 * x76
result[162] += x108 * x305 * x76
result[163] += x304 * x308 * x91
result[164] += x303 * x309 * x310
result[165] += x131 * x301 * x91
result[166] += x314 * x315 * x86
result[167] += x108 * x308 * x316
result[168] += x131 * x303 * x315
result[169] += x105 * x112 * x301
result[170] += x141 * x279 * x317
result[171] += x283 * x318 * x76
result[172] += x146 * x286 * x76
result[173] += x186 * x289 * x309
result[174] += x145 * x319 * x91
result[175] += x150 * x309 * x320
result[176] += x142 * x295 * x315
result[177] += x105 * x146 * x289
result[178] += x150 * x283 * x316
result[179] += x156 * x286 * x315
result[180] += x324 * x325 * x49
result[181] += x327 * x328 * x42
result[182] += x108 * x329 * x42
result[183] += x328 * x331 * x67
result[184] += x108 * x327 * x332
result[185] += x324 * x333 * x67
result[186] += x325 * x336 * x337
result[187] += x108 * x331 * x338
result[188] += x327 * x333 * x337
result[189] += x112 * x324 * x339
result[190] += x142 * x305 * x49
result[191] += x225 * x303 * x42
result[192] += x144 * x340 * x42
result[193] += x142 * x308 * x332
result[194] += x144 * x303 * x341
result[195] += x150 * x340 * x67
result[196] += x103 * x314 * x318
result[197] += x144 * x308 * x342
result[198] += x150 * x303 * x342
result[199] += x103 * x156 * x305
result[200] += x193 * x286 * x49
result[201] += x194 * x283 * x42
result[202] += x198 * x343 * x42
result[203] += x194 * x289 * x67
result[204] += x201 * x283 * x67
result[205] += x203 * x343 * x344
result[206] += x192 * x295 * x339
result[207] += x198 * x289 * x337
result[208] += x203 * x283 * x338
result[209] += x207 * x286 * x345
result[210] += x346 * x348 * x86
result[211] += x25 * x304 * x351
result[212] += x108 * x25 * x352
result[213] += x354 * x356 * x86
result[214] += x310 * x351 * x355
result[215] += x131 * x347 * x355
result[216] += x359 * x360
result[217] += x360 * x362 * x80
result[218] += x131 * x351 * x363
result[219] += x112 * x20 * x348
result[220] += x318 * x323 * x346
result[221] += x225 * x25 * x327
result[222] += x144 * x25 * x364
result[223] += x142 * x331 * x365
result[224] += x185 * x327 * x366
result[225] += x150 * x23 * x364
result[226] += x141 * x19 * x336 * x361
result[227] += x185 * x20 * x331
result[228] += x150 * x327 * x367
result[229] += x156 * x323 * x368
result[230] += x191 * x305 * x346
result[231] += x228 * x25 * x303
result[232] += x201 * x25 * x300
result[233] += x228 * x23 * x308
result[234] += x229 * x23 * x303
result[235] += x203 * x23 * x340
result[236] += x191 * x314 * x368
result[237] += x20 * x201 * x308
result[238] += x20 * x230 * x303
result[239] += x20 * x207 * x305
result[240] += x267 * x286 * x346
result[241] += x233 * x25 * x283
result[242] += x25 * x268 * x320
result[243] += x232 * x289 * x355
result[244] += x236 * x319 * x355
result[245] += x238 * x286 * x356
result[246] += x20 * x267 * x295
result[247] += x268 * x289 * x369
result[248] += x238 * x283 * x368
result[249] += x271 * x279 * x360
result[250] += x296 * x371 * x372
result[251] += x291 * x370 * x373
result[252] += x297 * x370 * x372
result[253] += x374 * x375
result[254] += x253 * x373 * x4 * x80 * x96
result[255] += x11 * x293 * x372
result[256] += x251 * (
x0 * (x222 + 6.0 * x334 + 3.0 * x335 + 3.0 * x353) + x113 * x358
)
result[257] += x374 * x81
result[258] += x100 * x373 * x376
result[259] += x112 * x372 * x377
result[260] += x142 * x348 * x371
result[261] += x318 * x351 * x370
result[262] += x146 * x347 * x370
result[263] += x261 * x362 * x4
result[264] += x145 * x351 * x378
result[265] += x11 * x150 * x352
result[266] += x261 * x359
result[267] += x146 * x354 * x8
result[268] += x150 * x351 * x380
result[269] += x156 * x348 * x8
result[270] += x193 * x323 * x371
result[271] += x194 * x327 * x370
result[272] += x198 * x324 * x370
result[273] += x11 * x194 * x331
result[274] += x11 * x201 * x327
result[275] += x11 * x203 * x329
result[276] += x193 * x336 * x8
result[277] += x198 * x331 * x381
result[278] += x203 * x327 * x382
result[279] += x207 * x324 * x383
result[280] += x231 * x301 * x371
result[281] += x233 * x303 * x370
result[282] += x236 * x305 * x370
result[283] += x11 * x233 * x308
result[284] += x268 * x303 * x378
result[285] += x11 * x238 * x305
result[286] += x231 * x314 * x379
result[287] += x236 * x308 * x380
result[288] += x238 * x303 * x380
result[289] += x240 * x301 * x8
result[290] += x272 * x298 * x371
result[291] += x272 * x284 * x370
result[292] += x273 * x286 * x384
result[293] += x272 * x289 * x385
result[294] += x11 * x273 * x292
result[295] += x276 * x279 * x375
result[296] += x272 * x295 * x377
result[297] += x273 * x289 * x376
result[298] += x274 * x284 * x8
result[299] += x278 * x279
result[300] += x280 * x386
result[301] += x285 * x386 * x66
result[302] += x281 * x389 * x82
result[303] += x290 * x390 * x65 * x85
result[304] += x110 * x290 * x391
result[305] += x290 * x394 * x395
result[306] += x102 * x294 * x396
result[307] += x294 * x389 * x85
result[308] += x110 * x294 * x394 * x65
result[309] += x294 * x397 * x398
result[310] += x115 * x317 * x386
result[311] += x122 * x390 * x76
result[312] += x388 * x399 * x76
result[313] += x126 * x309 * x400
result[314] += x121 * x401 * x91
result[315] += x189 * x309 * x394
result[316] += x137 * x315 * x390
result[317] += x126 * x316 * x388
result[318] += x105 * x122 * x394
result[319] += x118 * x315 * x397
result[320] += x404 * x50 * x82
result[321] += x110 * x405 * x76
result[322] += x407 * x408 * x76
result[323] += x147 * x404 * x91
result[324] += x309 * x407 * x409
result[325] += x408 * x412 * x91
result[326] += x102 * x105 * x404
result[327] += x147 * x315 * x407
result[328] += x110 * x316 * x412
result[329] += x315 * x416 * x82
result[330] += x161 * x390 * x49
result[331] += x166 * x417 * x42
result[332] += x169 * x388 * x42
result[333] += x171 * x344 * x417
result[334] += x163 * x332 * x388
result[335] += x169 * x394 * x67
result[336] += x179 * x345 * x390
result[337] += x171 * x338 * x388
result[338] += x166 * x337 * x394
result[339] += x103 * x161 * x397
result[340] += x118 * x405 * x49
result[341] += x120 * x418 * x42
result[342] += x407 * x419 * x42
result[343] += x126 * x332 * x403
result[344] += x120 * x341 * x407
result[345] += x118 * x332 * x412
result[346] += x103 * x137 * x405
result[347] += x126 * x342 * x407
result[348] += x120 * x342 * x412
result[349] += x103 * x399 * x416
result[350] += x423 * x424 * x49
result[351] += x110 * x42 * x425
result[352] += x42 * x427 * x428
result[353] += x423 * x429 * x67
result[354] += x110 * x332 * x427
result[355] += x428 * x431 * x67
result[356] += x204 * x337 * x422
result[357] += x337 * x427 * x429
result[358] += x110 * x338 * x431
result[359] += x337 * x424 * x434
result[360] += x257 * x346 * x390
result[361] += x25 * x258 * x400
result[362] += x215 * x25 * x388
result[363] += x217 * x356 * x390
result[364] += x212 * x355 * x401
result[365] += x214 * x355 * x394
result[366] += x262 * x360 * x386
result[367] += x217 * x368 * x388
result[368] += x258 * x369 * x394
result[369] += x20 * x257 * x397
result[370] += x158 * x346 * x405
result[371] += x163 * x25 * x418
result[372] += x226 * x25 * x407
result[373] += x171 * x23 * x418
result[374] += x165 * x365 * x407
result[375] += x226 * x23 * x412
result[376] += x179 * x20 * x405
result[377] += x171 * x367 * x407
result[378] += x163 * x367 * x412
result[379] += x158 * x368 * x416
result[380] += x346 * x399 * x422
result[381] += x120 * x25 * x435
result[382] += x25 * x419 * x427
result[383] += x126 * x23 * x435
result[384] += x184 * x366 * x427
result[385] += x118 * x365 * x431
result[386] += x137 * x368 * x422
result[387] += x126 * x367 * x427
result[388] += x184 * x20 * x431
result[389] += x183 * x19 * x270 * x434
result[390] += x151 * x346 * x436
result[391] += x110 * x25 * x438
result[392] += x25 * x408 * x441
result[393] += x147 * x355 * x436
result[394] += x355 * x409 * x441
result[395] += x356 * x443 * x82
result[396] += x102 * x20 * x437
result[397] += x147 * x363 * x441
result[398] += x360 * x444 * x64
result[399] += x360 * x447
result[400] += x241 * x371 * x396
result[401] += x245 * x384 * x390
result[402] += x241 * x370 * x389
result[403] += x254 * x375 * x386
result[404] += x11 * x245 * x391
result[405] += x241 * x385 * x394
result[406] += x252 * x386
result[407] += x247 * x389 * x8
result[408] += x245 * x376 * x394
result[409] += x241 * x377 * x397
result[410] += x208 * x371 * x404
result[411] += x212 * x370 * x405
result[412] += x215 * x370 * x407
result[413] += x11 * x217 * x405
result[414] += x258 * x378 * x407
result[415] += x11 * x215 * x412
result[416] += x222 * x404 * x8
result[417] += x217 * x380 * x407
result[418] += x212 * x380 * x412
result[419] += x208 * x379 * x416
result[420] += x161 * x371 * x422
result[421] += x166 * x370 * x423
result[422] += x169 * x370 * x427
result[423] += x11 * x171 * x425
result[424] += x11 * x163 * x174 * x427
result[425] += x11 * x169 * x431
result[426] += x179 * x383 * x423
result[427] += x171 * x382 * x427
result[428] += x166 * x381 * x431
result[429] += x161 * x434 * x8
result[430] += x118 * x371 * x437
result[431] += x122 * x370 * x436
result[432] += x370 * x399 * x441
result[433] += x11 * x126 * x438
result[434] += x121 * x378 * x441
result[435] += x269 * x4 * x444
result[436] += x137 * x379 * x436
result[437] += x126 * x380 * x441
result[438] += x122 * x443 * x8
result[439] += x269 * x447
result[440] += x371 * x398 * x448
result[441] += x110 * x384 * x448
result[442] += x370 * x395 * x449
result[443] += x385 * x448 * x85
result[444] += x275 * x4 * x449 * x97
result[445] += x375 * x450
result[446] += x102 * x377 * x448
result[447] += x376 * x449 * x85
result[448] += x450 * x66
result[449] += x277 * (
x0 * (x240 + 6.0 * x432 + 3.0 * x433 + 3.0 * x442) + x140 * x446
)
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_34(ax, da, A, bx, db, B, R, result):
"""See docstring of dipole3d_43."""
# Call equivalent function and write to result
tmp = numpy.zeros_like(result)
dipole3d_43(bx, db, B, ax, da, A, R, tmp)
result[:] += numpy.transpose(tmp.reshape(3, 15, 10), axes=(0, 2, 1)).flatten()
[docs]
@numba.jit(
func_type.signature,
nopython=True,
nogil=True,
fastmath=True,
cache=True,
)
def dipole3d_44(ax, da, A, bx, db, B, R, result):
"""Cartesian 3D (gg) dipole moment integrals.
The origin is at R.
Generated code; DO NOT modify by hand!"""
x0 = 0.5 / (ax + bx)
x1 = (ax + bx) ** (-1.0)
x2 = -x1 * (ax * A[0] + bx * B[0])
x3 = -x2 - B[0]
x4 = -x2 - A[0]
x5 = ax * bx * x1
x6 = numpy.exp(-x5 * (A[0] - B[0]) ** 2)
x7 = 1.77245385090551603 * numpy.sqrt(x1)
x8 = x6 * x7
x9 = x3 * x8
x10 = -x2 - R[0]
x11 = x10 * x8
x12 = x0 * (x11 + x9)
x13 = x0 * x8
x14 = x10 * x9
x15 = x13 + x14
x16 = x15 * x4
x17 = x12 + x16
x18 = x17 * x4
x19 = x17 * x3
x20 = 3.0 * x13
x21 = x4 * x8
x22 = x21 * x3
x23 = x10 * x21
x24 = x0 * (x14 + x20 + x22 + x23)
x25 = x3**2 * x8
x26 = x20 + 2.0 * x22
x27 = x0 * (x25 + x26)
x28 = x0 * (x21 + x9)
x29 = x13 + x22
x30 = x29 * x3
x31 = x28 + x30
x32 = x31 * x4
x33 = x27 + x32
x34 = x0 * (2.0 * x18 + 2.0 * x19 + 4.0 * x24 + x33)
x35 = x15 * x3
x36 = 3.0 * x12
x37 = 2.0 * x16
x38 = x0 * (x31 + x35 + x36 + x37)
x39 = x19 + x24
x40 = x39 * x4
x41 = x38 + x40
x42 = x3 * x41
x43 = x34 + x42
x44 = x3 * x43
x45 = x4 * x43
x46 = x3 * x39
x47 = 3.0 * x40
x48 = x29 * x4
x49 = 2.0 * x0 * (2.0 * x28 + x30 + x48)
x50 = x3 * x33
x51 = x49 + x50
x52 = x0 * (5.0 * x38 + 2.0 * x46 + x47 + x51)
x53 = x33 * x4
x54 = 3.0 * x0 * (2.0 * x49 + x50 + x53)
x55 = x3 * x31
x56 = 3.0 * x32
x57 = x0 * (5.0 * x27 + 2.0 * x55 + x56)
x58 = x4 * x51
x59 = x57 + x58
x60 = x3 * x59 + x54
x61 = x4 * x41
x62 = x0 * (6.0 * x34 + 3.0 * x42 + x59 + 3.0 * x61)
x63 = x45 + x52
x64 = x3 * x63 + x62
x65 = da * db
x66 = 0.00952380952380952381 * x65
x67 = numpy.exp(-x5 * (A[1] - B[1]) ** 2)
x68 = numpy.exp(-x5 * (A[2] - B[2]) ** 2)
x69 = 3.14159265358979324 * x1 * x68
x70 = x67 * x69
x71 = x66 * x70
x72 = -x1 * (ax * A[1] + bx * B[1])
x73 = -x72 - B[1]
x74 = 2.64575131106459059
x75 = x65 * x74
x76 = 0.00952380952380952381 * x75
x77 = x70 * x76
x78 = x77 * (x4 * x63 + x62)
x79 = -x1 * (ax * A[2] + bx * B[2])
x80 = -x79 - B[2]
x81 = x28 + x48
x82 = x0 * (x11 + x21)
x83 = x13 + x23
x84 = x4 * x83
x85 = x82 + x84
x86 = x0 * (2.0 * x12 + x37 + x81 + x85)
x87 = x18 + x24
x88 = x4 * x87
x89 = x49 + x53
x90 = x34 + x61
x91 = x0 * (3.0 * x38 + x47 + 2.0 * x86 + 2.0 * x88 + x89) + x4 * x90
x92 = x68 * x7
x93 = 0.0325300024316177726
x94 = x67 * x7
x95 = x73**2 * x94
x96 = x0 * x94
x97 = x95 + x96
x98 = x65 * x97
x99 = x93 * x98
x100 = 5.91607978309961604
x101 = x100 * x71
x102 = x80**2 * x92
x103 = x0 * x92
x104 = x102 + x103
x105 = x104 * x65
x106 = x105 * x93
x107 = 2.0 * x96
x108 = x73 * (x107 + x97)
x109 = 3.0 * x24
x110 = x4**2 * x8
x111 = x0 * (x110 + x20 + 2.0 * x23) + x4 * x85
x112 = x0 * (x110 + x26)
x113 = x4 * x81
x114 = x112 + x113
x115 = x86 + x88
x116 = x0 * (x109 + x111 + x114 + 3.0 * x18) + x115 * x4
x117 = x116 * x76
x118 = x80 * x92
x119 = 0.00952380952380952381 * x100
x120 = x116 * x119
x121 = x73 * x94
x122 = 2.0 * x103
x123 = x80 * (x104 + x122)
x124 = 3.0 * x96
x125 = x0 * (x124 + 3.0 * x95) + x108 * x73
x126 = x110 + x13
x127 = 2.0 * x0
x128 = x126 * x4 + x127 * x21
x129 = x0 * (x128 + 3.0 * x82 + 3.0 * x84) + x111 * x4
x130 = x129 * x66
x131 = x129 * x76
x132 = 3.0 * x103
x133 = x0 * (3.0 * x102 + x132) + x123 * x80
x134 = -x72 - A[1]
x135 = x64 * x77
x136 = x134 * x94
x137 = x136 * x73
x138 = x137 + x96
x139 = x138 * x65
x140 = 0.0666666666666666667 * x139
x141 = 0.0666666666666666667 * x65
x142 = x141 * x80
x143 = x63 * x70
x144 = x0 * (x121 + x136)
x145 = x138 * x73
x146 = x144 + x145
x147 = 0.0860662965823870419
x148 = x147 * x65
x149 = x146 * x148
x150 = 2.2360679774997897
x151 = x140 * x150
x152 = x105 * x147
x153 = x124 + 2.0 * x137
x154 = x0 * (x153 + x95)
x155 = x146 * x73
x156 = x154 + x155
x157 = x141 * x156
x158 = x115 * x150
x159 = x141 * x158
x160 = x123 * x141
x161 = 3.0 * x144
x162 = x0 * (x108 + 3.0 * x145 + x161) + x156 * x73
x163 = x111 * x76
x164 = 0.0666666666666666667 * x111
x165 = x164 * x65
x166 = x111 * x147
x167 = -x79 - A[2]
x168 = x141 * x167
x169 = x167 * x92
x170 = x169 * x80
x171 = x103 + x170
x172 = x171 * x65
x173 = 0.0666666666666666667 * x172
x174 = x147 * x98
x175 = x150 * x173
x176 = x0 * (x118 + x169)
x177 = x171 * x80
x178 = x176 + x177
x179 = x148 * x178
x180 = x108 * x141
x181 = x132 + 2.0 * x170
x182 = x0 * (x102 + x181)
x183 = x178 * x80
x184 = x182 + x183
x185 = x141 * x94
x186 = 3.0 * x176
x187 = x0 * (x123 + 3.0 * x177 + x186) + x184 * x80
x188 = x44 + x52
x189 = x134**2 * x94
x190 = x189 + x96
x191 = x190 * x65
x192 = x191 * x93
x193 = x134 * x138
x194 = x144 + x193
x195 = x148 * x92
x196 = x147 * x191
x197 = x134 * x146
x198 = x154 + x197
x199 = 0.111111111111111111 * x65
x200 = x199 * x41
x201 = 1.73205080756887729
x202 = x199 * x201
x203 = x202 * x41
x204 = x104 * x199
x205 = 2.0 * x0 * (2.0 * x144 + x145 + x193)
x206 = x198 * x73
x207 = x205 + x206
x208 = x201 * x87
x209 = x198 * x199
x210 = x123 * x147
x211 = 3.0 * x197
x212 = x0 * (5.0 * x154 + 2.0 * x155 + x211)
x213 = x207 * x73
x214 = x212 + x213
x215 = x65 * x85
x216 = x215 * x93
x217 = x147 * x215
x218 = x146 * x202
x219 = 0.333333333333333333 * x139
x220 = x178 * x202
x221 = x150 * x157
x222 = 0.333333333333333333 * x172
x223 = x150 * x184
x224 = x136 * x141
x225 = x119 * x215
x226 = x150 * x85
x227 = x167**2 * x92
x228 = x103 + x227
x229 = x228 * x65
x230 = x229 * x93
x231 = x147 * x229
x232 = x167 * x171
x233 = x176 + x232
x234 = x148 * x94
x235 = x199 * x97
x236 = x167 * x178
x237 = x182 + x236
x238 = x108 * x147
x239 = x199 * x237
x240 = 2.0 * x0 * (2.0 * x176 + x177 + x232)
x241 = x237 * x80
x242 = x240 + x241
x243 = x125 * x93
x244 = 3.0 * x236
x245 = x0 * (5.0 * x182 + 2.0 * x183 + x244)
x246 = x242 * x80
x247 = x245 + x246
x248 = x134 * (x107 + x190)
x249 = x248 * x65
x250 = 0.00952380952380952381 * x92
x251 = x12 + x35
x252 = x0 * (2.0 * x14 + x20 + x25) + x251 * x3
x253 = x27 + x55
x254 = x38 + x46
x255 = x0 * (x109 + 3.0 * x19 + x252 + x253) + x254 * x3
x256 = x255 * x74
x257 = x0 * (x153 + x189)
x258 = x134 * x194
x259 = x257 + x258
x260 = x141 * x92
x261 = 0.0666666666666666667 * x248
x262 = x261 * x65
x263 = x134 * x198
x264 = x205 + x263
x265 = x150 * x259
x266 = x141 * x265
x267 = x134 * x207
x268 = x212 + x267
x269 = x17 * x65
x270 = 0.0666666666666666667 * x269
x271 = x150 * x270
x272 = 3.0 * x0 * (2.0 * x205 + x206 + x263)
x273 = x268 * x73 + x272
x274 = 0.00952380952380952381 * x83
x275 = x274 * x74
x276 = x275 * x65
x277 = x141 * x83
x278 = x119 * x255
x279 = x150 * x194
x280 = x141 * x169
x281 = x150 * x190
x282 = x202 * x39
x283 = 0.333333333333333333 * x269
x284 = x100 * x274
x285 = x284 * x65
x286 = x150 * x83
x287 = x150 * x277
x288 = x150 * x228
x289 = x150 * x233
x290 = x167 * (x122 + x228)
x291 = x290 * x65
x292 = 0.00952380952380952381 * x291
x293 = x141 * x290
x294 = x0 * (x181 + x227)
x295 = x167 * x233
x296 = x294 + x295
x297 = x150 * x296
x298 = x121 * x141
x299 = x167 * x237
x300 = x240 + x299
x301 = 0.0666666666666666667 * x290
x302 = x150 * x300
x303 = x167 * x242
x304 = x245 + x303
x305 = 3.0 * x0 * (2.0 * x240 + x241 + x299)
x306 = x304 * x80 + x305
x307 = x0 * (x124 + 3.0 * x189) + x134 * x248
x308 = x13 + x25
x309 = x127 * x9 + x3 * x308
x310 = x0 * (x309 + 3.0 * x35 + x36) + x252 * x3
x311 = x310 * x66
x312 = x0 * (x161 + 3.0 * x193 + x248) + x134 * x259
x313 = x252 * x76
x314 = x65 * x92
x315 = x0 * (3.0 * x154 + x211 + 2.0 * x257 + 2.0 * x258) + x134 * x264
x316 = x315 * x93
x317 = x100 * x66
x318 = x251 * x317
x319 = x134 * x268 + x272
x320 = 0.00952380952380952381 * x15
x321 = x320 * x75
x322 = x100 * x320
x323 = x322 * x65
x324 = x6 * x66
x325 = x324 * x69
x326 = x325 * (x0 * (7.0 * x212 + 3.0 * x213 + 4.0 * x267) + x134 * x273)
x327 = x6 * x69
x328 = x327 * x80
x329 = x10 * x76
x330 = x11 * x76
x331 = x11 * x66
x332 = x310 * x74
x333 = 0.00952380952380952381 * x169
x334 = x141 * x259
x335 = x147 * x251
x336 = x335 * x65
x337 = x141 * x15
x338 = x15 * x150
x339 = x167 * x327
x340 = x11 * x74
x341 = 0.00952380952380952381 * x187
x342 = x147 * x252
x343 = x199 * x251
x344 = x201 * x233
x345 = x147 * x15
x346 = x15 * x202
x347 = x11 * x148
x348 = x141 * x296
x349 = 3.14159265358979324 * x1 * x67
x350 = x349 * x6
x351 = x134 * x350
x352 = x0 * (x132 + 3.0 * x227) + x167 * x290
x353 = x0 * (x186 + 3.0 * x232 + x290) + x167 * x296
x354 = x352 * x93
x355 = x65 * x94
x356 = x0 * (3.0 * x182 + x244 + 2.0 * x294 + 2.0 * x295) + x167 * x300
x357 = x356 * x93
x358 = x167 * x304 + x305
x359 = x350 * x76
x360 = x358 * x359
x361 = x324 * x349
x362 = x361 * (x0 * (7.0 * x245 + 3.0 * x246 + 4.0 * x303) + x167 * x306)
x363 = -x72 - R[1]
x364 = x3 * x51
x365 = x71 * (x0 * (3.0 * x364 + 7.0 * x57 + 4.0 * x58) + x4 * x60)
x366 = x4 * x59 + x54
x367 = x121 * x363
x368 = x367 + x96
x369 = 0.00952380952380952381 * x368
x370 = x369 * x75
x371 = x363 * x77
x372 = x363 * x94
x373 = x0 * (x121 + x372)
x374 = x368 * x73
x375 = x373 + x374
x376 = x0 * (2.0 * x112 + 2.0 * x113 + 3.0 * x27 + x56) + x4 * x89
x377 = x100 * x369
x378 = x377 * x65
x379 = x0 * (x124 + 2.0 * x367 + x95) + x375 * x73
x380 = 3.0 * x28
x381 = x0 * (x128 + x380 + 3.0 * x48) + x114 * x4
x382 = x76 * x92
x383 = x317 * x375
x384 = x123 * x76
x385 = x0 * (3.0 * x110 + x20) + x128 * x4
x386 = 3.0 * x373
x387 = x0 * (x108 + 3.0 * x374 + x386) + x379 * x73
x388 = x66 * x92
x389 = x118 * x76
x390 = x372 * x66
x391 = x136 * x363
x392 = x391 + x96
x393 = 0.00952380952380952381 * x392
x394 = x393 * x75
x395 = x134 * x368
x396 = x373 + x395
x397 = x141 * x396
x398 = x141 * x392
x399 = x0 * (x124 + x137 + x367 + x391)
x400 = x396 * x73
x401 = x399 + x400
x402 = x150 * x397
x403 = 2.0 * x395
x404 = x0 * (x146 + x374 + x386 + x403)
x405 = x401 * x73
x406 = x404 + x405
x407 = x114 * x150
x408 = x141 * x407
x409 = 3.0 * x399
x410 = x0 * (x156 + x379 + 3.0 * x400 + x409) + x406 * x73
x411 = x128 * x75
x412 = x128 * x141
x413 = x141 * x368
x414 = x148 * x375
x415 = x114 * x141
x416 = x364 + x57
x417 = x0 * (x136 + x372)
x418 = x134 * x392
x419 = x417 + x418
x420 = x419 * x93
x421 = x134 * x396
x422 = x399 + x421
x423 = x148 * x51
x424 = x134 * x401
x425 = x404 + x424
x426 = x199 * x425
x427 = x118 * x202
x428 = x0 * (x198 + 4.0 * x399 + 2.0 * x400 + 2.0 * x421)
x429 = x425 * x73
x430 = x428 + x429
x431 = x201 * x81
x432 = x210 * x65
x433 = 3.0 * x424
x434 = x0 * (x207 + 5.0 * x404 + 2.0 * x405 + x433)
x435 = x430 * x73
x436 = x434 + x435
x437 = x126 * x65
x438 = x92 * x93
x439 = x126 * x148
x440 = x100 * x393
x441 = x440 * x65
x442 = x202 * x401
x443 = x150 * x81
x444 = 0.333333333333333333 * x65
x445 = x178 * x444
x446 = x119 * x410
x447 = x199 * x375
x448 = x202 * x368
x449 = x148 * x372
x450 = x0 * (x124 + x189 + 2.0 * x391) + x134 * x419
x451 = x0 * (3.0 * x30 + x309 + x380) + x253 * x3
x452 = x0 * (x194 + 2.0 * x373 + x403 + x419)
x453 = x134 * x422
x454 = x452 + x453
x455 = x141 * x253
x456 = x134 * x425
x457 = x428 + x456
x458 = x150 * x454
x459 = x134 * x430
x460 = x434 + x459
x461 = x141 * x29
x462 = x150 * x461
x463 = x327 * x4
x464 = x0 * (x268 + 6.0 * x428 + 3.0 * x429 + 3.0 * x456)
x465 = x460 * x73 + x464
x466 = x465 * x76
x467 = x450 * x76
x468 = x317 * x419
x469 = x150 * x455
x470 = x202 * x31
x471 = x100 * x325
x472 = x141 * x21
x473 = x150 * x398
x474 = x233 * x444
x475 = x29 * x444
x476 = x292 * x74
x477 = x147 * x291
x478 = x350 * x4
x479 = x0 * (x248 + 3.0 * x417 + 3.0 * x418) + x134 * x450
x480 = x0 * (x20 + 3.0 * x25) + x3 * x309
x481 = x0 * (x259 + x409 + 3.0 * x421 + x450) + x134 * x454
x482 = x0 * (x264 + 3.0 * x404 + x433 + 2.0 * x452 + 2.0 * x453) + x134 * x457
x483 = x308 * x65
x484 = x119 * x481
x485 = x3 * x327
x486 = x76 * (x134 * x460 + x464)
x487 = x76 * x8
x488 = x66 * x8
x489 = x141 * x309
x490 = x148 * x308
x491 = x141 * x9
x492 = x141 * x8
x493 = x148 * x309
x494 = x199 * x308
x495 = x202 * x9
x496 = x148 * x9
x497 = x148 * x8
x498 = x65 * x8
x499 = x480 * x74
x500 = x74 * x8
x501 = x309 * x76
x502 = x76 * x9
x503 = -x79 - R[2]
x504 = x503 * x77
x505 = x118 * x503
x506 = x103 + x505
x507 = 0.00952380952380952381 * x506
x508 = x507 * x75
x509 = x503 * x92
x510 = x100 * x507
x511 = x510 * x65
x512 = x0 * (x118 + x509)
x513 = x506 * x80
x514 = x512 + x513
x515 = x514 * x93
x516 = x317 * x514
x517 = x0 * (x102 + x132 + 2.0 * x505) + x514 * x80
x518 = x76 * x94
x519 = x509 * x66
x520 = 3.0 * x512
x521 = x0 * (x123 + 3.0 * x513 + x520) + x517 * x80
x522 = x66 * x94
x523 = x141 * x59
x524 = x148 * x514
x525 = 0.00952380952380952381 * x411
x526 = x169 * x503
x527 = x103 + x526
x528 = 0.00952380952380952381 * x527
x529 = x528 * x75
x530 = x167 * x506
x531 = x512 + x530
x532 = x150 * x531
x533 = x0 * (x132 + x170 + x505 + x526)
x534 = x531 * x80
x535 = x533 + x534
x536 = 2.0 * x530
x537 = x0 * (x178 + x513 + x520 + x536)
x538 = x535 * x80
x539 = x537 + x538
x540 = 3.0 * x533
x541 = (
0.00952380952380952381 * x0 * (x184 + x517 + 3.0 * x534 + x540)
+ 0.00952380952380952381 * x539 * x80
)
x542 = x202 * x506
x543 = x199 * x514
x544 = x148 * x509
x545 = x214 * x93
x546 = x100 * x528
x547 = x546 * x65
x548 = x202 * x33
x549 = x444 * x531
x550 = x100 * x541
x551 = x0 * (x169 + x509)
x552 = x167 * x527
x553 = x551 + x552
x554 = x553 * x65
x555 = x93 * x94
x556 = x167 * x531
x557 = x533 + x556
x558 = x167 * x535
x559 = x537 + x558
x560 = x199 * x559
x561 = x0 * (x237 + 4.0 * x533 + 2.0 * x534 + 2.0 * x556)
x562 = x559 * x80
x563 = x561 + x562
x564 = 3.0 * x558
x565 = x0 * (x242 + 5.0 * x537 + 2.0 * x538 + x564)
x566 = x563 * x80
x567 = x565 + x566
x568 = 0.00952380952380952381 * x249 * x74
x569 = x147 * x249
x570 = x503 * x76
x571 = x119 * x554
x572 = x100 * x361
x573 = x0 * (x132 + x227 + 2.0 * x526) + x167 * x553
x574 = x0 * (x233 + 2.0 * x512 + x536 + x553)
x575 = x167 * x557
x576 = x574 + x575
x577 = x150 * x576
x578 = x167 * x559
x579 = x561 + x578
x580 = x167 * x563
x581 = x565 + x580
x582 = x573 * x76
x583 = x141 * x581
x584 = x0 * (x304 + 6.0 * x561 + 3.0 * x562 + 3.0 * x578)
x585 = x581 * x80 + x584
x586 = x585 * x76
x587 = x0 * (x290 + 3.0 * x551 + 3.0 * x552) + x167 * x573
x588 = x0 * (x296 + x540 + 3.0 * x556 + x573) + x167 * x576
x589 = x119 * x588
x590 = x0 * (x300 + 3.0 * x537 + x564 + 2.0 * x574 + 2.0 * x575) + x167 * x579
x591 = x359 * (x167 * x581 + x584)
# 675 item(s)
result[0] += x71 * (x0 * (3.0 * x44 + 4.0 * x45 + 7.0 * x52 + x60) + x4 * x64)
result[1] += x73 * x78
result[2] += x78 * x80
result[3] += x91 * x92 * x99
result[4] += x101 * x73 * x80 * x91
result[5] += x106 * x91 * x94
result[6] += x108 * x117 * x92
result[7] += x118 * x120 * x98
result[8] += x105 * x120 * x121
result[9] += x117 * x123 * x94
result[10] += x125 * x130 * x92
result[11] += x108 * x118 * x131
result[12] += x106 * x129 * x97
result[13] += x121 * x123 * x131
result[14] += x130 * x133 * x94
result[15] += x134 * x135
result[16] += x140 * x63 * x92
result[17] += x134 * x142 * x143
result[18] += x149 * x90 * x92
result[19] += x118 * x151 * x90
result[20] += x136 * x152 * x90
result[21] += x115 * x157 * x92
result[22] += x118 * x146 * x159
result[23] += x104 * x140 * x158
result[24] += x115 * x136 * x160
result[25] += x162 * x163 * x92
result[26] += x118 * x156 * x165
result[27] += x105 * x146 * x166
result[28] += x123 * x139 * x164
result[29] += x133 * x136 * x163
result[30] += x135 * x167
result[31] += x143 * x168 * x73
result[32] += x173 * x63 * x94
result[33] += x169 * x174 * x90
result[34] += x121 * x175 * x90
result[35] += x179 * x90 * x94
result[36] += x115 * x169 * x180
result[37] += x158 * x173 * x97
result[38] += x121 * x159 * x178
result[39] += x115 * x184 * x185
result[40] += x125 * x163 * x169
result[41] += x108 * x164 * x172
result[42] += x166 * x178 * x98
result[43] += x121 * x165 * x184
result[44] += x163 * x187 * x94
result[45] += x188 * x192 * x92
result[46] += x194 * x195 * x43
result[47] += x118 * x196 * x43
result[48] += x198 * x200 * x92
result[49] += x118 * x194 * x203
result[50] += x190 * x204 * x41
result[51] += x195 * x207 * x87
result[52] += x118 * x208 * x209
result[53] += x194 * x204 * x208
result[54] += x191 * x210 * x87
result[55] += x214 * x216 * x92
result[56] += x118 * x207 * x217
result[57] += x198 * x204 * x85
result[58] += x194 * x210 * x215
result[59] += x133 * x192 * x85
result[60] += x101 * x134 * x167 * x188
result[61] += x151 * x169 * x43
result[62] += x136 * x175 * x43
result[63] += x169 * x218 * x41
result[64] += x171 * x219 * x41
result[65] += x136 * x220 * x41
result[66] += x169 * x221 * x87
result[67] += x146 * x222 * x87
result[68] += x178 * x219 * x87
result[69] += x223 * x224 * x87
result[70] += x162 * x169 * x225
result[71] += x156 * x173 * x226
result[72] += x146 * x220 * x85
result[73] += x140 * x184 * x226
result[74] += x136 * x187 * x225
result[75] += x188 * x230 * x94
result[76] += x121 * x231 * x43
result[77] += x233 * x234 * x43
result[78] += x228 * x235 * x41
result[79] += x121 * x203 * x233
result[80] += x200 * x237 * x94
result[81] += x229 * x238 * x87
result[82] += x208 * x233 * x235
result[83] += x121 * x208 * x239
result[84] += x234 * x242 * x87
result[85] += x215 * x228 * x243
result[86] += x215 * x233 * x238
result[87] += x235 * x237 * x85
result[88] += x121 * x217 * x242
result[89] += x216 * x247 * x94
result[90] += x249 * x250 * x256
result[91] += x254 * x259 * x260
result[92] += x118 * x254 * x262
result[93] += x195 * x264 * x39
result[94] += x118 * x266 * x39
result[95] += x152 * x248 * x39
result[96] += x268 * x270 * x92
result[97] += x118 * x264 * x271
result[98] += x104 * x265 * x270
result[99] += x123 * x261 * x269
result[100] += x273 * x276 * x92
result[101] += x118 * x268 * x277
result[102] += x152 * x264 * x83
result[103] += x123 * x259 * x277
result[104] += x133 * x249 * x275
result[105] += x169 * x191 * x278
result[106] += x254 * x279 * x280
result[107] += x173 * x254 * x281
result[108] += x169 * x198 * x282
result[109] += x194 * x222 * x39
result[110] += x190 * x220 * x39
result[111] += x169 * x207 * x271
result[112] += x17 * x198 * x222
result[113] += x178 * x194 * x283
result[114] += x184 * x270 * x281
result[115] += x169 * x214 * x285
result[116] += x173 * x207 * x286
result[117] += x198 * x220 * x83
result[118] += x184 * x194 * x287
result[119] += x187 * x191 * x284
result[120] += x136 * x229 * x278
result[121] += x140 * x254 * x288
result[122] += x224 * x254 * x289
result[123] += x218 * x228 * x39
result[124] += x219 * x233 * x39
result[125] += x136 * x237 * x282
result[126] += x156 * x270 * x288
result[127] += x146 * x233 * x283
result[128] += x17 * x219 * x237
result[129] += x136 * x242 * x271
result[130] += x162 * x229 * x284
result[131] += x156 * x233 * x287
result[132] += x218 * x237 * x83
result[133] += x140 * x242 * x286
result[134] += x136 * x247 * x285
result[135] += x256 * x292 * x94
result[136] += x121 * x254 * x293
result[137] += x185 * x254 * x296
result[138] += x174 * x290 * x39
result[139] += x297 * x298 * x39
result[140] += x234 * x300 * x39
result[141] += x108 * x269 * x301
result[142] += x270 * x297 * x97
result[143] += x121 * x270 * x302
result[144] += x270 * x304 * x94
result[145] += x125 * x275 * x291
result[146] += x108 * x277 * x296
result[147] += x174 * x300 * x83
result[148] += x121 * x277 * x304
result[149] += x276 * x306 * x94
result[150] += x307 * x311 * x92
result[151] += x312 * x313 * x92
result[152] += x118 * x307 * x313
result[153] += x251 * x314 * x316
result[154] += x118 * x312 * x318
result[155] += x106 * x251 * x307
result[156] += x319 * x321 * x92
result[157] += x118 * x315 * x323
result[158] += x105 * x312 * x322
result[159] += x123 * x307 * x321
result[160] += x10 * x326
result[161] += x319 * x328 * x329
result[162] += x106 * x11 * x315
result[163] += x123 * x312 * x330
result[164] += x133 * x307 * x331
result[165] += x249 * x332 * x333
result[166] += x169 * x252 * x334
result[167] += x172 * x252 * x261
result[168] += x169 * x264 * x336
result[169] += x173 * x251 * x265
result[170] += x178 * x249 * x335
result[171] += x169 * x268 * x337
result[172] += x173 * x264 * x338
result[173] += x178 * x265 * x337
result[174] += x15 * x184 * x262
result[175] += x273 * x329 * x339
result[176] += x11 * x173 * x268
result[177] += x11 * x179 * x264
result[178] += x11 * x184 * x334
result[179] += x249 * x340 * x341
result[180] += x192 * x228 * x310
result[181] += x194 * x229 * x342
result[182] += x191 * x233 * x342
result[183] += x198 * x228 * x343
result[184] += x194 * x343 * x344
result[185] += x190 * x237 * x343
result[186] += x207 * x229 * x345
result[187] += x198 * x233 * x346
result[188] += x194 * x237 * x346
result[189] += x191 * x242 * x345
result[190] += x11 * x214 * x230
result[191] += x207 * x233 * x347
result[192] += x11 * x198 * x239
result[193] += x194 * x242 * x347
result[194] += x11 * x192 * x247
result[195] += x136 * x292 * x332
result[196] += x139 * x252 * x301
result[197] += x136 * x252 * x348
result[198] += x146 * x291 * x335
result[199] += x140 * x251 * x297
result[200] += x136 * x300 * x336
result[201] += x15 * x156 * x293
result[202] += x146 * x297 * x337
result[203] += x140 * x300 * x338
result[204] += x136 * x304 * x337
result[205] += x162 * x292 * x340
result[206] += x11 * x157 * x296
result[207] += x11 * x149 * x300
result[208] += x11 * x140 * x304
result[209] += x306 * x329 * x351
result[210] += x311 * x352 * x94
result[211] += x121 * x313 * x352
result[212] += x313 * x353 * x94
result[213] += x251 * x354 * x98
result[214] += x121 * x318 * x353
result[215] += x251 * x355 * x357
result[216] += x108 * x321 * x352
result[217] += x322 * x353 * x98
result[218] += x121 * x323 * x356
result[219] += x321 * x358 * x94
result[220] += x125 * x331 * x352
result[221] += x108 * x330 * x353
result[222] += x11 * x356 * x99
result[223] += x10 * x360 * x73
result[224] += x10 * x362
result[225] += x363 * x365
result[226] += x366 * x370 * x92
result[227] += x366 * x371 * x80
result[228] += x314 * x375 * x376 * x93
result[229] += x118 * x376 * x378
result[230] += x106 * x372 * x376
result[231] += x379 * x381 * x382
result[232] += x118 * x381 * x383
result[233] += x105 * x377 * x381
result[234] += x372 * x381 * x384
result[235] += x385 * x387 * x388
result[236] += x379 * x385 * x389
result[237] += x106 * x375 * x385
result[238] += x123 * x370 * x385
result[239] += x133 * x385 * x390
result[240] += x394 * x60 * x92
result[241] += x397 * x59 * x92
result[242] += x118 * x398 * x59
result[243] += x195 * x401 * x89
result[244] += x118 * x402 * x89
result[245] += x152 * x392 * x89
result[246] += x114 * x260 * x406
result[247] += x118 * x401 * x408
result[248] += x104 * x397 * x407
result[249] += x114 * x160 * x392
result[250] += x250 * x410 * x411
result[251] += x118 * x406 * x412
result[252] += x128 * x152 * x401
result[253] += x128 * x160 * x396
result[254] += x133 * x393 * x411
result[255] += x167 * x371 * x60
result[256] += x169 * x413 * x59
result[257] += x173 * x372 * x59
result[258] += x169 * x414 * x89
result[259] += x175 * x368 * x89
result[260] += x179 * x372 * x89
result[261] += x169 * x379 * x415
result[262] += x173 * x375 * x407
result[263] += x178 * x407 * x413
result[264] += x184 * x372 * x415
result[265] += x333 * x387 * x411
result[266] += x128 * x173 * x379
result[267] += x128 * x179 * x375
result[268] += x184 * x368 * x412
result[269] += x341 * x372 * x411
result[270] += x314 * x416 * x420
result[271] += x195 * x422 * x51
result[272] += x118 * x419 * x423
result[273] += x33 * x426 * x92
result[274] += x33 * x422 * x427
result[275] += x204 * x33 * x419
result[276] += x195 * x430 * x81
result[277] += x425 * x427 * x81
result[278] += x204 * x422 * x431
result[279] += x419 * x432 * x81
result[280] += x436 * x437 * x438
result[281] += x118 * x430 * x439
result[282] += x126 * x204 * x425
result[283] += x126 * x422 * x432
result[284] += x133 * x420 * x437
result[285] += x169 * x416 * x441
result[286] += x169 * x402 * x51
result[287] += x175 * x392 * x51
result[288] += x169 * x33 * x442
result[289] += x222 * x33 * x396
result[290] += x220 * x33 * x392
result[291] += x280 * x406 * x443
result[292] += x222 * x401 * x81
result[293] += x396 * x445 * x81
result[294] += x223 * x398 * x81
result[295] += x169 * x437 * x446
result[296] += x126 * x175 * x406
result[297] += x126 * x220 * x401
result[298] += x126 * x223 * x397
result[299] += x187 * x437 * x440
result[300] += x230 * x372 * x416
result[301] += x231 * x368 * x51
result[302] += x233 * x372 * x423
result[303] += x228 * x33 * x447
result[304] += x233 * x33 * x448
result[305] += x239 * x33 * x372
result[306] += x231 * x379 * x81
result[307] += x344 * x447 * x81
result[308] += x237 * x448 * x81
result[309] += x242 * x449 * x81
result[310] += x126 * x230 * x387
result[311] += x233 * x379 * x439
result[312] += x126 * x237 * x447
result[313] += x242 * x368 * x439
result[314] += x247 * x372 * x437 * x93
result[315] += x382 * x450 * x451
result[316] += x454 * x455 * x92
result[317] += x118 * x450 * x455
result[318] += x195 * x31 * x457
result[319] += x118 * x141 * x31 * x458
result[320] += x152 * x31 * x450
result[321] += x460 * x461 * x92
result[322] += x118 * x457 * x462
result[323] += x104 * x454 * x462
result[324] += x160 * x29 * x450
result[325] += x463 * x466
result[326] += x142 * x460 * x463
result[327] += x152 * x21 * x457
result[328] += x160 * x21 * x454
result[329] += x133 * x21 * x467
result[330] += x169 * x451 * x468
result[331] += x169 * x422 * x469
result[332] += x175 * x253 * x419
result[333] += x169 * x425 * x470
result[334] += x222 * x31 * x422
result[335] += x220 * x31 * x419
result[336] += x169 * x430 * x462
result[337] += x222 * x29 * x425
result[338] += x29 * x422 * x445
result[339] += x223 * x419 * x461
result[340] += x167 * x4 * x436 * x471
result[341] += x175 * x21 * x430
result[342] += x21 * x220 * x425
result[343] += x223 * x422 * x472
result[344] += x187 * x21 * x468
result[345] += x229 * x440 * x451
result[346] += x253 * x288 * x397
result[347] += x233 * x253 * x473
result[348] += x228 * x401 * x470
result[349] += x31 * x396 * x474
result[350] += x237 * x392 * x470
result[351] += x288 * x406 * x461
result[352] += x29 * x401 * x474
result[353] += x237 * x396 * x475
result[354] += x242 * x29 * x473
result[355] += x21 * x229 * x446
result[356] += x289 * x406 * x472
result[357] += x21 * x237 * x442
result[358] += x21 * x242 * x402
result[359] += x21 * x247 * x441
result[360] += x372 * x451 * x476
result[361] += x253 * x293 * x368
result[362] += x296 * x372 * x455
result[363] += x31 * x375 * x477
result[364] += x297 * x31 * x413
result[365] += x300 * x31 * x449
result[366] += x29 * x293 * x379
result[367] += x297 * x375 * x461
result[368] += x29 * x302 * x413
result[369] += x304 * x372 * x461
result[370] += x21 * x387 * x476
result[371] += x21 * x348 * x379
result[372] += x21 * x300 * x414
result[373] += x21 * x304 * x413
result[374] += x306 * x363 * x478 * x76
result[375] += x388 * x479 * x480
result[376] += x309 * x382 * x481
result[377] += x309 * x389 * x479
result[378] += x438 * x482 * x483
result[379] += x118 * x483 * x484
result[380] += x106 * x308 * x479
result[381] += x485 * x486
result[382] += x3 * x471 * x482 * x80
result[383] += x105 * x484 * x9
result[384] += x384 * x479 * x9
result[385] += x325 * (
x0 * (x273 + 7.0 * x434 + 3.0 * x435 + 4.0 * x459) + x134 * x465
)
result[386] += x328 * x486
result[387] += x106 * x482 * x8
result[388] += x123 * x481 * x487
result[389] += x133 * x479 * x488
result[390] += x169 * x467 * x480
result[391] += x169 * x454 * x489
result[392] += x173 * x309 * x450
result[393] += x169 * x457 * x490
result[394] += x175 * x308 * x454
result[395] += x179 * x308 * x450
result[396] += x168 * x460 * x485
result[397] += x175 * x457 * x9
result[398] += x178 * x458 * x491
result[399] += x184 * x450 * x491
result[400] += x339 * x466
result[401] += x173 * x460 * x8
result[402] += x179 * x457 * x8
result[403] += x184 * x454 * x492
result[404] += x187 * x450 * x487
result[405] += x229 * x420 * x480
result[406] += x231 * x309 * x422
result[407] += x233 * x419 * x493
result[408] += x228 * x425 * x494
result[409] += x344 * x422 * x494
result[410] += x237 * x419 * x494
result[411] += x231 * x430 * x9
result[412] += x233 * x425 * x495
result[413] += x237 * x422 * x495
result[414] += x242 * x419 * x496
result[415] += x230 * x436 * x8
result[416] += x233 * x430 * x497
result[417] += x237 * x426 * x8
result[418] += x242 * x422 * x497
result[419] += x247 * x420 * x498
result[420] += x291 * x393 * x499
result[421] += x293 * x309 * x396
result[422] += x296 * x392 * x489
result[423] += x308 * x401 * x477
result[424] += x297 * x308 * x397
result[425] += x300 * x392 * x490
result[426] += x293 * x406 * x9
result[427] += x297 * x401 * x491
result[428] += x302 * x397 * x9
result[429] += x304 * x398 * x9
result[430] += x292 * x410 * x500
result[431] += x296 * x406 * x492
result[432] += x300 * x401 * x497
result[433] += x304 * x397 * x8
result[434] += x306 * x394 * x8
result[435] += x352 * x390 * x480
result[436] += x309 * x352 * x370
result[437] += x353 * x372 * x501
result[438] += x354 * x375 * x483
result[439] += x353 * x377 * x483
result[440] += x357 * x372 * x483
result[441] += x352 * x379 * x502
result[442] += x353 * x383 * x9
result[443] += x356 * x378 * x9
result[444] += x3 * x360 * x363
result[445] += x352 * x387 * x488
result[446] += x353 * x379 * x487
result[447] += x357 * x375 * x498
result[448] += x358 * x370 * x8
result[449] += x362 * x363
result[450] += x365 * x503
result[451] += x366 * x504 * x73
result[452] += x366 * x508 * x94
result[453] += x376 * x509 * x99
result[454] += x121 * x376 * x511
result[455] += x355 * x376 * x515
result[456] += x108 * x381 * x509 * x76
result[457] += x381 * x510 * x98
result[458] += x121 * x381 * x516
result[459] += x381 * x517 * x518
result[460] += x125 * x385 * x519
result[461] += x108 * x385 * x508
result[462] += x385 * x515 * x98
result[463] += x121 * x385 * x517 * x76
result[464] += x385 * x521 * x522
result[465] += x134 * x504 * x60
result[466] += x140 * x509 * x59
result[467] += x136 * x506 * x523
result[468] += x149 * x509 * x89
result[469] += x151 * x506 * x89
result[470] += x136 * x524 * x89
result[471] += x114 * x157 * x509
result[472] += x146 * x408 * x506
result[473] += x140 * x407 * x514
result[474] += x136 * x415 * x517
result[475] += x162 * x509 * x525
result[476] += x156 * x412 * x506
result[477] += x128 * x149 * x514
result[478] += x128 * x140 * x517
result[479] += x136 * x521 * x525
result[480] += x529 * x60 * x94
result[481] += x121 * x523 * x527
result[482] += x185 * x531 * x59
result[483] += x174 * x527 * x89
result[484] += x298 * x532 * x89
result[485] += x234 * x535 * x89
result[486] += x114 * x180 * x527
result[487] += x408 * x531 * x97
result[488] += x121 * x408 * x535
result[489] += x114 * x185 * x539
result[490] += x125 * x411 * x528
result[491] += x108 * x412 * x531
result[492] += x128 * x174 * x535
result[493] += x121 * x412 * x539
result[494] += x411 * x541 * x94
result[495] += x192 * x416 * x509
result[496] += x194 * x423 * x509
result[497] += x196 * x506 * x51
result[498] += x209 * x33 * x509
result[499] += x194 * x33 * x542
result[500] += x190 * x33 * x543
result[501] += x207 * x544 * x81
result[502] += x198 * x542 * x81
result[503] += x194 * x431 * x543
result[504] += x196 * x517 * x81
result[505] += x437 * x509 * x545
result[506] += x207 * x439 * x506
result[507] += x126 * x198 * x543
result[508] += x194 * x439 * x517
result[509] += x126 * x192 * x521
result[510] += x136 * x416 * x547
result[511] += x151 * x51 * x527
result[512] += x224 * x51 * x532
result[513] += x218 * x33 * x527
result[514] += x219 * x33 * x531
result[515] += x136 * x535 * x548
result[516] += x221 * x527 * x81
result[517] += x146 * x549 * x81
result[518] += x219 * x535 * x81
result[519] += x224 * x443 * x539
result[520] += x162 * x437 * x546
result[521] += x126 * x221 * x531
result[522] += x126 * x218 * x535
result[523] += x126 * x151 * x539
result[524] += x136 * x437 * x550
result[525] += x416 * x554 * x555
result[526] += x121 * x423 * x553
result[527] += x234 * x51 * x557
result[528] += x235 * x33 * x553
result[529] += x121 * x548 * x557
result[530] += x33 * x560 * x94
result[531] += x238 * x554 * x81
result[532] += x235 * x431 * x557
result[533] += x121 * x202 * x559 * x81
result[534] += x234 * x563 * x81
result[535] += x243 * x437 * x553
result[536] += x238 * x437 * x557
result[537] += x126 * x235 * x559
result[538] += x121 * x439 * x563
result[539] += x437 * x555 * x567
result[540] += x451 * x509 * x568
result[541] += x259 * x455 * x509
result[542] += x253 * x262 * x506
result[543] += x264 * x31 * x544
result[544] += x266 * x31 * x506
result[545] += x31 * x514 * x569
result[546] += x268 * x461 * x509
result[547] += x264 * x462 * x506
result[548] += x265 * x461 * x514
result[549] += x262 * x29 * x517
result[550] += x273 * x463 * x570
result[551] += x268 * x472 * x506
result[552] += x21 * x264 * x524
result[553] += x21 * x334 * x517
result[554] += x21 * x521 * x568
result[555] += x191 * x451 * x546
result[556] += x279 * x455 * x527
result[557] += x281 * x455 * x531
result[558] += x198 * x470 * x527
result[559] += x194 * x31 * x549
result[560] += x190 * x470 * x535
result[561] += x207 * x462 * x527
result[562] += x198 * x475 * x531
result[563] += x194 * x475 * x535
result[564] += x281 * x461 * x539
result[565] += x21 * x214 * x547
result[566] += x207 * x472 * x532
result[567] += x198 * x202 * x21 * x535
result[568] += x279 * x472 * x539
result[569] += x191 * x21 * x550
result[570] += x136 * x451 * x571
result[571] += x151 * x253 * x553
result[572] += x136 * x469 * x557
result[573] += x218 * x31 * x553
result[574] += x219 * x31 * x557
result[575] += x136 * x470 * x559
result[576] += x156 * x462 * x553
result[577] += x146 * x475 * x557
result[578] += x219 * x29 * x559
result[579] += x136 * x462 * x563
result[580] += x162 * x21 * x571
result[581] += x21 * x221 * x557
result[582] += x21 * x218 * x559
result[583] += x151 * x21 * x563
result[584] += x134 * x4 * x567 * x572
result[585] += x451 * x518 * x573
result[586] += x121 * x455 * x573
result[587] += x455 * x576 * x94
result[588] += x174 * x31 * x573
result[589] += x298 * x31 * x577
result[590] += x234 * x31 * x579
result[591] += x180 * x29 * x573
result[592] += x462 * x576 * x97
result[593] += x121 * x462 * x579
result[594] += x461 * x581 * x94
result[595] += x125 * x21 * x582
result[596] += x180 * x21 * x576
result[597] += x174 * x21 * x579
result[598] += x478 * x583 * x73
result[599] += x478 * x586
result[600] += x307 * x480 * x519
result[601] += x312 * x501 * x509
result[602] += x307 * x309 * x508
result[603] += x316 * x483 * x509
result[604] += x312 * x483 * x510
result[605] += x307 * x483 * x515
result[606] += x319 * x485 * x570
result[607] += x315 * x511 * x9
result[608] += x312 * x516 * x9
result[609] += x307 * x502 * x517
result[610] += x326 * x503
result[611] += x319 * x508 * x8
result[612] += x315 * x498 * x515
result[613] += x312 * x487 * x517
result[614] += x307 * x488 * x521
result[615] += x249 * x499 * x528
result[616] += x259 * x489 * x527
result[617] += x262 * x309 * x531
result[618] += x264 * x490 * x527
result[619] += x266 * x308 * x531
result[620] += x308 * x535 * x569
result[621] += x268 * x491 * x527
result[622] += x264 * x491 * x532
result[623] += x266 * x535 * x9
result[624] += x262 * x539 * x9
result[625] += x273 * x529 * x8
result[626] += x268 * x492 * x531
result[627] += x264 * x497 * x535
result[628] += x259 * x492 * x539
result[629] += x249 * x500 * x541
result[630] += x192 * x480 * x553
result[631] += x194 * x493 * x553
result[632] += x196 * x309 * x557
result[633] += x198 * x494 * x553
result[634] += x194 * x201 * x494 * x557
result[635] += x190 * x494 * x559
result[636] += x207 * x496 * x553
result[637] += x198 * x495 * x557
result[638] += x194 * x495 * x559
result[639] += x196 * x563 * x9
result[640] += x545 * x554 * x8
result[641] += x207 * x497 * x557
result[642] += x198 * x560 * x8
result[643] += x194 * x497 * x563
result[644] += x192 * x567 * x8
result[645] += x136 * x480 * x582
result[646] += x140 * x309 * x573
result[647] += x136 * x489 * x576
result[648] += x146 * x490 * x573
result[649] += x151 * x308 * x576
result[650] += x136 * x490 * x579
result[651] += x157 * x573 * x9
result[652] += x146 * x491 * x577
result[653] += x151 * x579 * x9
result[654] += x3 * x351 * x583
result[655] += x162 * x487 * x573
result[656] += x157 * x576 * x8
result[657] += x149 * x579 * x8
result[658] += x140 * x581 * x8
result[659] += x351 * x586
result[660] += x480 * x522 * x587
result[661] += x121 * x501 * x587
result[662] += x309 * x518 * x588
result[663] += x308 * x587 * x99
result[664] += x121 * x483 * x589
result[665] += x483 * x555 * x590
result[666] += x108 * x502 * x587
result[667] += x589 * x9 * x98
result[668] += x3 * x572 * x590 * x73
result[669] += x3 * x591
result[670] += x125 * x488 * x587
result[671] += x108 * x487 * x588
result[672] += x590 * x8 * x99
result[673] += x591 * x73
result[674] += x361 * (
x0 * (x306 + 7.0 * x565 + 3.0 * x566 + 4.0 * x580) + x167 * x585
)
int_tuple_type = numba.types.UniTuple(i8, 2)
func_dict_type = numba.types.DictType(int_tuple_type, func_type)
# Sadly, this function can't be cached.
[docs]
@numba.jit(func_dict_type(), nopython=True, cache=True)
def get_func_dict():
# Can we somehow utilize the 'func_dict_type' definition above?!
#
# This definition below does not work but leads to strange errors.
# func_dict = numba.typed.Dict.empty(
# key_type=func_dict_type.key_type,
# value_type=func_dict_type.value_type,
# )
# numba plzzz
func_dict = numba.typed.Dict.empty(
key_type=int_tuple_type,
value_type=func_type,
)
func_dict[(0, 0)] = dipole3d_00
func_dict[(1, 0)] = dipole3d_10
func_dict[(0, 1)] = dipole3d_01
func_dict[(2, 0)] = dipole3d_20
func_dict[(0, 2)] = dipole3d_02
func_dict[(3, 0)] = dipole3d_30
func_dict[(0, 3)] = dipole3d_03
func_dict[(4, 0)] = dipole3d_40
func_dict[(0, 4)] = dipole3d_04
func_dict[(1, 1)] = dipole3d_11
func_dict[(2, 1)] = dipole3d_21
func_dict[(1, 2)] = dipole3d_12
func_dict[(3, 1)] = dipole3d_31
func_dict[(1, 3)] = dipole3d_13
func_dict[(4, 1)] = dipole3d_41
func_dict[(1, 4)] = dipole3d_14
func_dict[(2, 2)] = dipole3d_22
func_dict[(3, 2)] = dipole3d_32
func_dict[(2, 3)] = dipole3d_23
func_dict[(4, 2)] = dipole3d_42
func_dict[(2, 4)] = dipole3d_24
func_dict[(3, 3)] = dipole3d_33
func_dict[(4, 3)] = dipole3d_43
func_dict[(3, 4)] = dipole3d_34
func_dict[(4, 4)] = dipole3d_44
return func_dict