condensed error reporting for constitutive_XYZ_init
removed erroneous check for structure>3
This commit is contained in:
parent
2e271fbe56
commit
7c6fc121fd
38
code/IO.f90
38
code/IO.f90
|
@ -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'
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue