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

1 solver for thermal conduction More...

Functions/Subroutines

subroutine, public grid_thermal_spectral_init
 allocates all neccessary fields and fills them with data More...
 
type(tsolutionstate) function, public grid_thermal_spectral_solution (timeinc, timeinc_old)
 solution for the spectral thermal scheme with internal iterations More...
 
subroutine, public grid_thermal_spectral_forward (cutBack)
 forwarding routine More...
 
subroutine, private formresidual (in, x_scal, f_scal, dummy, ierr)
 forms the spectral thermal residual vector More...
 
subroutine updatereference
 update reference viscosity and conductivity More...
 

Variables

type(tsolutionparams), private params
 
type(tsnes), private thermal_snes
 
type(tvec), private solution_vec
 
integer(kind=selected_int_kind(5)), private xstart
 
integer(kind=selected_int_kind(5)), private xend
 
integer(kind=selected_int_kind(5)), private ystart
 
integer(kind=selected_int_kind(5)), private yend
 
integer(kind=selected_int_kind(5)), private zstart
 
integer(kind=selected_int_kind(5)), private zend
 
real(preal), dimension(:,:,:), allocatable, private t_current
 field of current temperature More...
 
real(preal), dimension(:,:,:), allocatable, private t_lastinc
 field of previous temperature More...
 
real(preal), dimension(:,:,:), allocatable, private t_staginc
 field of staggered temperature More...
 
integer, private totaliter = 0
 total iteration in current increment More...
 
real(preal), dimension(3, 3), private k_ref
 
real(preal), private mu_ref
 

Detailed Description

1 solver for thermal conduction

Author
Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH
Pratheek Shanthraj, Max-Planck-Institut für Eisenforschung GmbH
Shaokang Zhang, Max-Planck-Institut für Eisenforschung GmbH

Function/Subroutine Documentation

◆ formresidual()

subroutine, private grid_thermal_spectral::formresidual ( integer(kind=selected_int_kind(5)), dimension(25)  in,
real(kind=selected_real_kind(10)), dimension( in(13)+1:in(13)+in(16),in(14)+1:in(14)+in(17),in(15)+1:in(15)+in(18)), intent(in)  x_scal,
real(kind=selected_real_kind(10)), dimension( in(7)+1:in(7)+in(10),in(8)+1:in(8)+in(11),in(9)+1:in(9)+in(12)), intent(out)  f_scal,
integer(kind=selected_int_kind(10))  dummy,
integer(kind=selected_int_kind(5))  ierr 
)
private

◆ grid_thermal_spectral_forward()

subroutine, public grid_thermal_spectral::grid_thermal_spectral_forward ( logical, intent(in)  cutBack)

forwarding routine

Definition at line 1986 of file grid_thermal_spectral.f90.

References discretization_grid::grid, discretization_grid::grid3, params, solution_vec, t_current, t_lastinc, t_staginc, thermal_conduction::thermal_conduction_puttemperatureanditsrate(), thermal_snes, updatereference(), xend, xstart, yend, ystart, zend, and zstart.

Referenced by damask_spectral().

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

◆ grid_thermal_spectral_init()

subroutine, public grid_thermal_spectral::grid_thermal_spectral_init

allocates all neccessary fields and fills them with data

Definition at line 1850 of file grid_thermal_spectral.f90.

References formresidual(), discretization_grid::grid, discretization_grid::grid3, material::material_homogenizationat, solution_vec, t_current, t_lastinc, t_staginc, material::temperature, thermal_snes, material::thermalmapping, updatereference(), numerics::worldrank, numerics::worldsize, xend, xstart, yend, ystart, zend, and zstart.

Referenced by damask_spectral().

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

◆ grid_thermal_spectral_solution()

type(tsolutionstate) function, public grid_thermal_spectral::grid_thermal_spectral_solution ( real(preal), intent(in)  timeinc,
real(preal), intent(in)  timeinc_old 
)

solution for the spectral thermal scheme with internal iterations

Parameters
[in]timeinc_oldincrement in time of last increment
Parameters
timeincincrement in time for current solution

Definition at line 1924 of file grid_thermal_spectral.f90.

References numerics::err_thermal_tolabs, numerics::err_thermal_tolrel, discretization_grid::grid, discretization_grid::grid3, numerics::itmax, params, solution_vec, t_current, t_lastinc, t_staginc, thermal_conduction::thermal_conduction_puttemperatureanditsrate(), thermal_snes, and totaliter.

Referenced by damask_spectral().

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

◆ updatereference()

subroutine grid_thermal_spectral::updatereference
private

update reference viscosity and conductivity

Definition at line 2082 of file grid_thermal_spectral.f90.

References discretization_grid::grid, discretization_grid::grid3, k_ref, mu_ref, thermal_conduction::thermal_conduction_getconductivity(), thermal_conduction::thermal_conduction_getmassdensity(), thermal_conduction::thermal_conduction_getspecificheat(), and spectral_utilities::wgt.

Referenced by grid_thermal_spectral_forward(), and grid_thermal_spectral_init().

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

Variable Documentation

◆ k_ref

real(preal), dimension(3,3), private grid_thermal_spectral::k_ref
private

Definition at line 1833 of file grid_thermal_spectral.f90.

Referenced by formresidual(), and updatereference().

◆ mu_ref

real(preal), private grid_thermal_spectral::mu_ref
private

Definition at line 1834 of file grid_thermal_spectral.f90.

Referenced by formresidual(), and updatereference().

◆ params

type(tsolutionparams), private grid_thermal_spectral::params
private

◆ solution_vec

type(tvec), private grid_thermal_spectral::solution_vec
private

◆ t_current

real(preal), dimension(:,:,:), allocatable, private grid_thermal_spectral::t_current
private

◆ t_lastinc

real(preal), dimension(:,:,:), allocatable, private grid_thermal_spectral::t_lastinc
private

◆ t_staginc

real(preal), dimension(:,:,:), allocatable, private grid_thermal_spectral::t_staginc
private

field of staggered temperature

Definition at line 1825 of file grid_thermal_spectral.f90.

Referenced by grid_thermal_spectral_forward(), grid_thermal_spectral_init(), and grid_thermal_spectral_solution().

◆ thermal_snes

type(tsnes), private grid_thermal_spectral::thermal_snes
private

◆ totaliter

integer, private grid_thermal_spectral::totaliter = 0
private

total iteration in current increment

Definition at line 1832 of file grid_thermal_spectral.f90.

Referenced by grid_thermal_spectral_solution().

◆ xend

integer(kind=selected_int_kind(5)), private grid_thermal_spectral::xend
private

◆ xstart

integer(kind=selected_int_kind(5)), private grid_thermal_spectral::xstart
private

◆ yend

integer(kind=selected_int_kind(5)), private grid_thermal_spectral::yend
private

◆ ystart

integer(kind=selected_int_kind(5)), private grid_thermal_spectral::ystart
private

◆ zend

integer(kind=selected_int_kind(5)), private grid_thermal_spectral::zend
private

◆ zstart

integer(kind=selected_int_kind(5)), private grid_thermal_spectral::zstart
private