separating functionality (stub only)
- mesh (initialization depends on type of solver) only provides information about number of elements, IPs and writes out displacements - new module (will get setter functions for solver specific initialization) will provide information that is only used by the nonlocal model
This commit is contained in:
parent
3be5c6a5bc
commit
4bce087d3d
|
@ -28,6 +28,7 @@
|
||||||
#endif
|
#endif
|
||||||
#include "material.f90"
|
#include "material.f90"
|
||||||
#include "lattice.f90"
|
#include "lattice.f90"
|
||||||
|
#include "geometry_plastic_nonlocal.f90"
|
||||||
#include "source_thermal_dissipation.f90"
|
#include "source_thermal_dissipation.f90"
|
||||||
#include "source_thermal_externalheat.f90"
|
#include "source_thermal_externalheat.f90"
|
||||||
#include "source_damage_isoBrittle.f90"
|
#include "source_damage_isoBrittle.f90"
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
!--------------------------------------------------------------------------------------------------
|
||||||
|
!> @author Philip Eisenlohr, Max-Planck-Institut für Eisenforschung GmbH
|
||||||
|
!> @author Christoph Koords, Max-Planck-Institut für Eisenforschung GmbH
|
||||||
|
!> @author Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH
|
||||||
|
!> @brief Geometric information about the IP cells needed for the nonlocal
|
||||||
|
! plasticity model
|
||||||
|
!--------------------------------------------------------------------------------------------------
|
||||||
|
module geometry_plastic_nonlocal
|
||||||
|
use prec
|
||||||
|
|
||||||
|
implicit none
|
||||||
|
private
|
||||||
|
logical, dimension(3), public, parameter :: &
|
||||||
|
geometry_plastic_nonlocal_periodicSurface = .true. !< flag indicating periodic outer surfaces (used for fluxes) NEEDED?
|
||||||
|
|
||||||
|
integer, dimension(:,:,:,:), allocatable, public, protected :: &
|
||||||
|
geometry_plastic_nonlocal_IPneighborhood !< 6 or less neighboring IPs as [element_num, IP_index, neighbor_index that points to me]
|
||||||
|
|
||||||
|
real(pReal), dimension(:,:), allocatable, public, protected :: &
|
||||||
|
geometry_plastic_nonlocal_IPvolume !< volume associated with IP (initially!)
|
||||||
|
|
||||||
|
real(pReal), dimension(:,:,:), allocatable, public, protected :: &
|
||||||
|
geometry_plastic_nonlocal_IParea !< area of interface to neighboring IP (initially!)
|
||||||
|
|
||||||
|
real(pReal),dimension(:,:,:,:), allocatable, public, protected :: &
|
||||||
|
geometry_plastic_nonlocal_IPareaNormal !< area normal of interface to neighboring IP (initially!)
|
||||||
|
|
||||||
|
end module geometry_plastic_nonlocal
|
|
@ -5,10 +5,15 @@
|
||||||
!> @brief material subroutine for plasticity including dislocation flux
|
!> @brief material subroutine for plasticity including dislocation flux
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
module plastic_nonlocal
|
module plastic_nonlocal
|
||||||
use prec, only: &
|
use prec
|
||||||
pReal
|
|
||||||
use future
|
use future
|
||||||
|
use geometry_plastic_nonlocal, only: &
|
||||||
|
periodicSurface => geometry_plastic_nonlocal_periodicSurface, &
|
||||||
|
IPneighborhood => geometry_plastic_nonlocal_IPneighborhood, &
|
||||||
|
IPvolume => geometry_plastic_nonlocal_IPvolume, &
|
||||||
|
IParea => geometry_plastic_nonlocal_IParea, &
|
||||||
|
IPareaNormal => geometry_plastic_nonlocal_IPareaNormal
|
||||||
|
|
||||||
implicit none
|
implicit none
|
||||||
private
|
private
|
||||||
real(pReal), parameter, private :: &
|
real(pReal), parameter, private :: &
|
||||||
|
|
Loading…
Reference in New Issue