convergence of plastic state can be done earlier
This commit is contained in:
parent
4a69032637
commit
a24d8b86bf
|
@ -1652,6 +1652,13 @@ subroutine integrateStateFPI()
|
||||||
+ plasticState(p)%previousDotState(:,c) &
|
+ plasticState(p)%previousDotState(:,c) &
|
||||||
* (1.0_pReal - stateDamper)
|
* (1.0_pReal - stateDamper)
|
||||||
|
|
||||||
|
converged = all( abs(plasticStateResiduum(1:mySizePlasticDotState)) < &
|
||||||
|
plasticState(p)%aTolState(1:mySizePlasticDotState) &
|
||||||
|
.or. abs(plasticStateResiduum(1:mySizePlasticDotState)) < &
|
||||||
|
rTol_crystalliteState * abs(tempPlasticState(1:mySizePlasticDotState)))
|
||||||
|
|
||||||
|
plasticState(p)%state(1:mySizePlasticDotState,c) = tempPlasticState(1:mySizePlasticDotState)
|
||||||
|
|
||||||
do s = 1_pInt, phase_Nsources(p)
|
do s = 1_pInt, phase_Nsources(p)
|
||||||
StateDamper = damper(sourceState(p)%p(s)%dotState (:,c), &
|
StateDamper = damper(sourceState(p)%p(s)%dotState (:,c), &
|
||||||
sourceState(p)%p(s)%previousDotState (:,c), &
|
sourceState(p)%p(s)%previousDotState (:,c), &
|
||||||
|
@ -1676,12 +1683,6 @@ subroutine integrateStateFPI()
|
||||||
* (1.0_pReal - stateDamper)
|
* (1.0_pReal - stateDamper)
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
|
|
||||||
! --- converged ? ---
|
|
||||||
converged = all( abs(plasticStateResiduum(1:mySizePlasticDotState)) < &
|
|
||||||
plasticState(p)%aTolState(1:mySizePlasticDotState) &
|
|
||||||
.or. abs(plasticStateResiduum(1:mySizePlasticDotState)) < &
|
|
||||||
rTol_crystalliteState * abs(tempPlasticState(1:mySizePlasticDotState)))
|
|
||||||
do s = 1_pInt, phase_Nsources(p)
|
do s = 1_pInt, phase_Nsources(p)
|
||||||
mySizeSourceDotState = sourceState(p)%p(s)%sizeDotState
|
mySizeSourceDotState = sourceState(p)%p(s)%sizeDotState
|
||||||
converged = converged .and. &
|
converged = converged .and. &
|
||||||
|
@ -1692,8 +1693,7 @@ subroutine integrateStateFPI()
|
||||||
enddo
|
enddo
|
||||||
if (converged) crystallite_converged(g,i,e) = .true. ! ... converged per definition
|
if (converged) crystallite_converged(g,i,e) = .true. ! ... converged per definition
|
||||||
|
|
||||||
plasticState(p)%state(1:mySizePlasticDotState,c) = &
|
|
||||||
tempPlasticState(1:mySizePlasticDotState)
|
|
||||||
do s = 1_pInt, phase_Nsources(p)
|
do s = 1_pInt, phase_Nsources(p)
|
||||||
mySizeSourceDotState = sourceState(p)%p(s)%sizeDotState
|
mySizeSourceDotState = sourceState(p)%p(s)%sizeDotState
|
||||||
sourceState(p)%p(s)%state(1:mySizeSourceDotState,c) = &
|
sourceState(p)%p(s)%state(1:mySizeSourceDotState,c) = &
|
||||||
|
|
Loading…
Reference in New Issue