On Thu, 11 Nov 2021 09:40:07 GMT, Jeremy <d...@openjdk.java.net> wrote:

>> Ideally jdk could provide new math methods:
>> - evalPoly(eqn[])
>> - find roots...
>> Based on compensated horner scheme and Math.fma() ~ 0.5 ulp
>
> I attempted to explore a numerical approach to pad the bounding box here 
> 4b9d87d6d03e923bb2663fc8f4f77b7549df6e70 ... but I don't like the results so 
> far. Any suggestions? (Or if you have a better approach in mind we can 
> discard that entire class...)

You made an amazing job !
Your bigdecimal impl looks good.
I will play with your test experiment... asap.
I think numerical accuracies are related to the dynamic /magnitude of values: 
points.
The test should evaluate(max error) depending on the quick length(curve) ~ 
manhattan norm(curve arms), so small curves have less numerical error whereas 
huge curve (10^50 length) means points are wide spread and coeffs... 
solver...points are less accurate.

I will try making sampled control points vary in log scale: 10^-6 to 10^38 
(float max) so curve length will vary in huge range and determine the histogram 
of max(error) / length ratio.

-------------

PR: https://git.openjdk.java.net/jdk/pull/6227

Reply via email to