1 solver for nonlocal damage More...
Functions/Subroutines | |
subroutine, public | grid_damage_spectral_init |
allocates all neccessary fields and fills them with data More... | |
type(tsolutionstate) function, public | grid_damage_spectral_solution (timeinc, timeinc_old) |
solution for the spectral damage scheme with internal iterations More... | |
subroutine, public | grid_damage_spectral_forward (cutBack) |
spectral damage forwarding routine More... | |
subroutine, private | formresidual (in, x_scal, f_scal, dummy, ierr) |
forms the spectral damage residual vector More... | |
subroutine | updatereference |
update reference viscosity and conductivity More... | |
Variables | |
type(tsolutionparams), private | params |
type(tsnes), private | damage_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 | phi_current |
field of current damage More... | |
real(preal), dimension(:,:,:), allocatable, private | phi_lastinc |
field of previous damage More... | |
real(preal), dimension(:,:,:), allocatable, private | phi_staginc |
field of staggered damage More... | |
integer, private | totaliter = 0 |
total iteration in current increment More... | |
real(preal), dimension(3, 3), private | k_ref |
real(preal), private | mu_ref |
1 solver for nonlocal damage
|
private |
forms the spectral damage residual vector
Definition at line 2020 of file grid_damage_spectral.f90.
References damage_nonlocal::damage_nonlocal_getdiffusion(), damage_nonlocal::damage_nonlocal_getmobility(), damage_nonlocal::damage_nonlocal_getsourceanditstangent(), discretization_grid::grid, discretization_grid::grid3, k_ref, mu_ref, params, phi_current, phi_lastinc, numerics::residualstiffness, spectral_utilities::scalarfield_real, spectral_utilities::utilities_fftscalarbackward(), spectral_utilities::utilities_fftscalarforward(), spectral_utilities::utilities_fftvectorbackward(), spectral_utilities::utilities_fftvectorforward(), spectral_utilities::utilities_fouriergreenconvolution(), spectral_utilities::utilities_fourierscalargradient(), spectral_utilities::utilities_fouriervectordivergence(), and spectral_utilities::vectorfield_real.
Referenced by grid_damage_spectral_init().
subroutine, public grid_damage_spectral::grid_damage_spectral_forward | ( | logical, intent(in) | cutBack | ) |
spectral damage forwarding routine
Definition at line 1987 of file grid_damage_spectral.f90.
References damage_nonlocal::damage_nonlocal_putnonlocaldamage(), damage_snes, discretization_grid::grid, discretization_grid::grid3, phi_current, phi_lastinc, phi_staginc, solution_vec, updatereference(), xend, xstart, yend, ystart, zend, and zstart.
Referenced by damask_spectral().
subroutine, public grid_damage_spectral::grid_damage_spectral_init |
allocates all neccessary fields and fills them with data
Definition at line 1849 of file grid_damage_spectral.f90.
References damage_snes, formresidual(), discretization_grid::grid, discretization_grid::grid3, phi_current, phi_lastinc, phi_staginc, solution_vec, updatereference(), numerics::worldrank, numerics::worldsize, xend, xstart, yend, ystart, zend, and zstart.
Referenced by damask_spectral().
type(tsolutionstate) function, public grid_damage_spectral::grid_damage_spectral_solution | ( | real(preal), intent(in) | timeinc, |
real(preal), intent(in) | timeinc_old | ||
) |
solution for the spectral damage scheme with internal iterations
[in] | timeinc_old | increment in time of last increment |
timeinc | increment in time for current solution |
Definition at line 1927 of file grid_damage_spectral.f90.
References damage_nonlocal::damage_nonlocal_putnonlocaldamage(), damage_snes, numerics::err_damage_tolabs, numerics::err_damage_tolrel, discretization_grid::grid, discretization_grid::grid3, numerics::itmax, params, phi_current, phi_staginc, solution_vec, and totaliter.
Referenced by damask_spectral().
|
private |
update reference viscosity and conductivity
Definition at line 2082 of file grid_damage_spectral.f90.
References damage_nonlocal::damage_nonlocal_getdiffusion(), damage_nonlocal::damage_nonlocal_getmobility(), discretization_grid::grid, discretization_grid::grid3, k_ref, mu_ref, and spectral_utilities::wgt.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
Definition at line 1821 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), grid_damage_spectral_init(), and grid_damage_spectral_solution().
|
private |
Definition at line 1832 of file grid_damage_spectral.f90.
Referenced by formresidual(), and updatereference().
|
private |
Definition at line 1833 of file grid_damage_spectral.f90.
Referenced by formresidual(), and updatereference().
|
private |
Definition at line 1817 of file grid_damage_spectral.f90.
Referenced by formresidual(), and grid_damage_spectral_solution().
|
private |
field of current damage
Definition at line 1824 of file grid_damage_spectral.f90.
Referenced by formresidual(), grid_damage_spectral_forward(), grid_damage_spectral_init(), and grid_damage_spectral_solution().
|
private |
field of previous damage
Definition at line 1824 of file grid_damage_spectral.f90.
Referenced by formresidual(), grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
field of staggered damage
Definition at line 1824 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), grid_damage_spectral_init(), and grid_damage_spectral_solution().
|
private |
Definition at line 1822 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), grid_damage_spectral_init(), and grid_damage_spectral_solution().
|
private |
total iteration in current increment
Definition at line 1831 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_solution().
|
private |
Definition at line 1823 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
Definition at line 1823 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
Definition at line 1823 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
Definition at line 1823 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
Definition at line 1823 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().
|
private |
Definition at line 1823 of file grid_damage_spectral.f90.
Referenced by grid_damage_spectral_forward(), and grid_damage_spectral_init().