<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">I just looked, and there is a _needNewJacobian flag that gets set to true if the time step size changes for the viscoelastic materials, so we should be OK.<div><br></div><div>Charles</div><div><br></div><div><br><div><div>On May 13, 2008, at 7:33 PM, Brad Aagaard wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Chris-<br><br>Line 56 in libsrc/feassemble/ElasticityImplicit.cc is<br> &nbsp;assert(_dt == _dtm1); // For now, don't allow variable time step<br><br>I know we need this assertion in ElasticityExplicit.cc, because the current <br>explicit time stepping implementation uses a uniform time step. I don't think <br>there is anything in the implicit time integration implementation that limits <br>it to a uniform time step. However, there might be issues in the current <br>implementation of the viscoelastic materials that require a uniform time <br>step.<br><br>If Charles verifies that the viscoelastic materials do not require a uniform <br>time step, we can remove the assertion and the code will not abort when it <br>encounters a different time step for implicit time stepping.<br><br>There are hooks for providing feedback from the integrators on what is a <br>stable time step. Right now they are hardwired to return the initial time <br>step that was assigned to them. If someone provided the algorithms for <br>computing the stable time step for the various material models (the elastic <br>cases for implicit time integration are trivial), we could get automatic <br>variable time stepping implemented very easily.<br><br>Brad<br><br>On Tuesday 13 May 2008, Christopher DiCaprio wrote:<br><blockquote type="cite">PyLith developers,<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">I'm trying to write a PyLith component for rudimentary variable time<br></blockquote><blockquote type="cite">step size. My component, called ImplicitManualdt, is similar to<br></blockquote><blockquote type="cite">Implicit, but it replaces the Formulation.stableTimeStep() with a<br></blockquote><blockquote type="cite">method that reads time step sizes sequentially from a text file. It<br></blockquote><blockquote type="cite">works when I specify the same size for every step (i.e. repeat the<br></blockquote><blockquote type="cite">same value in the timestep file), but I get the following error when<br></blockquote><blockquote type="cite">I give it a file that has more than one time step size:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"> &nbsp;-- Advancing solution from t=1.57788e+06*s to t=4.73364e+06*s.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">/home/dicaprio/local/pylith-build/lib/python2.4/site-packages/<br></blockquote></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">pylith/problem<br></blockquote><blockquote type="cite">s/Formulation.py:381:_reformResidual<br></blockquote><blockquote type="cite"> &nbsp;-- implicit_manualdt(info)<br></blockquote><blockquote type="cite"> &nbsp;-- Integrating residual term in operator.<br></blockquote><blockquote type="cite">[0]0:Return code = 0, signaled with Aborted<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Does this have anything to do with the initialization of the<br></blockquote><blockquote type="cite">integrator(s) in Formulation.py? Formulation.initialize() calculates<br></blockquote><blockquote type="cite">numTimeSteps assuming a constant time step size and that value is<br></blockquote><blockquote type="cite">used here:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">integrator.initialize(totalTime, numTimeSteps)<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Any advice?<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Thanks,<br></blockquote><blockquote type="cite">Chris<br></blockquote><blockquote type="cite">_______________________________________________<br></blockquote><blockquote type="cite">CIG-SHORT mailing list<br></blockquote><blockquote type="cite"><a href="mailto:CIG-SHORT@geodynamics.org">CIG-SHORT@geodynamics.org</a><br></blockquote><blockquote type="cite"><a href="http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short">http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short</a><br></blockquote><br><br><br></blockquote></div><br><div apple-content-edited="true"> <div><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Charles A. Williams</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Dept. of Earth &amp; Environmental Sciences</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Science Center, 2C01B</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Rensselaer Polytechnic Institute</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Troy, NY<span class="Apple-converted-space">&nbsp; </span>12180</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Phone:<span class="Apple-converted-space"><span class="Apple-converted-tab">&nbsp; &nbsp; </span></span>(518) 276-3369</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">FAX:<span class="Apple-converted-space"><span class="Apple-converted-tab">&nbsp; &nbsp; &nbsp; &nbsp; </span></span>(518) 276-2012</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">e-mail:<span class="Apple-converted-space"><span class="Apple-converted-tab">&nbsp; &nbsp; </span></span><a href="mailto:willic3@rpi.edu">willic3@rpi.edu</a></font></p> <br class="Apple-interchange-newline"></div> </div><br></div></body></html>