Hmmm actually it seems my formula was fortuitously right for the values I used, but it turned out to not be correct either.... I will go back and redo it
ok so
H = (1+0.5*M)*(1+C*(1+M)) = 1+0.5M+C*(1+0.5M)*(1+M) = 1+ 0.5M+C*(1+1.5M+0.5M^2)
where H = heal coefficient, M = mastery, C = crit and both M and C are expressed as fractions i.e. 38.4% = 0.384
using p to denote partial derivatives
pH/pM = 0.5+C*(1.5+M)
pH/pC = 1+1.5M+0.5M^2 = 1+0.5M*(3+M)
if R = mastery rating and CR = crit rating then
M = MR*k*1.6+0.208 (mastery buff + base mastery of 0.128)
C = CR*k+0.12 (crit buff + crit from int of ~7%)
k = 1/60000
dM/dMR = k*1.6
dC/dCR = k
pH/pMR = pH/pM*dM/dMR = (0.5+C*(1.5+M))*1.6*k
pH/pCR = pH/pC*dC/dCR = (1+0.5M*(3+M))*k
pH/pMR >= pH/pCR => (0.5+C*(1.5+M))*1.6 >= 1+0.5M*(3+M) => 0.8+1.6*C*(1.5+M) >= 1+0.5M*(3+M)
C*1.6 >= (0.2+0.5M*(3+M))/(1.5+M) = (0.4+M*(3+M))/(3+2M)
C >= (0.4+M*(3+M))/(4.8+3.2*M)
Thus the correct breakpoints past which crit is less valuable than mastery are:
crit 5.2 5.1
0.195269321 0.208 0.325
0.205436921 0.228 0.35625
0.215514874 0.248 0.3875
0.225506222 0.268 0.41875
0.23541387 0.288 0.45
0.245240597 0.308 0.48125
0.254989059 0.328 0.5125
0.264661797 0.348 0.54375
0.274261242 0.368 0.575
0.283789725 0.388 0.60625
The question is are these the maxima?
If we want to find the maxima then we need to calculate dH/dM and dH/dC
dH/dM = pH/pM+pH/pC*dC/dM
since you can only have a certain amount of rating allocated to CR and MR it is necessary that CR+MR = TR
i.e. C/k+M/k/1.6 = TR --> C = TR*k - M/1.6 --> dC = -dM/1.6 --> dC/dM = -1/1.6 and conversely dM/dC = -1.6
dH/dM = 0 --> pH/pM = pH/pC*1/1.6, which is the same as above thus the maxima are the breakpoints.
To verify
dH/dM = 0.5+C*(1.5+M) - 1/1.6 - 1/3.2*M*(3+M)
the maximum requires that dH/dM = 0 --> 0.5+C*(1.5+M) = 1/1.6+1/3.2*M*(3+M) --> C*(1.5+M) = 0.125+M/3.2*(3+M) --> C = (0.4+M*(3+M))/(4.8+3.2*M)
So the answer is that the maxima do indeed lie at the breakpoints
Thus the equation above will calculate how much crit you need to have for a particular value of mastery in order to hit the optimum value.
I verified it by taking the optima and adding +100 rating to one stat while subtracting -100 from the other in both cases the value is reduced by the exactly the same value compared to the optima. I am now certain that this formula works.
The equation can be easily converted to mastery rating and crit rating.