<div dir="ltr"><div>As a novice PETSc user, can I ask for some advice? I've found some test examples that do similar sorts of things but I would appreciate any suggestions.<br></div><div>I have a matrix generated from overset meshes with a structure like</div><div>A = |A0  B01     B0n|</div><div>      |B01  A1     B1n|</div><div>         :                 :</div><div>      |B0n    ...        An|   where the Ai are finite difference stencils and the Bij</div><div> represent interpolation between the grids.  <br></div><div>1. If I create a DMDA composite object that defines each of the grid sizes through repeated calls to DMCreate1D (because we are omitting blanked points from the 3D mesh) and create the matrix</div><div>through DMCreateMatrix, can I still fill the matrix through MatSetValues using the global index?</div><div>(This is how the code operates now.) <br></div><div><div>2. If I have to declare the matrix to be matnest and I have to create each of the subblocks individually, how do I cope with some of the Bij being all zero? Must there be a MatSetValues call for each block?</div>3. The principle reason at the moment for the change is to use diag(A0...An) as the precondition matrix and use ILU on the blocks. If I set the preconditioner to be bjacobi and then fetch the subksps, can I then set the subpcs to be ilu? <br></div><div>4. A further complication is we would like to have a boundary condition where the values of the boundary points are defined by an expansion in functions that satisfy the radiation condition.  So, I would like to define an index set that identifies the boundary points and define a PCSHELL on A<br></div><div>that for the pcsetup phase will do a QR factorization of the auxiliary matrix: G, where we're solving <br></div><div>Gy = QRy =c and then on pcapply do the Ry = Q* c triangular solve that will enable me to update <br></div><div>the boundary points (y subset of x the solution vector.)  How do I get the PCSHELL to work with the block jacobi strategy.</div><div><br></div><div>Thanks for any suggestions.</div><div><br></div><div>Mark Cunningham<br></div></div>