2019-06-06 17:29:16 +05:30
|
|
|
!--------------------------------------------------------------------------------------------------
|
|
|
|
!> @brief spatial discretization
|
|
|
|
!--------------------------------------------------------------------------------------------------
|
|
|
|
module discretization
|
|
|
|
|
|
|
|
use, intrinsic :: iso_c_binding
|
|
|
|
use prec
|
|
|
|
use results
|
|
|
|
|
|
|
|
implicit none
|
|
|
|
private
|
|
|
|
|
|
|
|
integer, public, protected :: &
|
|
|
|
discretization_nElem, &
|
|
|
|
discretization_nIP
|
|
|
|
|
|
|
|
real(pReal), dimension(:,:), allocatable :: &
|
|
|
|
discretization_Centers_disp, &
|
|
|
|
discretization_Nodes_disp
|
|
|
|
|
|
|
|
public :: &
|
|
|
|
discretization_init, &
|
|
|
|
discretization_results
|
|
|
|
|
|
|
|
contains
|
|
|
|
|
|
|
|
|
|
|
|
subroutine discretization_init(nElem,nIP,nNodes)
|
|
|
|
|
|
|
|
integer, intent(in) :: &
|
|
|
|
nElem, &
|
|
|
|
nIP, &
|
|
|
|
nNodes
|
|
|
|
|
|
|
|
write(6,'(/,a)') ' <<<+- discretization init -+>>>'
|
|
|
|
|
|
|
|
discretization_nElem = nElem
|
|
|
|
discretization_nIP = nIP
|
|
|
|
|
|
|
|
allocate(discretization_Centers_disp(3,nIP),source = 0.0_pReal)
|
|
|
|
allocate(discretization_Nodes_disp( 3,nNodes),source = 0.0_pReal)
|
|
|
|
|
|
|
|
end subroutine discretization_init
|
|
|
|
|
|
|
|
|
|
|
|
subroutine discretization_results
|
|
|
|
|
2019-06-06 17:35:04 +05:30
|
|
|
call results_writeDataset('current',discretization_Nodes_disp,'U', 'nodal displacements','m')
|
|
|
|
call results_writeDataset('current',discretization_Centers_disp,'u','IP displacements','m')
|
2019-06-06 17:29:16 +05:30
|
|
|
|
|
|
|
end subroutine discretization_results
|
|
|
|
|
|
|
|
end module discretization
|