<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div class="elementToProof"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 16px; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">Sequential solver</span><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);"> superlu
 ILU supports </span><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">drop tolerance.
 For example, petsc/src/ksp/ksp/tutorials/ex2.c:</span></div>
<div class="elementToProof"><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">./ex2
 -pc_type ilu -pc_factor_mat_solver_type superlu -help |grep superlu</span></div>
<div class="elementToProof"><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">...</span></div>
<div class="elementToProof"><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">-mat_superlu_ilu_droptol:
 <now 0.0001 : formerly 0.0001>: ILU_DropTol (None)</span></div>
<div class="elementToProof"><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);"><br>
</span></div>
<div class="elementToProof"><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">i.e.,
 you can run it as</span></div>
<div class="elementToProof"><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">$
 ./ex2 -pc_type ilu -pc_factor_mat_solver_type superlu -mat_superlu_ilu_droptol 0.0001 -ksp_monitor</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">  0 KSP Residual norm 7.483267010387e+00</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">  1 KSP Residual norm 5.109625265233e-05</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">Norm of error 5.10959e-05 iterations 1</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);"><br>
</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">$ ./ex2 -pc_type ilu -pc_factor_mat_solver_type superlu -mat_superlu_ilu_droptol
 0.001 -ksp_monitor</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">  0 KSP Residual norm 7.473227154663e+00</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">  1 KSP Residual norm 5.916533165499e-03</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36);">  2 KSP Residual norm 1.638603182685e-06</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">Norm of error 1.6387e-06
 iterations 2</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);"><br>
</span></div>
<div><span style="font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif; font-size: 15px; color: rgb(36, 36, 36); background-color: rgb(255, 255, 255);">Hong</span></div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> petsc-users <petsc-users-bounces@mcs.anl.gov> on behalf of Barry Smith <bsmith@petsc.dev><br>
<b>Sent:</b> Tuesday, February 27, 2024 11:27 AM<br>
<b>To:</b> Константин Мурусидзе <konstantin.murusidze@math.msu.ru><br>
<b>Cc:</b> petsc-users@mcs.anl.gov <petsc-users@mcs.anl.gov><br>
<b>Subject:</b> Re: [petsc-users] Problem of using PCFactorSetDropTolerance</font>
<div> </div>
</div>
<div>
<div style="display:none!important; display:none; visibility:hidden; font-size:1px; color:#ffffff; line-height:1px; height:0px; max-height:0px; opacity:0; overflow:hidden">
We don't consider drop tolerance preconditioners as reliable or robust so I don't see anyone implementing it. On Feb 27, 2024, at 10: 11 AM, Константин Мурусидзе <konstantin. murusidze@ math. msu. ru> wrote: Thank you! Should we expect it
</div>
<div style="display:none!important; display:none; visibility:hidden; font-size:1px; color:#ffffff; line-height:1px; height:0px; max-height:0px; opacity:0; overflow:hidden">
ZjQcmQRYFpfptBannerStart</div>
<div dir="ltr" id="x_pfptBanner0r8fw0e" style="display:block!important; text-align:left!important; margin:16px 0px 16px 0px!important; padding:8px 16px 8px 16px!important; border-radius:4px!important; min-width:200px!important; background-color:#D0D8DC!important; background-color:#D0D8DC; border-top:4px solid #90a4ae!important; border-top:4px solid #90a4ae">
<div id="x_pfptBanner0r8fw0e" style="float:left!important; display:block!important; margin:0px 0px 1px 0px!important; max-width:600px!important">
<div id="x_pfptBanner0r8fw0e" style="display:block!important; visibility:visible!important; background-color:#D0D8DC!important; color:#000000!important; color:#000000; font-family:'Arial',sans-serif!important; font-family:'Arial',sans-serif; font-weight:bold!important; font-weight:bold; font-size:14px!important; line-height:18px!important; line-height:18px">
This Message Is From an External Sender </div>
<div id="x_pfptBanner0r8fw0e" style="display:block!important; visibility:visible!important; background-color:#D0D8DC!important; color:#000000!important; color:#000000; font-weight:normal; font-family:'Arial',sans-serif!important; font-family:'Arial',sans-serif; font-size:12px!important; line-height:18px!important; line-height:18px; margin-top:2px!important">
This message came from outside your organization. </div>
</div>
<div style="clear:both!important; display:block!important; visibility:hidden!important; line-height:0!important; font-size:0.01px!important; height:0px">
 </div>
</div>
<div style="display:none!important; display:none; visibility:hidden; font-size:1px; color:#ffffff; line-height:1px; height:0px; max-height:0px; opacity:0; overflow:hidden">
ZjQcmQRYFpfptBannerEnd</div>
<style>
<!--
#x_pfptBanner0r8fw0e
        {display:block!important;
        visibility:visible!important;
        opacity:1!important;
        background-color:#D0D8DC!important;
        max-width:none!important;
        max-height:none!important}
-->
</style>
<div><br>
</div>
   We don't consider drop tolerance preconditioners as reliable or robust so I don't see anyone implementing it.
