From 4ea1fe436b2e6735926c205b66dd80d77538997d Mon Sep 17 00:00:00 2001 From: Christoph Kords Date: Wed, 6 Apr 2011 09:07:36 +0000 Subject: [PATCH] added check for CFL condition in constitutive_nonlocal_dotState --- code/constitutive_nonlocal.f90 | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/code/constitutive_nonlocal.f90 b/code/constitutive_nonlocal.f90 index 9df29b508..df501bef3 100644 --- a/code/constitutive_nonlocal.f90 +++ b/code/constitutive_nonlocal.f90 @@ -1611,6 +1611,17 @@ forall (s = 1:ns, t = 1:4, rhoSgl(s,t+4) * constitutive_nonlocal_v(s,t,g,ip,el) +!**************************************************************************** +!*** check CFL condition for flux + +if (any(minval(mesh_ipVolume(ip,el) / max(tiny(1.0_pReal),mesh_ipArea(:,ip,el))) & + < constitutive_nonlocal_v(1:ns,1:4,g,ip,el) * timestep)) then + dotState%p = NaN + return +endif + + + !**************************************************************************** !*** calculate limits for stable dipole height @@ -1627,6 +1638,7 @@ dUpper(1:ns,2) = min( 1.0_pReal / sqrt( sum(abs(rhoSgl),2)+sum(rhoDip,2) ), & dUpper(1:ns,1) = dUpper(1:ns,2) / ( 1.0_pReal - constitutive_nonlocal_nu(myInstance) ) + !**************************************************************************** !*** dislocation remobilization (bauschinger effect)