<div dir="ltr">Shells can be pretty hard. <div><br></div><div>Start with an easy problem with well-shaped elements and probably best to start with a well-supported structure (eg, not a long cantilever).</div><div><br></div><div>You should also configure with hypre and try that. I don't know if they deal with shells, but it is a well developed solver.</div><div><br></div><div>For GAMG, you need to set the coordinates (PCSetCoordinates) which will create the rigid body modes for GAMG so that it can construct the rotational RBMs.</div><div>This code has not been used for shells in a long time (petsc/src/ksp/pc/impls/gamg/agg.c:138), but it did once work (20 years ago in another code).</div><div>This code constructs the 6 rigid body modes for 3D shell problems with my ording (6 dof, x,y,z,xx,yy,zz).</div><div><br></div><div>Or you can construct the RBMs yourself and set them with <a href="https://petsc.org/release/docs/manualpages/Mat/MatNullSpaceCreateRigidBody.html">https://petsc.org/release/docs/manualpages/Mat/MatNullSpaceCreateRigidBody.html</a></div><div><br></div><div>There is some discussion here: <a href="https://www2.eecs.berkeley.edu/Pubs/TechRpts/2000/CSD-00-1103.pdf">https://www2.eecs.berkeley.edu/Pubs/TechRpts/2000/CSD-00-1103.pdf</a></div><div><br></div><div>Mark</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Sep 27, 2022 at 6:20 AM 晓峰 何 <<a href="mailto:tlanyan@hotmail.com">tlanyan@hotmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">



<div style="overflow-wrap: break-word;">
Hello,
<div><br>
</div>
<div>A00 comes from shell structures and discretized by FEM.</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Xiaofeng<br>
<div><br>
<blockquote type="cite">
<div>On Sep 27, 2022, at 17:48, Mark Adams <<a href="mailto:mfadams@lbl.gov" target="_blank">mfadams@lbl.gov</a>> wrote:</div>
<br>
<div>
<div dir="ltr">what equations and discetizations are in A00?</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Tue, Sep 27, 2022 at 1:45 AM 晓峰 何 <<a href="mailto:tlanyan@hotmail.com" target="_blank">tlanyan@hotmail.com</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>Hi Barry,
<div><br>
</div>
<div>A00 is formed from elliptic operator. </div>
<div><br>
</div>
<div>I tried GAMG with A00, but it was extremely slow to solve the system with field-split preconditioner(I’m not sure I did it with the right way).</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Xiaofeng</div>
<div>
<div><br>
<blockquote type="cite">
<div>On Sep 26, 2022, at 23:11, Barry Smith <<a href="mailto:bsmith@petsc.dev" target="_blank">bsmith@petsc.dev</a>> wrote:</div>
<br>
<div>
<div>  
<div>  What is your A00 operator? ILU is almost never a good choice for large scale problems. If it is an elliptic operator that using a PC of gamg may work well for the A00 preconditioner instead of ILU.</div>
<div><br>
</div>
<div>  Barry</div>
<div><br>
</div>
<div>  For moderate size problems you can use a PC type LU for AOO to help you understand the best preconditioner to use for the A11 (the Schur complement block), once you have a good preconditioner for the A11 block you would then go back and determine
 a good preconditioner for the A00 block.<br>
<div><br>
<blockquote type="cite">
<div>On Sep 26, 2022, at 10:08 AM, 晓峰 何 <<a href="mailto:tlanyan@hotmail.com" target="_blank">tlanyan@hotmail.com</a>> wrote:</div>
<br>
<div>
<div>Hello Jed,
<div><br>
</div>
<div>The saddle point is due to Lagrange multipliers, thus the size of A11 is much smaller than A00.</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>Best Regards,</div>
<div><br>
</div>
<div>Xiaofeng</div>
<div><br>
<div><br>
<blockquote type="cite">
<div>On Sep 26, 2022, at 21:03, Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>> wrote:</div>
<br>
<div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;display:inline">Lagrange
 multipliers</span></div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>

</blockquote></div>