<div><br>
</div>
<div><br id="x_lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>On Feb 27, 2024, at 10:11 AM, Константин Мурусидзе <konstantin.murusidze@math.msu.ru> wrote:</div>
<br class="x_Apple-interchange-newline">
<div>
<div>Thank you! Should we expect it to appear in the near future?</div>
<div><br>
</div>
<div><br>
</div>
<div>27.02.2024, 18:07, "Barry Smith" <bsmith@petsc.dev>:</div>
<blockquote>
<div><br>
</div>
   I'm sorry for the confusion. PETSc does not have a drop tolerance ILU so this function does nothing as you've noted.
<div><br>
</div>
<div>   Barry</div>
<div><br id="x_1197d38eabd6a1f130a6b8653e70493blineBreakAtBeginningOfMessage">
<div><br>
<blockquote>
<div>On Feb 27, 2024, at 7:27 AM, Константин Мурусидзе <<a href="mailto:konstantin.murusidze@math.msu.ru">konstantin.murusidze@math.msu.ru</a>> wrote:</div>
<br class="x_34bd394265c9c48ce7af3175baf9655dApple-interchange-newline">
<div>
<div id="x_d18b04406b72166485ba660d39850c07pfptBannera03q3qf" dir="ltr" style="background-color:rgb(208 ,216 ,220)!important; border-radius:4px!important; border-top-color:rgb(144 ,164 ,174)!important; border-top-style:solid!important; border-top-width:4px!important; display:block!important; font-family:'revert'!important; margin-bottom:16px!important; margin-left:0px!important; margin-right:0px!important; margin-top:16px!important; min-width:200px!important; padding-bottom:8px!important; padding-left:16px!important; padding-right:16px!important; padding-top:8px!important; text-align:left!important">
<div id="x_d18b04406b72166485ba660d39850c07pfptBannera03q3qf" style="display:block!important; float:left!important; font-family:'unset'!important; margin-bottom:1px!important; margin-left:0px!important; margin-right:0px!important; margin-top:0px!important; max-width:600px!important">
<div id="x_d18b04406b72166485ba660d39850c07pfptBannera03q3qf" style="background-color:rgb(208 ,216 ,220)!important; display:block!important; font-family:'arial' ,sans-serif!important; font-size:14px!important; font-weight:bold!important; line-height:18px!important; visibility:visible!important">
This Message Is From an External Sender</div>
<div id="x_d18b04406b72166485ba660d39850c07pfptBannera03q3qf" style="background-color:rgb(208 ,216 ,220)!important; display:block!important; font-family:'arial' ,sans-serif!important; font-size:12px!important; line-height:18px!important; margin-top:2px!important; visibility:visible!important">
This message came from outside your organization.</div>
</div>
<div style="clear:both!important; display:block!important; font-size:0.01px!important; height:0px; line-height:0!important; visibility:hidden!important">
</div>
</div>
<div style="font-family:'helvetica'; font-size:18px; font-style:normal; font-weight:400; text-align:start; text-decoration:none; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px">
Hello! I have such problem, while solving linear system and using PCFactorSetDropTolerance. As I understand this  function could significantly reduce number of iterations of system of solution, but there is no iterations decreasing.<span style="background-color:transparent">I
 had try a lot of options for this function, but there is no result</span>
<div>Could you suggest me if I have some mistake, while I setting up the preconditioner?</div>
<div> </div>
<div>    PetscCall(KSPSetType(ksp, KSPCG));</div>
</div>
<div style="font-family:'helvetica'; font-size:18px; font-style:normal; font-weight:400; text-align:start; text-decoration:none; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px">
<div>
<div>    PetscCall(KSPSetInitialGuessNonzero(ksp,PETSC_TRUE));</div>
<div>    PetscCall(KSPSetNormType(ksp, KSP_NORM_DEFAULT));</div>
<div>    PetscCall(KSPCGSetType(ksp, KSP_CG_SYMMETRIC));</div>
</div>
<div> </div>
<div>
<div>    PetscCall(KSPGetPC(ksp, &pc));</div>
<div>    PetscCall(PCSetType(pc, PCILU));</div>
<div>    PetscCall(PCFactorSetShiftType(pc, MAT_SHIFT_POSITIVE_DEFINITE));</div>
<div>  </div>
<div>    PetscCall(PCFactorSetLevels(pc, 2));</div>
<div>    PetscCall(PCFactorSetReuseOrdering(pc,PETSC_TRUE));</div>
<div>    PetscCall(PCFactorSetDropTolerance(pc, 1.e-5, 1.e-3, 10000));</div>
<div>    PetscCall(PCFactorSetZeroPivot(pc, 1.e-3));</div>
<div>    PetscCall(KSPSetTolerances(ksp, 1.e-8, 1.e-8, PETSC_DEFAULT, PETSC_DEFAULT));</div>
</div>
<div> </div>
<div>
<div>    PetscCall(KSPSetFromOptions(ksp));</div>
</div>
<div> </div>
<div>
<div>    PetscCall(KSPSolve(ksp, b, x));</div>
<div>     PetscCall(KSPGetIterationNumber(ksp, &its));</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</body>
</html>