I think it because it plots a function that find fit-parameter to not-small data. the only thing that help me get the plot in a reasonable time is to set PlotPoints->10, but when I go to PlotPoints->50 for more precise plot, it runs for hours. Is there other way to quicken the program?
This is my code:
t1Fitting[x_?NumericQ, y_?NumericQ, z_?NumericQ] := Module[{sol, data, fit, P1, P2, t, a},
sol = DSolve[{P1'[t] == -(2 y + x) P1[t] + (x - y) P2[t] + y
P2'[t] == -(2 z + x) P2[t] + (x - z) P1[t] + z,
P1[0] == 1, P2[0] == 0}, {P1, P2}, t];
data = Flatten[
Transpose[Table[N[P1[t] - P2[t] /. sol, 15], {t, 0, 25000, 10}]]];
fit = FindFit[data, Exp[-a t],a, t, WorkingPrecision -> 10];
a /. fit]
t1Plot = DensityPlot3D[t1Fitting[x,y,z],{x, 10^-6, 10^-4}, {y, 10^-6, 10^-4}, {z, 10^-6, 10^-4}, PlotPoints -> 50]