DAMASK with grid solvers  Revision: v2.0.3-2204-gdb1f2151
The Düsseldorf Advanced Material Simulation Kit with Grid Solvers
homogenization Module Reference

homogenization manager, organizing deformation partitioning and stress homogenization More...

Data Types

type  tnumerics
 

Functions/Subroutines

subroutine, public homogenization_init
 module initialization More...
 
subroutine, public materialpoint_stressanditstangent (updateJaco, dt)
 parallelized calculation of stress and corresponding tangent at material points More...
 
subroutine partitiondeformation (ip, el)
 partition material point def grad onto constituents More...
 
logical function, dimension(2) updatestate (ip, el)
 update the internal state of the homogenization scheme and tell whether "done" and "happy" with result More...
 
subroutine averagestressanditstangent (ip, el)
 derive average stress and stiffness from constituent quantities More...
 
subroutine, public homogenization_results
 writes homogenization results to HDF5 output file More...
 

Variables

real(preal), dimension(:,:,:,:), allocatable, public materialpoint_f0
 def grad of IP at start of FE increment More...
 
real(preal), dimension(:,:,:,:), allocatable, public materialpoint_f
 def grad of IP to be reached at end of FE increment More...
 
real(preal), dimension(:,:,:,:), allocatable, public materialpoint_p
 first P–K stress of IP More...
 
real(preal), dimension(:,:,:,:,:,:), allocatable, public materialpoint_dpdf
 tangent of first P–K stress at IP More...
 
real(preal), dimension(:,:,:,:), allocatable materialpoint_subf0
 def grad of IP at beginning of homogenization increment More...
 
real(preal), dimension(:,:,:,:), allocatable materialpoint_subf
 def grad of IP to be reached at end of homog inc More...
 
real(preal), dimension(:,:), allocatable materialpoint_subfrac
 
real(preal), dimension(:,:), allocatable materialpoint_substep
 
real(preal), dimension(:,:), allocatable materialpoint_subdt
 
logical, dimension(:,:), allocatable materialpoint_requested
 
logical, dimension(:,:), allocatable materialpoint_converged
 
logical, dimension(:,:,:), allocatable materialpoint_doneandhappy
 
