Hi, I would propose to introduce the variable "category" in the virtual class Dune::Preconditioner. Otherwise it is not possible to introduce a general pointer to a preconditioner and to use it later in a call to a solver constructor. Regards, Thomas