From c5128e94eb676fdbab5540750e41fbce42136952 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Wed, 1 Feb 2012 20:20:05 +0000 Subject: [PATCH] some f2008 standard related correction i didn't check in last time --- code/DAMASK_marc.f90 | 8 +++--- code/constitutive_dislotwin.f90 | 46 ++++++++++++++++----------------- code/constitutive_nonlocal.f90 | 42 +++++++++++++++--------------- code/constitutive_titanmod.f90 | 14 +++++----- code/core_modules.f90 | 12 ++++----- code/crystallite.f90 | 2 +- code/numerics.f90 | 12 ++++----- 7 files changed, 68 insertions(+), 68 deletions(-) diff --git a/code/DAMASK_marc.f90 b/code/DAMASK_marc.f90 index 63c6e034d..bdeb60964 100644 --- a/code/DAMASK_marc.f90 +++ b/code/DAMASK_marc.f90 @@ -288,7 +288,7 @@ subroutine hypela2(& lastMode = .false. ! pretend last step was collection calcMode = .false. ! pretend last step was collection !$OMP CRITICAL (write2out) - write (6,'(a,i6,x,i2)') '<< HYPELA2 >> start of analysis..! ',n(1),nn + write (6,'(a,i6,1x,i2)') '<< HYPELA2 >> start of analysis..! ',n(1),nn call flush(6) !$OMP END CRITICAL (write2out) else if (inc - theInc > 1) then ! >> restart of broken analysis << @@ -297,7 +297,7 @@ subroutine hypela2(& lastMode = .true. ! pretend last step was calculation calcMode = .true. ! pretend last step was calculation !$OMP CRITICAL (write2out) - write (6,'(a,i6,x,i2)') '<< HYPELA2 >> restart of analysis..! ',n(1),nn + write (6,'(a,i6,1x,i2)') '<< HYPELA2 >> restart of analysis..! ',n(1),nn call flush(6) !$OMP END CRITICAL (write2out) else ! >> just the next inc << @@ -306,7 +306,7 @@ subroutine hypela2(& lastMode = .true. ! assure last step was calculation calcMode = .true. ! assure last step was calculation !$OMP CRITICAL (write2out) - write (6,'(a,i6,x,i2)') '<< HYPELA2 >> new increment..! ',n(1),nn + write (6,'(a,i6,1x,i2)') '<< HYPELA2 >> new increment..! ',n(1),nn call flush(6) !$OMP END CRITICAL (write2out) endif @@ -315,7 +315,7 @@ subroutine hypela2(& cycleCounter = -1 ! first calc step increments this to cycle = 0 calcMode = .true. ! pretend last step was calculation !$OMP CRITICAL (write2out) - write(6,'(a,i6,x,i2)') '<< HYPELA2 >> cutback detected..! ',n(1),nn + write(6,'(a,i6,1x,i2)') '<< HYPELA2 >> cutback detected..! ',n(1),nn call flush(6) !$OMP END CRITICAL (write2out) endif ! convergence treatment end diff --git a/code/constitutive_dislotwin.f90 b/code/constitutive_dislotwin.f90 index 37f0a948f..8f07ea0d1 100644 --- a/code/constitutive_dislotwin.f90 +++ b/code/constitutive_dislotwin.f90 @@ -718,13 +718,13 @@ constitutive_dislotwin_stateInit(6*ns+4*nt+1:6*ns+5*nt) = TwinVolume0 !write(6,*) '#STATEINIT#' !write(6,*) -!write(6,'(a,/,4(3(f30.20,x)/))') 'RhoEdge',rhoEdge0 -!write(6,'(a,/,4(3(f30.20,x)/))') 'RhoEdgedip',rhoEdgeDip0 -!write(6,'(a,/,4(3(f30.20,x)/))') 'invLambdaSlip',invLambdaSlip0 -!write(6,'(a,/,4(3(f30.20,x)/))') 'MeanFreePathSlip',MeanFreePathSlip0 -!write(6,'(a,/,4(3(f30.20,x)/))') 'tauSlipThreshold', tauSlipThreshold0 -!write(6,'(a,/,4(3(f30.20,x)/))') 'MeanFreePathTwin', MeanFreePathTwin0 -!write(6,'(a,/,4(3(f30.20,x)/))') 'TwinVolume', TwinVolume0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'RhoEdge',rhoEdge0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'RhoEdgedip',rhoEdgeDip0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'invLambdaSlip',invLambdaSlip0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'MeanFreePathSlip',MeanFreePathSlip0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'tauSlipThreshold', tauSlipThreshold0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'MeanFreePathTwin', MeanFreePathTwin0 +!write(6,'(a,/,4(3(f30.20,1x)/))') 'TwinVolume', TwinVolume0 return end function @@ -906,9 +906,9 @@ forall (t = 1:nt) & !if ((ip==1).and.(el==1)) then ! write(6,*) '#MICROSTRUCTURE#' ! write(6,*) -! write(6,'(a,/,4(3(f10.4,x)/))') 'rhoEdge',state(g,ip,el)%p(1:ns)/1e9 -! write(6,'(a,/,4(3(f10.4,x)/))') 'rhoEdgeDip',state(g,ip,el)%p(ns+1:2*ns)/1e9 -! write(6,'(a,/,4(3(f10.4,x)/))') 'Fraction',state(g,ip,el)%p(2*ns+1:2*ns+nt) +! write(6,'(a,/,4(3(f10.4,1x)/))') 'rhoEdge',state(g,ip,el)%p(1:ns)/1e9 +! write(6,'(a,/,4(3(f10.4,1x)/))') 'rhoEdgeDip',state(g,ip,el)%p(ns+1:2*ns)/1e9 +! write(6,'(a,/,4(3(f10.4,1x)/))') 'Fraction',state(g,ip,el)%p(2*ns+1:2*ns+nt) !endif @@ -1052,7 +1052,7 @@ if(constitutive_dislotwin_sbVelocity(myInstance) /= 0.0_pReal) then tau_sb(j) = dot_product(Tstar_v,constitutive_dislotwin_sbSv(1:6,j,g,ip,el)) ! if (debug_selectiveDebugger .and. g==debug_g .and. ip==debug_i .and. el==debug_e) then - ! write(6,'(a,3(i3,x),a,i1,a,e10.3)') '### TAU SHEARBAND at g ip el ',g,ip,el,' on family ',j,' : ',tau + ! write(6,'(a,3(i3,1x),a,i1,a,e10.3)') '### TAU SHEARBAND at g ip el ',g,ip,el,' on family ',j,' : ',tau ! endif !* Stress ratios @@ -1129,9 +1129,9 @@ dLp_dTstar = math_Plain3333to99(dLp_dTstar3333) ! write(6,*) ! write(6,*) 'Tstar_v', Tstar_v ! write(6,*) 'tau_slip', tau_slip -! write(6,'(a10,/,4(3(e20.8,x),/))') 'state',state(1,1,1)%p -! write(6,'(a,/,3(3(f10.4,x)/))') 'Lp',Lp -! write(6,'(a,/,9(9(f10.4,x)/))') 'dLp_dTstar',dLp_dTstar +! write(6,'(a10,/,4(3(e20.8,1x),/))') 'state',state(1,1,1)%p +! write(6,'(a,/,3(3(f10.4,1x)/))') 'Lp',Lp +! write(6,'(a,/,9(9(f10.4,1x)/))') 'dLp_dTstar',dLp_dTstar !endif return @@ -1297,15 +1297,15 @@ enddo !write(6,*) '#DOTSTATE#' !write(6,*) -!write(6,'(a,/,4(3(f30.20,x)/))') 'tau slip',tau_slip -!write(6,'(a,/,4(3(f30.20,x)/))') 'gamma slip',gdot_slip -!write(6,'(a,/,4(3(f30.20,x)/))') 'RhoEdge',state(g,ip,el)%p(1:ns) -!write(6,'(a,/,4(3(f30.20,x)/))') 'Threshold Slip', state(g,ip,el)%p(5*ns+3*nt+1:6*ns+3*nt) -!write(6,'(a,/,4(3(f30.20,x)/))') 'Multiplication',DotRhoMultiplication -!write(6,'(a,/,4(3(f30.20,x)/))') 'DipFormation',DotRhoDipFormation -!write(6,'(a,/,4(3(f30.20,x)/))') 'SingleSingle',DotRhoEdgeEdgeAnnihilation -!write(6,'(a,/,4(3(f30.20,x)/))') 'SingleDipole',DotRhoEdgeDipAnnihilation -!write(6,'(a,/,4(3(f30.20,x)/))') 'DipClimb',DotRhoEdgeDipClimb +!write(6,'(a,/,4(3(f30.20,1x)/))') 'tau slip',tau_slip +!write(6,'(a,/,4(3(f30.20,1x)/))') 'gamma slip',gdot_slip +!write(6,'(a,/,4(3(f30.20,1x)/))') 'RhoEdge',state(g,ip,el)%p(1:ns) +!write(6,'(a,/,4(3(f30.20,1x)/))') 'Threshold Slip', state(g,ip,el)%p(5*ns+3*nt+1:6*ns+3*nt) +!write(6,'(a,/,4(3(f30.20,1x)/))') 'Multiplication',DotRhoMultiplication +!write(6,'(a,/,4(3(f30.20,1x)/))') 'DipFormation',DotRhoDipFormation +!write(6,'(a,/,4(3(f30.20,1x)/))') 'SingleSingle',DotRhoEdgeEdgeAnnihilation +!write(6,'(a,/,4(3(f30.20,1x)/))') 'SingleDipole',DotRhoEdgeDipAnnihilation +!write(6,'(a,/,4(3(f30.20,1x)/))') 'DipClimb',DotRhoEdgeDipClimb return end function diff --git a/code/constitutive_nonlocal.f90 b/code/constitutive_nonlocal.f90 index d1aa23982..fe5e1c983 100644 --- a/code/constitutive_nonlocal.f90 +++ b/code/constitutive_nonlocal.f90 @@ -1187,11 +1187,11 @@ state(g,ip,el)%p(12*ns+1:13*ns) = tauBack #ifndef _OPENMP if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then write(6,*) - write(6,'(a,i8,x,i2,x,i1)') '<< CONST >> nonlocal_microstructure at el ip g',el,ip,g + write(6,'(a,i8,1x,i2,1x,i1)') '<< CONST >> nonlocal_microstructure at el ip g',el,ip,g write(6,*) - write(6,'(a,/,12(x),12(e10.3,x))') '<< CONST >> rhoForest', rhoForest - write(6,'(a,/,12(x),12(f10.5,x))') '<< CONST >> tauThreshold / MPa', tauThreshold/1e6 - write(6,'(a,/,12(x),12(f10.5,x))') '<< CONST >> tauBack / MPa', tauBack/1e6 + write(6,'(a,/,12x,12(e10.3,1x))') '<< CONST >> rhoForest', rhoForest + write(6,'(a,/,12x,12(f10.5,1x))') '<< CONST >> tauThreshold / MPa', tauThreshold/1e6 + write(6,'(a,/,12x,12(f10.5,1x))') '<< CONST >> tauBack / MPa', tauBack/1e6 endif #endif @@ -1336,10 +1336,10 @@ endif #ifndef _OPENMP if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then write(6,*) - write(6,'(a,i8,x,i2,x,i1)') '<< CONST >> nonlocal_kinetics at el ip g',el,ip,g + write(6,'(a,i8,1x,i2,1x,i1)') '<< CONST >> nonlocal_kinetics at el ip g',el,ip,g write(6,*) - write(6,'(a,/,12(x),12(f12.5,x))') '<< CONST >> tau / MPa', tau / 1e6_pReal - write(6,'(a,/,4(12(x),12(f12.5,x),/))') '<< CONST >> v / 1e-3m/s', v * 1e3 + write(6,'(a,/,12x,12(f12.5,1x))') '<< CONST >> tau / MPa', tau / 1e6_pReal + write(6,'(a,/,4(12x,12(f12.5,1x),/))') '<< CONST >> v / 1e-3m/s', v * 1e3 endif #endif @@ -1480,10 +1480,10 @@ dLp_dTstar99 = math_Plain3333to99(dLp_dTstar3333) #ifndef _OPENMP if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then write(6,*) - write(6,'(a,i8,x,i2,x,i1)') '<< CONST >> nonlocal_LpandItsTangent at el ip g ',el,ip,g + write(6,'(a,i8,1x,i2,1x,i1)') '<< CONST >> nonlocal_LpandItsTangent at el ip g ',el,ip,g write(6,*) - write(6,'(a,/,12(x),12(f12.5,x))') '<< CONST >> gdot total / 1e-3',gdotTotal*1e3_pReal - write(6,'(a,/,3(12(x),3(f12.7,x),/))') '<< CONST >> Lp',Lp + write(6,'(a,/,12x,12(f12.5,1x))') '<< CONST >> gdot total / 1e-3',gdotTotal*1e3_pReal + write(6,'(a,/,3(12x,3(f12.7,1x),/))') '<< CONST >> Lp',Lp endif #endif @@ -1627,7 +1627,7 @@ logical considerEnteringFlux, & #ifndef _OPENMP if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then write(6,*) - write(6,'(a,i8,x,i2,x,i1)') '<< CONST >> nonlocal_dotState at el ip g ',el,ip,g + write(6,'(a,i8,1x,i2,1x,i1)') '<< CONST >> nonlocal_dotState at el ip g ',el,ip,g write(6,*) endif #endif @@ -1683,8 +1683,8 @@ forall (s = 1:ns, t = 1:4, rhoSgl(s,t+4) * v(s,t) < 0.0_pReal) & #ifndef _OPENMP if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then - write(6,'(a,/,10(12(x),12(e12.5,x),/))') '<< CONST >> rho / 1/m^2', rhoSgl, rhoDip - write(6,'(a,/,4(12(x),12(e12.5,x),/))') '<< CONST >> gdot / 1/s',gdot + write(6,'(a,/,10(12x,12(e12.5,1x),/))') '<< CONST >> rho / 1/m^2', rhoSgl, rhoDip + write(6,'(a,/,4(12x,12(e12.5,1x),/))') '<< CONST >> gdot / 1/s',gdot endif #endif @@ -1959,16 +1959,16 @@ dotState%p(1:10*ns) = dotState%p(1:10*ns) + reshape(rhoDot,(/10*ns/)) #ifndef _OPENMP if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then - write(6,'(a,/,8(12(x),12(e12.5,x),/))') '<< CONST >> dislocation remobilization', rhoDotRemobilization(1:ns,1:8) * timestep - write(6,'(a,/,4(12(x),12(e12.5,x),/))') '<< CONST >> dislocation multiplication', rhoDotMultiplication(1:ns,1:4) * timestep - write(6,'(a,/,8(12(x),12(e12.5,x),/))') '<< CONST >> dislocation flux', rhoDotFlux(1:ns,1:8) * timestep - write(6,'(a,/,10(12(x),12(e12.5,x),/))') '<< CONST >> dipole formation by glide', rhoDotSingle2DipoleGlide * timestep - write(6,'(a,/,2(12(x),12(e12.5,x),/))') '<< CONST >> athermal dipole annihilation', & + write(6,'(a,/,8(12x,12(e12.5,1x),/))') '<< CONST >> dislocation remobilization', rhoDotRemobilization(1:ns,1:8) * timestep + write(6,'(a,/,4(12x,12(e12.5,1x),/))') '<< CONST >> dislocation multiplication', rhoDotMultiplication(1:ns,1:4) * timestep + write(6,'(a,/,8(12x,12(e12.5,1x),/))') '<< CONST >> dislocation flux', rhoDotFlux(1:ns,1:8) * timestep + write(6,'(a,/,10(12x,12(e12.5,1x),/))') '<< CONST >> dipole formation by glide', rhoDotSingle2DipoleGlide * timestep + write(6,'(a,/,2(12x,12(e12.5,1x),/))') '<< CONST >> athermal dipole annihilation', & rhoDotAthermalAnnihilation(1:ns,1:2) * timestep - write(6,'(a,/,2(12(x),12(e12.5,x),/))') '<< CONST >> thermally activated dipole annihilation', & + write(6,'(a,/,2(12x,12(e12.5,1x),/))') '<< CONST >> thermally activated dipole annihilation', & rhoDotThermalAnnihilation(1:ns,9:10) * timestep - write(6,'(a,/,10(12(x),12(e12.5,x),/))') '<< CONST >> total density change', rhoDot * timestep - write(6,'(a,/,10(12(x),12(f12.7,x),/))') '<< CONST >> relative density change', & + write(6,'(a,/,10(12x,12(e12.5,1x),/))') '<< CONST >> total density change', rhoDot * timestep + write(6,'(a,/,10(12x,12(f12.7,1x),/))') '<< CONST >> relative density change', & rhoDot(1:ns,1:8) * timestep / (abs(rhoSgl)+1.0e-10), & rhoDot(1:ns,9:10) * timestep / (rhoDip+1.0e-10) write(6,*) diff --git a/code/constitutive_titanmod.f90 b/code/constitutive_titanmod.f90 index abce8b61a..ef1226940 100644 --- a/code/constitutive_titanmod.f90 +++ b/code/constitutive_titanmod.f90 @@ -1558,9 +1558,9 @@ dLp_dTstar = math_Plain3333to99(dLp_dTstar3333) ! write(6,*) ! write(6,*) 'Tstar_v', Tstar_v ! write(6,*) 'tau_slip', tau_slip -! write(6,'(a10,/,4(3(e20.8,x),/))') 'state',state(1,1,1)%p -! write(6,'(a,/,3(3(f10.4,x)/))') 'Lp',Lp -! write(6,'(a,/,9(9(f10.4,x)/))') 'dLp_dTstar',dLp_dTstar +! write(6,'(a10,/,4(3(e20.8,1x),/))') 'state',state(1,1,1)%p +! write(6,'(a,/,3(3(f10.4,1x)/))') 'Lp',Lp +! write(6,'(a,/,9(9(f10.4,1x)/))') 'dLp_dTstar',dLp_dTstar !endif return @@ -1707,10 +1707,10 @@ enddo !write(6,*) '#DOTSTATE#' !write(6,*) -!write(6,'(a,/,4(3(f30.20,x)/))') 'EdgeGeneration',DotRhoEdgeGeneration -!write(6,'(a,/,4(3(f30.20,x)/))') 'ScrewGeneration',DotRhoScrewGeneration -!write(6,'(a,/,4(3(f30.20,x)/))') 'EdgeAnnihilation',DotRhoEdgeAnnihilation -!write(6,'(a,/,4(3(f30.20,x)/))') 'ScrewAnnihilation',DotRhoScrewAnnihilation +!write(6,'(a,/,4(3(f30.20,1x)/))') 'EdgeGeneration',DotRhoEdgeGeneration +!write(6,'(a,/,4(3(f30.20,1x)/))') 'ScrewGeneration',DotRhoScrewGeneration +!write(6,'(a,/,4(3(f30.20,1x)/))') 'EdgeAnnihilation',DotRhoEdgeAnnihilation +!write(6,'(a,/,4(3(f30.20,1x)/))') 'ScrewAnnihilation',DotRhoScrewAnnihilation return diff --git a/code/core_modules.f90 b/code/core_modules.f90 index 74cdf6c0d..3e1e376b3 100644 --- a/code/core_modules.f90 +++ b/code/core_modules.f90 @@ -23,9 +23,9 @@ MODULE prec implicit none ! *** Precision of real and integer variables for python interfacing*** - integer, parameter :: pReal = selected_real_kind(8) - integer, parameter :: pInt = selected_int_kind(9) ! up to +- 1e9 - real(pReal), parameter :: DAMASK_NaN = Z'7FF0000000000001' + integer, parameter :: pReal = 8 + integer, parameter :: pInt = 4 + real(pReal), parameter :: DAMASK_NaN = real(Z'7FF0000000000001',pReal) real(pReal), parameter :: tol_math_check = 1.0e-8_pReal END MODULE prec @@ -36,10 +36,10 @@ MODULE debug END MODULE debug MODULE numerics - use prec, only: pInt + use prec, only: pInt, pReal implicit none - real*8, parameter :: fftw_timelimit = -1.0 - integer*8, parameter :: fftw_planner_flag = 32 + real(pReal), parameter :: fftw_timelimit = -1.0_pReal + integer(pInt), parameter :: fftw_planner_flag = 32_pInt integer(pInt), parameter :: fixedSeed = 1_pInt END MODULE numerics diff --git a/code/crystallite.f90 b/code/crystallite.f90 index 760b39afc..40fa0fec2 100644 --- a/code/crystallite.f90 +++ b/code/crystallite.f90 @@ -763,7 +763,7 @@ if(updateJaco) then #ifndef _OPENMP if (debug_verbosity> 5) then !$OMP CRITICAL (write2out) - write(6,'(a,2(x,i1),1x,a)') '<< CRYST >> [[[[[[ Stiffness perturbation',k,l,']]]]]]' + write(6,'(a,2(1x,i1),1x,a)') '<< CRYST >> [[[[[[ Stiffness perturbation',k,l,']]]]]]' write(6,*) !$OMP END CRITICAL (write2out) endif diff --git a/code/numerics.f90 b/code/numerics.f90 index 7d7866273..013f9e659 100644 --- a/code/numerics.f90 +++ b/code/numerics.f90 @@ -70,7 +70,7 @@ real(pReal) :: relevantStrain = 1.0e-7_pReal, & fftw_timelimit = -1.0_pReal, & ! sets the timelimit of plan creation for FFTW, see manual on www.fftw.org, Default -1.0: disable timelimit rotation_tol = 1.0e-12_pReal ! tolerance of rotation specified in loadcase, Default 1.0e-12: first guess character(len=64) :: fftw_planner_string = 'FFTW_PATIENT' ! reads the planing-rigor flag, see manual on www.fftw.org, Default FFTW_PATIENT: use patiant planner flag -integer(pInt) :: fftw_planner_flag = 0_pInt ! conversion of fftw_planner_string to integer, basically what is usually done in the include file of fftw +integer(pInt) :: fftw_planner_flag = -1_pInt ! conversion of fftw_planner_string to integer, basically what is usually done in the include file of fftw logical :: memory_efficient = .true. ,& ! for fast execution (pre calculation of gamma_hat), Default .true.: do not precalculate divergence_correction = .false. ,& ! correct divergence calculation in fourier space, Default .false.: no correction update_gamma = .false.,& ! update gamma operator with current stiffness, Default .false.: use initial stiffness @@ -264,16 +264,16 @@ subroutine numerics_init() endif select case(IO_lc(fftw_planner_string)) ! setting parameters for the plan creation of FFTW. Basically a translation from fftw3.f case('estimate','fftw_estimate') ! ordered from slow execution (but fast plan creation) to fast execution - fftw_planner_flag = 64 + fftw_planner_flag = 64_pInt case('measure','fftw_measure') - fftw_planner_flag = 0 + fftw_planner_flag = 0_pInt case('patient','fftw_patient') - fftw_planner_flag= 32 + fftw_planner_flag= 32_pInt case('exhaustive','fftw_exhaustive') - fftw_planner_flag = 8 + fftw_planner_flag = 8_pInt case default call IO_warning(warning_ID=47_pInt,ext_msg=trim(IO_lc(fftw_planner_string))) - fftw_planner_flag = 32 + fftw_planner_flag = 32_pInt end select ! writing parameters to output file