also inside the stress integration, it is now possible to define the frequency of the Jacobian update oin the LpLoop through iJacoLpResiduum. The frequency of the Jacobian update for the stiffness in the crystallite loop is controlled by the parameter iJacoStiffness.
also updated the corresponding stuctograms in the documentation
homogenization as well as constitutive are now free to choose. the runtime got somewhat longer (25% on simple tests) compared to a hardcoded isostrain homogenization. this might be a point of further optimization at a later stage...
please use homogenization_isostrain.f90 as starting point / example for future developments of homog-schemes.
the homogenization scheme now can additionally output certain results. hence, the userdata structure at each integration point now looks like this:
- sizeHomogPostResults
- block of that size containing homogPostResults
then for each grain:
- sizeGrainPostResults
- block of that size containing crystallitePostResults, which consist of:
+ phaseID
+ volFrac
+ Eulers (3)
+ any constitutive post results requested
added full check whether residuum in inner loop is NaN
SingleCrystallite now takes/stores Lp guess
CPFEM_Taylor (missing in GIA!!):
former fully plastic guess for Lp has been exchanged by keeping the last converged Lp (global array CPFEM_Lp) to serve as new best guess for the next time step. This speeds up the inner loop of TimeIntegration.
# improved SingleCrystallite to advance by true cutbacking (instead of improving guess and integrating always from t_0)
# module "crystal" renamed to "lattice" together with its prefix for variables
# extension of "computationMode" to deal with cutbacks (CPFEM_general).
# cutback and new inc detection for MARC is based on common block variable cptim (and inc), not incsub anymore!
# generalized GrainInterAction as new homogenization scheme
# two symbolic links are required: constitutive.f90 and CPFEM.f90
changed consistent tangent scheme to D.Tjahjanto Diss version
fixed nasty bug in decision when to calculate new values (CPFEM_general)
prec
precision values should now be on safe side.
time integration scheme changed to start from guessing of Lp.
Newton-Raphson algorithm now accelerates as long as residuum improves.
IO:
added error 650 for polar decomposition problems
prec:
some cleanup. Introduced "relevantStrain" for convergence checking in CPFEM
All subroutines were committed at once:
- constitutive_pheno works
- constitutive_dislo without twinning also works
This release should serve as reference
changed residuum to only consider deviatoric part of Tstar
changed scaling when dTstar becomes too large to proportionally scaling all components of dTstar