Nick
Nick
> So I guess the question is whether the formatters should be re-worked into something more like an expression-printer complete with symbolic representations of arbitrary expressions? Would it be less...
> what if I do a bit of refactoring and expose a public API for printing various symbols plus super/subscripts etc? I like this idea; and will test it out...
Looks awesome! One quick comment with the B-spline: Do you think it would like better with your 'cdot', namely: 32 - 33·B₃(10(x - 5) + 1) - 27·B₃(10(x - 5))...
> Perhaps... but we need to pick one as the default, after that the user can choose which they prefer by using the manipulators? Yeah, just looking at it again...
Ugh looks like you’ve probably uncovered a bug in the quadratic and quintic B spline interpolators, it’s spitting out nans
Here's what I get on Mac OS, zsh: ``` ➜ math git:(formatting) ✗ make example/formatter_b_spline_output.x g++-9 -g --std=c++17 -ffast-math -march=native -Wfatal-errors -MMD -fvisibility=hidden -O3 -I../../ -I/usr/local/include -o example/formatter_b_spline_output.x example/formatter_b_spline_output.cpp -pthread...
Your comment is: > Formatted output of this type is primarily for debugging purposes since only 4 consecutive values of the sum are used for any given abscissa value, where...
Yeah replacing `std::isnan(x)` with `false` is the *worst*! [Here's](https://godbolt.org/z/cjTG8Y) a godbolt to play around with the compiler flags. Summarizing: - gcc 10.2: `-O3 -ffast-math` -> `std::isnan(x)` always is false. However,...
Could you post the compile flags and a mwe you're using when you hit this? I'd like to reproduce . . .
@jzmaddock will need to sign off, but a priori I see no reason why this shouldn't be done. Have you tried the standalone? Might help to scope the problem a...