71 lines
2.3 KiB
Fortran
71 lines
2.3 KiB
Fortran
!--------------------------------------------------------------------------------------------------
|
|
!> @author Franz Roters, Max-Planck-Institut für Eisenforschung GmbH
|
|
!> @author Philip Eisenlohr, Max-Planck-Institut für Eisenforschung GmbH
|
|
!> @author Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH
|
|
!> @brief dummy homogenization homogenization scheme for 1 constituent per material point
|
|
!--------------------------------------------------------------------------------------------------
|
|
module homogenization_none
|
|
|
|
implicit none
|
|
private
|
|
|
|
public :: &
|
|
homogenization_none_init
|
|
|
|
contains
|
|
|
|
!--------------------------------------------------------------------------------------------------
|
|
!> @brief allocates all neccessary fields, reads information from material configuration file
|
|
!--------------------------------------------------------------------------------------------------
|
|
subroutine homogenization_none_init()
|
|
#if defined(__GFORTRAN__) || __INTEL_COMPILER >= 1800
|
|
use, intrinsic :: iso_fortran_env, only: &
|
|
compiler_version, &
|
|
compiler_options
|
|
#endif
|
|
use prec, only: &
|
|
pInt
|
|
use debug, only: &
|
|
debug_HOMOGENIZATION, &
|
|
debug_level, &
|
|
debug_levelBasic
|
|
use IO, only: &
|
|
IO_timeStamp
|
|
|
|
use material, only: &
|
|
homogenization_type, &
|
|
material_homog, &
|
|
homogState, &
|
|
HOMOGENIZATION_NONE_LABEL, &
|
|
HOMOGENIZATION_NONE_ID
|
|
|
|
implicit none
|
|
integer(pInt) :: &
|
|
Ninstance, &
|
|
h, &
|
|
NofMyHomog
|
|
|
|
write(6,'(/,a)') ' <<<+- homogenization_'//HOMOGENIZATION_NONE_label//' init -+>>>'
|
|
write(6,'(a15,a)') ' Current time: ',IO_timeStamp()
|
|
#include "compilation_info.f90"
|
|
|
|
Ninstance = int(count(homogenization_type == HOMOGENIZATION_NONE_ID),pInt)
|
|
if (iand(debug_level(debug_HOMOGENIZATION),debug_levelBasic) /= 0_pInt) &
|
|
write(6,'(a16,1x,i5,/)') '# instances:',Ninstance
|
|
|
|
do h = 1_pInt, size(homogenization_type)
|
|
if (homogenization_type(h) /= HOMOGENIZATION_NONE_ID) cycle
|
|
|
|
NofMyHomog = count(material_homog == h)
|
|
homogState(h)%sizeState = 0_pInt
|
|
homogState(h)%sizePostResults = 0_pInt
|
|
allocate(homogState(h)%state0 (0_pInt,NofMyHomog))
|
|
allocate(homogState(h)%subState0(0_pInt,NofMyHomog))
|
|
allocate(homogState(h)%state (0_pInt,NofMyHomog))
|
|
|
|
enddo
|
|
|
|
end subroutine homogenization_none_init
|
|
|
|
end module homogenization_none
|