diff --git a/src/DAMASK_marc.f90 b/src/DAMASK_marc.f90 index fe01301c9..9fd41459b 100644 --- a/src/DAMASK_marc.f90 +++ b/src/DAMASK_marc.f90 @@ -43,6 +43,9 @@ module DAMASK_interface logical, protected, public :: symmetricSolver character(len=*), parameter, public :: INPUTFILEEXTENSION = '.dat' + logical, dimension(:,:), public, allocatable :: & + calcMode !< calculate or collect (ping pong scheme) + public :: & DAMASK_interface_init, & getSolverJobName @@ -102,7 +105,6 @@ function getSolverJobName() character(len=*), parameter :: pathSep = achar(47)//achar(92) ! forward and backward slash integer :: extPos - inputName='' inquire(5, name=inputName) ! determine inputfile extPos = len_trim(inputName)-4 getSolverJobName=inputName(scan(inputName,pathSep,back=.true.)+1:extPos) @@ -179,6 +181,7 @@ subroutine hypela2(d,g,e,de,s,t,dt,ngens,m,nn,kcus,matus,ndi,nshear,disp, & use FEsolving use debug use discretization_marc + use homogenization use CPFEM implicit none diff --git a/src/FEsolving.f90 b/src/FEsolving.f90 index cce95a07e..3fc1482d3 100644 --- a/src/FEsolving.f90 +++ b/src/FEsolving.f90 @@ -4,20 +4,12 @@ !> @brief global variables for flow control !-------------------------------------------------------------------------------------------------- module FEsolving - + implicit none public - logical :: & - terminallyIll = .false. !< at least one material point is terminally ill - integer, dimension(2) :: & FEsolving_execElem, & !< for ping-pong scheme always whole range, otherwise one specific element FEsolving_execIP !< for ping-pong scheme always range to max IP, otherwise one specific IP - -#if defined(Marc4DAMASK) - logical, dimension(:,:), allocatable :: & - calcMode !< do calculation or simply collect when using ping pong scheme -#endif end module FEsolving diff --git a/src/homogenization.f90 b/src/homogenization.f90 index b657dfe3e..a9b173831 100644 --- a/src/homogenization.f90 +++ b/src/homogenization.f90 @@ -29,6 +29,8 @@ module homogenization !-------------------------------------------------------------------------------------------------- ! General variables for the homogenization at a material point + logical, public :: & + terminallyIll = .false. !< at least one material point is terminally ill real(pReal), dimension(:,:,:,:), allocatable, public :: & materialpoint_F0, & !< def grad of IP at start of FE increment materialpoint_F, & !< def grad of IP to be reached at end of FE increment