Provide dynamic information of derivatives implemented by `partial()'
When we needed the number of implemented partial derivatives statically for evaluate()
this was encoded in the enum diffOrder
. Since the static interface of the new partial()
method is independent of this number, we should provide this information dynamically. To this end I propose to introduce the method
bool hasPartial(usigned order) const
returning true if all partial derivatives up to the given order are implemented. By not returning the max-order itself, this allows to implement an arbitrary number. If we want to provide refined information in case only some derivatives are implemented, we may also provide
bool hasPartial(const std::array< unsigned int, dim> &order) const
to check for an individual partial derivative. While the latter alone would already provide all information it's cumbersome to use. Hence this is only a possible add-on in case someone has a use case (I'm currently not aware of one).