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,*) '$Id$'
|
||||||
write(6,*)
|
write(6,*)
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
write(6,'(a32,x,6(i5,x))') 'CPFEM_cs: ', shape(CPFEM_cs)
|
write(6,'(a32,x,6(i8,x))') 'CPFEM_cs: ', shape(CPFEM_cs)
|
||||||
write(6,'(a32,x,6(i5,x))') 'CPFEM_dcsdE: ', shape(CPFEM_dcsdE)
|
write(6,'(a32,x,6(i8,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_dcsdE_knownGood: ', shape(CPFEM_dcsdE_knownGood)
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) 'parallelExecution: ', parallelExecution
|
write(6,*) 'parallelExecution: ', parallelExecution
|
||||||
write(6,*) 'symmetricSolver: ', symmetricSolver
|
write(6,*) 'symmetricSolver: ', symmetricSolver
|
||||||
|
@ -387,7 +387,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
||||||
!$OMP CRITICAL (write2out)
|
!$OMP CRITICAL (write2out)
|
||||||
write(6,'(a)') '<< CPFEM >> Aging states'
|
write(6,'(a)') '<< CPFEM >> Aging states'
|
||||||
if (debug_e == cp_en .and. debug_i == IP) then
|
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
|
cp_en, IP, 1, constitutive_state(1,IP,cp_en)%p
|
||||||
write(6,*)
|
write(6,*)
|
||||||
endif
|
endif
|
||||||
|
@ -473,7 +473,7 @@ subroutine CPFEM_general(mode, ffn, ffn1, Temperature, dt, element, IP, cauchySt
|
||||||
if (.not. terminallyIll .and. .not. outdatedFFN1) then
|
if (.not. terminallyIll .and. .not. outdatedFFN1) then
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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 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)
|
write(6,'(a,/,3(12(x),3(f10.6,x),/))') '<< CPFEM >> FFN1 now:',math_transpose3x3(ffn1)
|
||||||
!$OMP END CRITICAL (write2out)
|
!$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
|
FEsolving_execIP(2,cp_en) = IP
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
call materialpoint_stressAndItsTangent(updateJaco, dt) ! calculate stress and its tangent
|
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
|
elseif (.not. CPFEM_calc_done) then
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
call materialpoint_stressAndItsTangent(updateJaco, dt) ! calculate stress and its tangent (parallel execution inside)
|
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
|
if (mode < 6 .and. debug_verbosity > 0 .and. ((debug_e == cp_en .and. debug_i == IP) .or. .not. debug_selectiveDebugger)) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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,i8,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,/,6(12(x),6(f10.3,x)/))') '<< CPFEM >> jacobian/GPa at el ip ', cp_en, IP, transpose(jacobian)/1e9
|
||||||
call flush(6)
|
call flush(6)
|
||||||
!$OMP END CRITICAL (write2out)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -52,7 +52,7 @@ CONTAINS
|
||||||
subroutine mpie_interface_init()
|
subroutine mpie_interface_init()
|
||||||
!--------------------
|
!--------------------
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) '<<<+- mpie_cpfem_abaqus init -+>>>'
|
write(6,*) '<<<+- DAMASK_abaqus init -+>>>'
|
||||||
write(6,*) '$Id$'
|
write(6,*) '$Id$'
|
||||||
write(6,*)
|
write(6,*)
|
||||||
return
|
return
|
||||||
|
@ -217,7 +217,7 @@ subroutine vumat (jblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, &
|
||||||
|
|
||||||
if ( debug_verbosity > 1 ) then
|
if ( debug_verbosity > 1 ) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -226,7 +226,7 @@ subroutine vumat (jblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, &
|
||||||
|
|
||||||
if ( debug_verbosity > 1 ) then
|
if ( debug_verbosity > 1 ) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -248,7 +248,7 @@ subroutine vumat (jblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, &
|
||||||
|
|
||||||
if ( debug_verbosity > 1 ) then
|
if ( debug_verbosity > 1 ) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -52,7 +52,7 @@ CONTAINS
|
||||||
subroutine mpie_interface_init()
|
subroutine mpie_interface_init()
|
||||||
!--------------------
|
!--------------------
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) '<<<+- mpie_cpfem_abaqus init -+>>>'
|
write(6,*) '<<<+- DAMASK_abaqus init -+>>>'
|
||||||
write(6,*) '$Id$'
|
write(6,*) '$Id$'
|
||||||
write(6,*)
|
write(6,*)
|
||||||
return
|
return
|
||||||
|
@ -188,7 +188,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
||||||
lastMode = .false. ! pretend last step was collection
|
lastMode = .false. ! pretend last step was collection
|
||||||
calcMode = .false. ! pretend last step was collection
|
calcMode = .false. ! pretend last step was collection
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
else if (kinc - theInc > 1) then ! >> restart of broken analysis <<
|
else if (kinc - theInc > 1) then ! >> restart of broken analysis <<
|
||||||
lastIncConverged = .false. ! no Jacobian backup
|
lastIncConverged = .false. ! no Jacobian backup
|
||||||
|
@ -196,7 +196,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
||||||
lastMode = .true. ! pretend last step was calculation
|
lastMode = .true. ! pretend last step was calculation
|
||||||
calcMode = .true. ! pretend last step was calculation
|
calcMode = .true. ! pretend last step was calculation
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
else ! >> just the next inc <<
|
else ! >> just the next inc <<
|
||||||
lastIncConverged = .true. ! request Jacobian backup
|
lastIncConverged = .true. ! request Jacobian backup
|
||||||
|
@ -204,7 +204,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
||||||
lastMode = .true. ! assure last step was calculation
|
lastMode = .true. ! assure last step was calculation
|
||||||
calcMode = .true. ! assure last step was calculation
|
calcMode = .true. ! assure last step was calculation
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -215,7 +215,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
||||||
cycleCounter = -1 ! first calc step increments this to cycle = 0
|
cycleCounter = -1 ! first calc step increments this to cycle = 0
|
||||||
calcMode = .true. ! pretend last step was calculation
|
calcMode = .true. ! pretend last step was calculation
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
|
|
||||||
endif ! convergence treatment end
|
endif ! convergence treatment end
|
||||||
|
@ -257,7 +257,7 @@ subroutine UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,&
|
||||||
|
|
||||||
if ( debug_verbosity > 1 ) then
|
if ( debug_verbosity > 1 ) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$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)
|
!$OMP END CRITICAL (write2out)
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -34,16 +34,16 @@
|
||||||
!
|
!
|
||||||
!********************************************************************
|
!********************************************************************
|
||||||
! Usage:
|
! Usage:
|
||||||
! - start program with mpie_spectral PathToGeomFile/NameOfGeom.geom
|
! - start program with DAMASK_spectral PathToGeomFile/NameOfGeom.geom
|
||||||
! PathToLoadFile/NameOfLoadFile.load
|
! PathToLoadFile/NameOfLoadFile.load
|
||||||
! - PathToGeomFile will be the working directory
|
! - PathToGeomFile will be the working directory
|
||||||
! - make sure the file "material.config" exists in the working
|
! - make sure the file "material.config" exists in the working
|
||||||
! directory. For further configuration use "numerics.config"
|
! 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 prec, only: pInt, pReal
|
||||||
use IO
|
use IO
|
||||||
use math
|
use math
|
||||||
|
@ -54,7 +54,7 @@ program mpie_spectral
|
||||||
!$ use OMP_LIB ! the openMP function library
|
!$ use OMP_LIB ! the openMP function library
|
||||||
|
|
||||||
implicit none
|
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
|
! compile FFTW 3.2.2 with ./configure --enable-threads
|
||||||
! variables to read from loadcase and geom file
|
! variables to read from loadcase and geom file
|
||||||
real(pReal), dimension(9) :: valuevector ! stores information temporarily from loadcase 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 velocitygrad:',transpose(bc_mask(:,:,1,i))
|
||||||
print '(a,/,3(3(l,x)/))', 'bc_mask for stress:' ,transpose(bc_mask(:,:,2,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,f12.6)','time: ',bc_timeIncrement(i)
|
||||||
print '(a,i5)','incs: ',bc_steps(i)
|
print '(a,i6)','incs: ',bc_steps(i)
|
||||||
print *, ''
|
print *, ''
|
||||||
enddo
|
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)
|
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,/,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
|
print '(a,i4)','homogenization: ',homog
|
||||||
|
|
||||||
allocate (defgrad (resolution(1),resolution(2),resolution(3),3,3)); defgrad = 0.0_pReal
|
allocate (defgrad (resolution(1),resolution(2),resolution(3),3,3)); defgrad = 0.0_pReal
|
||||||
|
@ -581,7 +581,7 @@ program mpie_spectral
|
||||||
close(538)
|
close(538)
|
||||||
call dfftw_destroy_plan(plan_fft(1)); call dfftw_destroy_plan(plan_fft(2))
|
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
|
! quit subroutine to satisfy IO_error
|
|
@ -20,7 +20,7 @@
|
||||||
!* $Id$
|
!* $Id$
|
||||||
!********************************************************************
|
!********************************************************************
|
||||||
|
|
||||||
MODULE mpie_interface
|
MODULE spectral_interface
|
||||||
use prec, only: pInt, pReal
|
use prec, only: pInt, pReal
|
||||||
character(len=64), parameter :: FEsolver = 'Spectral'
|
character(len=64), parameter :: FEsolver = 'Spectral'
|
||||||
character(len=5), parameter :: InputFileExtension = '.geom'
|
character(len=5), parameter :: InputFileExtension = '.geom'
|
||||||
|
@ -32,10 +32,10 @@ CONTAINS
|
||||||
! initialize interface module
|
! initialize interface module
|
||||||
!
|
!
|
||||||
!********************************************************************
|
!********************************************************************
|
||||||
subroutine mpie_interface_init()
|
subroutine spectral_interface_init()
|
||||||
|
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) '<<<+- mpie_spectral init -+>>>'
|
write(6,*) '<<<+- spectral_interface init -+>>>'
|
||||||
write(6,*) '$Id$'
|
write(6,*) '$Id$'
|
||||||
write(6,*)
|
write(6,*)
|
||||||
|
|
|
@ -340,19 +340,19 @@ constitutive_maxSizePostResults = maxval(constitutive_sizePostResults)
|
||||||
write(6,*) '$Id$'
|
write(6,*) '$Id$'
|
||||||
write(6,*)
|
write(6,*)
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_state0: ', shape(constitutive_state0)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_state0: ', shape(constitutive_state0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_partionedState0: ', shape(constitutive_partionedState0)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_partionedState0: ', shape(constitutive_partionedState0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_subState0: ', shape(constitutive_subState0)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_subState0: ', shape(constitutive_subState0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_state: ', shape(constitutive_state)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_state: ', shape(constitutive_state)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_aTolState: ', shape(constitutive_aTolState)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_aTolState: ', shape(constitutive_aTolState)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_dotState: ', shape(constitutive_dotState)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_dotState: ', shape(constitutive_dotState)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_sizeState: ', shape(constitutive_sizeState)
|
write(6,'(a32,x,7(i8,x))') 'constitutive_sizeState: ', shape(constitutive_sizeState)
|
||||||
write(6,'(a32,x,7(i5,x))') 'constitutive_sizeDotState: ', shape(constitutive_sizeDotState)
|
write(6,'(a32,x,7(i8,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_sizePostResults: ', shape(constitutive_sizePostResults)
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,'(a32,x,7(i5,x))') 'maxSizeState: ', constitutive_maxSizeState
|
write(6,'(a32,x,7(i8,x))') 'maxSizeState: ', constitutive_maxSizeState
|
||||||
write(6,'(a32,x,7(i5,x))') 'maxSizeDotState: ', constitutive_maxSizeDotState
|
write(6,'(a32,x,7(i8,x))') 'maxSizeDotState: ', constitutive_maxSizeDotState
|
||||||
write(6,'(a32,x,7(i5,x))') 'maxSizePostResults: ', constitutive_maxSizePostResults
|
write(6,'(a32,x,7(i8,x))') 'maxSizePostResults: ', constitutive_maxSizePostResults
|
||||||
endif
|
endif
|
||||||
call flush(6)
|
call flush(6)
|
||||||
!$OMP END CRITICAL (write2out)
|
!$OMP END CRITICAL (write2out)
|
||||||
|
|
|
@ -1144,7 +1144,7 @@ state(g,ip,el)%p(12*ns+1:12*ns+6) = math_Mandel33to6(Tdislo)
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then
|
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,*)
|
||||||
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,*)
|
||||||
write(6,'(a,/,12(x),12(e10.3,x))') '<< CONST >> rhoForest', rhoForest
|
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 >> tauThreshold / MPa', tauThreshold/1e6
|
||||||
|
@ -1271,7 +1271,7 @@ constitutive_nonlocal_v(1:ns,1:4,g,ip,el) = v
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then
|
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,*)
|
||||||
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,*)
|
||||||
write(6,'(a,/,12(x),12(f12.5,x))') '<< CONST >> tau / MPa', tau/1e6_pReal
|
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
|
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
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then
|
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,*)
|
||||||
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,*)
|
||||||
write(6,'(a,/,4(12(x),12(f12.5,x)),/)') '<< CONST >> gdot / 1e-3',gdot*1e3_pReal
|
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
|
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
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 6 .and. ((debug_e == el .and. debug_i == ip .and. debug_g == g) .or. .not. debug_selectiveDebugger)) then
|
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,*)
|
||||||
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,*)
|
write(6,*)
|
||||||
endif
|
endif
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -375,49 +375,49 @@ crystallite_fallbackdPdF = crystallite_dPdF ! use initial ela
|
||||||
! *** Output to MARC output file ***
|
! *** Output to MARC output file ***
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$OMP CRITICAL (write2out)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Temperature: ', shape(crystallite_Temperature)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_Temperature: ', shape(crystallite_Temperature)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dotTemperature: ', shape(crystallite_dotTemperature)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_dotTemperature: ', shape(crystallite_dotTemperature)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Fe: ', shape(crystallite_Fe)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_Fe: ', shape(crystallite_Fe)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Fp: ', shape(crystallite_Fp)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_Fp: ', shape(crystallite_Fp)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Lp: ', shape(crystallite_Lp)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_Lp: ', shape(crystallite_Lp)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_F0: ', shape(crystallite_F0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_F0: ', shape(crystallite_F0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Fp0: ', shape(crystallite_Fp0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_Fp0: ', shape(crystallite_Fp0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_Lp0: ', shape(crystallite_Lp0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_Lp0: ', shape(crystallite_Lp0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedF: ', shape(crystallite_partionedF)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedF: ', shape(crystallite_partionedF)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedTemp0: ', shape(crystallite_partionedTemperature0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedTemp0: ', shape(crystallite_partionedTemperature0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedF0: ', shape(crystallite_partionedF0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedF0: ', shape(crystallite_partionedF0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedFp0: ', shape(crystallite_partionedFp0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedFp0: ', shape(crystallite_partionedFp0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partionedLp0: ', shape(crystallite_partionedLp0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_partionedLp0: ', shape(crystallite_partionedLp0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subF: ', shape(crystallite_subF)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subF: ', shape(crystallite_subF)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subTemperature0: ', shape(crystallite_subTemperature0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subTemperature0: ', shape(crystallite_subTemperature0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_symmetryID: ', shape(crystallite_symmetryID)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_symmetryID: ', shape(crystallite_symmetryID)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subF0: ', shape(crystallite_subF0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subF0: ', shape(crystallite_subF0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subFp0: ', shape(crystallite_subFp0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subFp0: ', shape(crystallite_subFp0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subLp0: ', shape(crystallite_subLp0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subLp0: ', shape(crystallite_subLp0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_P: ', shape(crystallite_P)
|
write(6,'(a35,x,7(i8,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(i8,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(i8,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(i8,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(i8,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(i8,x))') 'crystallite_dPdF: ', shape(crystallite_dPdF)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dPdF0: ', shape(crystallite_dPdF0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_dPdF0: ', shape(crystallite_dPdF0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_partioneddPdF0: ', shape(crystallite_partioneddPdF0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_partioneddPdF0: ', shape(crystallite_partioneddPdF0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_fallbackdPdF: ', shape(crystallite_fallbackdPdF)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_fallbackdPdF: ', shape(crystallite_fallbackdPdF)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_orientation: ', shape(crystallite_orientation)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_orientation: ', shape(crystallite_orientation)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_orientation0: ', shape(crystallite_orientation0)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_orientation0: ', shape(crystallite_orientation0)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_rotation: ', shape(crystallite_rotation)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_rotation: ', shape(crystallite_rotation)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_disorientation: ', shape(crystallite_disorientation)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_disorientation: ', shape(crystallite_disorientation)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_dt: ', shape(crystallite_dt)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_dt: ', shape(crystallite_dt)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subdt: ', shape(crystallite_subdt)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subdt: ', shape(crystallite_subdt)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subFrac: ', shape(crystallite_subFrac)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subFrac: ', shape(crystallite_subFrac)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_subStep: ', shape(crystallite_subStep)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_subStep: ', shape(crystallite_subStep)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_stateDamper: ', shape(crystallite_stateDamper)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_stateDamper: ', shape(crystallite_stateDamper)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_localConstitution: ', shape(crystallite_localConstitution)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_localConstitution: ', shape(crystallite_localConstitution)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_requested: ', shape(crystallite_requested)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_requested: ', shape(crystallite_requested)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_todo: ', shape(crystallite_todo)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_todo: ', shape(crystallite_todo)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_converged: ', shape(crystallite_converged)
|
write(6,'(a35,x,7(i8,x))') 'crystallite_converged: ', shape(crystallite_converged)
|
||||||
write(6,'(a35,x,7(i5,x))') 'crystallite_sizePostResults: ', shape(crystallite_sizePostResults)
|
write(6,'(a35,x,7(i8,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_sizePostResult: ', shape(crystallite_sizePostResult)
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) 'Number of nonlocal grains: ',count(.not. crystallite_localConstitution)
|
write(6,*) 'Number of nonlocal grains: ',count(.not. crystallite_localConstitution)
|
||||||
call flush(6)
|
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
|
.and. debug_g > 0 .and. debug_g <= homogenization_maxNgrains) then
|
||||||
!$OMP CRITICAL (write2out)
|
!$OMP CRITICAL (write2out)
|
||||||
write (6,*)
|
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,/,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 ', &
|
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))
|
math_transpose3x3(crystallite_partionedF0(1:3,1:3,debug_g,debug_i,debug_e))
|
||||||
|
@ -692,7 +692,7 @@ enddo
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4 &
|
if (debug_verbosity > 4 &
|
||||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
.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,*)
|
||||||
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(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))
|
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 &
|
if (debug_verbosity > 5 &
|
||||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||||
mySizeDotState = constitutive_sizeDotState(g,i,e)
|
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,*)
|
||||||
write(6,'(a,/,(12(x),12(e12.5,x)))') '<< CRYST >> dotState', constitutive_dotState(g,i,e)%p(1:mySizeDotState)
|
write(6,'(a,/,(12(x),12(e12.5,x)))') '<< CRYST >> dotState', constitutive_dotState(g,i,e)%p(1:mySizeDotState)
|
||||||
write(6,*)
|
write(6,*)
|
||||||
|
@ -1502,7 +1502,7 @@ relTemperatureResiduum = 0.0_pReal
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 5 &
|
if (debug_verbosity > 5 &
|
||||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
.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,*)
|
||||||
write(6,'(a,/,(12(x),12(f12.1,x)))') '<< CRYST >> absolute residuum tolerance', &
|
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)
|
stateResiduum(1:mySizeDotState,g,i,e) / constitutive_aTolState(g,i,e)%p(1:mySizeDotState)
|
||||||
|
@ -1808,7 +1808,7 @@ relTemperatureResiduum = 0.0_pReal
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 5 &
|
if (debug_verbosity > 5 &
|
||||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
.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,*)
|
||||||
write(6,'(a,/,(12(x),12(f12.1,x)))') '<< CRYST >> absolute residuum tolerance', &
|
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)
|
stateResiduum(1:mySizeDotState,g,i,e) / constitutive_aTolState(g,i,e)%p(1:mySizeDotState)
|
||||||
|
@ -1980,7 +1980,7 @@ endif
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 5 &
|
if (debug_verbosity > 5 &
|
||||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
.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,*)
|
||||||
write(6,'(a,/,(12(x),12(e12.5,x)))') '<< CRYST >> dotState', constitutive_dotState(g,i,e)%p(1:mySizeDotState)
|
write(6,'(a,/,(12(x),12(e12.5,x)))') '<< CRYST >> dotState', constitutive_dotState(g,i,e)%p(1:mySizeDotState)
|
||||||
write(6,*)
|
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
|
if (any(residuum /= residuum)) then ! if NaN occured then return without changing the state
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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
|
||||||
#endif
|
#endif
|
||||||
return
|
return
|
||||||
|
@ -2398,9 +2398,9 @@ converged = all( abs(residuum) < constitutive_aTolState(g,i,e)%p(1:mySize) &
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
||||||
if (converged) 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
|
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
|
endif
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,'(a,f6.1)') '<< CRYST >> crystallite_statedamper ',crystallite_statedamper(g,i,e)
|
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
|
if (residuum /= residuum) then
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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
|
||||||
#endif
|
#endif
|
||||||
return
|
return
|
||||||
|
@ -2591,7 +2591,7 @@ integer(pLongInt) tick, &
|
||||||
crystallite_integrateStress = .false.
|
crystallite_integrateStress = .false.
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
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
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -2621,7 +2621,7 @@ invFp_current = math_inv3x3(Fp_current)
|
||||||
if (all(invFp_current == 0.0_pReal)) then ! ... failed?
|
if (all(invFp_current == 0.0_pReal)) then ! ... failed?
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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
|
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,*)
|
||||||
write(6,'(a,/,3(12(x),3(f12.7,x)/))') '<< CRYST >> invFp_new',math_transpose3x3(invFp_new(1:3,1:3))
|
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
|
if (NiterationStress > nStress) then
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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,*)
|
write(6,*)
|
||||||
endif
|
endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -2721,7 +2721,7 @@ LpLoop: do
|
||||||
if (any(residuum/=residuum) .and. leapfrog == 1.0) then
|
if (any(residuum/=residuum) .and. leapfrog == 1.0) then
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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,&
|
' ; iteration ', NiterationStress,&
|
||||||
' >> returning..!'
|
' >> returning..!'
|
||||||
endif
|
endif
|
||||||
|
@ -2739,7 +2739,7 @@ LpLoop: do
|
||||||
) then
|
) then
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 5) then
|
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
|
'; iteration ', NiterationStress
|
||||||
endif
|
endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -2771,7 +2771,7 @@ LpLoop: do
|
||||||
if (error) then
|
if (error) then
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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
|
' ; iteration ', NiterationStress
|
||||||
if (debug_verbosity > 5 &
|
if (debug_verbosity > 5 &
|
||||||
.and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
.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
|
if (error) then
|
||||||
#ifndef _OPENMP
|
#ifndef _OPENMP
|
||||||
if (debug_verbosity > 4) then
|
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
|
' ; iteration ', NiterationStress
|
||||||
if (debug_verbosity > 5 .and. ((e == debug_e .and. i == debug_i .and. g == debug_g) .or. .not. debug_selectiveDebugger)) then
|
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,*)
|
||||||
|
@ -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+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
|
crystallite_postResults(c+4) = inDeg * crystallite_postResults(c+4) ! angle in degree
|
||||||
c = c + 4_pInt
|
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')
|
case ('defgrad','f')
|
||||||
mySize = 9_pInt
|
mySize = 9_pInt
|
||||||
crystallite_postResults(c+1:c+1+mySize) = reshape(math_transpose3x3(crystallite_partionedF(1:3,1:3,g,i,e)),(/mySize/))
|
crystallite_postResults(c+1:c+1+mySize) = reshape(math_transpose3x3(crystallite_partionedF(1:3,1:3,g,i,e)),(/mySize/))
|
||||||
|
@ -3103,7 +3107,7 @@ function crystallite_postResults(&
|
||||||
c = c + mySize
|
c = c + mySize
|
||||||
end select
|
end select
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
crystallite_postResults(c+1) = constitutive_sizePostResults(g,i,e) ! size of constitutive results
|
crystallite_postResults(c+1) = constitutive_sizePostResults(g,i,e) ! size of constitutive results
|
||||||
c = c + 1_pInt
|
c = c + 1_pInt
|
||||||
crystallite_postResults(c+1:c+constitutive_sizePostResults(g,i,e)) = constitutive_postResults(crystallite_Tstar_v(1:6,g,i,e), &
|
crystallite_postResults(c+1:c+constitutive_sizePostResults(g,i,e)) = constitutive_postResults(crystallite_Tstar_v(1:6,g,i,e), &
|
||||||
|
|
|
@ -207,30 +207,30 @@ allocate(materialpoint_results(materialpoint_sizeResults,mesh_maxNips,mesh_NcpEl
|
||||||
write(6,*) '$Id$'
|
write(6,*) '$Id$'
|
||||||
write(6,*)
|
write(6,*)
|
||||||
if (debug_verbosity > 0) then
|
if (debug_verbosity > 0) then
|
||||||
write(6,'(a32,x,7(i5,x))') 'homogenization_state0: ', shape(homogenization_state0)
|
write(6,'(a32,x,7(i8,x))') 'homogenization_state0: ', shape(homogenization_state0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'homogenization_subState0: ', shape(homogenization_subState0)
|
write(6,'(a32,x,7(i8,x))') 'homogenization_subState0: ', shape(homogenization_subState0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'homogenization_state: ', shape(homogenization_state)
|
write(6,'(a32,x,7(i8,x))') 'homogenization_state: ', shape(homogenization_state)
|
||||||
write(6,'(a32,x,7(i5,x))') 'homogenization_sizeState: ', shape(homogenization_sizeState)
|
write(6,'(a32,x,7(i8,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_sizePostResults: ', shape(homogenization_sizePostResults)
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_dPdF: ', shape(materialpoint_dPdF)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_dPdF: ', shape(materialpoint_dPdF)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_F0: ', shape(materialpoint_F0)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_F0: ', shape(materialpoint_F0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_F: ', shape(materialpoint_F)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_F: ', shape(materialpoint_F)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subF0: ', shape(materialpoint_subF0)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_subF0: ', shape(materialpoint_subF0)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subF: ', shape(materialpoint_subF)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_subF: ', shape(materialpoint_subF)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_P: ', shape(materialpoint_P)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_P: ', shape(materialpoint_P)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_Temperature: ', shape(materialpoint_Temperature)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_Temperature: ', shape(materialpoint_Temperature)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subFrac: ', shape(materialpoint_subFrac)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_subFrac: ', shape(materialpoint_subFrac)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subStep: ', shape(materialpoint_subStep)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_subStep: ', shape(materialpoint_subStep)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_subdt: ', shape(materialpoint_subdt)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_subdt: ', shape(materialpoint_subdt)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_requested: ', shape(materialpoint_requested)
|
write(6,'(a32,x,7(i8,x))') 'materialpoint_requested: ', shape(materialpoint_requested)
|
||||||
write(6,'(a32,x,7(i5,x))') 'materialpoint_converged: ', shape(materialpoint_converged)
|
write(6,'(a32,x,7(i8,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_doneAndHappy: ', shape(materialpoint_doneAndHappy)
|
||||||
write(6,*)
|
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,*)
|
||||||
write(6,'(a32,x,7(i5,x))') 'maxSizeState: ', homogenization_maxSizeState
|
write(6,'(a32,x,7(i8,x))') 'maxSizeState: ', homogenization_maxSizeState
|
||||||
write(6,'(a32,x,7(i5,x))') 'maxSizePostResults: ', homogenization_maxSizePostResults
|
write(6,'(a32,x,7(i8,x))') 'maxSizePostResults: ', homogenization_maxSizePostResults
|
||||||
endif
|
endif
|
||||||
call flush(6)
|
call flush(6)
|
||||||
!$OMP END CRITICAL (write2out)
|
!$OMP END CRITICAL (write2out)
|
||||||
|
|
|
@ -16,16 +16,16 @@ COMPILE_SINGLE = -openmp -c -O3 -fpp
|
||||||
|
|
||||||
precision :=double
|
precision :=double
|
||||||
ifeq ($(precision),single)
|
ifeq ($(precision),single)
|
||||||
cpspectral_single.exe: mpie_spectral_single.o CPFEM.a
|
DAMASK_spectral_single.exe: DAMASK_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
|
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
|
||||||
mpie_spectral_single.o: mpie_spectral_single.f90 CPFEM.o
|
DAMASK_spectral_single.o: DAMASK_spectral_single.f90 CPFEM.o
|
||||||
ifort $(COMPILE_DOUBLE) mpie_spectral_single.f90
|
ifort $(COMPILE_DOUBLE) DAMASK_spectral_single.f90
|
||||||
|
|
||||||
else
|
else
|
||||||
cpspectral_double.exe: mpie_spectral.o CPFEM.a
|
DAMASK_spectral.exe: DAMASK_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
|
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
|
||||||
mpie_spectral.o: mpie_spectral.f90 CPFEM.o
|
DAMASK_spectral.o: DAMASK_spectral.f90 CPFEM.o
|
||||||
ifort $(COMPILE_DOUBLE) mpie_spectral.f90
|
ifort $(COMPILE_DOUBLE) DAMASK_spectral.f90
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CPFEM.a: CPFEM.o
|
CPFEM.a: CPFEM.o
|
||||||
|
@ -82,10 +82,10 @@ FEsolving.o: FEsolving.f90 basics.a
|
||||||
|
|
||||||
ifeq ($(precision),single)
|
ifeq ($(precision),single)
|
||||||
basics.a: debug.o math.o
|
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
|
else
|
||||||
basics.a: debug.o math.o
|
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
|
endif
|
||||||
|
|
||||||
debug.o: debug.f90 numerics.o
|
debug.o: debug.f90 numerics.o
|
||||||
|
@ -95,17 +95,17 @@ math.o: math.f90 numerics.o
|
||||||
|
|
||||||
numerics.o: numerics.f90 IO.o
|
numerics.o: numerics.f90 IO.o
|
||||||
ifort $(COMPILE_SINGLE) numerics.f90
|
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
|
ifort $(COMPILE_SINGLE) IO.f90
|
||||||
|
|
||||||
ifeq ($(precision),single)
|
ifeq ($(precision),single)
|
||||||
mpie_spectral_interface.o: mpie_spectral_interface.f90 prec_single.o
|
DAMASK_spectral_interface.o: DAMASK_spectral_interface.f90 prec_single.o
|
||||||
ifort $(COMPILE_SINGLE) mpie_spectral_interface.f90
|
ifort $(COMPILE_SINGLE) DAMASK_spectral_interface.f90
|
||||||
prec_single.o: prec_single.f90
|
prec_single.o: prec_single.f90
|
||||||
ifort $(COMPILE_SINGLE) prec_single.f90
|
ifort $(COMPILE_SINGLE) prec_single.f90
|
||||||
else
|
else
|
||||||
mpie_spectral_interface.o: mpie_spectral_interface.f90 prec.o
|
DAMASK_spectral_interface.o: DAMASK_spectral_interface.f90 prec.o
|
||||||
ifort $(COMPILE_SINGLE) mpie_spectral_interface.f90
|
ifort $(COMPILE_SINGLE) DAMASK_spectral_interface.f90
|
||||||
prec.o: prec.f90
|
prec.o: prec.f90
|
||||||
ifort $(COMPILE_SINGLE) prec.f90
|
ifort $(COMPILE_SINGLE) prec.f90
|
||||||
endif
|
endif
|
||||||
|
@ -114,7 +114,6 @@ endif
|
||||||
clean:
|
clean:
|
||||||
rm -rf *.o
|
rm -rf *.o
|
||||||
rm -rf *.mod
|
rm -rf *.mod
|
||||||
rm -rf *.exe
|
|
||||||
rm -rf basics.a
|
rm -rf basics.a
|
||||||
rm -rf advanced.a
|
rm -rf advanced.a
|
||||||
rm -rf constitutive.a
|
rm -rf constitutive.a
|
||||||
|
|
|
@ -3379,7 +3379,7 @@ if (debug_verbosity > 1) then
|
||||||
write (6,*)
|
write (6,*)
|
||||||
write (6,*) "Input Parser: SUBNODE COORDINATES"
|
write (6,*) "Input Parser: SUBNODE COORDINATES"
|
||||||
write (6,*)
|
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
|
do e = 1,mesh_NcpElems ! loop over cpElems
|
||||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||||
t = mesh_element(2,e) ! get elemType
|
t = mesh_element(2,e) ! get elemType
|
||||||
|
@ -3387,7 +3387,7 @@ if (debug_verbosity > 1) then
|
||||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
||||||
do f = 1,FE_NipNeighbors(t) ! loop over interfaces of IP
|
do f = 1,FE_NipNeighbors(t) ! loop over interfaces of IP
|
||||||
do n = 1,FE_NipFaceNodes ! loop over nodes on interface
|
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(1,FE_subNodeOnIPFace(n,f,i,t),e),&
|
||||||
mesh_subNodeCoord(2,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)
|
mesh_subNodeCoord(3,FE_subNodeOnIPFace(n,f,i,t),e)
|
||||||
|
@ -3397,12 +3397,12 @@ if (debug_verbosity > 1) then
|
||||||
enddo
|
enddo
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) 'Input Parser: IP COORDINATES'
|
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
|
do e = 1,mesh_NcpElems
|
||||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||||
do i = 1,FE_Nips(mesh_element(2,e))
|
do i = 1,FE_Nips(mesh_element(2,e))
|
||||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
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
|
||||||
enddo
|
enddo
|
||||||
write (6,*)
|
write (6,*)
|
||||||
|
@ -3410,12 +3410,12 @@ if (debug_verbosity > 1) then
|
||||||
write (6,*)
|
write (6,*)
|
||||||
write (6,"(a13,x,e15.8)") "total volume", sum(mesh_ipVolume)
|
write (6,"(a13,x,e15.8)") "total volume", sum(mesh_ipVolume)
|
||||||
write (6,*)
|
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
|
do e = 1,mesh_NcpElems
|
||||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||||
do i = 1,FE_Nips(mesh_element(2,e))
|
do i = 1,FE_Nips(mesh_element(2,e))
|
||||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
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))
|
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)
|
write (6,"(i33,x,e15.8,x,3(f6.3,x))") f,mesh_ipArea(f,i,e),mesh_ipAreaNormal(:,f,i,e)
|
||||||
enddo
|
enddo
|
||||||
|
@ -3435,14 +3435,14 @@ if (debug_verbosity > 1) then
|
||||||
write(6,*)
|
write(6,*)
|
||||||
write(6,*) "Input Parser: IP NEIGHBORHOOD"
|
write(6,*) "Input Parser: IP NEIGHBORHOOD"
|
||||||
write(6,*)
|
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
|
do e = 1,mesh_NcpElems ! loop over cpElems
|
||||||
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
if (debug_selectiveDebugger .and. debug_e /= e) cycle
|
||||||
t = mesh_element(2,e) ! get elemType
|
t = mesh_element(2,e) ! get elemType
|
||||||
do i = 1,FE_Nips(t) ! loop over IPs of elem
|
do i = 1,FE_Nips(t) ! loop over IPs of elem
|
||||||
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
if (debug_selectiveDebugger .and. debug_i /= i) cycle
|
||||||
do n = 1,FE_NipNeighbors(t) ! loop over neighbors of IP
|
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
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
|
Loading…
Reference in New Issue