Reference implementation does not compile
I'm trying to build the reference implementation (so I can implement the implicit solve for Azzam). However, it appears that after the recent PDE overhaul, the reference implementation wasn't tested?
I've gotten past one compile error I couldn't figure out by removing the time() wrapper, but am now stuck on an error I don't understand since I though time_advance_ref wasn't a member function (even in the updated PDE implementation)
david@dlg-ubuntu-18:~/FK6D/build$ make
[ 15%] Built target implementation_lib
Scanning dependencies of target fk6d
[ 20%] Building CXX object CMakeFiles/fk6d.dir/src/main.cpp.o
In file included from /home/david/FK6D/src/main.cpp:39:0:
/home/david/FK6D/include/time_advance_ref.hpp: In instantiation of ‘matrix2d<T> runge_kutta_3(A_DATA<T>&, matrix2d<T>&, T, T, PDE<T>&, INVHASH&) [with T = double; INVHASH = std::vector<std::array<int, 6> >]’:
/home/david/FK6D/include/time_advance_ref.hpp:9:25: required from ‘matrix2d<T> time_advance_ref(A_DATA<T>&, matrix2d<T>&, T, T, PDE<T>&, INVHASH&) [with T = double; INVHASH = std::vector<std::array<int, 6> >]’
/home/david/FK6D/src/main.cpp:209:118: required from here
/home/david/FK6D/include/time_advance_ref.hpp:16:20: error: ‘unsigned int PDE<double>::deg’ is protected within this context
auto deg = pde.deg;
~~~~^~~
In file included from /home/david/FK6D/include/device_data.hpp:22:0,
from /home/david/FK6D/src/main.cpp:12:
/home/david/FK6D/include/pde.hpp:19:13: note: declared protected here
unsigned deg;
^~~