new substructure with 'include' and 'config' directories
renaming of mpie_... to DAMASK for main usersubroutines extension of element outputs from 5 to 8 digits (FFT!!!)
This commit is contained in:
parent
a0bec65c7b
commit
e5a2d829b0
|
@ -207,9 +207,9 @@ subroutine CPFEM_init()
|
|||
write(6,*) '$Id$'
|
||||
write(6,*)
|
||||
if (debug_verbosity > 0) then
|
||||
write(6,'(a32,x,6(i5,x))') 'CPFEM_cs: ', shape(CPFEM_cs)
|
||||
write(6,'(a32,x,6(i5,x))') 'CPFEM_dcsdE: ', shape(CPFEM_dcsdE)
|
||||
write(6,'(a32,x,6(i5,x))') 'CPFEM_dcsdE_knownGood: ', shape(CPFEM_dcsdE_knownGood)
|
||||
write(6,'(a32,x,6(i8,x))') 'CPFEM_cs: ', shape(CPFEM_cs)
|
||||
write(6,'(a32,x,6(i8,x))') 'CPFEM_dcsdE: ', shape(CPFEM_dcsdE)
|
||||
write(6,'(a32,x,6(i8,x))') 'CPFEM_dcsdE_knownGood: ', shape(CPFEM_dcsdE_knownGood)
|
||||
write(6,*)
|
||||
write(6,*) 'parallelExecution: ', parallelExecution
|
||||
write(6,*) 'symmetricSolver: ', symmetricSolver
|
||||
|
@ -387,7 +387,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
|||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a)') '<< CPFEM >> Aging states'
|
||||
if (debug_e == cp_en .and. debug_i == IP) then
|
||||
write(6,'(a,x,i5,x,i2,x,i3,/,(12(x),6(e20.8,x)))') '<< CPFEM >> AGED state of element ip grain',&
|
||||
write(6,'(a,x,i8,x,i2,x,i3,/,(12(x),6(e20.8,x)))') '<< CPFEM >> AGED state of element ip grain',&
|
||||
cp_en, IP, 1, constitutive_state(1,IP,cp_en)%p
|
||||
write(6,*)
|
||||
endif
|
||||
|
@ -473,7 +473,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
|||
if (.not. terminallyIll .and. .not. outdatedFFN1) then
|
||||
if (debug_verbosity > 0) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a,x,i5,x,i2)') '<< CPFEM >> OUTDATED at element ip',cp_en,IP
|
||||
write(6,'(a,x,i8,x,i2)') '<< CPFEM >> OUTDATED at element ip',cp_en,IP
|
||||
write(6,'(a,/,3(12(x),3(f10.6,x),/))') '<< CPFEM >> FFN1 old:',math_transpose3x3(materialpoint_F(1:3,1:3,IP,cp_en))
|
||||
write(6,'(a,/,3(12(x),3(f10.6,x),/))') '<< CPFEM >> FFN1 now:',math_transpose3x3(ffn1)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
|
@ -499,7 +499,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
|||
FEsolving_execIP(2,cp_en) = IP
|
||||
if (debug_verbosity > 0) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a,i5,x,i2)') '<< CPFEM >> Calculation for element ip ',cp_en,IP
|
||||
write(6,'(a,i8,x,i2)') '<< CPFEM >> Calculation for element ip ',cp_en,IP
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
call materialpoint_stressAndItsTangent(updateJaco, dt) ! calculate stress and its tangent
|
||||
|
@ -509,7 +509,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
|||
elseif (.not. CPFEM_calc_done) then
|
||||
if (debug_verbosity > 0) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a,i5,a,i5)') '<< CPFEM >> Calculation for elements ',FEsolving_execElem(1),' to ',FEsolving_execElem(2)
|
||||
write(6,'(a,i8,a,i8)') '<< CPFEM >> Calculation for elements ',FEsolving_execElem(1),' to ',FEsolving_execElem(2)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
call materialpoint_stressAndItsTangent(updateJaco, dt) ! calculate stress and its tangent (parallel execution inside)
|
||||
|
@ -598,8 +598,8 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
|||
|
||||
if (mode < 6 .and. debug_verbosity > 0 .and. ((debug_e == cp_en .and. debug_i == IP) .or. .not. debug_selectiveDebugger)) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a,i5,x,i2,/,12(x),6(f10.3,x)/)') '<< CPFEM >> stress/MPa at el ip ', cp_en, IP, cauchyStress/1e6
|
||||
write(6,'(a,i5,x,i2,/,6(12(x),6(f10.3,x)/))') '<< CPFEM >> jacobian/GPa at el ip ', cp_en, IP, transpose(jacobian)/1e9
|
||||
write(6,'(a,i8,x,i2,/,12(x),6(f10.3,x)/)') '<< CPFEM >> stress/MPa at el ip ', cp_en, IP, cauchyStress/1e6
|
||||
write(6,'(a,i8,x,i2,/,6(12(x),6(f10.3,x)/))') '<< CPFEM >> jacobian/GPa at el ip ', cp_en, IP, transpose(jacobian)/1e9
|
||||
call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
|
|
|
@ -52,7 +52,7 @@ CONTAINS
|
|||
subroutine mpie_interface_init()
|
||||
!--------------------
|
||||
write(6,*)
|
||||
write(6,*) '<<<+- mpie_cpfem_abaqus init -+>>>'
|
||||
write(6,*) '<<<+- DAMASK_abaqus init -+>>>'
|
||||
write(6,*) '$Id$'
|
||||
write(6,*)
|
||||
return
|
||||
|
@ -217,7 +217,7 @@ subroutine vumat (jblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, &
|
|||
|
||||
if ( debug_verbosity > 1 ) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(i6,x,i2,x,a)') nElement(n),nMatPoint(n),'first call special case..!'; call flush(6)
|
||||
write(6,'(i8,x,i2,x,a)') nElement(n),nMatPoint(n),'first call special case..!'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
|
||||
|
@ -226,7 +226,7 @@ subroutine vumat (jblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, &
|
|||
|
||||
if ( debug_verbosity > 1 ) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write (6,'(i6,x,i2,x,a)') nElement(n),nMatPoint(n),'lastIncConverged + outdated'; call flush(6)
|
||||
write (6,'(i8,x,i2,x,a)') nElement(n),nMatPoint(n),'lastIncConverged + outdated'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
|
||||
|
@ -248,7 +248,7 @@ subroutine vumat (jblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, &
|
|||
|
||||
if ( debug_verbosity > 1 ) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a16,x,i2,x,a,i5,x,i5,a)') 'computationMode',computationMode,'(',nElement(n),nMatPoint(n),')'; call flush(6)
|
||||
write(6,'(a16,x,i2,x,a,i8,x,i5,a)') 'computationMode',computationMode,'(',nElement(n),nMatPoint(n),')'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
|
|
@ -52,7 +52,7 @@ CONTAINS
|
|||
subroutine mpie_interface_init()
|
||||
!--------------------
|
||||
write(6,*)
|
||||
write(6,*) '<<<+- mpie_cpfem_abaqus init -+>>>'
|
||||
write(6,*) '<<<+- DAMASK_abaqus init -+>>>'
|
||||
write(6,*) '$Id$'
|
||||
write(6,*)
|
||||
return
|
||||
|
@ -188,7 +188,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
|||
lastMode = .false. ! pretend last step was collection
|
||||
calcMode = .false. ! pretend last step was collection
|
||||
!$OMP CRITICAL (write2out)
|
||||
write (6,'(i6,x,i2,x,a)') noel,npt,'<< UMAT >> start of analysis..!'; call flush(6)
|
||||
write (6,'(i8,x,i2,x,a)') noel,npt,'<< UMAT >> start of analysis..!'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
else if (kinc - theInc > 1) then ! >> restart of broken analysis <<
|
||||
lastIncConverged = .false. ! no Jacobian backup
|
||||
|
@ -196,7 +196,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
|||
lastMode = .true. ! pretend last step was calculation
|
||||
calcMode = .true. ! pretend last step was calculation
|
||||
!$OMP CRITICAL (write2out)
|
||||
write (6,'(i6,x,i2,x,a)') noel,npt,'<< UMAT >> restart of analysis..!'; call flush(6)
|
||||
write (6,'(i8,x,i2,x,a)') noel,npt,'<< UMAT >> restart of analysis..!'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
else ! >> just the next inc <<
|
||||
lastIncConverged = .true. ! request Jacobian backup
|
||||
|
@ -204,7 +204,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
|||
lastMode = .true. ! assure last step was calculation
|
||||
calcMode = .true. ! assure last step was calculation
|
||||
!$OMP CRITICAL (write2out)
|
||||
write (6,'(i6,x,i2,x,a)') noel,npt,'<< UMAT >> new increment..!'; call flush(6)
|
||||
write (6,'(i8,x,i2,x,a)') noel,npt,'<< UMAT >> new increment..!'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
|
||||
|
@ -215,7 +215,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
|||
cycleCounter = -1 ! first calc step increments this to cycle = 0
|
||||
calcMode = .true. ! pretend last step was calculation
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(i6,x,i2,x,a)') noel,npt,'<< UMAT >> cutback detected..!'; call flush(6)
|
||||
write(6,'(i8,x,i2,x,a)') noel,npt,'<< UMAT >> cutback detected..!'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
|
||||
endif ! convergence treatment end
|
||||
|
@ -257,7 +257,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
|||
|
||||
if ( debug_verbosity > 1 ) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a16,x,i2,x,a,i5,a,i5,x,i5,a)') 'computationMode',computationMode,'(',cp_en,':',noel,npt,')'; call flush(6)
|
||||
write(6,'(a16,x,i2,x,a,i8,a,i8,x,i5,a)') 'computationMode',computationMode,'(',cp_en,':',noel,npt,')'; call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
endif
|
||||
|
|
@ -34,16 +34,16 @@
|
|||
!
|
||||
!********************************************************************
|
||||
! Usage:
|
||||
! - start program with mpie_spectral PathToGeomFile/NameOfGeom.geom
|
||||
! - start program with DAMASK_spectral PathToGeomFile/NameOfGeom.geom
|
||||
! PathToLoadFile/NameOfLoadFile.load
|
||||
! - PathToGeomFile will be the working directory
|
||||
! - make sure the file "material.config" exists in the working
|
||||
! directory. For further configuration use "numerics.config"
|
||||
!********************************************************************
|
||||
program mpie_spectral
|
||||
program DAMASK_spectral
|
||||
!********************************************************************
|
||||
|
||||
use mpie_interface
|
||||
use spectral_interface
|
||||
use prec, only: pInt, pReal
|
||||
use IO
|
||||
use math
|
||||
|
@ -54,7 +54,7 @@ program mpie_spectral
|
|||
!$ use OMP_LIB ! the openMP function library
|
||||
|
||||
implicit none
|
||||
include 'fftw3.f' ! header file for fftw3 (declaring variables). Library files are also needed
|
||||
include 'include/fftw3.f' ! header file for fftw3 (declaring variables). Library files are also needed
|
||||
! compile FFTW 3.2.2 with ./configure --enable-threads
|
||||
! variables to read from loadcase and geom file
|
||||
real(pReal), dimension(9) :: valuevector ! stores information temporarily from loadcase file
|
||||
|
@ -205,7 +205,7 @@ program mpie_spectral
|
|||
print '(a,/,3(3(l,x)/))', 'bc_mask for velocitygrad:',transpose(bc_mask(:,:,1,i))
|
||||
print '(a,/,3(3(l,x)/))', 'bc_mask for stress:' ,transpose(bc_mask(:,:,2,i))
|
||||
print '(a,f12.6)','time: ',bc_timeIncrement(i)
|
||||
print '(a,i5)','incs: ',bc_steps(i)
|
||||
print '(a,i6)','incs: ',bc_steps(i)
|
||||
print *, ''
|
||||
enddo
|
||||
|
||||
|
@ -256,7 +256,7 @@ program mpie_spectral
|
|||
if(mod(resolution(1),2)/=0 .or. mod(resolution(2),2)/=0 .or. mod(resolution(3),2)/=0) call IO_error(103)
|
||||
|
||||
print '(a,/,i4,i4,i4)','resolution a b c:', resolution
|
||||
print '(a,/,f6.1,f6.1,f6.1)','dimension x y z:', geomdimension
|
||||
print '(a,/,f8.4,f8.5,f8.5)','dimension x y z:', geomdimension
|
||||
print '(a,i4)','homogenization: ',homog
|
||||
|
||||
allocate (defgrad (resolution(1),resolution(2),resolution(3),3,3)); defgrad = 0.0_pReal
|
||||
|
@ -581,7 +581,7 @@ program mpie_spectral
|
|||
close(538)
|
||||
call dfftw_destroy_plan(plan_fft(1)); call dfftw_destroy_plan(plan_fft(2))
|
||||
|
||||
end program mpie_spectral
|
||||
end program DAMASK_spectral
|
||||
|
||||
!********************************************************************
|
||||
! quit subroutine to satisfy IO_error
|
|
@ -20,7 +20,7 @@
|
|||
!* $Id$
|
||||
!********************************************************************
|
||||
|
||||
MODULE mpie_interface
|
||||
MODULE spectral_interface
|
||||
use prec, only: pInt, pReal
|
||||
character(len=64), parameter :: FEsolver = 'Spectral'
|
||||
character(len=5), parameter :: InputFileExtension = '.geom'
|
||||
|
@ -32,10 +32,10 @@ CONTAINS
|
|||
! initialize interface module
|
||||
!
|
||||
!********************************************************************
|
||||
subroutine mpie_interface_init()
|
||||
subroutine spectral_interface_init()
|
||||
|
||||
write(6,*)
|
||||
write(6,*) '<<<+- mpie_spectral init -+>>>'
|
||||
write(6,*) '<<<+- spectral_interface init -+>>>'
|
||||
write(6,*) '$Id$'
|
||||
write(6,*)
|
||||
|
|
@ -340,19 +340,19 @@ constitutive_maxSizePostResults = maxval(constitutive_sizePostResults)
|
|||
write(6,*) '$Id$'
|
||||
write(6,*)
|
||||
if (debug_verbosity > 0) then
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_state0: ', shape(constitutive_state0)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_partionedState0: ', shape(constitutive_partionedState0)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_subState0: ', shape(constitutive_subState0)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_state: ', shape(constitutive_state)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_aTolState: ', shape(constitutive_aTolState)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_dotState: ', shape(constitutive_dotState)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_sizeState: ', shape(constitutive_sizeState)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_sizeDotState: ', shape(constitutive_sizeDotState)
|
||||
write(6,'(a32,x,7(i5,x))') 'constitutive_sizePostResults: ', shape(constitutive_sizePostResults)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_state0: ', shape(constitutive_state0)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_partionedState0: ', shape(constitutive_partionedState0)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_subState0: ', shape(constitutive_subState0)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_state: ', shape(constitutive_state)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_aTolState: ', shape(constitutive_aTolState)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_dotState: ', shape(constitutive_dotState)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_sizeState: ', shape(constitutive_sizeState)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_sizeDotState: ', shape(constitutive_sizeDotState)
|
||||
write(6,'(a32,x,7(i8,x))') 'constitutive_sizePostResults: ', shape(constitutive_sizePostResults)
|
||||
write(6,*)
|
||||
write(6,'(a32,x,7(i5,x))') 'maxSizeState: ', constitutive_maxSizeState
|
||||
write(6,'(a32,x,7(i5,x))') 'maxSizeDotState: ', constitutive_maxSizeDotState
|
||||
write(6,'(a32,x,7(i5,x))') 'maxSizePostResults: ', constitutive_maxSizePostResults
|
||||
write(6,'(a32,x,7(i8,x))') 'maxSizeState: ', constitutive_maxSizeState
|
||||
write(6,'(a32,x,7(i8,x))') 'maxSizeDotState: ', constitutive_maxSizeDotState
|
||||
write(6,'(a32,x,7(i8,x))') 'maxSizePostResults: ', constitutive_maxSizePostResults
|
||||
endif
|
||||
call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
|
|
|
@ -1144,7 +1144,7 @@ state(g,ip,el)%p(12*ns+1:12*ns+6) = math_Mandel33to6(Tdislo)
|
|||
#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,i5,x,i2,x,i1)') '<< CONST >> nonlocal_microstructure at el ip g',el,ip,g
|
||||
write(6,'(a,i8,x,i2,x,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
|
||||
|
@ -1271,7 +1271,7 @@ constitutive_nonlocal_v(1:ns,1:4,g,ip,el) = v
|
|||
#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,i5,x,i2,x,i1)') '<< CONST >> nonlocal_kinetics at el ip g',el,ip,g
|
||||
write(6,'(a,i8,x,i2,x,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', constitutive_nonlocal_v(:,:,g,ip,el)*1e3
|
||||
|
@ -1394,7 +1394,7 @@ 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,i5,x,i2,x,i1)') '<< CONST >> nonlocal_LpandItsTangent at el ip g ',el,ip,g
|
||||
write(6,'(a,i8,x,i2,x,i1)') '<< CONST >> nonlocal_LpandItsTangent at el ip g ',el,ip,g
|
||||
write(6,*)
|
||||
write(6,'(a,/,4(12(x),12(f12.5,x)),/)') '<< CONST >> gdot / 1e-3',gdot*1e3_pReal
|
||||
write(6,'(a,/,12(x),12(f12.5,x))') '<< CONST >> gdot total / 1e-3',gdotTotal*1e3_pReal
|
||||
|
@ -1542,7 +1542,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,i5,x,i2,x,i1)') '<< CONST >> nonlocal_dotState at el ip g ',el,ip,g
|
||||
write(6,'(a,i8,x,i2,x,i1)') '<< CONST >> nonlocal_dotState at el ip g ',el,ip,g
|
||||
write(6,*)
|
||||
endif
|
||||
#endif
|
||||
|
|
|
@ -375,49 +375,49 @@ crystallite_fallbackdPdF = crystallite_dPdF ! use initial ela
|
|||
! *** Output to MARC output file ***
|
||||
if (debug_verbosity > 0) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Temperature: ', shape(crystallite_Temperature)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dotTemperature: ', shape(crystallite_dotTemperature)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Fe: ', shape(crystallite_Fe)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Fp: ', shape(crystallite_Fp)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Lp: ', shape(crystallite_Lp)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_F0: ', shape(crystallite_F0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Fp0: ', shape(crystallite_Fp0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Lp0: ', shape(crystallite_Lp0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedF: ', shape(crystallite_partionedF)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedTemp0: ', shape(crystallite_partionedTemperature0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedF0: ', shape(crystallite_partionedF0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedFp0: ', shape(crystallite_partionedFp0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedLp0: ', shape(crystallite_partionedLp0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subF: ', shape(crystallite_subF)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subTemperature0: ', shape(crystallite_subTemperature0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_symmetryID: ', shape(crystallite_symmetryID)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subF0: ', shape(crystallite_subF0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subFp0: ', shape(crystallite_subFp0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subLp0: ', shape(crystallite_subLp0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_P: ', shape(crystallite_P)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Tstar_v: ', shape(crystallite_Tstar_v)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Tstar0_v: ', shape(crystallite_Tstar0_v)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedTstar0_v: ', shape(crystallite_partionedTstar0_v)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subTstar0_v: ', shape(crystallite_subTstar0_v)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dPdF: ', shape(crystallite_dPdF)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dPdF0: ', shape(crystallite_dPdF0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partioneddPdF0: ', shape(crystallite_partioneddPdF0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_fallbackdPdF: ', shape(crystallite_fallbackdPdF)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_orientation: ', shape(crystallite_orientation)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_orientation0: ', shape(crystallite_orientation0)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_rotation: ', shape(crystallite_rotation)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_disorientation: ', shape(crystallite_disorientation)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dt: ', shape(crystallite_dt)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subdt: ', shape(crystallite_subdt)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subFrac: ', shape(crystallite_subFrac)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subStep: ', shape(crystallite_subStep)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_stateDamper: ', shape(crystallite_stateDamper)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_localConstitution: ', shape(crystallite_localConstitution)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_requested: ', shape(crystallite_requested)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_todo: ', shape(crystallite_todo)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_converged: ', shape(crystallite_converged)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_sizePostResults: ', shape(crystallite_sizePostResults)
|
||||
write(6,'(a35,x,7(i5,x))') 'crystallite_sizePostResult: ', shape(crystallite_sizePostResult)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Temperature: ', shape(crystallite_Temperature)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_dotTemperature: ', shape(crystallite_dotTemperature)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Fe: ', shape(crystallite_Fe)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Fp: ', shape(crystallite_Fp)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Lp: ', shape(crystallite_Lp)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_F0: ', shape(crystallite_F0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Fp0: ', shape(crystallite_Fp0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Lp0: ', shape(crystallite_Lp0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedF: ', shape(crystallite_partionedF)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedTemp0: ', shape(crystallite_partionedTemperature0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedF0: ', shape(crystallite_partionedF0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedFp0: ', shape(crystallite_partionedFp0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedLp0: ', shape(crystallite_partionedLp0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subF: ', shape(crystallite_subF)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subTemperature0: ', shape(crystallite_subTemperature0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_symmetryID: ', shape(crystallite_symmetryID)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subF0: ', shape(crystallite_subF0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subFp0: ', shape(crystallite_subFp0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subLp0: ', shape(crystallite_subLp0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_P: ', shape(crystallite_P)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Tstar_v: ', shape(crystallite_Tstar_v)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_Tstar0_v: ', shape(crystallite_Tstar0_v)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedTstar0_v: ', shape(crystallite_partionedTstar0_v)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subTstar0_v: ', shape(crystallite_subTstar0_v)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_dPdF: ', shape(crystallite_dPdF)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_dPdF0: ', shape(crystallite_dPdF0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_partioneddPdF0: ', shape(crystallite_partioneddPdF0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_fallbackdPdF: ', shape(crystallite_fallbackdPdF)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_orientation: ', shape(crystallite_orientation)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_orientation0: ', shape(crystallite_orientation0)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_rotation: ', shape(crystallite_rotation)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_disorientation: ', shape(crystallite_disorientation)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_dt: ', shape(crystallite_dt)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subdt: ', shape(crystallite_subdt)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subFrac: ', shape(crystallite_subFrac)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_subStep: ', shape(crystallite_subStep)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_stateDamper: ', shape(crystallite_stateDamper)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_localConstitution: ', shape(crystallite_localConstitution)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_requested: ', shape(crystallite_requested)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_todo: ', shape(crystallite_todo)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_converged: ', shape(crystallite_converged)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_sizePostResults: ', shape(crystallite_sizePostResults)
|
||||
write(6,'(a35,x,7(i8,x))') 'crystallite_sizePostResult: ', shape(crystallite_sizePostResult)
|
||||
write(6,*)
|
||||
write(6,*) 'Number of nonlocal grains: ',count(.not. crystallite_localConstitution)
|
||||
call flush(6)
|
||||
|
@ -527,7 +527,7 @@ if (debug_verbosity > 4 .and. debug_e > 0 .and. debug_e <= mesh_NcpElems &
|
|||
.and. debug_g > 0 .and. debug_g <= homogenization_maxNgrains) then
|
||||
!$OMP CRITICAL (write2out)
|
||||
write (6,*)
|
||||
write (6,'(a,i5,x,i2,x,i3)') '<< CRYST >> crystallite start at el ip g ', debug_e, debug_i, debug_g
|
||||
write (6,'(a,i8,x,i2,x,i3)') '<< CRYST >> crystallite start at el ip g ', debug_e, debug_i, debug_g
|
||||
write (6,'(a,/,12(x),f14.9)') '<< CRYST >> Temp0', crystallite_partionedTemperature0(debug_g,debug_i,debug_e)
|
||||
write (6,'(a,/,3(12(x),3(f14.9,x)/))') '<< CRYST >> F0 ', &
|
||||
math_transpose3x3(crystallite_partionedF0(1:3,1:3,debug_g,debug_i,debug_e))
|
||||
|
@ -692,7 +692,7 @@ enddo
|
|||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4 &
|
||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write (6,'(a,i5,x,i2,x,i3)') '<< CRYST >> central solution of cryst_StressAndTangent at el ip g ',e,i,g
|
||||
write (6,'(a,i8,x,i2,x,i3)') '<< CRYST >> central solution of cryst_StressAndTangent at el ip g ',e,i,g
|
||||
write (6,*)
|
||||
write (6,'(a,/,3(12(x),3(f12.4,x)/))') '<< CRYST >> P / MPa', math_transpose3x3(crystallite_P(1:3,1:3,g,i,e)) / 1e6
|
||||
write (6,'(a,/,3(12(x),3(f14.9,x)/))') '<< CRYST >> Fp', math_transpose3x3(crystallite_Fp(1:3,1:3,g,i,e))
|
||||
|
@ -1014,7 +1014,7 @@ do n = 1,4
|
|||
if (debug_verbosity > 5 &
|
||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
mySizeDotState = constitutive_sizeDotState(g,i,e)
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,*)
|
||||
write(6,'(a,/,(12(x),12(e12.5,x)))') '<< CRYST >> dotState', constitutive_dotState(g,i,e)%p(1:mySizeDotState)
|
||||
write(6,*)
|
||||
|
@ -1502,7 +1502,7 @@ relTemperatureResiduum = 0.0_pReal
|
|||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 5 &
|
||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write(6,'(a,i5,x,i3,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i3,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,*)
|
||||
write(6,'(a,/,(12(x),12(f12.1,x)))') '<< CRYST >> absolute residuum tolerance', &
|
||||
stateResiduum(1:mySizeDotState,g,i,e) / constitutive_aTolState(g,i,e)%p(1:mySizeDotState)
|
||||
|
@ -1808,7 +1808,7 @@ relTemperatureResiduum = 0.0_pReal
|
|||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 5 &
|
||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,*)
|
||||
write(6,'(a,/,(12(x),12(f12.1,x)))') '<< CRYST >> absolute residuum tolerance', &
|
||||
stateResiduum(1:mySizeDotState,g,i,e) / constitutive_aTolState(g,i,e)%p(1:mySizeDotState)
|
||||
|
@ -1980,7 +1980,7 @@ endif
|
|||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 5 &
|
||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateState at el ip g ',e,i,g
|
||||
write(6,*)
|
||||
write(6,'(a,/,(12(x),12(e12.5,x)))') '<< CRYST >> dotState', constitutive_dotState(g,i,e)%p(1:mySizeDotState)
|
||||
write(6,*)
|
||||
|
@ -2381,7 +2381,7 @@ residuum = constitutive_state(g,i,e)%p(1:mySize) - constitutive_subState0(g,i,e)
|
|||
if (any(residuum /= residuum)) then ! if NaN occured then return without changing the state
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateState encountered NaN at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateState encountered NaN at el ip g ',e,i,g
|
||||
endif
|
||||
#endif
|
||||
return
|
||||
|
@ -2398,9 +2398,9 @@ converged = all( abs(residuum) < constitutive_aTolState(g,i,e)%p(1:mySize) &
|
|||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
if (converged) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateState converged at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateState converged at el ip g ',e,i,g
|
||||
else
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateState did not converge at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateState did not converge at el ip g ',e,i,g
|
||||
endif
|
||||
write(6,*)
|
||||
write(6,'(a,f6.1)') '<< CRYST >> crystallite_statedamper ',crystallite_statedamper(g,i,e)
|
||||
|
@ -2464,7 +2464,7 @@ residuum = crystallite_Temperature(g,i,e) - crystallite_subTemperature0(g,i,e) &
|
|||
if (residuum /= residuum) then
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> updateTemperature encountered NaN at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> updateTemperature encountered NaN at el ip g ',e,i,g
|
||||
endif
|
||||
#endif
|
||||
return
|
||||
|
@ -2591,7 +2591,7 @@ integer(pLongInt) tick, &
|
|||
crystallite_integrateStress = .false.
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> integrateStress at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> integrateStress at el ip g ',e,i,g
|
||||
endif
|
||||
#endif
|
||||
|
||||
|
@ -2621,7 +2621,7 @@ invFp_current = math_inv3x3(Fp_current)
|
|||
if (all(invFp_current == 0.0_pReal)) then ! ... failed?
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> integrateStress failed on invFp_current inversion at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> integrateStress failed on invFp_current inversion at el ip g ',e,i,g
|
||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write(6,*)
|
||||
write(6,'(a,/,3(12(x),3(f12.7,x)/))') '<< CRYST >> invFp_new',math_transpose3x3(invFp_new(1:3,1:3))
|
||||
|
@ -2655,7 +2655,7 @@ LpLoop: do
|
|||
if (NiterationStress > nStress) then
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3)') '<< CRYST >> integrateStress reached loop limit at el ip g ',e,i,g
|
||||
write(6,'(a,i8,x,i2,x,i3)') '<< CRYST >> integrateStress reached loop limit at el ip g ',e,i,g
|
||||
write(6,*)
|
||||
endif
|
||||
#endif
|
||||
|
@ -2721,7 +2721,7 @@ LpLoop: do
|
|||
if (any(residuum/=residuum) .and. leapfrog == 1.0) then
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3,a,i3,a)') '<< CRYST >> integrateStress encountered NaN at el ip g ',e,i,g,&
|
||||
write(6,'(a,i8,x,i2,x,i3,a,i3,a)') '<< CRYST >> integrateStress encountered NaN at el ip g ',e,i,g,&
|
||||
' ; iteration ', NiterationStress,&
|
||||
' >> returning..!'
|
||||
endif
|
||||
|
@ -2739,7 +2739,7 @@ LpLoop: do
|
|||
) then
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 5) then
|
||||
write(6,'(a,i5,x,i2,x,i3,x,a,i3)') '<< CRYST >> integrateStress encountered high-speed crash at el ip g ',e,i,g,&
|
||||
write(6,'(a,i8,x,i2,x,i3,x,a,i3)') '<< CRYST >> integrateStress encountered high-speed crash at el ip g ',e,i,g,&
|
||||
'; iteration ', NiterationStress
|
||||
endif
|
||||
#endif
|
||||
|
@ -2771,7 +2771,7 @@ LpLoop: do
|
|||
if (error) then
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3,a,i3)') '<< CRYST >> integrateStress failed on dR/dLp inversion at el ip g ',e,i,g,&
|
||||
write(6,'(a,i8,x,i2,x,i3,a,i3)') '<< CRYST >> integrateStress failed on dR/dLp inversion at el ip g ',e,i,g,&
|
||||
' ; iteration ', NiterationStress
|
||||
if (debug_verbosity > 5 &
|
||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
|
@ -2815,7 +2815,7 @@ call math_invert3x3(invFp_new,Fp_new,det,error)
|
|||
if (error) then
|
||||
#ifndef _OPENMP
|
||||
if (debug_verbosity > 4) then
|
||||
write(6,'(a,i5,x,i2,x,i3,a,i3)') '<< CRYST >> integrateStress failed on invFp_new inversion at el ip g ',e,i,g, &
|
||||
write(6,'(a,i8,x,i2,x,i3,a,i3)') '<< CRYST >> integrateStress failed on invFp_new inversion at el ip g ',e,i,g, &
|
||||
' ; iteration ', NiterationStress
|
||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||
write(6,*)
|
||||
|
@ -3072,6 +3072,10 @@ function crystallite_postResults(&
|
|||
crystallite_postResults(c+1:c+4) = math_QuaternionToAxisAngle(crystallite_rotation(1:4,g,i,e)) ! grain rotation away from initial orientation as axis-angle
|
||||
crystallite_postResults(c+4) = inDeg * crystallite_postResults(c+4) ! angle in degree
|
||||
c = c + 4_pInt
|
||||
|
||||
! remark: tensor output is of the form 11,12,13, 21,22,23, 31,32,33
|
||||
! thus row index i is slow, while column index j is fast. reminder: "row is slow"
|
||||
|
||||
case ('defgrad','f')
|
||||
mySize = 9_pInt
|
||||
crystallite_postResults(c+1:c+1+mySize) = reshape(math_transpose3x3(crystallite_partionedF(1:3,1:3,g,i,e)),(/mySize/))
|
||||
|
|
|
@ -207,30 +207,30 @@ allocate(materialpoint_results(materialpoint_sizeResults,mesh_maxNips,mesh_NcpEl
|
|||
write(6,*) '$Id$'
|
||||
write(6,*)
|
||||
if (debug_verbosity > 0) then
|
||||
write(6,'(a32,x,7(i5,x))') 'homogenization_state0: ', shape(homogenization_state0)
|
||||
write(6,'(a32,x,7(i5,x))') 'homogenization_subState0: ', shape(homogenization_subState0)
|
||||
write(6,'(a32,x,7(i5,x))') 'homogenization_state: ', shape(homogenization_state)
|
||||
write(6,'(a32,x,7(i5,x))') 'homogenization_sizeState: ', shape(homogenization_sizeState)
|
||||
write(6,'(a32,x,7(i5,x))') 'homogenization_sizePostResults: ', shape(homogenization_sizePostResults)
|
||||
write(6,'(a32,x,7(i8,x))') 'homogenization_state0: ', shape(homogenization_state0)
|
||||
write(6,'(a32,x,7(i8,x))') 'homogenization_subState0: ', shape(homogenization_subState0)
|
||||
write(6,'(a32,x,7(i8,x))') 'homogenization_state: ', shape(homogenization_state)
|
||||
write(6,'(a32,x,7(i8,x))') 'homogenization_sizeState: ', shape(homogenization_sizeState)
|
||||
write(6,'(a32,x,7(i8,x))') 'homogenization_sizePostResults: ', shape(homogenization_sizePostResults)
|
||||
write(6,*)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_dPdF: ', shape(materialpoint_dPdF)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_F0: ', shape(materialpoint_F0)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_F: ', shape(materialpoint_F)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subF0: ', shape(materialpoint_subF0)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subF: ', shape(materialpoint_subF)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_P: ', shape(materialpoint_P)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_Temperature: ', shape(materialpoint_Temperature)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subFrac: ', shape(materialpoint_subFrac)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subStep: ', shape(materialpoint_subStep)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subdt: ', shape(materialpoint_subdt)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_requested: ', shape(materialpoint_requested)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_converged: ', shape(materialpoint_converged)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_doneAndHappy: ', shape(materialpoint_doneAndHappy)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_dPdF: ', shape(materialpoint_dPdF)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_F0: ', shape(materialpoint_F0)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_F: ', shape(materialpoint_F)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_subF0: ', shape(materialpoint_subF0)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_subF: ', shape(materialpoint_subF)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_P: ', shape(materialpoint_P)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_Temperature: ', shape(materialpoint_Temperature)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_subFrac: ', shape(materialpoint_subFrac)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_subStep: ', shape(materialpoint_subStep)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_subdt: ', shape(materialpoint_subdt)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_requested: ', shape(materialpoint_requested)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_converged: ', shape(materialpoint_converged)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_doneAndHappy: ', shape(materialpoint_doneAndHappy)
|
||||
write(6,*)
|
||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_results: ', shape(materialpoint_results)
|
||||
write(6,'(a32,x,7(i8,x))') 'materialpoint_results: ', shape(materialpoint_results)
|
||||
write(6,*)
|
||||
write(6,'(a32,x,7(i5,x))') 'maxSizeState: ', homogenization_maxSizeState
|
||||
write(6,'(a32,x,7(i5,x))') 'maxSizePostResults: ', homogenization_maxSizePostResults
|
||||
write(6,'(a32,x,7(i8,x))') 'maxSizeState: ', homogenization_maxSizeState
|
||||
write(6,'(a32,x,7(i8,x))') 'maxSizePostResults: ', homogenization_maxSizePostResults
|
||||
endif
|
||||
call flush(6)
|
||||
!$OMP END CRITICAL (write2out)
|
||||
|
|
|
@ -16,16 +16,16 @@ COMPILE_SINGLE = -openmp -c -O3 -fpp
|
|||
|
||||
precision :=double
|
||||
ifeq ($(precision),single)
|
||||
cpspectral_single.exe: mpie_spectral_single.o CPFEM.a
|
||||
ifort -openmp -o cpspectral_single.exe mpie_spectral_single.o CPFEM.a libfftw3f_threads.a libfftw3f.a constitutive.a advanced.a basics.a -lpthread
|
||||
mpie_spectral_single.o: mpie_spectral_single.f90 CPFEM.o
|
||||
ifort $(COMPILE_DOUBLE) mpie_spectral_single.f90
|
||||
DAMASK_spectral_single.exe: DAMASK_spectral_single.o CPFEM.a
|
||||
ifort -openmp -o DAMASK_spectral_single.exe DAMASK_spectral_single.o CPFEM.a include/libfftw3f_threads.a include/libfftw3f.a constitutive.a advanced.a basics.a -lpthread
|
||||
DAMASK_spectral_single.o: DAMASK_spectral_single.f90 CPFEM.o
|
||||
ifort $(COMPILE_DOUBLE) DAMASK_spectral_single.f90
|
||||
|
||||
else
|
||||
cpspectral_double.exe: mpie_spectral.o CPFEM.a
|
||||
ifort -openmp -o cpspectral_double.exe mpie_spectral.o CPFEM.a libfftw3_threads.a libfftw3.a constitutive.a advanced.a basics.a -lpthread
|
||||
mpie_spectral.o: mpie_spectral.f90 CPFEM.o
|
||||
ifort $(COMPILE_DOUBLE) mpie_spectral.f90
|
||||
DAMASK_spectral.exe: DAMASK_spectral.o CPFEM.a
|
||||
ifort -openmp -o DAMASK_spectral.exe DAMASK_spectral.o CPFEM.a include/libfftw3_threads.a include/libfftw3.a constitutive.a advanced.a basics.a -lpthread
|
||||
DAMASK_spectral.o: DAMASK_spectral.f90 CPFEM.o
|
||||
ifort $(COMPILE_DOUBLE) DAMASK_spectral.f90
|
||||
endif
|
||||
|
||||
CPFEM.a: CPFEM.o
|
||||
|
@ -82,10 +82,10 @@ FEsolving.o: FEsolving.f90 basics.a
|
|||
|
||||
ifeq ($(precision),single)
|
||||
basics.a: debug.o math.o
|
||||
ar rc basics.a debug.o math.o numerics.o IO.o mpie_spectral_interface.o prec_single.o
|
||||
ar rc basics.a debug.o math.o numerics.o IO.o DAMASK_spectral_interface.o prec_single.o
|
||||
else
|
||||
basics.a: debug.o math.o
|
||||
ar rc basics.a debug.o math.o numerics.o IO.o mpie_spectral_interface.o prec.o
|
||||
ar rc basics.a debug.o math.o numerics.o IO.o DAMASK_spectral_interface.o prec.o
|
||||
endif
|
||||
|
||||
debug.o: debug.f90 numerics.o
|
||||
|
@ -95,17 +95,17 @@ math.o: math.f90 numerics.o
|
|||
|
||||
numerics.o: numerics.f90 IO.o
|
||||
ifort $(COMPILE_SINGLE) numerics.f90
|
||||
IO.o: IO.f90 mpie_spectral_interface.o
|
||||
IO.o: IO.f90 DAMASK_spectral_interface.o
|
||||
ifort $(COMPILE_SINGLE) IO.f90
|
||||
|
||||
ifeq ($(precision),single)
|
||||
mpie_spectral_interface.o: mpie_spectral_interface.f90 prec_single.o
|
||||
ifort $(COMPILE_SINGLE) mpie_spectral_interface.f90
|
||||
DAMASK_spectral_interface.o: DAMASK_spectral_interface.f90 prec_single.o
|
||||
ifort $(COMPILE_SINGLE) DAMASK_spectral_interface.f90
|
||||
prec_single.o: prec_single.f90
|
||||
ifort $(COMPILE_SINGLE) prec_single.f90
|
||||
else
|
||||
mpie_spectral_interface.o: mpie_spectral_interface.f90 prec.o
|
||||
ifort $(COMPILE_SINGLE) mpie_spectral_interface.f90
|
||||
DAMASK_spectral_interface.o: DAMASK_spectral_interface.f90 prec.o
|
||||
ifort $(COMPILE_SINGLE) DAMASK_spectral_interface.f90
|
||||
prec.o: prec.f90
|
||||
ifort $(COMPILE_SINGLE) prec.f90
|
||||
endif
|
||||
|
@ -114,7 +114,6 @@ endif
|
|||
clean:
|
||||
rm -rf *.o
|
||||
rm -rf *.mod
|
||||
rm -rf *.exe
|
||||
rm -rf basics.a
|
||||
rm -rf advanced.a
|
||||
rm -rf constitutive.a
|
||||
|
|
|
@ -3379,7 +3379,7 @@ if (debug_verbosity > 1) then
|
|||
write (6,*)
|
||||
write (6,*) "Input Parser: SUBNODE COORDINATES"
|
||||
write (6,*)
|
||||
write(6,'(a5,x,a5,x,a15,x,a15,x,a20,3(x,a12))') 'elem','IP','IP neighbor','IPFaceNodes','subNodeOnIPFace','x','y','z'
|
||||
write(6,'(a8,x,a5,x,a15,x,a15,x,a20,3(x,a12))') 'elem','IP','IP neighbor','IPFaceNodes','subNodeOnIPFace','x','y','z'
|
||||
do e = 1,mesh_NcpElems ! loop over cpElems
|
||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||
t = mesh_element(2,e) ! get elemType
|
||||
|
@ -3387,7 +3387,7 @@ if (debug_verbosity > 1) then
|
|||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
||||
do f = 1,FE_NipNeighbors(t) ! loop over interfaces of IP
|
||||
do n = 1,FE_NipFaceNodes ! loop over nodes on interface
|
||||
write(6,'(i5,x,i5,x,i15,x,i15,x,i20,3(x,f12.8))') e,i,f,n,FE_subNodeOnIPFace(n,f,i,t),&
|
||||
write(6,'(i8,x,i5,x,i15,x,i15,x,i20,3(x,f12.8))') e,i,f,n,FE_subNodeOnIPFace(n,f,i,t),&
|
||||
mesh_subNodeCoord(1,FE_subNodeOnIPFace(n,f,i,t),e),&
|
||||
mesh_subNodeCoord(2,FE_subNodeOnIPFace(n,f,i,t),e),&
|
||||
mesh_subNodeCoord(3,FE_subNodeOnIPFace(n,f,i,t),e)
|
||||
|
@ -3397,12 +3397,12 @@ if (debug_verbosity > 1) then
|
|||
enddo
|
||||
write(6,*)
|
||||
write(6,*) 'Input Parser: IP COORDINATES'
|
||||
write(6,'(a5,x,a5,3(x,a12))') 'elem','IP','x','y','z'
|
||||
write(6,'(a8,x,a5,3(x,a12))') 'elem','IP','x','y','z'
|
||||
do e = 1,mesh_NcpElems
|
||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||
do i = 1,FE_Nips(mesh_element(2,e))
|
||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
||||
write (6,'(i5,x,i5,3(x,f12.8))') e, i, mesh_ipCenterOfGravity(:,i,e)
|
||||
write (6,'(i8,x,i5,3(x,f12.8))') e, i, mesh_ipCenterOfGravity(:,i,e)
|
||||
enddo
|
||||
enddo
|
||||
write (6,*)
|
||||
|
@ -3410,12 +3410,12 @@ if (debug_verbosity > 1) then
|
|||
write (6,*)
|
||||
write (6,"(a13,x,e15.8)") "total volume", sum(mesh_ipVolume)
|
||||
write (6,*)
|
||||
write (6,"(a5,x,a5,x,a15,x,a5,x,a15,x,a16)") "elem","IP","volume","face","area","-- normal --"
|
||||
write (6,"(a8,x,a5,x,a15,x,a5,x,a15,x,a16)") "elem","IP","volume","face","area","-- normal --"
|
||||
do e = 1,mesh_NcpElems
|
||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||
do i = 1,FE_Nips(mesh_element(2,e))
|
||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
||||
write (6,"(i5,x,i5,x,e15.8)") e,i,mesh_IPvolume(i,e)
|
||||
write (6,"(i8,x,i5,x,e15.8)") e,i,mesh_IPvolume(i,e)
|
||||
do f = 1,FE_NipNeighbors(mesh_element(2,e))
|
||||
write (6,"(i33,x,e15.8,x,3(f6.3,x))") f,mesh_ipArea(f,i,e),mesh_ipAreaNormal(:,f,i,e)
|
||||
enddo
|
||||
|
@ -3435,14 +3435,14 @@ if (debug_verbosity > 1) then
|
|||
write(6,*)
|
||||
write(6,*) "Input Parser: IP NEIGHBORHOOD"
|
||||
write(6,*)
|
||||
write(6,"(a10,x,a10,x,a10,x,a3,x,a13,x,a13)") "elem","IP","neighbor","","elemNeighbor","ipNeighbor"
|
||||
write(6,"(a8,x,a10,x,a10,x,a3,x,a13,x,a13)") "elem","IP","neighbor","","elemNeighbor","ipNeighbor"
|
||||
do e = 1,mesh_NcpElems ! loop over cpElems
|
||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||
t = mesh_element(2,e) ! get elemType
|
||||
do i = 1,FE_Nips(t) ! loop over IPs of elem
|
||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
||||
do n = 1,FE_NipNeighbors(t) ! loop over neighbors of IP
|
||||
write (6,"(i10,x,i10,x,i10,x,a3,x,i13,x,i13)") e,i,n,'-->',mesh_ipNeighborhood(1,n,i,e),mesh_ipNeighborhood(2,n,i,e)
|
||||
write (6,"(i8,x,i10,x,i10,x,a3,x,i13,x,i13)") e,i,n,'-->',mesh_ipNeighborhood(1,n,i,e),mesh_ipNeighborhood(2,n,i,e)
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
|
|
Loading…
Reference in New Issue