CPFEM.f90 >>> A very small, not important thing.
homogenization.f90 and crystallite.f90 >>> Correction in the algorithm to count the iteration distribution (for better statistics). material.config and numerics.config >>> more collection of parameters.
This commit is contained in:
parent
f27d66a9ae
commit
3ea17dd2fd
|
@ -217,7 +217,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
|||
! deformation gradient outdated or any actual deformation gradient differs more than relevantStrain from the stored one
|
||||
if (terminallyIll .or. outdatedFFN1 .or. any(abs(ffn1 - materialpoint_F(:,:,IP,cp_en)) > relevantStrain)) then
|
||||
if (.not. terminallyIll .and. .not. outdatedFFN1) then
|
||||
write(6,'(a11,x,i5,x,i2,x,a10,/,3(3(f10.3,x),/))') 'outdated at',cp_en,IP,'FFN1 now:',ffn1(:,1),ffn1(:,2),ffn1(:,3)
|
||||
write(6,'(a11,x,i5,x,i2,x,a10,/,3(3(f10.6,x),/))') 'outdated at',cp_en,IP,'FFN1 now:',ffn1(:,1),ffn1(:,2),ffn1(:,3)
|
||||
outdatedFFN1 = .true.
|
||||
endif
|
||||
CPFEM_cs(1:ngens,IP,cp_en) = CPFEM_odd_stress
|
||||
|
|
|
@ -368,7 +368,7 @@ subroutine crystallite_stressAndItsTangent(updateJaco)
|
|||
crystallite_subLp0(:,:,g,i,e) = crystallite_Lp(:,:,g,i,e) ! ...plastic velocity gradient
|
||||
constitutive_subState0(g,i,e)%p = constitutive_state(g,i,e)%p ! ...microstructure
|
||||
crystallite_subTstar0_v(:,g,i,e) = crystallite_Tstar_v(:,g,i,e) ! ...2nd PK stress
|
||||
else ! already at final time
|
||||
elseif (crystallite_onTrack(g,i,e)) ! this crystallite just converged
|
||||
!$OMP CRITICAL (distributionCrystallite)
|
||||
debug_CrystalliteLoopDistribution(min(nCryst+1,NiterationCrystallite)) = &
|
||||
debug_CrystalliteLoopDistribution(min(nCryst+1,NiterationCrystallite)) + 1
|
||||
|
|
|
@ -301,7 +301,7 @@ subroutine materialpoint_stressAndItsTangent(&
|
|||
if (homogenization_sizeState(i,e) > 0_pInt) &
|
||||
homogenization_subState0(i,e)%p = homogenization_state(i,e)%p ! ...internal state of homog scheme
|
||||
materialpoint_subF0(:,:,i,e) = materialpoint_subF(:,:,i,e) ! ...def grad
|
||||
else ! already at final time
|
||||
elseif (materialpoint_requested(i,e)) ! this materialpoint just converged ! already at final time
|
||||
!$OMP CRITICAL (distributionHomog)
|
||||
debug_MaterialpointLoopDistribution(min(nHomog+1,NiterationHomog)) = &
|
||||
debug_MaterialpointLoopDistribution(min(nHomog+1,NiterationHomog)) + 1
|
||||
|
|
|
@ -6,6 +6,16 @@
|
|||
type isostrain
|
||||
Ngrains 1
|
||||
|
||||
[Grain_Cluster]
|
||||
type RGC
|
||||
ngrains 8
|
||||
clustersize 2 2 2 # product of these numbers must be equal to ngrains(!)
|
||||
grainsizeparameter 3.2e+3 3.2e+3 3.2e+3 # 3.9e3 3.6e3 3.9e3
|
||||
overproportionality 1.6e+0 1.6e+0 1.6e+0 # 1.6e0 1.6e0 1.6e0
|
||||
(output) constitutivework
|
||||
(output) penaltyenergy
|
||||
(output) magnitudemismatch
|
||||
|
||||
[Taylor2]
|
||||
type isostrain
|
||||
Ngrains 2
|
||||
|
@ -23,6 +33,9 @@ Ngrains 2
|
|||
[Aluminum_j2]
|
||||
(constituent) phase 1 texture 1 fraction 1.0
|
||||
|
||||
[DP_Steel]
|
||||
(constituent) phase 1 texture 1 fraction 0.82
|
||||
(constituent) phase 2 texture 1 fraction 0.18
|
||||
|
||||
#####################
|
||||
<phase>
|
||||
|
@ -125,10 +138,73 @@ Qsd 2.3e-19
|
|||
lambda0 100 0 0 0 # prefactor for mean free path
|
||||
interaction_SlipSlip 1.0 2.2 3.0 1.6 3.8 4.5 # Dislocation interaction coefficient
|
||||
|
||||
[BCC_Ferrite]
|
||||
constitution phenopowerlaw
|
||||
lattice_structure bcc
|
||||
Nslip 12 0 0 0 # per family
|
||||
Ntwin 0 0 0 0 # per family
|
||||
c11 233.3e9
|
||||
c12 135.5e9
|
||||
c44 118.0e9
|
||||
gdot0_slip 0.001
|
||||
n_slip 20
|
||||
tau0_slip 88.0e6 0 0 0 # per family
|
||||
tausat_slip 201.0e6 0 0 0 # per family
|
||||
gdot0_twin 0.001
|
||||
n_twin 20
|
||||
tau0_twin 31.0e6 0 0 0 # per family
|
||||
s_pr 0 # push-up factor for slip saturation due to twinning
|
||||
twin_b 0
|
||||
twin_c 0
|
||||
twin_d 0
|
||||
twin_e 0
|
||||
h0_slipslip 391.0e6
|
||||
h0_sliptwin 0
|
||||
h0_twinslip 0
|
||||
h0_twintwin 0
|
||||
interaction_slipslip 1 1 1.4 1.4 1.4 1.4
|
||||
interaction_sliptwin 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
interaction_twinslip 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
interaction_twintwin 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
w0_slip 1.0
|
||||
|
||||
[BCC_Martensite]
|
||||
constitution phenopowerlaw
|
||||
lattice_structure bcc
|
||||
Nslip 12 0 0 0 # per family
|
||||
Ntwin 0 0 0 0 # per family
|
||||
c11 511.1e9
|
||||
c12 296.9e9
|
||||
c44 258.5e9
|
||||
gdot0_slip 0.001
|
||||
n_slip 20
|
||||
tau0_slip 396.0e6 0 0 0 # per family
|
||||
tausat_slip 1120.0e6 0 0 0 # per family
|
||||
gdot0_twin 0.001
|
||||
n_twin 20
|
||||
tau0_twin 31.0e6 0 0 0 # per family
|
||||
s_pr 0 # push-up factor for slip saturation due to twinning
|
||||
twin_b 0
|
||||
twin_c 0
|
||||
twin_d 0
|
||||
twin_e 0
|
||||
h0_slipslip 215000.0e6
|
||||
h0_sliptwin 0
|
||||
h0_twinslip 0
|
||||
h0_twintwin 0
|
||||
interaction_slipslip 1 1 1.4 1.4 1.4 1.4
|
||||
interaction_sliptwin 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
interaction_twinslip 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
interaction_twintwin 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
w0_slip 4.0
|
||||
|
||||
#####################
|
||||
<texture>
|
||||
#####################
|
||||
|
||||
[Rolling]
|
||||
hybridIA DP_EBSD.linearODF
|
||||
|
||||
[random]
|
||||
|
||||
[001]
|
||||
|
|
|
@ -7,8 +7,8 @@ iJacoLpresiduum 1 # frequency of Jacobian update of residuum
|
|||
pert_Fg 1.0e-7 # strain perturbation for FEM Jacobi
|
||||
nHomog 25 # homogenization loop limit
|
||||
nCryst 20 # crystallite loop limit (only for debugging info, real loop limit is "subStepMin")
|
||||
nState 40 # state loop limit
|
||||
nStress 80 # stress loop limit
|
||||
nState 50 # state loop limit
|
||||
nStress 200 # stress loop limit
|
||||
subStepMin 1.0e-3 # minimum (relative) size of sub-step allowed during cutback in crystallite
|
||||
rTol_crystalliteState 1.0e-6 # relative tolerance in crystallite state loop
|
||||
rTol_crystalliteStress 1.0e-6 # relative tolerance in crystallite stress loop
|
||||
|
@ -17,8 +17,7 @@ aTol_crystalliteStress 1.0e-8 # absolute tolerance in crystallite stress
|
|||
aTol_RGC 1.0e+4 # absolute tolerance of RGC residuum (in Pa)
|
||||
rTol_RGC 1.0e-3 # relative ...
|
||||
aMax_RGC 1.0e+12 # absolute upper-limit of RGC residuum (in Pa)
|
||||
rMax_RGC 1.0e+3 # relative ...
|
||||
rMax_RGC 1.0e+4 # relative ...
|
||||
perturbPenalty_RGC 1.0e-8 # perturbation for computing penalty tangent
|
||||
relevantMismatch_RGC 1.0e-5 # minimum threshold of mismatch
|
||||
|
||||
fixed_seed 1234 # put any number larger than zero, integer, if you want to have a pseudo random distribution
|
||||
relevantMismatch_RGC 1.0e-6 # minimum threshold of mismatch
|
||||
fixed_seed 1234 # put any number larger than zero, integer, if you want to have a pseudo random distribution
|
||||
|
|
Loading…
Reference in New Issue