On May 22, 2006, at 6:03 AM, Damm, Edward F. (E. Buddy) wrote:

Hi,
 
I want to be able to track the current and last distance traveled for my phase field model so I can calculate velocity (for plotting, recording), and use this to impliment dynamic time stepping. 
 
In reading the "reference-1.0.pdf" I see that there is a DistanceFunction, and maybe that is what I want, but it is listed under the level set section, and seems to defined in a rather specific case for certain phase and gradient conditions.  This same function is cross referenced, or linked back to the cell variables section of the manual.
 
The dynamic time stepping scheme (per Loginova et al) I hope to impliment works as follows.
 
The Courant number is = V(velocity during last time step) *[dtold(last time step)/dx(grid spacing)]
 
for V, I'll need the current front distance (XC) value and old front distance (XO) value for some defined value of the 'phase' variable (ie phaseCriteria =0.5 or perhaps 0.95?).  How do I get the current and old front distance values where phase = phaseCriteria
Then V = (XCurrent @ phase=phaseCriteria - XOld @ phase=phaseCriteria)/dtold
 
If the Courant number is less than a critical value (say CourantCrit = 0.5)
then
dtnew (the new time step) = CourantCrit * dx/V

Use the advection equation to evaluate the velocity:

      \phi_t + | \nabla \phi | u = 0,

but only in the interface region.

What implications might this approach have on the peclet number issue, and how can one assure that the peclet number criteria is not being violated?  Is this inherent in the solver choosen, or should it be monitored and verified?

PowerLawConvectionTerm() selects the correct scheme based on the Peclet Number.
The Peclet number has nothing to do with the Courant number as described above.

Daniel Wheeler



Reply via email to