<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Many thanks for your concrete replies. They are very helpful.
<div class=""><br class="">
</div>
<div class="">Best Wishes,</div>
<div class="">Xiaofeng<br class="">
<div><br class="">
<blockquote type="cite" class="">
<div class="">On Sep 27, 2022, at 20:01, Mark Adams <<a href="mailto:mfadams@lbl.gov" class="">mfadams@lbl.gov</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div dir="ltr" class="">Shells can be pretty hard. 
<div class=""><br class="">
</div>
<div class="">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 class=""><br class="">
</div>
<div class="">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 class=""><br class="">
</div>
<div class="">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 class="">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 class="">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 class=""><br class="">
</div>
<div class="">Or you can construct the RBMs yourself and set them with <a href="https://petsc.org/release/docs/manualpages/Mat/MatNullSpaceCreateRigidBody.html" class="">https://petsc.org/release/docs/manualpages/Mat/MatNullSpaceCreateRigidBody.html</a></div>
<div class=""><br class="">
</div>
<div class="">There is some discussion here: <a href="https://www2.eecs.berkeley.edu/Pubs/TechRpts/2000/CSD-00-1103.pdf" class="">https://www2.eecs.berkeley.edu/Pubs/TechRpts/2000/CSD-00-1103.pdf</a></div>
<div class=""><br class="">
</div>
<div class="">Mark</div>
<div class=""><br class="">
</div>
</div>
<br class="">
<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" class="">tlanyan@hotmail.com</a>> wrote:<br class="">
</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;" class="">Hello,
<div class=""><br class="">
</div>
<div class="">A00 comes from shell structures and discretized by FEM.</div>
<div class=""><br class="">
</div>
<div class="">Thanks,</div>
<div class="">Xiaofeng<br class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On Sep 27, 2022, at 17:48, Mark Adams <<a href="mailto:mfadams@lbl.gov" target="_blank" class="">mfadams@lbl.gov</a>> wrote:</div>
<br class="">
<div class="">
<div dir="ltr" class="">what equations and discetizations are in A00?</div>
<br class="">
<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" class="">tlanyan@hotmail.com</a>> wrote:<br class="">
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div class="">Hi Barry,
<div class=""><br class="">
</div>
<div class="">A00 is formed from elliptic operator. </div>
<div class=""><br class="">
</div>
<div class="">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 class=""><br class="">
</div>
<div class="">Thanks,</div>
<div class="">Xiaofeng</div>
<div class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On Sep 26, 2022, at 23:11, Barry Smith <<a href="mailto:bsmith@petsc.dev" target="_blank" class="">bsmith@petsc.dev</a>> wrote:</div>
<br class="">
<div class="">
<div class="">  
<div class="">  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 class=""><br class="">
</div>
<div class="">  Barry</div>
<div class=""><br class="">
</div>
<div class="">  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 class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On Sep 26, 2022, at 10:08 AM, 晓峰 何 <<a href="mailto:tlanyan@hotmail.com" target="_blank" class="">tlanyan@hotmail.com</a>> wrote:</div>
<br class="">
<div class="">
<div class="">Hello Jed,
<div class=""><br class="">
</div>
<div class="">The saddle point is due to Lagrange multipliers, thus the size of A11 is much smaller than A00.</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Best Regards,</div>
<div class=""><br class="">
</div>
<div class="">Xiaofeng</div>
<div class=""><br class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On Sep 26, 2022, at 21:03, Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank" class="">jed@jedbrown.org</a>> wrote:</div>
<br class="">
<div class=""><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" class="">Lagrange
 multipliers</span></div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</body>
</html>