On 2/14/17 6:53 AM, Matthew Knepley wrote:
Explicit methods use only RHSFunction and ignore IFunction, so in your case, if you change TS type to rk and ssp at run time, you are actually solving u_t = G(t,u). If RHSFunction is not provided, PETSc will assume the RHS is zero (u_t=0). I do not agree with this. I thought our aim was to support users comparing explicit with implicit with semi-implicit. This breaks that model completely.
Matt, all RHSFunction can be turned into IFunction but not the other way around. Explicit TS solvers cannot deal with all forms of IFunction and providing support for classifying them may be burdensome and difficult to scale. I think it's more lucrative to improve the documentation.
Emil