condensed error reporting for constitutive_XYZ_init

removed erroneous check for structure>3
This commit is contained in:
Philip Eisenlohr 2012-07-17 17:36:24 +00:00
parent 2e271fbe56
commit 7c6fc121fd
7 changed files with 188 additions and 162 deletions

View File

@ -1263,45 +1263,13 @@ subroutine IO_error(error_ID,e,i,g,ext_msg)
case (205_pInt)
msg = 'unknown lattice structure encountered'
case (208_pInt)
msg = 'unknown material parameter for no plasticity phase:'
case (210_pInt)
msg = 'unknown material parameter for j2 plasticity phase:'
msg = 'unknown material parameter:'
case (211_pInt)
msg = 'material parameter for j2 plasticity phase out of bounds:'
msg = 'material parameter out of bounds:'
case (212_pInt)
msg = 'unknown plasticity output for j2 plasticity:'
msg = 'unknown plasticity output:'
case (220_pInt)
msg = 'unknown material parameter for phenopowerlaw plasticity phase:'
case (221_pInt)
msg = 'material parameter for phenopowerlaw plasticity phase out of bounds:'
case (222_pInt)
msg = 'unknown plasticity output for phenopowerlaw plasticity:'
case (230_pInt)
msg = 'unknown material parameter for titanmod plasticity phase:'
case (231_pInt)
msg = 'material parameter for titanmod plasticity phase out of bounds:'
case (232_pInt)
msg = 'unknown plasticity output for titanmod plasticity:'
case (240_pInt)
msg = 'unknown material parameter for dislotwin plasticity phase:'
case (241_pInt)
msg = 'material parameter for dislotwin plasticity phase out of bounds:'
case (242_pInt)
msg = 'unknown plasticity output for dislotwin plasticity:'
case (243_pInt)
msg = 'zero stacking fault energy'
case (250_pInt)
msg = 'unknown material parameter for nonlocal plasticity phase:'
case (251_pInt)
msg = 'material parameter for nonlocal plasticity phase out of bounds:'
case (252_pInt)
msg = 'unknown plasticity output for nonlocal plasticity:'
case (253_pInt)
msg = 'element type not supported for nonlocal plasticity'

View File

