OK, so its ground hog day. The plan?: 1) I should add a residual method to Mat, make a MatResidualDefault, and have all (yuck) SetUp_MatXXX set this default. I guess there is no base class SetUp …. then make a MatResidual_SeqAIJ that just does a dumb residual for now, with testing logic if Jed's stuff is available.
2) Have PCMGResidualDefault call MatResidual instead MatMult & VecAYPX. Or do we want to nuke PCMGResidualDefault? Jed's defect correction argument might sound like a typical Jed, e.g., what if a Martian gets hepatitis during mardi gras, but defect correction is really useful and I would like to see its support supported ... 3) Add fields in Mat: mat_res_state, vec_res_state, vec_res_id. I need to know the types but I can do this in the next phase. Mark On Sep 9, 2013, at 5:35 PM, Barry Smith <[email protected]> wrote: > > On Sep 9, 2013, at 4:32 PM, Jed Brown <[email protected]> wrote: > >> Barry Smith <[email protected]> writes: >>> I don't care if PCMGSetResidual stays around for now but I do not >>> think we should "point to it" as a standard way for people to do >>> things; I think we should improve how the two slots are used with >>> PCMG, it really has never been thought about at all and whenever >>> possible I think using the two slots appropriately is better than >>> PCMGSetResidual and will solve most of the "use" cases. >> >> Fine, I was just not eager to _delete_ PCMGSetResidual until we had >> established a complete replacement, and even then, it might be enough to >> leave it as "advanced" and suggest the preferred alternative in the man >> page. It just doesn't seem expensive to support and I don't think it >> causes people to tangle themselves up in bad design. > > It doesn't have its own object which is kind of limiting. > > >
