I have been trying to integrate a function AND get an output that is sufficiently simple as to be usable. Simply using the Simplify
and FullSimplify
commands has not done nearly enough, and it takes me over 2 hours to get a result from this integration. Are there any further tricks I can use to force further simplifications? Any assumptions I can put in to make it simpler or faster? Maybe get more than one core involved (I have other similar integrals I need to do too so even if I can just set them all running at once on different cores that would be an improvement)?
Be warned, the example output is stupidly long, so much so that it is impossible to read, much less manually simplify.
Input (ai, bi, ci, and di are unit vectors, and so will be replaced with the appropriate cosine later. ki has a value but is still kept track of so the proper cosine can be used later. The cosines are independent of the integration, so it makes it marginally easier to read this way):
r = {r1, r2, r3};
a = {a1, a2, a3}/σa;
b = {b1, b2, b3}/σb;
c = {c1, c2, c3}/σc;
d = {d1, d2, d3}/σd;
k = {k1, k2, k3};
S = {{S11, S12, S13}, {S21, S22, S23}, {S31, S32, S33}};
FullSimplify[Integrate[(1/(2*Pi*σa*σb))*Exp[-(1/2)*((a.r)^2 + (b.r)^2)]*(1/(2*Pi*σc*σd))*Exp[-(1/2)*((c.r)^2 + (d.r)^2)],
{r1, -Infinity, Infinity}, {r2, -Infinity, Infinity}, {r3, -Infinity, Infinity},
Assumptions -> Element[{r1, r2, r3, a1, a2, a3, b1, b2, b3, c1, c2, c3, d1, d2, d3, k1, k2, k3, S11, S12, S13, S21, S22, S23, S31, S32, S33, σa, σb, σc, σd, τ}, Reals] && σa > 0 && σb > 0 && σc > 0 && σd > 0 && τ > 0 && 1 >= a1 >= -1 && 1 >= a2 >= -1 && 1 >= a3 >= -1 && 1 >= b1 >= -1 && 1 >= b2 >= -1 && 1 >= b3 >= -1 && 1 >= c1 >= -1 && 1 >= c2 >= -1 && 1 >= c3 >= -1 && 1 >= d1 >= -1 && 1 >= d2 >= -1 && 1 >= d3 >= -1]]]]
Output:
ConditionalExpression[
1/(Sqrt[2 π] √(c3^2 (d2^2 σa^2 σb^2 + (b2^2 \
σa^2 + a2^2 σb^2) σd^2) -
2 c2 c3 (d2 d3 σa^2 σb^2 + (b2 b3 σa^2 +
a2 a3 σb^2) σd^2) +
c2^2 (d3^2 σa^2 σb^2 + (b3^2 σa^2 +
a3^2 σb^2) σd^2) + σc^2 ((a3 d2 -
a2 d3)^2 σb^2 +
b3^2 (d2^2 σa^2 + a2^2 σd^2) -
2 b2 b3 (d2 d3 σa^2 + a2 a3 σd^2) +
b2^2 (d3^2 σa^2 +
a3^2 σd^2))) √((b1^2 c3^2 d2^2 σa^2 \
- 2 b1^2 c2 c3 d2 d3 σa^2 + b1^2 c2^2 d3^2 σa^2 +
a3^2 c2^2 d1^2 σb^2 - 2 a2 a3 c2 c3 d1^2 σb^2 +
a2^2 c3^2 d1^2 σb^2 -
2 a3^2 c1 c2 d1 d2 σb^2 +
2 a2 a3 c1 c3 d1 d2 σb^2 +
2 a1 a3 c2 c3 d1 d2 σb^2 -
2 a1 a2 c3^2 d1 d2 σb^2 +
a3^2 c1^2 d2^2 σb^2 - 2 a1 a3 c1 c3 d2^2 σb^2 +
a1^2 c3^2 d2^2 σb^2 +
2 a2 a3 c1 c2 d1 d3 σb^2 -
2 a1 a3 c2^2 d1 d3 σb^2 -
2 a2^2 c1 c3 d1 d3 σb^2 +
2 a1 a2 c2 c3 d1 d3 σb^2 -
2 a2 a3 c1^2 d2 d3 σb^2 +
2 a1 a3 c1 c2 d2 d3 σb^2 +
2 a1 a2 c1 c3 d2 d3 σb^2 -
2 a1^2 c2 c3 d2 d3 σb^2 +
a2^2 c1^2 d3^2 σb^2 - 2 a1 a2 c1 c2 d3^2 σb^2 +
a1^2 c2^2 d3^2 σb^2 + a3^2 b1^2 d2^2 σc^2 -
2 a2 a3 b1^2 d2 d3 σc^2 + a2^2 b1^2 d3^2 σc^2 +
a3^2 b1^2 c2^2 σd^2 -
2 a2 a3 b1^2 c2 c3 σd^2 + a2^2 b1^2 c3^2 σd^2 +
b3^2 ((a2 d1 - a1 d2)^2 σc^2 +
c2^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2^2 σa^2 + a2^2 σd^2)) +
b2^2 ((a3 d1 - a1 d3)^2 σc^2 +
c3^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c3 (d1 d3 σa^2 + a1 a3 σd^2) +
c1^2 (d3^2 σa^2 + a3^2 σd^2)) -
2 b1 b2 ((a3 d1 - a1 d3) (a3 d2 - a2 d3) σc^2 +
c3^2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1 c2 (d3^2 σa^2 + a3^2 σd^2) -
c3 (c2 d1 d3 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 + a1 a3 c2 σd^2)) -
2 b3 (b2 ((a2 d1 - a1 d2) (a3 d1 - a1 d3) σc^2 -
c1 c3 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2 d3 σa^2 + a2 a3 σd^2) +
c2 (c3 d1^2 σa^2 - c1 d1 d3 σa^2 -
a1 a3 c1 σd^2 + a1^2 c3 σd^2)) +
b1 ((a2 d1 - a1 d2) (-a3 d2 + a2 d3) σc^2 +
c1 c3 (d2^2 σa^2 + a2^2 σd^2) +
c2^2 (d1 d3 σa^2 + a1 a3 σd^2) -
c2 (c3 d1 d2 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 +
a1 a2 c3 σd^2))))/(c3^2 (d2^2 σa^2 \
σb^2 + (b2^2 σa^2 + a2^2 σb^2) σd^2) -
2 c2 c3 (d2 d3 σa^2 σb^2 + (b2 b3 σa^2 +
a2 a3 σb^2) σd^2) +
c2^2 (d3^2 σa^2 σb^2 + (b3^2 σa^2 +
a3^2 σb^2) σd^2) + σc^2 ((a3 d2 -
a2 d3)^2 σb^2 +
b3^2 (d2^2 σa^2 + a2^2 σd^2) -
2 b2 b3 (d2 d3 σa^2 + a2 a3 σd^2) +
b2^2 (d3^2 σa^2 +
a3^2 σd^2))))), ((b1^2 c3^2 d2^2 σa^2 -
2 b1^2 c2 c3 d2 d3 σa^2 + b1^2 c2^2 d3^2 σa^2 +
a3^2 c2^2 d1^2 σb^2 - 2 a2 a3 c2 c3 d1^2 σb^2 +
a2^2 c3^2 d1^2 σb^2 - 2 a3^2 c1 c2 d1 d2 σb^2 +
2 a2 a3 c1 c3 d1 d2 σb^2 +
2 a1 a3 c2 c3 d1 d2 σb^2 -
2 a1 a2 c3^2 d1 d2 σb^2 + a3^2 c1^2 d2^2 σb^2 -
2 a1 a3 c1 c3 d2^2 σb^2 + a1^2 c3^2 d2^2 σb^2 +
2 a2 a3 c1 c2 d1 d3 σb^2 -
2 a1 a3 c2^2 d1 d3 σb^2 -
2 a2^2 c1 c3 d1 d3 σb^2 +
2 a1 a2 c2 c3 d1 d3 σb^2 -
2 a2 a3 c1^2 d2 d3 σb^2 +
2 a1 a3 c1 c2 d2 d3 σb^2 +
2 a1 a2 c1 c3 d2 d3 σb^2 -
2 a1^2 c2 c3 d2 d3 σb^2 + a2^2 c1^2 d3^2 σb^2 -
2 a1 a2 c1 c2 d3^2 σb^2 + a1^2 c2^2 d3^2 σb^2 +
a3^2 b1^2 d2^2 σc^2 - 2 a2 a3 b1^2 d2 d3 σc^2 +
a2^2 b1^2 d3^2 σc^2 + a3^2 b1^2 c2^2 σd^2 -
2 a2 a3 b1^2 c2 c3 σd^2 + a2^2 b1^2 c3^2 σd^2 +
b3^2 ((a2 d1 - a1 d2)^2 σc^2 +
c2^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2^2 σa^2 + a2^2 σd^2)) +
b2^2 ((a3 d1 - a1 d3)^2 σc^2 +
c3^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c3 (d1 d3 σa^2 + a1 a3 σd^2) +
c1^2 (d3^2 σa^2 + a3^2 σd^2)) -
2 b1 b2 ((a3 d1 - a1 d3) (a3 d2 - a2 d3) σc^2 +
c3^2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1 c2 (d3^2 σa^2 + a3^2 σd^2) -
c3 (c2 d1 d3 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 + a1 a3 c2 σd^2)) -
2 b3 (b2 ((a2 d1 - a1 d2) (a3 d1 - a1 d3) σc^2 -
c1 c3 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2 d3 σa^2 + a2 a3 σd^2) +
c2 (c3 d1^2 σa^2 - c1 d1 d3 σa^2 -
a1 a3 c1 σd^2 + a1^2 c3 σd^2)) +
b1 ((a2 d1 - a1 d2) (-a3 d2 + a2 d3) σc^2 +
c1 c3 (d2^2 σa^2 + a2^2 σd^2) +
c2^2 (d1 d3 σa^2 + a1 a3 σd^2) -
c2 (c3 d1 d2 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 +
a1 a2 c3 σd^2))))/(c3^2 (d2^2 σa^2 \
σb^2 + (b2^2 σa^2 + a2^2 σb^2) σd^2) -
2 c2 c3 (d2 d3 σa^2 σb^2 + (b2 b3 σa^2 +
a2 a3 σb^2) σd^2) +
c2^2 (d3^2 σa^2 σb^2 + (b3^2 σa^2 +
a3^2 σb^2) σd^2) + σc^2 ((a3 d2 -
a2 d3)^2 σb^2 +
b3^2 (d2^2 σa^2 + a2^2 σd^2) -
2 b2 b3 (d2 d3 σa^2 + a2 a3 σd^2) +
b2^2 (d3^2 σa^2 + a3^2 σd^2))) ∈
Reals && (c3^2 (d2^2 σa^2 σb^2 + (b2^2 σa^2 \
+ a2^2 σb^2) σd^2) -
2 c2 c3 (d2 d3 σa^2 σb^2 + (b2 b3 σa^2 +
a2 a3 σb^2) σd^2) +
c2^2 (d3^2 σa^2 σb^2 + (b3^2 σa^2 +
a3^2 σb^2) σd^2) + σc^2 ((a3 d2 -
a2 d3)^2 σb^2 +
b3^2 (d2^2 σa^2 + a2^2 σd^2) -
2 b2 b3 (d2 d3 σa^2 + a2 a3 σd^2) +
b2^2 (d3^2 σa^2 +
a3^2 σd^2))) (b1^2 c3^2 d2^2 σa^2 -
2 b1^2 c2 c3 d2 d3 σa^2 + b1^2 c2^2 d3^2 σa^2 +
a3^2 c2^2 d1^2 σb^2 - 2 a2 a3 c2 c3 d1^2 σb^2 +
a2^2 c3^2 d1^2 σb^2 - 2 a3^2 c1 c2 d1 d2 σb^2 +
2 a2 a3 c1 c3 d1 d2 σb^2 +
2 a1 a3 c2 c3 d1 d2 σb^2 -
2 a1 a2 c3^2 d1 d2 σb^2 + a3^2 c1^2 d2^2 σb^2 -
2 a1 a3 c1 c3 d2^2 σb^2 + a1^2 c3^2 d2^2 σb^2 +
2 a2 a3 c1 c2 d1 d3 σb^2 -
2 a1 a3 c2^2 d1 d3 σb^2 -
2 a2^2 c1 c3 d1 d3 σb^2 +
2 a1 a2 c2 c3 d1 d3 σb^2 -
2 a2 a3 c1^2 d2 d3 σb^2 +
2 a1 a3 c1 c2 d2 d3 σb^2 +
2 a1 a2 c1 c3 d2 d3 σb^2 -
2 a1^2 c2 c3 d2 d3 σb^2 + a2^2 c1^2 d3^2 σb^2 -
2 a1 a2 c1 c2 d3^2 σb^2 + a1^2 c2^2 d3^2 σb^2 +
a3^2 b1^2 d2^2 σc^2 - 2 a2 a3 b1^2 d2 d3 σc^2 +
a2^2 b1^2 d3^2 σc^2 + a3^2 b1^2 c2^2 σd^2 -
2 a2 a3 b1^2 c2 c3 σd^2 + a2^2 b1^2 c3^2 σd^2 +
b3^2 ((a2 d1 - a1 d2)^2 σc^2 +
c2^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2^2 σa^2 + a2^2 σd^2)) +
b2^2 ((a3 d1 - a1 d3)^2 σc^2 +
c3^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c3 (d1 d3 σa^2 + a1 a3 σd^2) +
c1^2 (d3^2 σa^2 + a3^2 σd^2)) -
2 b1 b2 ((a3 d1 - a1 d3) (a3 d2 - a2 d3) σc^2 +
c3^2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1 c2 (d3^2 σa^2 + a3^2 σd^2) -
c3 (c2 d1 d3 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 + a1 a3 c2 σd^2)) -
2 b3 (b2 ((a2 d1 - a1 d2) (a3 d1 - a1 d3) σc^2 -
c1 c3 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2 d3 σa^2 + a2 a3 σd^2) +
c2 (c3 d1^2 σa^2 - c1 d1 d3 σa^2 -
a1 a3 c1 σd^2 + a1^2 c3 σd^2)) +
b1 ((a2 d1 - a1 d2) (-a3 d2 + a2 d3) σc^2 +
c1 c3 (d2^2 σa^2 + a2^2 σd^2) +
c2^2 (d1 d3 σa^2 + a1 a3 σd^2) -
c2 (c3 d1 d2 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 + a1 a2 c3 σd^2)))) >
0) || 2 Abs[
Arg[(b1^2 c3^2 d2^2 σa^2 -
2 b1^2 c2 c3 d2 d3 σa^2 + b1^2 c2^2 d3^2 σa^2 +
a3^2 c2^2 d1^2 σb^2 -
2 a2 a3 c2 c3 d1^2 σb^2 +
a2^2 c3^2 d1^2 σb^2 -
2 a3^2 c1 c2 d1 d2 σb^2 +
2 a2 a3 c1 c3 d1 d2 σb^2 +
2 a1 a3 c2 c3 d1 d2 σb^2 -
2 a1 a2 c3^2 d1 d2 σb^2 +
a3^2 c1^2 d2^2 σb^2 - 2 a1 a3 c1 c3 d2^2 σb^2 +
a1^2 c3^2 d2^2 σb^2 +
2 a2 a3 c1 c2 d1 d3 σb^2 -
2 a1 a3 c2^2 d1 d3 σb^2 -
2 a2^2 c1 c3 d1 d3 σb^2 +
2 a1 a2 c2 c3 d1 d3 σb^2 -
2 a2 a3 c1^2 d2 d3 σb^2 +
2 a1 a3 c1 c2 d2 d3 σb^2 +
2 a1 a2 c1 c3 d2 d3 σb^2 -
2 a1^2 c2 c3 d2 d3 σb^2 +
a2^2 c1^2 d3^2 σb^2 - 2 a1 a2 c1 c2 d3^2 σb^2 +
a1^2 c2^2 d3^2 σb^2 + a3^2 b1^2 d2^2 σc^2 -
2 a2 a3 b1^2 d2 d3 σc^2 + a2^2 b1^2 d3^2 σc^2 +
a3^2 b1^2 c2^2 σd^2 -
2 a2 a3 b1^2 c2 c3 σd^2 + a2^2 b1^2 c3^2 σd^2 +
b3^2 ((a2 d1 - a1 d2)^2 σc^2 +
c2^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2^2 σa^2 + a2^2 σd^2)) +
b2^2 ((a3 d1 - a1 d3)^2 σc^2 +
c3^2 (d1^2 σa^2 + a1^2 σd^2) -
2 c1 c3 (d1 d3 σa^2 + a1 a3 σd^2) +
c1^2 (d3^2 σa^2 + a3^2 σd^2)) -
2 b1 b2 ((a3 d1 - a1 d3) (a3 d2 - a2 d3) σc^2 +
c3^2 (d1 d2 σa^2 + a1 a2 σd^2) +
c1 c2 (d3^2 σa^2 + a3^2 σd^2) -
c3 (c2 d1 d3 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 + a1 a3 c2 σd^2)) -
2 b3 (b2 ((a2 d1 - a1 d2) (a3 d1 - a1 d3) σc^2 -
c1 c3 (d1 d2 σa^2 + a1 a2 σd^2) +
c1^2 (d2 d3 σa^2 + a2 a3 σd^2) +
c2 (c3 d1^2 σa^2 - c1 d1 d3 σa^2 -
a1 a3 c1 σd^2 + a1^2 c3 σd^2)) +
b1 ((a2 d1 - a1 d2) (-a3 d2 + a2 d3) σc^2 +
c1 c3 (d2^2 σa^2 + a2^2 σd^2) +
c2^2 (d1 d3 σa^2 + a1 a3 σd^2) -
c2 (c3 d1 d2 σa^2 + c1 d2 d3 σa^2 +
a2 a3 c1 σd^2 +
a1 a2 c3 σd^2))))/(c3^2 (d2^2 σa^2 \
σb^2 + (b2^2 σa^2 + a2^2 σb^2) σd^2) -
2 c2 c3 (d2 d3 σa^2 σb^2 + (b2 b3 σa^2 +
a2 a3 σb^2) σd^2) +
c2^2 (d3^2 σa^2 σb^2 + (b3^2 σa^2 +
a3^2 σb^2) σd^2) + σc^2 ((a3 d2 -
a2 d3)^2 σb^2 +
b3^2 (d2^2 σa^2 + a2^2 σd^2) -
2 b2 b3 (d2 d3 σa^2 + a2 a3 σd^2) +
b2^2 (d3^2 σa^2 + a3^2 σd^2)))]] < π]