@ -407,7 +407,7 @@ do ! read thru sections of
case ('qedgepersbsystem')
constitutive_dislotwin_sbQedge(i) = IO_floatValue(line,positions,2_pInt)
case default
call IO_error(240_pInt,ext_msg=tag)
call IO_error(210_pInt,ext_msg=tag//' ('//constitutive_dislotwin_label//')')
end select
endif
enddo
@ -418,31 +418,46 @@ enddo
myStructure = constitutive_dislotwin_structure(i)
!* Sanity checks
if (myStructure < 1_pInt .or. myStructure > 3_pInt) call IO_error(205_pInt,e=i)
if (sum(constitutive_dislotwin_Nslip(:,i)) <= 0_pInt) call IO_error(241_pInt,e=i,ext_msg='nslip')
if (sum(constitutive_dislotwin_Ntwin(:,i)) < 0_pInt) call IO_error(241_pInt,e=i,ext_msg='ntwin')
if (myStructure < 1_pInt) call IO_error(205_pInt,e=i)
if (sum(constitutive_dislotwin_Nslip(:,i)) < 0_pInt) call IO_error(211_pInt,e=i,ext_msg='Nslip (' &
//constitutive_dislotwin_label//')')
if (sum(constitutive_dislotwin_Ntwin(:,i)) < 0_pInt) call IO_error(211_pInt,e=i,ext_msg='Ntwin (' &
//constitutive_dislotwin_label//')')
do f = 1_pInt,lattice_maxNslipFamily
if (constitutive_dislotwin_Nslip(f,i) > 0_pInt) then
if (constitutive_dislotwin_rhoEdge0(f,i) < 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='rhoEdge0')
if (constitutive_dislotwin_rhoEdgeDip0(f,i) < 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='rhoEdgeDip0')
if (constitutive_dislotwin_burgersPerSlipFamily(f,i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='slipburgers')
if (constitutive_dislotwin_v0PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='v0')
if (constitutive_dislotwin_rhoEdge0(f,i) < 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='rhoEdge0 (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_rhoEdgeDip0(f,i) < 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='rhoEdgeDip0 (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_burgersPerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='slipBurgers (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_v0PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='v0 (' &
//constitutive_dislotwin_label//')')
endif
enddo
do f = 1_pInt,lattice_maxNtwinFamily
if (constitutive_dislotwin_Ntwin(f,i) > 0_pInt) then
if (constitutive_dislotwin_burgersPerTwinFamily(f,i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='twinburgers')
if (constitutive_dislotwin_Ndot0PerTwinFamily(f,i) < 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='ndot0')
if (constitutive_dislotwin_burgersPerTwinFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='twinburgers (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_Ndot0PerTwinFamily(f,i) < 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='ndot0 (' &
//constitutive_dislotwin_label//')')
endif
enddo
if (constitutive_dislotwin_CAtomicVolume(i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='cAtomicVolume')
if (constitutive_dislotwin_D0(i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='D0')
if (constitutive_dislotwin_Qsd(i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='Qsd')
if (constitutive_dislotwin_aTolRho(i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='aTolRho')
if (constitutive_dislotwin_sbResistance(i) <= 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='sbResistance')
if (constitutive_dislotwin_sbVelocity(i) < 0.0_pReal) call IO_error(241_pInt,e=i,ext_msg='sbVelocity')
if (constitutive_dislotwin_CAtomicVolume(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='cAtomicVolume (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_D0(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='D0 (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_Qsd(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='Qsd (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_aTolRho(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='aTolRho (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_sbResistance(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='sbResistance (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_sbVelocity(i) < 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='sbVelocity (' &
//constitutive_dislotwin_label//')')
if (constitutive_dislotwin_SFE_0K(i) == 0.0_pReal .AND. &
constitutive_dislotwin_dSFE_dT(i) == 0.0_pReal) call IO_error(243_pInt,e=i)
constitutive_dislotwin_dSFE_dT(i) == 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='SFE (' &
//constitutive_dislotwin_label//')')
!* Determine total number of active slip or twin systems
constitutive_dislotwin_Nslip(:,i) = min(lattice_NslipSystem(:,myStructure),constitutive_dislotwin_Nslip(:,i))
@ -554,7 +569,7 @@ do i = 1_pInt,maxNinstance
case('sb_eigenvectors')
mySize = 9_pInt
case default
call IO_error(242_pInt,ext_msg=constitutive_dislotwin_output(o,i))
call IO_error(212_pInt,ext_msg=constitutive_dislotwin_output(o,i)//' ('//constitutive_dislotwin_label//')')
end select
if (mySize > 0_pInt) then ! any meaningful output found

View File

@ -127,7 +127,7 @@ subroutine constitutive_j2_init(myFile)
integer(pInt), parameter :: maxNchunks = 7_pInt
integer(pInt), dimension(1_pInt+2_pInt*maxNchunks) :: positions
integer(pInt) :: section = 0_pInt, maxNinstance, i,j,k, mySize
integer(pInt) :: section = 0_pInt, maxNinstance, i,j,k,o, mySize
character(len=64) :: tag
character(len=1024) :: line
@ -248,30 +248,37 @@ subroutine constitutive_j2_init(myFile)
case ('atol_resistance')
constitutive_j2_aTolResistance(i) = IO_floatValue(line,positions,2_pInt)
case default
call IO_error(210_pInt,ext_msg=tag)
call IO_error(210_pInt,ext_msg=tag//' ('//constitutive_j2_label//')')
end select
endif
enddo
100 do i = 1_pInt,maxNinstance ! sanity checks
if (constitutive_j2_tau0(i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='tau0')
if (constitutive_j2_gdot0(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='gdot0')
if (constitutive_j2_n(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='n')
if (constitutive_j2_tausat(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='tausat')
if (constitutive_j2_a(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='a')
if (constitutive_j2_fTaylor(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='taylorfactor')
if (constitutive_j2_aTolResistance(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='aTol_resistance')
if (constitutive_j2_tau0(i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='tau0 (' &
//constitutive_j2_label//')')
if (constitutive_j2_gdot0(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='gdot0 (' &
//constitutive_j2_label//')')
if (constitutive_j2_n(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='n (' &
//constitutive_j2_label//')')
if (constitutive_j2_tausat(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='tausat (' &
//constitutive_j2_label//')')
if (constitutive_j2_a(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='a (' &
//constitutive_j2_label//')')
if (constitutive_j2_fTaylor(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='taylorfactor (' &
//constitutive_j2_label//')')
if (constitutive_j2_aTolResistance(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='aTol_resistance (' &
//constitutive_j2_label//')')
enddo
do i = 1_pInt,maxNinstance
do j = 1_pInt,constitutive_j2_Noutput(i)
select case(constitutive_j2_output(j,i))
do o = 1_pInt,constitutive_j2_Noutput(i)
select case(constitutive_j2_output(o,i))
case('flowstress')
mySize = 1_pInt
case('strainrate')
mySize = 1_pInt
case default
call IO_error(212_pInt,ext_msg=constitutive_j2_output(j,i))
call IO_error(212_pInt,ext_msg=constitutive_j2_output(o,i)//' ('//constitutive_j2_label//')')
end select
if (mySize > 0_pInt) then ! any meaningful output found

View File

@ -189,7 +189,7 @@ subroutine constitutive_none_init(myFile)
case ('c44')
constitutive_none_C44(i) = IO_floatValue(line,positions,2_pInt)
case default
call IO_error(208_pInt,ext_msg=tag)
call IO_error(210_pInt,ext_msg=tag//' ('//constitutive_none_label//')')
end select
endif
enddo
@ -197,35 +197,11 @@ subroutine constitutive_none_init(myFile)
100 do i = 1_pInt,maxNinstance ! sanity checks
constitutive_none_structure(i) = lattice_initializeStructure(constitutive_none_structureName(i), & ! get structure
constitutive_none_CoverA(i))
if (constitutive_none_structure(i) < 1 ) call IO_error(205_pInt,e=i)
! if (constitutive_j2_tau0(i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='tau0')
! if (constitutive_j2_gdot0(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='gdot0')
! if (constitutive_j2_n(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='n')
! if (constitutive_j2_tausat(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='tausat')
! if (constitutive_j2_a(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='a')
! if (constitutive_j2_fTaylor(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='taylorfactor')
! if (constitutive_j2_aTolResistance(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='aTol_resistance')
myStructure = constitutive_none_structure(i)
if (myStructure < 1_pInt) call IO_error(205_pInt,e=i)
enddo
do i = 1_pInt,maxNinstance
! do j = 1_pInt,constitutive_j2_Noutput(i)
! select case(constitutive_j2_output(j,i))
! case('flowstress')
! mySize = 1_pInt
! case('strainrate')
! mySize = 1_pInt
! case default
! call IO_error(212_pInt,ext_msg=constitutive_j2_output(j,i))
! end select
!
! if (mySize > 0_pInt) then ! any meaningful output found
! constitutive_j2_sizePostResult(j,i) = mySize
! constitutive_j2_sizePostResults(i) = &
! constitutive_j2_sizePostResults(i) + mySize
! endif
! enddo
! constitutive_none_sizePostResults(i) = 0_pInt
constitutive_none_sizeDotState(i) = 1_pInt
constitutive_none_sizeState(i) = 1_pInt

View File

@ -497,7 +497,7 @@ do
case('shortrangestresscorrection')
constitutive_nonlocal_shortRangeStressCorrection(i) = IO_floatValue(line,positions,2_pInt) > 0.0_pReal
case default
call IO_error(250_pInt,ext_msg=tag)
call IO_error(210_pInt,ext_msg=tag//' ('//constitutive_nonlocal_label//')')
end select
endif
enddo
@ -512,47 +512,79 @@ enddo
!*** sanity checks
if (myStructure < 1_pInt .or. myStructure > 3_pInt) call IO_error(205_pInt)
if (sum(constitutive_nonlocal_Nslip(:,i)) <= 0_pInt) call IO_error(251_pInt,ext_msg='Nslip')
if (myStructure < 1_pInt) call IO_error(205_pInt,e=i)
if (sum(constitutive_nonlocal_Nslip(:,i)) <= 0_pInt) call IO_error(211_pInt,ext_msg='Nslip (' &
//constitutive_nonlocal_label//')')
do o = 1_pInt,maxval(phase_Noutput)
if(len(constitutive_nonlocal_output(o,i)) > 64_pInt) call IO_error(666_pInt)
enddo
do f = 1_pInt,lattice_maxNslipFamily
if (constitutive_nonlocal_Nslip(f,i) > 0_pInt) then
if (constitutive_nonlocal_rhoSglEdgePos0(f,i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoSglEdgePos0')
if (constitutive_nonlocal_rhoSglEdgeNeg0(f,i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoSglEdgeNeg0')
if (constitutive_nonlocal_rhoSglScrewPos0(f,i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoSglScrewPos0')
if (constitutive_nonlocal_rhoSglScrewNeg0(f,i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoSglScrewNeg0')
if (constitutive_nonlocal_rhoDipEdge0(f,i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoDipEdge0')
if (constitutive_nonlocal_rhoDipScrew0(f,i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoDipScrew0')
if (constitutive_nonlocal_burgersPerSlipFamily(f,i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='burgers')
if (constitutive_nonlocal_lambda0PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='lambda0')
if (constitutive_nonlocal_rhoSglEdgePos0(f,i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoSglEdgePos0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_rhoSglEdgeNeg0(f,i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoSglEdgeNeg0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_rhoSglScrewPos0(f,i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoSglScrewPos0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_rhoSglScrewNeg0(f,i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoSglScrewNeg0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_rhoDipEdge0(f,i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoDipEdge0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_rhoDipScrew0(f,i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoDipScrew0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_burgersPerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='Burgers (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_lambda0PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='lambda0 (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_minimumDipoleHeightPerSlipFamily(f,1,i) < 0.0_pReal) &
call IO_error(251_pInt,ext_msg='minimumDipoleHeightEdge')
call IO_error(211_pInt,ext_msg='minimumDipoleHeightEdge (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_minimumDipoleHeightPerSlipFamily(f,2,i) < 0.0_pReal) &
call IO_error(251_pInt,ext_msg='minimumDipoleHeightScrew')
if (constitutive_nonlocal_peierlsStressPerSlipFamily(f,1,i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='peierlsStressEdge')
if (constitutive_nonlocal_peierlsStressPerSlipFamily(f,2,i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='peierlsStressScrew')
call IO_error(211_pInt,ext_msg='minimumDipoleHeightScrew (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_peierlsStressPerSlipFamily(f,1,i) <= 0.0_pReal) &
call IO_error(211_pInt,ext_msg='peierlsStressEdge (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_peierlsStressPerSlipFamily(f,2,i) <= 0.0_pReal) &
call IO_error(211_pInt,ext_msg='peierlsStressScrew (' &
//constitutive_nonlocal_label//')')
endif
enddo
if (any(constitutive_nonlocal_interactionSlipSlip(1:maxval(lattice_interactionSlipSlip(:,:,myStructure)),i) < 0.0_pReal)) &
call IO_error(251_pInt,ext_msg='interaction_SlipSlip')
if (constitutive_nonlocal_R(i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='r')
if (constitutive_nonlocal_atomicVolume(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='atomicVolume')
if (constitutive_nonlocal_Dsd0(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='selfDiffusionPrefactor')
if (constitutive_nonlocal_Qsd(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='selfDiffusionEnergy')
if (constitutive_nonlocal_aTolRho(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='aTol_rho')
if (constitutive_nonlocal_doublekinkwidth(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='doublekinkwidth')
if (constitutive_nonlocal_solidSolutionEnergy(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='solidSolutionEnergy')
if (constitutive_nonlocal_solidSolutionSize(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='solidSolutionSize')
if (constitutive_nonlocal_solidSolutionConcentration(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='solidSolutionConcentration')
if (constitutive_nonlocal_p(i) <= 0.0_pReal .or. constitutive_nonlocal_p(i) > 1.0_pReal) call IO_error(251_pInt,ext_msg='p')
if (constitutive_nonlocal_q(i) < 1.0_pReal .or. constitutive_nonlocal_q(i) > 2.0_pReal) call IO_error(251_pInt,ext_msg='q')
if (constitutive_nonlocal_viscosity(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='viscosity')
if (constitutive_nonlocal_fattack(i) <= 0.0_pReal) call IO_error(251_pInt,ext_msg='attackFrequency')
if (constitutive_nonlocal_rhoSglScatter(i) < 0.0_pReal) call IO_error(251_pInt,ext_msg='rhoSglScatter')
call IO_error(211_pInt,ext_msg='interaction_SlipSlip (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_R(i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='r (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_atomicVolume(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='atomicVolume (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_Dsd0(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='selfDiffusionPrefactor (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_Qsd(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='selfDiffusionEnergy (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_aTolRho(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='aTol_rho (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_doublekinkwidth(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='doublekinkwidth (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_solidSolutionEnergy(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='solidSolutionEnergy (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_solidSolutionSize(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='solidSolutionSize (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_solidSolutionConcentration(i) <= 0.0_pReal) &
call IO_error(211_pInt,ext_msg='solidSolutionConcentration (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_p(i) <= 0.0_pReal .or. constitutive_nonlocal_p(i) > 1.0_pReal) call IO_error(211_pInt,ext_msg='p (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_q(i) < 1.0_pReal .or. constitutive_nonlocal_q(i) > 2.0_pReal) call IO_error(211_pInt,ext_msg='q (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_viscosity(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='viscosity (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_fattack(i) <= 0.0_pReal) call IO_error(211_pInt,ext_msg='attackFrequency (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_rhoSglScatter(i) < 0.0_pReal) call IO_error(211_pInt,ext_msg='rhoSglScatter (' &
//constitutive_nonlocal_label//')')
if (constitutive_nonlocal_surfaceTransmissivity(i) < 0.0_pReal &
.or. constitutive_nonlocal_surfaceTransmissivity(i) > 1.0_pReal) call IO_error(251_pInt,ext_msg='surfaceTransmissivity')
.or. constitutive_nonlocal_surfaceTransmissivity(i) > 1.0_pReal) call IO_error(211_pInt,ext_msg='surfaceTransmissivity (' &
//constitutive_nonlocal_label//')')
!*** determine total number of active slip systems
@ -705,7 +737,7 @@ do i = 1,maxNinstance
case('dislocationstress')
mySize = 6_pInt
case default
call IO_error(252_pInt,ext_msg=constitutive_nonlocal_output(o,i))
call IO_error(212_pInt,ext_msg=constitutive_nonlocal_output(o,i)//' ('//constitutive_nonlocal_label//')')
end select
if (mySize > 0_pInt) then ! any meaningful output found

View File

@ -385,7 +385,7 @@ subroutine constitutive_phenopowerlaw_init(myFile)
forall (j = 1_pInt:lattice_maxNinteraction) &
constitutive_phenopowerlaw_interaction_twintwin(j,i) = IO_floatValue(line,positions,1_pInt+j)
case default
call IO_error(220_pInt,ext_msg=tag)
call IO_error(210_pInt,ext_msg=tag//' ('//constitutive_phenopowerlaw_label//')')
end select
endif
enddo
@ -405,19 +405,27 @@ subroutine constitutive_phenopowerlaw_init(myFile)
if (constitutive_phenopowerlaw_structure(i) < 1 ) call IO_error(205_pInt,e=i)
if (any(constitutive_phenopowerlaw_tau0_slip(:,i) < 0.0_pReal .and. &
constitutive_phenopowerlaw_Nslip(:,i) > 0)) call IO_error(221_pInt,e=i,ext_msg='tau0_slip')
if (constitutive_phenopowerlaw_gdot0_slip(i) <= 0.0_pReal) call IO_error(221_pInt,e=i,ext_msg='gdot0_slip')
if (constitutive_phenopowerlaw_n_slip(i) <= 0.0_pReal) call IO_error(221_pInt,e=i,ext_msg='n_slip')
constitutive_phenopowerlaw_Nslip(:,i) > 0)) call IO_error(211_pInt,e=i,ext_msg='tau0_slip (' &
//constitutive_phenopowerlaw_label//')')
if (constitutive_phenopowerlaw_gdot0_slip(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='gdot0_slip (' &
//constitutive_phenopowerlaw_label//')')
if (constitutive_phenopowerlaw_n_slip(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='n_slip (' &
//constitutive_phenopowerlaw_label//')')
if (any(constitutive_phenopowerlaw_tausat_slip(:,i) <= 0.0_pReal .and. &
constitutive_phenopowerlaw_Nslip(:,i) > 0)) call IO_error(221_pInt,e=i,ext_msg='tausat_slip')
constitutive_phenopowerlaw_Nslip(:,i) > 0)) call IO_error(211_pInt,e=i,ext_msg='tausat_slip (' &
//constitutive_phenopowerlaw_label//')')
if (any(constitutive_phenopowerlaw_a_slip(i) == 0.0_pReal .and. &
constitutive_phenopowerlaw_Nslip(:,i) > 0)) call IO_error(221_pInt,e=i,ext_msg='a_slip')
constitutive_phenopowerlaw_Nslip(:,i) > 0)) call IO_error(211_pInt,e=i,ext_msg='a_slip (' &
//constitutive_phenopowerlaw_label//')')
if (any(constitutive_phenopowerlaw_tau0_twin(:,i) < 0.0_pReal .and. &
constitutive_phenopowerlaw_Ntwin(:,i) > 0)) call IO_error(221_pInt,e=i,ext_msg='tau0_twin')
constitutive_phenopowerlaw_Ntwin(:,i) > 0)) call IO_error(211_pInt,e=i,ext_msg='tau0_twin (' &
//constitutive_phenopowerlaw_label//')')
if ( constitutive_phenopowerlaw_gdot0_twin(i) <= 0.0_pReal .and. &
any(constitutive_phenopowerlaw_Ntwin(:,i) > 0)) call IO_error(221_pInt,e=i,ext_msg='gdot0_twin')
any(constitutive_phenopowerlaw_Ntwin(:,i) > 0)) call IO_error(211_pInt,e=i,ext_msg='gdot0_twin (' &
//constitutive_phenopowerlaw_label//')')
if ( constitutive_phenopowerlaw_n_twin(i) <= 0.0_pReal .and. &
any(constitutive_phenopowerlaw_Ntwin(:,i) > 0)) call IO_error(221_pInt,e=i,ext_msg='n_twin')
any(constitutive_phenopowerlaw_Ntwin(:,i) > 0)) call IO_error(211_pInt,e=i,ext_msg='n_twin (' &
//constitutive_phenopowerlaw_label//')')
if (constitutive_phenopowerlaw_aTolResistance(i) <= 0.0_pReal) &
constitutive_phenopowerlaw_aTolResistance(i) = 1.0_pReal ! default absolute tolerance 1 Pa
@ -440,10 +448,9 @@ subroutine constitutive_phenopowerlaw_init(myFile)
constitutive_phenopowerlaw_hardeningMatrix_twinslip = 0.0_pReal
constitutive_phenopowerlaw_hardeningMatrix_twintwin = 0.0_pReal
do i = 1_pInt,maxNinstance
do j = 1_pInt,constitutive_phenopowerlaw_Noutput(i)
select case(constitutive_phenopowerlaw_output(j,i))
do o = 1_pInt,constitutive_phenopowerlaw_Noutput(i)
select case(constitutive_phenopowerlaw_output(o,i))
case('resistance_slip', &
'shearrate_slip', &
'resolvedstress_slip' &
@ -459,11 +466,11 @@ subroutine constitutive_phenopowerlaw_init(myFile)
)
mySize = 1_pInt
case default
call IO_error(222_pInt,ext_msg=constitutive_phenopowerlaw_output(j,i))
call IO_error(212_pInt,ext_msg=constitutive_phenopowerlaw_output(o,i)//' ('//constitutive_phenopowerlaw_label//')')
end select
if (mySize > 0_pInt) then ! any meaningful output found
constitutive_phenopowerlaw_sizePostResult(j,i) = mySize
constitutive_phenopowerlaw_sizePostResult(o,i) = mySize
constitutive_phenopowerlaw_sizePostResults(i) = &
constitutive_phenopowerlaw_sizePostResults(i) + mySize
endif

View File

@ -622,7 +622,7 @@ enddo
constitutive_titanmod_interactionTwinTwin(j,i) = IO_floatValue(line,positions,1_pInt+j)
write(6,*) tag
case default
call IO_error(230_pInt,ext_msg=tag)
call IO_error(210_pInt,ext_msg=tag//' ('//constitutive_titanmod_label//')')
end select
endif
enddo
@ -635,38 +635,59 @@ write(6,*) 'Material Property reading done'
myStructure = constitutive_titanmod_structure(i)
!* Sanity checks
if (myStructure < 1_pInt .or. myStructure > 3_pInt) call IO_error(205_pInt,e=i)
if (sum(constitutive_titanmod_Nslip(:,i)) <= 0_pInt) call IO_error(231_pInt,e=i,ext_msg='nslip')
if (sum(constitutive_titanmod_Ntwin(:,i)) < 0_pInt) call IO_error(231_pInt,e=i,ext_msg='ntwin')
if (myStructure < 1_pInt) call IO_error(205_pInt,e=i)
if (sum(constitutive_titanmod_Nslip(:,i)) <= 0_pInt) call IO_error(211_pInt,e=i,ext_msg='nslip (' &
//constitutive_titanmod_label//')')
if (sum(constitutive_titanmod_Ntwin(:,i)) < 0_pInt) call IO_error(211_pInt,e=i,ext_msg='ntwin (' &
//constitutive_titanmod_label//')')
do f = 1_pInt,lattice_maxNslipFamily
if (constitutive_titanmod_Nslip(f,i) > 0_pInt) then
if (constitutive_titanmod_rho_edge0(f,i) < 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='rho_edge0')
if (constitutive_titanmod_rho_screw0(f,i) < 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='rho_screw0')
if (constitutive_titanmod_burgersPerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='slipburgers')
if (constitutive_titanmod_f0_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='f0')
if (constitutive_titanmod_tau0e_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='tau0e')
if (constitutive_titanmod_tau0s_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='tau0s')
if (constitutive_titanmod_capre_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='capre')
if (constitutive_titanmod_caprs_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='carrs')
if (constitutive_titanmod_v0e_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='v0e')
if (constitutive_titanmod_v0s_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='v0s')
if (constitutive_titanmod_rho_edge0(f,i) < 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='rho_edge0 (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_rho_screw0(f,i) < 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='rho_screw0 (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_burgersPerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='slipburgers (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_f0_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='f0 (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_tau0e_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='tau0e (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_tau0s_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='tau0s (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_capre_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='capre (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_caprs_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='caprs (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_v0e_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='v0e (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_v0s_PerSlipFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='v0s (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_kinkcriticallength_PerSlipFamily(f,i) <= 0.0_pReal) &
call IO_error(231_pInt,e=i,ext_msg='kinkCriticalLength')
call IO_error(211_pInt,e=i,ext_msg='kinkCriticalLength (' &
//constitutive_titanmod_label//')')
endif
enddo
do f = 1_pInt,lattice_maxNtwinFamily
if (constitutive_titanmod_Ntwin(f,i) > 0_pInt) then
if (constitutive_titanmod_burgersPerTwinFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='twinburgers')
if (constitutive_titanmod_twinf0_PerTwinFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='twinf0')
if (constitutive_titanmod_burgersPerTwinFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='twinburgers (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_twinf0_PerTwinFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='twinf0 (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_twinshearconstant_PerTwinFamily(f,i) <= 0.0_pReal) &
call IO_error(231_pInt,e=i,ext_msg='twinshearconstant')
if (constitutive_titanmod_twintau0_PerTwinFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='twintau0')
if (constitutive_titanmod_twingamma0_PerTwinFamily(f,i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='twingamma0')
call IO_error(211_pInt,e=i,ext_msg='twinshearconstant (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_twintau0_PerTwinFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='twintau0 (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_twingamma0_PerTwinFamily(f,i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='twingamma0 (' &
//constitutive_titanmod_label//')')
endif
enddo
if (constitutive_titanmod_dc(i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='dc')
if (constitutive_titanmod_twinhpconstant(i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='twinhpconstant')
if (constitutive_titanmod_aTolRho(i) <= 0.0_pReal) call IO_error(231_pInt,e=i,ext_msg='aTolRho')
if (constitutive_titanmod_dc(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='dc (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_twinhpconstant(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='twinhpconstant (' &
//constitutive_titanmod_label//')')
if (constitutive_titanmod_aTolRho(i) <= 0.0_pReal) call IO_error(211_pInt,e=i,ext_msg='aTolRho (' &
//constitutive_titanmod_label//')')
!* Determine total number of active slip or twin systems
constitutive_titanmod_Nslip(:,i) = min(lattice_NslipSystem(:,myStructure),constitutive_titanmod_Nslip(:,i))
@ -837,7 +858,7 @@ do i = 1_pInt,maxNinstance
)
mySize = 1_pInt
case default
call IO_error(232_pInt,ext_msg=constitutive_titanmod_output(o,i))
call IO_error(212_pInt,ext_msg=constitutive_titanmod_output(o,i)//' ('//constitutive_titanmod_label//')')
end select
if (mySize > 0_pInt) then ! any meaningful output found