The N matrix is not mandatory ; in some case, it can be usefull to accelerate the convergence. So you confirm we should look at a fieldsplit implementation with a new -pc_fieldsplit_type gk?
Thanks, Nicolas 2017-12-18 14:03 GMT+01:00 Matthew Knepley <[email protected]>: > On Mon, Dec 18, 2017 at 7:42 AM, Karin&NiKo <[email protected]> wrote: > >> Dear PETSc team, >> >> I would like to implement and possibly commit to PETSc the Golub-Kahan >> bidiagonalization algorithm (GK) describe in Arioli's paper : >> http://epubs.siam.org/doi/pdf/10.1137/120866543. >> In this work, Mario Arioli uses GK to solve saddle point problems, of the >> form A=[A00, A01; A10, A11]. There is an outer-loop which treats the >> constraints and an inner-loop, with its own KSP, to solve the linear >> systems with A00 as operator. We have evaluated this algorithm on different >> problems and have found that it exhibits very nice convergence of the >> outer-loop (independant of the problem size). >> >> In order to developp a source that could be commited to PETSc, I would >> like to have your opinion on how to implement it. Since the algorithm >> treats saddle point problems, it seems to me that it should be implemented >> in the fieldsplit framework. Should we add for instance a >> new -pc_fieldsplit_type, say gk? Have you other ideas? >> > > That was my first idea. From quickly looking at the paper, it looks like > you need an auxiliary matrix N which > does not come from the decomposition, so you will have to attach it to > something, like we do for LSC, or > demand that it come in as the (1,1) block of the preconditioning matrix > which is a little hacky as well. > > Thanks, > > Matt > > >> I look forward to hearing your opinion on the best design for >> implementing this algorithm in PETSc. >> >> Regards, >> Nicolas >> > > > > -- > What most experimenters take for granted before they begin their > experiments is infinitely more interesting than any results to which their > experiments lead. > -- Norbert Wiener > > https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/> >
