<html><head><meta http-equiv="content-type" content="text/html; charset=us-ascii"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><div><br></div>  I don't think the change was "necessary" for bt; I made the change to have more "robustness" for a sloppily provided maximum step length. That is for people who did not understand their problem's length scales. I was too quick to make the change without more thought. I don't have any underlying mathematical principles to rely on for handling appropriate maximum and minimum lengths, thus it has always been ad hoc.<div><br></div><div>   Barry</div><div><br><div><div><br><blockquote type="cite"><div>On Jun 20, 2023, at 3:21 PM, Nabil Abboud <nabil.abboud@ansys.com> wrote:</div><br class="Apple-interchange-newline"><div><meta charset="UTF-8"><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Hi Barry,</div><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"><br></div><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">I just wanted to follow up on your previous email. Regarding the change that was made to the maxstep for the linesearch in petsc version 3.19.1, was this change necessary for the bt line search to work properly? The reason I am asking is because if so, then if we revert that part of the code back to how it was in petsc version 3.19.0 does it mean that the bt line search won't function properly?</div><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"><br></div><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Thank you.</div><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Best,</div><div class="elementToProof" style="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; -webkit-text-stroke-width: 0px; text-decoration: none; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Nabil</div><div id="appendonsend" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 18px; 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; -webkit-text-stroke-width: 0px; text-decoration: none;"></div><hr tabindex="-1" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 18px; 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; -webkit-text-stroke-width: 0px; text-decoration: none; display: inline-block; width: 934.90625px;"><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 18px; 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; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;"></span><div id="divRplyFwdMsg" dir="ltr" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 18px; 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; -webkit-text-stroke-width: 0px; text-decoration: none;"><font face="Calibri, sans-serif" style="font-size: 11pt;"><b>From:</b><span class="Apple-converted-space"> </span>Barry Smith <<a href="mailto:bsmith@petsc.dev">bsmith@petsc.dev</a>><br><b>Sent:</b><span class="Apple-converted-space"> </span>Tuesday, June 20, 2023 12:55 PM<br><b>To:</b><span class="Apple-converted-space"> </span>Nabil Abboud <<a href="mailto:nabil.abboud@ansys.com">nabil.abboud@ansys.com</a>><br><b>Cc:</b><span class="Apple-converted-space"> </span><a href="mailto:petsc-dev@mcs.anl.gov">petsc-dev@mcs.anl.gov</a><span class="Apple-converted-space"> </span><<a href="mailto:petsc-dev@mcs.anl.gov">petsc-dev@mcs.anl.gov</a>><br><b>Subject:</b><span class="Apple-converted-space"> </span>Re: [petsc-dev] Inquiry about a change in petsc version 3.19.1</font><div> </div></div><div style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 18px; 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; -webkit-text-stroke-width: 0px; text-decoration: none; line-break: after-white-space;"><div style="border: 1pt solid rgb(156, 101, 0); padding: 2pt;"><div style="margin-top: 0px; margin-bottom: 0px; line-height: 12pt; background: rgb(255, 235, 156);"><b><span lang="EN-US" style="font-size: 10pt; color: red;">[External Sender]</span></b></div></div><div><div><br></div>  Looks like a fatally flawed change I should never have made. I have an MR to revert it <a href="https://gitlab.com/petsc/petsc/-/merge_requests/6620">https://gitlab.com/petsc/petsc/-/merge_requests/6620</a> Should get into release and main by tommorow.<div><br></div><div>  Barry</div><div><br><div><br><blockquote type="cite"><div>On Jun 19, 2023, at 4:37 PM, Barry Smith <<a href="mailto:bsmith@petsc.dev">bsmith@petsc.dev</a>> wrote:</div><br class="x_Apple-interchange-newline"><div><div style="line-break: after-white-space;"><div><br></div>  Sorry about this, we'll take a look and get back to you.<div><br></div><div><br><div><br><blockquote type="cite"><div>On Jun 19, 2023, at 4:05 PM, Nabil Abboud via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov">petsc-dev@mcs.anl.gov</a>> wrote:</div><br class="x_Apple-interchange-newline"><div><div class="x_elementToProof" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Dear all,</div><div class="x_elementToProof" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"><br></div><div class="x_elementToProof x_ContentPasted0 x_ContentPasted3" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">We were trying to update the petsc version we use in our code to the version 3.19.1 when we noticed that some of the unit tests in our code started failing. The reason for the failure seems to be due to a change in the linesearch logic of petsc version 3.19.1. In particular, the implementation of the function SNESLineSearchGetTolerances was modified such that maxstep is now scaled with fnorm as shown in the following link <a href="https://gitlab.com/petsc/petsc/-/blob/main/src/snes/linesearch/interface/linesearch.c#L1097" id="LPNoLPOWALinkPreview_3">https://gitlab.com/petsc/petsc/-/blob/main/src/snes/linesearch/interface/linesearch.c#L1097</a></div><div class="x__Entity x__EType_OWALinkPreview x__EId_OWALinkPreview_3 x__EReadonly_1" style="font-family: Helvetica; font-size: 18px; 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;"></div><div class="x_elementToProof" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">This change seems to be inconsistent with the way maxstep is being used later on to compute a step size using the l2 line search algorithm, for instance, check the following code </span><a href="https://gitlab.com/petsc/petsc/-/blob/main/src/snes/linesearch/impls/l2/linesearchl2.c#L119" id="LPNoLPOWALinkPreview_1" style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">https://gitlab.com/petsc/petsc/-/blob/main/src/snes/linesearch/impls/l2/linesearchl2.c#L119</a><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"> where maxstep is compared to lambda_update and where maxstep is scaled by fnorm whereas lambda_update seems to be a scalar of a different order as computed here </span><a href="https://gitlab.com/petsc/petsc/-/blob/main/src/snes/linesearch/impls/l2/linesearchl2.c#L111" id="LPNoLPOWALinkPreview_2" style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">https://gitlab.com/petsc/petsc/-/blob/main/src/snes/linesearch/impls/l2/linesearchl2.c#L111</a><span style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"> .</span><br></div><div class="x_elementToProof x_ContentPasted0 x_ContentPasted1 x_ContentPasted2" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">The way this change is reflected in our code is that we were trying to enforce a range for the step size provided by the l2 line search between 0.1 and 1 and now with the new changes in petsc version 3.19.1 the upper limit seems not to hold anymore and we are seeing step sizes larger than 1.</div><div class="x_elementToProof x_ContentPasted0 x_ContentPasted1 x_ContentPasted2" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;"><br></div><div class="x_elementToProof x_ContentPasted0 x_ContentPasted1 x_ContentPasted2" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Thank you in advance for your help.</div><div class="x_elementToProof x_ContentPasted0 x_ContentPasted1 x_ContentPasted2" style="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; font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">Best regards,<div>Nabil</div></div></div></blockquote></div></div></div></div></blockquote></div></div></div></div></div></blockquote></div><br></div></div></body></html>