From f93336b07262730d8d369c477908848a1426d983 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sun, 20 Oct 2019 13:21:51 +0200 Subject: [PATCH] postResults for isotropic not needed anymore --- PRIVATE | 2 +- src/constitutive.f90 | 7 ++--- src/crystallite.f90 | 1 - src/plastic_isotropic.f90 | 63 +-------------------------------------- 4 files changed, 4 insertions(+), 69 deletions(-) diff --git a/PRIVATE b/PRIVATE index 9086affb8..a0caa709e 160000 --- a/PRIVATE +++ b/PRIVATE @@ -1 +1 @@ -Subproject commit 9086affb82ef5b6f9b5a097c28177db0b515218e +Subproject commit a0caa709eb9289374c36e50dc27746ac0031dedb diff --git a/src/constitutive.f90 b/src/constitutive.f90 index cc9bb2e99..464a85858 100644 --- a/src/constitutive.f90 +++ b/src/constitutive.f90 @@ -120,8 +120,8 @@ subroutine constitutive_init thisSize => null() case (PLASTICITY_ISOTROPIC_ID) plasticityType outputName = PLASTICITY_ISOTROPIC_label - thisOutput => plastic_isotropic_output - thisSize => plastic_isotropic_sizePostResult + thisOutput => null() + thisSize => null() case (PLASTICITY_PHENOPOWERLAW_ID) plasticityType outputName = PLASTICITY_PHENOPOWERLAW_label thisOutput => plastic_phenopowerlaw_output @@ -736,9 +736,6 @@ function constitutive_postResults(S, Fi, ipc, ip, el) instance = phase_plasticityInstance(material_phaseAt(ipc,el)) plasticityType: select case (phase_plasticity(material_phaseAt(ipc,el))) - case (PLASTICITY_ISOTROPIC_ID) plasticityType - constitutive_postResults(startPos:endPos) = & - plastic_isotropic_postResults(Mp,instance,of) case (PLASTICITY_PHENOPOWERLAW_ID) plasticityType constitutive_postResults(startPos:endPos) = & diff --git a/src/crystallite.f90 b/src/crystallite.f90 index cbd9fe305..8cc30db28 100644 --- a/src/crystallite.f90 +++ b/src/crystallite.f90 @@ -879,7 +879,6 @@ function crystallite_postResults(ipc, ip, el) crystID, & mySize, & n - type(rotation) :: rot crystID = microstructure_crystallite(discretization_microstructureAt(el)) diff --git a/src/plastic_isotropic.f90 b/src/plastic_isotropic.f90 index 18b6f8e86..9beb2262b 100644 --- a/src/plastic_isotropic.f90 +++ b/src/plastic_isotropic.f90 @@ -20,11 +20,6 @@ module plastic_isotropic implicit none private - integer, dimension(:,:), allocatable, target, public :: & - plastic_isotropic_sizePostResult !< size of each post result output - character(len=64), dimension(:,:), allocatable, target, public :: & - plastic_isotropic_output !< name of each post result output - enum, bind(c) enumerator :: & undefined_ID, & @@ -74,7 +69,6 @@ module plastic_isotropic plastic_isotropic_LpAndItsTangent, & plastic_isotropic_LiAndItsTangent, & plastic_isotropic_dotState, & - plastic_isotropic_postResults, & plastic_isotropic_results contains @@ -110,10 +104,6 @@ subroutine plastic_isotropic_init if (iand(debug_level(debug_constitutive),debug_levelBasic) /= 0) & write(6,'(a16,1x,i5,/)') '# instances:',Ninstance - allocate(plastic_isotropic_sizePostResult(maxval(phase_Noutput),Ninstance),source=0) - allocate(plastic_isotropic_output(maxval(phase_Noutput),Ninstance)) - plastic_isotropic_output = '' - allocate(param(Ninstance)) allocate(state(Ninstance)) allocate(dotState(Ninstance)) @@ -151,7 +141,7 @@ subroutine plastic_isotropic_init ! sanity checks extmsg = '' if (prm%aTol_gamma <= 0.0_pReal) extmsg = trim(extmsg)//' aTol_gamma' - if (prm%xi_0 < 0.0_pReal) extmsg = trim(extmsg)//' xi_0' + if (prm%xi_0 < 0.0_pReal) extmsg = trim(extmsg)//' xi_0' if (prm%dot_gamma_0 <= 0.0_pReal) extmsg = trim(extmsg)//' dot_gamma_0' if (prm%n <= 0.0_pReal) extmsg = trim(extmsg)//' n' if (prm%a <= 0.0_pReal) extmsg = trim(extmsg)//' a' @@ -180,8 +170,6 @@ subroutine plastic_isotropic_init end select if (outputID /= undefined_ID) then - plastic_isotropic_output(i,phase_plasticityInstance(p)) = outputs(i) - plastic_isotropic_sizePostResult(i,phase_plasticityInstance(p)) = 1 prm%outputID = [prm%outputID, outputID] endif @@ -195,7 +183,6 @@ subroutine plastic_isotropic_init call material_allocatePlasticState(p,NipcMyPhase,sizeState,sizeDotState,0, & 1,0,0) - plasticState(p)%sizePostResults = sum(plastic_isotropic_sizePostResult(:,phase_plasticityInstance(p))) !-------------------------------------------------------------------------------------------------- ! locally defined state aliases and initialization of state0 and aTolState @@ -382,54 +369,6 @@ subroutine plastic_isotropic_dotState(Mp,instance,of) end subroutine plastic_isotropic_dotState -!-------------------------------------------------------------------------------------------------- -!> @brief return array of constitutive results -!-------------------------------------------------------------------------------------------------- -function plastic_isotropic_postResults(Mp,instance,of) result(postResults) - - real(pReal), dimension(3,3), intent(in) :: & - Mp !< Mandel stress - integer, intent(in) :: & - instance, & - of - - real(pReal), dimension(sum(plastic_isotropic_sizePostResult(:,instance))) :: & - postResults - - real(pReal) :: & - norm_Mp !< norm of the Mandel stress - integer :: & - o,c - - associate(prm => param(instance), stt => state(instance)) - - if (prm%dilatation) then - norm_Mp = sqrt(math_mul33xx33(Mp,Mp)) - else - norm_Mp = sqrt(math_mul33xx33(math_deviatoric33(Mp),math_deviatoric33(Mp))) - endif - - c = 0 - - outputsLoop: do o = 1,size(prm%outputID) - select case(prm%outputID(o)) - - case (xi_ID) - postResults(c+1) = stt%xi(of) - c = c + 1 - case (dot_gamma_ID) - postResults(c+1) = prm%dot_gamma_0 & - * (sqrt(1.5_pReal) * norm_Mp /(prm%M * stt%xi(of)))**prm%n - c = c + 1 - - end select - enddo outputsLoop - - end associate - -end function plastic_isotropic_postResults - - !-------------------------------------------------------------------------------------------------- !> @brief writes results to HDF5 output file !--------------------------------------------------------------------------------------------------