I have two expressions, and they are really equal:
aa = -32*pc1T1*(CAp*(CB*(-(CBp*m*SA) + CA*(E1 + E2)*SBp) +
SB*(-(CA*CBp*(E1 + E2)) + m*SA*SBp)) +
SAp*(-((E1 + E2)*SA*(CBp*SB - CB*SBp)) +
CA*m*(CB*CBp - SB*SBp)));
bb = -32 CA CAp CB E1 pc1T1 SBp -
32 CA CAp CB E2 pc1T1 SBp + 32 CA CAp CBp E1 pc1T1 SB +
32 CA CAp CBp E2 pc1T1 SB - 32 CA CB CBp m pc1T1 SAp +
32 CA m pc1T1 SAp SB SBp + 32 CAp CB CBp m pc1T1 SA -
32 CAp m pc1T1 SA SB SBp - 32 CB E1 pc1T1 SA SAp SBp -
32 CB E2 pc1T1 SA SAp SBp + 32 CBp E1 pc1T1 SA SAp SB +
32 CBp E2 pc1T1 SA SAp SB;
To see they are equal:
aa - bb // Simplify
This gives:
0.
However, if I evaluate these two expressions in numerical values, they produce very different result:
m=0.2;
aa /. {CA -> 5.050247469193957`, CB -> 5.050247469193957`,
CAp -> 5.050247469193957`, CBp -> 5.050247469193957`,
SA -> 4.950252468319164`, SB -> 4.950252468319164`,
SAp -> 4.950252468319164`, SBp -> 4.950252468319164`, pc1T1 -> 3,
E1 -> 5.834380858325929`, E2 -> 5.834380858325929`}
bb /. {CA -> 5.050247469193957`, CB -> 5.050247469193957`,
CAp -> 5.050247469193957`, CBp -> 5.050247469193957`,
SA -> 4.950252468319164`, SB -> 4.950252468319164`,
SAp -> 4.950252468319164`, SBp -> 4.950252468319164`, pc1T1 -> 3,
E1 -> 5.834380858325929`, E2 -> 5.834380858325929`}
Result is like the following and stable:
3.41061*10^-13
-2.32831*10^-10
One is plus sign and the other is minus sign. This is really strange. Does anyone know how to fix this?