type(tnumericsnum
 

Detailed Description

homogenization manager, organizing deformation partitioning and stress homogenization

Author
Franz Roters, Max-Planck-Institut für Eisenforschung GmbH
Philip Eisenlohr, Max-Planck-Institut für Eisenforschung GmbH
Denny Tjahjanto, Max-Planck-Institut für Eisenforschung GmbH

Function/Subroutine Documentation

◆ averagestressanditstangent()

subroutine homogenization::averagestressanditstangent ( integer, intent(in)  ip,
integer, intent(in)  el 
)
private

◆ homogenization_init()

◆ homogenization_results()

subroutine, public homogenization::homogenization_results

writes homogenization results to HDF5 output file

Definition at line 589 of file homogenization.f90.

References config::config_name_homogenization, damage_local::damage_local_results(), damage_nonlocal::damage_nonlocal_results(), material::homogenization_type, results::results_addgroup(), results::results_closegroup(), thermal_adiabatic::thermal_adiabatic_results(), and thermal_conduction::thermal_conduction_results().

Referenced by cpfem2::cpfem_results().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ materialpoint_stressanditstangent()

subroutine, public homogenization::materialpoint_stressanditstangent ( logical, intent(in)  updateJaco,
real(preal), intent(in)  dt 
)

parallelized calculation of stress and corresponding tangent at material points

Parameters
[in]dttime increment
[in]updatejacoinitiating Jacobian update

Definition at line 213 of file homogenization.f90.

References crystallite::converged(), crystallite::crystallite_dt, crystallite::crystallite_f0, crystallite::crystallite_fi, crystallite::crystallite_fi0, crystallite::crystallite_fp, crystallite::crystallite_fp0, crystallite::crystallite_li, crystallite::crystallite_li0, crystallite::crystallite_lp, crystallite::crystallite_lp0, crystallite::crystallite_orientations(), crystallite::crystallite_partionedf, crystallite::crystallite_partionedf0, crystallite::crystallite_partionedfi0, crystallite::crystallite_partionedfp0, crystallite::crystallite_partionedli0, crystallite::crystallite_partionedlp0, crystallite::crystallite_partioneds0, crystallite::crystallite_requested, crystallite::crystallite_s, crystallite::crystallite_s0, crystallite::crystallite_stress(), crystallite::crystallite_stresstangent(), material::damagestate, fesolving::fesolving_execelem, fesolving::fesolving_execip, material::homogenization_ngrains, material::homogstate, material::material_homogenizationat, material::material_homogenizationmemberat, material::material_phaseat, material::material_phasememberat, crystallite::num, material::phase_nsources, material::plasticstate, material::sourcestate, fesolving::terminallyill, and material::thermalstate.

Referenced by spectral_utilities::utilities_constitutiveresponse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ partitiondeformation()

subroutine homogenization::partitiondeformation ( integer, intent(in)  ip,
integer, intent(in)  el 
)
private

partition material point def grad onto constituents

Parameters
[in]elelement number
Parameters
ipintegration point

Definition at line 478 of file homogenization.f90.

References crystallite::crystallite_partionedf, material::homogenization_isostrain_id, material::homogenization_ngrains, material::homogenization_none_id, material::homogenization_rgc_id, material::homogenization_type, and material::material_homogenizationat.

◆ updatestate()

logical function, dimension(2) homogenization::updatestate ( integer, intent(in)  ip,
integer, intent(in)  el 
)
private

update the internal state of the homogenization scheme and tell whether "done" and "happy" with result

Parameters
[in]elelement number
Parameters
ipintegration point

Definition at line 509 of file homogenization.f90.

References crystallite::crystallite_dpdf, crystallite::crystallite_p, crystallite::crystallite_partionedf, crystallite::crystallite_partionedf0, material::damage_local_id, damage_local::damage_local_updatestate(), material::damage_type, material::homogenization_ngrains, material::homogenization_rgc_id, material::homogenization_type, material::material_homogenizationat, material::thermal_adiabatic_id, thermal_adiabatic::thermal_adiabatic_updatestate(), and material::thermal_type.

+ Here is the call graph for this function:

Variable Documentation

◆ materialpoint_converged

logical, dimension(:,:), allocatable homogenization::materialpoint_converged
private

Definition at line 50 of file homogenization.f90.

◆ materialpoint_doneandhappy

logical, dimension(:,:,:), allocatable homogenization::materialpoint_doneandhappy
private

Definition at line 53 of file homogenization.f90.

◆ materialpoint_dpdf

real(preal), dimension(:,:,:,:,:,:), allocatable, public homogenization::materialpoint_dpdf

◆ materialpoint_f

real(preal), dimension(:,:,:,:), allocatable, public homogenization::materialpoint_f

def grad of IP to be reached at end of FE increment

Definition at line 36 of file homogenization.f90.

Referenced by spectral_utilities::utilities_constitutiveresponse().

◆ materialpoint_f0

◆ materialpoint_p

real(preal), dimension(:,:,:,:), allocatable, public homogenization::materialpoint_p

first P–K stress of IP

Definition at line 36 of file homogenization.f90.

Referenced by spectral_utilities::utilities_constitutiveresponse().

◆ materialpoint_requested

logical, dimension(:,:), allocatable homogenization::materialpoint_requested
private

Definition at line 50 of file homogenization.f90.

◆ materialpoint_subdt

real(preal), dimension(:,:), allocatable homogenization::materialpoint_subdt
private

Definition at line 46 of file homogenization.f90.

◆ materialpoint_subf

real(preal), dimension(:,:,:,:), allocatable homogenization::materialpoint_subf
private

def grad of IP to be reached at end of homog inc

Definition at line 43 of file homogenization.f90.

◆ materialpoint_subf0

real(preal), dimension(:,:,:,:), allocatable homogenization::materialpoint_subf0
private

def grad of IP at beginning of homogenization increment

Definition at line 43 of file homogenization.f90.

◆ materialpoint_subfrac

real(preal), dimension(:,:), allocatable homogenization::materialpoint_subfrac
private

Definition at line 46 of file homogenization.f90.

◆ materialpoint_substep

real(preal), dimension(:,:), allocatable homogenization::materialpoint_substep
private

Definition at line 46 of file homogenization.f90.

◆ num

type(tnumerics) homogenization::num
private

Definition at line 65 of file homogenization.f90.