### $Id$ ###
### numerical parameters ###

relevantStrain            1.0e-7       # strain increment considered significant (used by crystallite to determine whether strain inc is considered significant)
defgradTolerance          1.0e-7       # deviation of deformation gradient that is still allowed (used by CPFEM to determine outdated ffn1)
iJacoStiffness            1            # frequency of stiffness update
iJacoLpresiduum           1            # frequency of Jacobian update of residuum in Lp
pert_Fg                   1.0e-7       # deformation gradient perturbation for grain tangent
pert_method               1            # perturbation method (1 = forward, 2 = backward or 3 = central)
integrator                1            # integration method (1 = Fixed Point Iteration, 2 = Euler, 3 = Adaptive Euler, 4 = classical 4th order Runge-Kutta, 5 = 5th order Runge-Kutta Cash-Karp)
integratorStiffness       1            # integration method used for stiffness (1 = Fixed Point Iteration, 2 = Euler, 3 = Adaptive Euler, 4 = classical 4th order Runge-Kutta, 5 = 5th order Runge-Kutta Cash-Karp)
analyticJaco              1            # use analytic Jacobian or perturbation (0 = perturbations, 1 = analytic)
unitlength                1            # physical length of one computational length unit
usepingpong               1            # use the ping pong (collect <-> calc) scheme (always off for Abaqus exp, must be on for Spectral Solver)

## crystallite numerical parameters ##
nCryst                    20           # crystallite loop limit (only for debugging info, loop limit is determined by "subStepMinCryst")
subStepMinCryst           1.0e-3       # minimum (relative) size of sub-step allowed during cutback in crystallite
subStepSizeCryst          0.25         # size of substep when cutback introduced in crystallite (value between 0 and 1)
stepIncreaseCryst         1.5          # increase of next substep size when previous substep converged in crystallite (value higher than 1)
nState                    10           # state loop limit
nStress                   40           # stress loop limit
rTol_crystalliteState     1.0e-6       # relative tolerance in crystallite state loop (abs tol provided by constitutive law)
rTol_crystalliteStress    1.0e-6       # relative tolerance in crystallite stress loop (Lp residuum)
aTol_crystalliteStress    1.0e-8       # absolute tolerance in crystallite stress loop (Lp residuum!)
rTol_crystalliteTemperature 1.0e-6     # relative tolerance in crystallite state/temperature loop

## homogenization numerical parameters ##
nHomog                    20           # homogenization loop limit (only for debugging info, loop limit is determined by "subStepMinHomog")
subStepMinHomog           1.0e-3       # minimum (relative) size of sub-step allowed during cutback in homogenization
subStepSizeHomog          0.25         # size of substep when cutback introduced in homogenization (value between 0 and 1)
stepIncreaseHomog         1.5          # increase of next substep size when previous substep converged in homogenization (value higher than 1)
nMPstate                  10           # materialpoint state loop limit

## RGC scheme numerical parameters ##
aTol_RGC                  1.0e+4       # absolute tolerance of RGC residuum (in Pa)
rTol_RGC                  1.0e-3       # relative ...
aMax_RGC                  1.0e+10      # absolute upper-limit of RGC residuum (in Pa)
rMax_RGC                  1.0e+2       # relative ...
perturbPenalty_RGC        1.0e-7       # perturbation for computing penalty tangent
maxRelaxation_RGC         1.0e+0       # threshold of maximum relaxation vector increment (if exceed this then cutback)

relevantMismatch_RGC      1.0e-5       # minimum threshold of mismatch

viscosityPower_RGC        1.0e+0       # power (sensitivity rate) of numerical viscosity in RGC scheme
viscosityModulus_RGC      0.0e+0       # stress modulus of RGC numerical viscosity (zero = without numerical viscosity)
                                       # suggestion: larger than the aTol_RGC but still far below the expected flow stress of material
refRelaxationRate_RGC     1.0e-3       # reference rate of relaxation (about the same magnitude as straining rate, possibly a bit higher)

maxVolDiscrepancy_RGC     1.0e-5       # maximum allowable relative volume discrepancy
volDiscrepancyMod_RGC     1.0e+12
discrepancyPower_RGC      5.0

fixed_seed                0            # put any number larger than zero, integer, if you want to have a pseudo random distribution

## spectral parameters ##
err_div_tolAbs            1.0e-3       # relative tolerance for fulfillment of stress equilibrium
err_div_tolRel            5.0e-4       # absolute tolerance for fulfillment of stress equilibrium
err_curl_tolAbs           1.0e-12      # relative tolerance for fulfillment of strain compatibility
err_curl_tolRel           5.0e-4       # absolute tolerance for fulfillment of strain compatibility
err_stress_tolrel         0.01         # relative tolerance for fulfillment of stress BC
err_stress_tolabs         1.0e3        # absolute tolerance for fulfillment of stress BC
fftw_timelimit           -1.0          # timelimit of plan creation for FFTW, see manual on www.fftw.org, Default -1.0: disable timelimit
rotation_tol              1.0e-12      # tolerance of rotation specified in loadcase, Default 1.0e-12: first guess
fftw_plan_mode            FFTW_PATIENT # reads the planing-rigor flag, see manual on www.fftw.org, Default FFTW_PATIENT: use patient planner flag    
itmax                     250          # Maximum iteration number
itmin                     2            # Minimum iteration number
maxCutBack                3            # maximum cut back level (0: 1, 1: 0.5, 2: 0.25, etc) 
memory_efficient          1            # Precalculate Gamma-operator (81 double per point)
update_gamma              0            # Update Gamma-operator with current dPdF (not possible if memory_efficient=1)
divergence_correction     2            # Use size-independent divergence criterion 
spectralsolver            basicPETSc   # Type of spectral solver (basicPETSc: basic with PETSc, AL: augmented Lagrange)
spectralfilter            none         # Type of filtering method to mitigate Gibb's phenomenon (none, cosine, ...)
petsc_options             -snes_type ngmres -snes_ngmres_anderson # PetSc solver options
regridMode                0            # 0: no regrid; 1: regrid if DAMASK doesn't converge; 2: regrid if DAMASK or BVP Solver doesn't converge 
polarAlpha                1.0          # polarization scheme parameter 0.0 < alpha < 2.0. alpha = 1.0 ==> AL scheme, alpha = 2.0 ==> accelerated scheme 
polarBeta                 1.0          # polarization scheme parameter 0.0 < beta < 2.0. beta = 1.0 ==> AL scheme, beta = 2.0 ==> accelerated scheme 
