From 8edeeaf2135acf428990ba8098db641bc8ff4ad7 Mon Sep 17 00:00:00 2001 From: Philip Eisenlohr Date: Fri, 3 Aug 2018 19:39:14 -0400 Subject: [PATCH 01/10] renaming of p_vec and friends to names based on "group" --- src/material.f90 | 10 +++++----- src/prec.f90 | 8 ++++---- src/vacancyflux_cahnhilliard.f90 | 4 ++-- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/material.f90 b/src/material.f90 index d71fbb37a..c2c52aaa6 100644 --- a/src/material.f90 +++ b/src/material.f90 @@ -16,8 +16,8 @@ module material tSourceState, & tHomogMapping, & tPhaseMapping, & - p_vec, & - p_intvec + group_scalar, & + group_int implicit none private @@ -268,7 +268,7 @@ module material porosityMapping, & !< mapping for porosity state/fields hydrogenfluxMapping !< mapping for hydrogen conc state/fields - type(p_vec), allocatable, dimension(:), public :: & + type(group_scalar), allocatable, dimension(:), public :: & temperature, & !< temperature field damage, & !< damage field vacancyConc, & !< vacancy conc field @@ -1120,8 +1120,8 @@ subroutine material_populateGrains phaseID,textureID,dGrains,myNgrains,myNorientations,myNconstituents, & grain,constituentGrain,ipGrain,symExtension, ip real(pReal) :: deviation,extreme,rnd - integer(pInt), dimension (:,:), allocatable :: Nelems ! counts number of elements in homog, micro array - type(p_intvec), dimension (:,:), allocatable :: elemsOfHomogMicro ! lists element number in homog, micro array + integer(pInt), dimension (:,:), allocatable :: Nelems ! counts number of elements in homog, micro array + type(group_int), dimension (:,:), allocatable :: elemsOfHomogMicro ! lists element number in homog, micro array myDebug = debug_level(debug_material) diff --git a/src/prec.f90 b/src/prec.f90 index 2cdc533b6..f5b41b873 100644 --- a/src/prec.f90 +++ b/src/prec.f90 @@ -28,13 +28,13 @@ module prec integer(pInt), allocatable, dimension(:) :: realloc_lhs_test - type, public :: p_vec !< variable length datatype used for storage of state + type, public :: group_scalar !< variable length datatype used for storage of state real(pReal), dimension(:), pointer :: p - end type p_vec + end type group_scalar - type, public :: p_intvec + type, public :: group_int integer(pInt), dimension(:), pointer :: p - end type p_intvec + end type group_int !http://stackoverflow.com/questions/3948210/can-i-have-a-pointer-to-an-item-in-an-allocatable-array type, public :: tState diff --git a/src/vacancyflux_cahnhilliard.f90 b/src/vacancyflux_cahnhilliard.f90 index cde2cb233..96fd50d64 100644 --- a/src/vacancyflux_cahnhilliard.f90 +++ b/src/vacancyflux_cahnhilliard.f90 @@ -7,7 +7,7 @@ module vacancyflux_cahnhilliard use prec, only: & pReal, & pInt, & - p_vec + group_scalar implicit none private @@ -26,7 +26,7 @@ module vacancyflux_cahnhilliard real(pReal), dimension(:), allocatable, private :: & vacancyflux_cahnhilliard_flucAmplitude - type(p_vec), dimension(:), allocatable, private :: & + type(group_scalar), dimension(:), allocatable, private :: & vacancyflux_cahnhilliard_thermalFluc real(pReal), parameter, private :: & From e6d5f1926fbab636eb3e62a3d1993d7f67e1368c Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sat, 4 Aug 2018 14:35:57 +0200 Subject: [PATCH 02/10] issue of heap size still not finally resolved --- env/DAMASK.csh | 4 +++- env/DAMASK.sh | 4 +++- env/DAMASK.zsh | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/env/DAMASK.csh b/env/DAMASK.csh index 26e2dd8a2..07b4b6817 100644 --- a/env/DAMASK.csh +++ b/env/DAMASK.csh @@ -19,7 +19,9 @@ if ( "x$DAMASK_NUM_THREADS" == "x" ) then endif # currently, there is no information that unlimited causes problems -# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it +# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it +# more info https://jblevins.org/log/segfault +# https://stackoverflow.com/questions/79923/what-and-where-are-the-stack-and-heap # http://superuser.com/questions/220059/what-parameters-has-ulimit limit datasize unlimited # maximum heap size (kB) limit stacksize unlimited # maximum stack size (kB) diff --git a/env/DAMASK.sh b/env/DAMASK.sh index 509f5f1b7..663e9a4b3 100644 --- a/env/DAMASK.sh +++ b/env/DAMASK.sh @@ -42,7 +42,9 @@ PROCESSING=$(type -p postResults || true 2>/dev/null) [ "x$DAMASK_NUM_THREADS" == "x" ] && DAMASK_NUM_THREADS=1 # currently, there is no information that unlimited causes problems -# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it +# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it +# more info https://jblevins.org/log/segfault +# https://stackoverflow.com/questions/79923/what-and-where-are-the-stack-and-heap # http://superuser.com/questions/220059/what-parameters-has-ulimit ulimit -d unlimited 2>/dev/null # maximum heap size (kB) ulimit -s unlimited 2>/dev/null # maximum stack size (kB) diff --git a/env/DAMASK.zsh b/env/DAMASK.zsh index 3ceeb116a..43f682865 100644 --- a/env/DAMASK.zsh +++ b/env/DAMASK.zsh @@ -33,7 +33,9 @@ PROCESSING=$(which postResults || true 2>/dev/null) [ "x$DAMASK_NUM_THREADS" = "x" ] && DAMASK_NUM_THREADS=1 # currently, there is no information that unlimited causes problems -# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it +# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it +# more info https://jblevins.org/log/segfault +# https://stackoverflow.com/questions/79923/what-and-where-are-the-stack-and-heap # http://superuser.com/questions/220059/what-parameters-has-ulimit ulimit -d unlimited 2>/dev/null # maximum heap size (kB) ulimit -s unlimited 2>/dev/null # maximum stack size (kB) From 60fc47ca2a41bc135ebca48a724e4a840fc4cfae Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sun, 5 Aug 2018 09:41:27 +0200 Subject: [PATCH 03/10] unused import --- src/spectral_thermal.f90 | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/spectral_thermal.f90 b/src/spectral_thermal.f90 index 8e5b95ab9..4275c9533 100644 --- a/src/spectral_thermal.f90 +++ b/src/spectral_thermal.f90 @@ -65,8 +65,6 @@ subroutine spectral_thermal_init compiler_options #endif use IO, only: & - IO_intOut, & - IO_read_realFile, & IO_timeStamp use spectral_utilities, only: & wgt From c0adb613504586adec9252f3796f285612eb8058 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sun, 5 Aug 2018 10:41:01 +0200 Subject: [PATCH 04/10] outdated description --- src/spectral_interface.f90 | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/spectral_interface.f90 b/src/spectral_interface.f90 index 1ab92a178..c3cb9141b 100644 --- a/src/spectral_interface.f90 +++ b/src/spectral_interface.f90 @@ -4,9 +4,8 @@ !> @brief Interfacing between the spectral solver and the material subroutines provided !! by DAMASK !> @details Interfacing between the spectral solver and the material subroutines provided -!> by DAMASK. Interpretating the command line arguments or, in case of called from f2py, -!> the arguments parsed to the init routine to get load case, geometry file, working -!> directory, etc. +!> by DAMASK. Interpretating the command line arguments to get load case, geometry file, +!> and working directory. !-------------------------------------------------------------------------------------------------- module DAMASK_interface use prec, only: & From 5337fb1229baab5e6a5e18fc3daf2ee0a138981f Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sun, 5 Aug 2018 11:08:17 +0200 Subject: [PATCH 05/10] old runtime debugging leftovers --- src/constitutive.f90 | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/src/constitutive.f90 b/src/constitutive.f90 index 9c3989a9c..7833f70cf 100644 --- a/src/constitutive.f90 +++ b/src/constitutive.f90 @@ -864,19 +864,11 @@ subroutine constitutive_collectDotState(Tstar_v, FeArray, FpArray, subdt, subfra FpArray !< plastic deformation gradient real(pReal), intent(in), dimension(6) :: & Tstar_v !< 2nd Piola Kirchhoff stress tensor (Mandel) - integer(pLongInt) :: & - tick = 0_pLongInt, & - tock = 0_pLongInt, & - tickrate, & - maxticks integer(pInt) :: & ho, & !< homogenization tme, & !< thermal member position s !< counter in source loop - if (iand(debug_level(debug_constitutive), debug_levelBasic) /= 0_pInt) & - call system_clock(count=tick,count_rate=tickrate,count_max=maxticks) - ho = material_homog( ip,el) tme = thermalMapping(ho)%p(ip,el) @@ -957,13 +949,6 @@ subroutine constitutive_collectDeltaState(Tstar_v, Fe, ipc, ip, el) Fe !< elastic deformation gradient integer(pInt) :: & s !< counter in source loop - integer(pLongInt) :: & - tick, tock, & - tickrate, & - maxticks - - if (iand(debug_level(debug_constitutive), debug_levelBasic) /= 0_pInt) & - call system_clock(count=tick,count_rate=tickrate,count_max=maxticks) plasticityType: select case (phase_plasticity(material_phase(ipc,ip,el))) case (PLASTICITY_KINEHARDENING_ID) plasticityType From ba215ed9ea99faefb1be819ed2f5cdaf67e87ff2 Mon Sep 17 00:00:00 2001 From: Philip Eisenlohr Date: Mon, 13 Aug 2018 18:27:51 -0400 Subject: [PATCH 06/10] small polish --- src/prec.f90 | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/prec.f90 b/src/prec.f90 index f5b41b873..caf59cfe8 100644 --- a/src/prec.f90 +++ b/src/prec.f90 @@ -41,8 +41,8 @@ module prec integer(pInt) :: & sizeState = 0_pInt, & !< size of state sizeDotState = 0_pInt, & !< size of dot state, i.e. state(1:sizeDot) follows time evolution by dotState rates - offsetDeltaState = 0_pInt, & !< offset of delta state - sizeDeltaState = 0_pInt, & !< size of delta state, i.e. state(offset+1:offset+sizeDot) follows time evolution by deltaState increments + offsetDeltaState = 0_pInt, & !< index offset of delta state + sizeDeltaState = 0_pInt, & !< size of delta state, i.e. state(offset+1:offset+sizeDelta) follows time evolution by deltaState increments sizePostResults = 0_pInt !< size of output data real(pReal), pointer, dimension(:), contiguous :: & atolState @@ -146,7 +146,7 @@ logical elemental pure function dEq(a,b,tol) real(pReal), intent(in), optional :: tol real(pReal), parameter :: eps = 2.220446049250313E-16 ! DBL_EPSILON in C - dEq = merge(.True., .False.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) + dEq = merge(.True.,.False.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) end function dEq @@ -163,7 +163,7 @@ logical elemental pure function dNeq(a,b,tol) real(pReal), intent(in), optional :: tol real(pReal), parameter :: eps = 2.220446049250313E-16 ! DBL_EPSILON in C - dNeq = merge(.False., .True.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) + dNeq = merge(.False.,.True.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) end function dNeq @@ -180,7 +180,7 @@ logical elemental pure function dEq0(a,tol) real(pReal), intent(in), optional :: tol real(pReal), parameter :: eps = 2.2250738585072014E-308 ! smallest non-denormalized number - dEq0 = merge(.True., .False.,abs(a) <= merge(tol,eps,present(tol))) + dEq0 = merge(.True.,.False.,abs(a) <= merge(tol,eps,present(tol))) end function dEq0 @@ -197,7 +197,7 @@ logical elemental pure function dNeq0(a,tol) real(pReal), intent(in), optional :: tol real(pReal), parameter :: eps = 2.2250738585072014E-308 ! smallest non-denormalized number - dNeq0 = merge(.False., .True.,abs(a) <= merge(tol,eps,present(tol))) + dNeq0 = merge(.False.,.True.,abs(a) <= merge(tol,eps,present(tol))) end function dNeq0 @@ -215,7 +215,7 @@ logical elemental pure function cEq(a,b,tol) real(pReal), intent(in), optional :: tol real(pReal), parameter :: eps = 2.220446049250313E-16 ! DBL_EPSILON in C - cEq = merge(.True., .False.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) + cEq = merge(.True.,.False.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) end function cEq @@ -233,7 +233,7 @@ logical elemental pure function cNeq(a,b,tol) real(pReal), intent(in), optional :: tol real(pReal), parameter :: eps = 2.220446049250313E-16 ! DBL_EPSILON in C - cNeq = merge(.False., .True.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) + cNeq = merge(.False.,.True.,abs(a-b) <= merge(tol,eps,present(tol))*maxval(abs([a,b]))) end function cNeq end module prec From 08d6cb242f29c01e0f488648b97eb003a2dc7eab Mon Sep 17 00:00:00 2001 From: Philip Eisenlohr Date: Fri, 17 Aug 2018 15:42:35 -0400 Subject: [PATCH 07/10] adopted new name for covera_ratio: c/a --- examples/SpectralMethod/EshelbyInclusion/material.config | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/SpectralMethod/EshelbyInclusion/material.config b/examples/SpectralMethod/EshelbyInclusion/material.config index 83045938d..e002584b0 100644 --- a/examples/SpectralMethod/EshelbyInclusion/material.config +++ b/examples/SpectralMethod/EshelbyInclusion/material.config @@ -38,7 +38,7 @@ plasticity none [Ti matrix] lattice_structure hex -covera_ratio 1.587 +c/a 1.587 plasticity none {config/elastic_Ti.config} {config/thermal.config} @@ -65,7 +65,7 @@ plasticity none [Ti inclusion] lattice_structure hex -covera_ratio 1.587 +c/a 1.587 plasticity none {config/elastic_Ti.config} {config/thermal.config} From c03ea8f5c7e93c2cbd7849d0eb0e48332c207e4e Mon Sep 17 00:00:00 2001 From: Philip Eisenlohr Date: Fri, 17 Aug 2018 15:43:09 -0400 Subject: [PATCH 08/10] added forgotten C66(2,2) read-in from parameter database --- src/lattice.f90 | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lattice.f90 b/src/lattice.f90 index 2b7fe5774..ca1cd597a 100644 --- a/src/lattice.f90 +++ b/src/lattice.f90 @@ -1396,6 +1396,7 @@ subroutine lattice_init lattice_C66(1,1,p) = config_phase(p)%getFloat('c11',defaultVal=0.0_pReal) lattice_C66(1,2,p) = config_phase(p)%getFloat('c12',defaultVal=0.0_pReal) lattice_C66(1,3,p) = config_phase(p)%getFloat('c13',defaultVal=0.0_pReal) + lattice_C66(2,2,p) = config_phase(p)%getFloat('c22',defaultVal=0.0_pReal) lattice_C66(2,3,p) = config_phase(p)%getFloat('c23',defaultVal=0.0_pReal) lattice_C66(3,3,p) = config_phase(p)%getFloat('c33',defaultVal=0.0_pReal) lattice_C66(4,4,p) = config_phase(p)%getFloat('c44',defaultVal=0.0_pReal) From 615af684eb7c2a948b6632fb9b80963a867b2800 Mon Sep 17 00:00:00 2001 From: Test User Date: Mon, 20 Aug 2018 08:55:59 +0200 Subject: [PATCH 09/10] [skip ci] updated version information after successful test of v2.0.2-381-gc03ea8f5 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 943cac93c..fea0a6cd0 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -v2.0.2-374-g3e4f6598 +v2.0.2-381-gc03ea8f5 From 7c683d4f3d49b38a337fcb85c97abd55a57be20b Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Mon, 20 Aug 2018 09:02:03 +0200 Subject: [PATCH 10/10] updated tests for 38- and 36- branches --- PRIVATE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PRIVATE b/PRIVATE index 737427a96..c44717258 160000 --- a/PRIVATE +++ b/PRIVATE @@ -1 +1 @@ -Subproject commit 737427a967e098e1cc82f69f5447fd1a02ffa855 +Subproject commit c4471725893e301044924eb0990e2ad619aa0a46