only damage/thermal 'homogenization' postResults is currently needed
This commit is contained in:
parent
acc252ea5b
commit
07ebd8d1b3
|
@ -108,7 +108,6 @@ module crystallite
|
||||||
crystallite_stressTangent, &
|
crystallite_stressTangent, &
|
||||||
crystallite_orientations, &
|
crystallite_orientations, &
|
||||||
crystallite_push33ToRef, &
|
crystallite_push33ToRef, &
|
||||||
crystallite_postResults, &
|
|
||||||
crystallite_results
|
crystallite_results
|
||||||
|
|
||||||
contains
|
contains
|
||||||
|
@ -732,23 +731,6 @@ function crystallite_push33ToRef(ipc,ip,el, tensor33)
|
||||||
end function crystallite_push33ToRef
|
end function crystallite_push33ToRef
|
||||||
|
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
|
||||||
!> @brief return results of particular grain
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
|
||||||
function crystallite_postResults(ipc, ip, el)
|
|
||||||
|
|
||||||
integer, intent(in):: &
|
|
||||||
el, & !< element index
|
|
||||||
ip, & !< integration point index
|
|
||||||
ipc !< grain index
|
|
||||||
|
|
||||||
real(pReal), dimension(2) :: crystallite_postResults
|
|
||||||
|
|
||||||
crystallite_postResults = 0.0_pReal
|
|
||||||
|
|
||||||
end function crystallite_postResults
|
|
||||||
|
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief writes crystallite results to HDF5 output file
|
!> @brief writes crystallite results to HDF5 output file
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
|
|
|
@ -55,7 +55,7 @@ contains
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine damage_nonlocal_init
|
subroutine damage_nonlocal_init
|
||||||
|
|
||||||
integer :: maxNinstance,homog,instance,o,i
|
integer :: maxNinstance,homog,instance,i
|
||||||
integer :: sizeState
|
integer :: sizeState
|
||||||
integer :: NofMyHomog, h
|
integer :: NofMyHomog, h
|
||||||
integer(kind(undefined_ID)) :: &
|
integer(kind(undefined_ID)) :: &
|
||||||
|
|
|
@ -583,7 +583,7 @@ end subroutine materialpoint_stressAndItsTangent
|
||||||
|
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief parallelized calculation of result array at material points
|
!> @brief calculation of result array at material points
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine materialpoint_postResults
|
subroutine materialpoint_postResults
|
||||||
|
|
||||||
|
@ -595,7 +595,6 @@ subroutine materialpoint_postResults
|
||||||
i, & !< integration point number
|
i, & !< integration point number
|
||||||
e !< element number
|
e !< element number
|
||||||
|
|
||||||
!$OMP PARALLEL DO PRIVATE(myNgrains,thePos,theSize)
|
|
||||||
elementLooping: do e = FEsolving_execElem(1),FEsolving_execElem(2)
|
elementLooping: do e = FEsolving_execElem(1),FEsolving_execElem(2)
|
||||||
myNgrains = homogenization_Ngrains(material_homogenizationAt(e))
|
myNgrains = homogenization_Ngrains(material_homogenizationAt(e))
|
||||||
IpLooping: do i = FEsolving_execIP(1,e),FEsolving_execIP(2,e)
|
IpLooping: do i = FEsolving_execIP(1,e),FEsolving_execIP(2,e)
|
||||||
|
@ -615,15 +614,12 @@ subroutine materialpoint_postResults
|
||||||
thePos = thePos + 1
|
thePos = thePos + 1
|
||||||
|
|
||||||
grainLooping :do g = 1,myNgrains
|
grainLooping :do g = 1,myNgrains
|
||||||
theSize = 1 + &
|
theSize = 2
|
||||||
1 + &
|
materialpoint_results(thePos+1:thePos+theSize,i,e) = 0.0_pReal
|
||||||
sum(sourceState(material_phaseAt(g,e))%p(:)%sizePostResults)
|
|
||||||
materialpoint_results(thePos+1:thePos+theSize,i,e) = crystallite_postResults(g,i,e) ! tell crystallite results
|
|
||||||
thePos = thePos + theSize
|
thePos = thePos + theSize
|
||||||
enddo grainLooping
|
enddo grainLooping
|
||||||
enddo IpLooping
|
enddo IpLooping
|
||||||
enddo elementLooping
|
enddo elementLooping
|
||||||
!$OMP END PARALLEL DO
|
|
||||||
|
|
||||||
end subroutine materialpoint_postResults
|
end subroutine materialpoint_postResults
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue