Hi @OrderedMongoose ,
As you described in your question, JMP calculates a confidence interval as described in the Tan and Iglewicz 1999 reference.
You can use the following script to compute a confidence interval using a parameter that JMP generates (covariance and so on).
n = 500;
gamma = 1; //Ratio
t_dist = t Quantile( 1 - 0.025, n - 2 );
s_yy = 1.641302 ^ 2; //Variance of Y
s_xx = 1.336159 ^ 2; //Variance of X
s_xy = -0.16487; //Covariance of X and Y
phi = 1 / 2 * ArcSine(
t_dist * (2 / Sqrt( n - 2 )) * Sqrt(
gamma * (s_yy * s_xx - s_xy ^ 2) / ((s_yy - gamma * s_xx) ^ 2 + 4 * gamma * s_xy ^ 2)
)
);
beta_hat = -5.68667; //Estimate of Slope
theta_hat = ArcTan( beta_hat / Sqrt( gamma ) );
lower_confidence = Sqrt( gamma ) * Tan( theta_hat - phi );
upper_confidence = Sqrt( gamma ) * Tan( theta_hat + phi );
Show( Eval List( {lower_confidence, upper_confidence} ) );
Show( theta_hat - phi );
When calculating a confidence interval, beta(slope) is calculated from theta (beta equals tan(theta)). Theta is described in the reference. When calculating a confidence interval with your example data, the value of theta is less than -pi/2. In this case, a lower confidence interval (32.44) is greater than an upper confidence interval (-2.51), which is not reasonable. I think this is why JMP doesn't display a result.
Another approach is to use boostraping. Please see https://www.jmp.com/support/help/en/16.2/#page/jmp/example-of-bootstrapping.shtml#.