<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
<div>Augustin,</div>
<div><br>
</div>
Out of curiosity, why TS and not SNES? At the very least the damage problem should be a constrained minimization problem so that you can model criticality with respect to the phase-field variable. 
<div>Secondly, I would be very wary about letting TS adapt the time step by itself. In quasi-static phase-field fracture, the time step affects the crack path, not the order of the approximation in time. I doubt that any of the mechanisms in TS are appropriate
 here.</div>
<div><br>
</div>
<div>You are welcome to dig into my implementation for inspiration, or reuse it for your problems <a href="https://urldefense.us/v3/__https://github.com/bourdin/mef90__;!!G_uCfscf7eWS!eTtnKSQnLNO04w5MRjDV0TdhjVmUBgqrbG3aoIy_EKUXXeXTf-4Tm2mJaWu1ONJH05kmA6vI48xbJZsQEAhh_j7T$">https://github.com/bourdin/mef90</a></div>
<div><br>
</div>
<div>Blaise</div>
<div><br id="lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>On Apr 23, 2025, at 10:20 AM, PERRIER-MICHON Augustin <augustin.perrier-michon@ensma.fr> wrote:</div>
<br class="Apple-interchange-newline">
<div>
<div>[You don't often get email from augustin.perrier-michon@ensma.fr. Learn why this is important at <a href="https://urldefense.us/v3/__https://aka.ms/LearnAboutSenderIdentification__;!!G_uCfscf7eWS!eTtnKSQnLNO04w5MRjDV0TdhjVmUBgqrbG3aoIy_EKUXXeXTf-4Tm2mJaWu1ONJH05kmA6vI48xbJZsQEE0DEtYe$">https://aka.ms/LearnAboutSenderIdentification</a> ]<br>
<br>
Caution: External email.<br>
<br>
<br>
Dear Petsc users,<br>
<br>
I am currently dealing with finite element fracture analysis using phase<br>
field model. To perform such simulations, I have to develop a staggered<br>
solver : mechanical problem is solved at constant damage and damage<br>
problem is solved at constant displacement.<br>
<br>
I created 2 TS solver and 2 DMPLEX for each "physics".<br>
Each physics's system is built using TSSetIFunction and TSSetIJacobian<br>
with associated functions.<br>
<br>
The TS calls are performed with TSSTEP in order to respect staggered<br>
solver scheme in iterative loops.<br>
<br>
My question : Is the using of TSSTEP function adapted to a staggered<br>
solver ? How to use this function in my framework ? Have you got any<br>
other suggestions or advices ?<br>
<br>
Thanks a lot<br>
Best regards<br>
<br>
--<br>
Augustin PERRIER-MICHON<br>
PhD student institut PPRIME<br>
Physics and Mechanics of materials department<br>
ISAE-ENSMA<br>
Téléport 2<br>
1 Avenue Clément ADER<br>
86361 Chasseneuil du Poitou- Futuroscope<br>
Tel : +33-(0)-5-49-49-80-97<br>
</div>
</div>
</blockquote>
</div>
<br>
<div>
<div>— <br>
Canada Research Chair in Mathematical and Computational Aspects of Solid Mechanics (Tier 1)<br>
Professor, Department of Mathematics & Statistics<br>
Hamilton Hall room 409A, McMaster University<br>
1280 Main Street West, Hamilton, Ontario L8S 4K1, Canada <br>
<a href="https://urldefense.us/v3/__https://www.math.mcmaster.ca/bourdin__;!!G_uCfscf7eWS!eTtnKSQnLNO04w5MRjDV0TdhjVmUBgqrbG3aoIy_EKUXXeXTf-4Tm2mJaWu1ONJH05kmA6vI48xbJZsQEEIiok9O$">https://www.math.mcmaster.ca/bourdin</a> | +1 (905) 525 9140 ext. 27243</div>
</div>
<br>
</div>
</body>
</html>