Merge branch 'MiscImprovements' of magit1.mpie.de:/damask/DAMASK into MiscImprovements

This commit is contained in:
Martin Diehl 2019-09-20 16:48:50 -07:00
commit ef4204da14
5 changed files with 21 additions and 16 deletions

View File

@ -72,7 +72,7 @@ variables:
MSC2018_1: "FEM/MSC/2018.1"
MSC2019: "FEM/MSC/2019"
# ------------ Defaults ----------------------------------------------
MSC: "$MSC2018_1"
MSC: "$MSC2019"
IntelMarc: "$IntelCompiler17_8"
IntelAbaqus: "$IntelCompiler16_4"
HDF5Marc: "HDF5/1.10.4/Intel-17.8"

4
CONFIG
View File

@ -4,8 +4,8 @@
set DAMASK_NUM_THREADS = 4
set MSC_ROOT = /opt/msc
set MARC_VERSION = 2018.1
set MARC_VERSION = 2019
set ABAQUS_VERSION = 2019
set DAMASK_HDF5 = OFF
set DAMASK_HDF5 = ON

1
src/DAMASK_marc2019.f90 Symbolic link
View File

@ -0,0 +1 @@
DAMASK_marc.f90

View File

@ -112,10 +112,14 @@ subroutine HDF5_utilities_init
call h5open_f(hdferr)
if (hdferr < 0) call IO_error(1,ext_msg='HDF5_Utilities_init: h5open_f')
#ifndef Marc4DAMASK
! This test should ensure that integer size matches. For some reasons, the HDF5 libraries
! that come with MSC.Marc>=2019 seem to be of 4byte even though it is a 8byte Marc version
call h5tget_size_f(H5T_NATIVE_INTEGER,typeSize, hdferr)
if (hdferr < 0) call IO_error(1,ext_msg='HDF5_Utilities_init: h5tget_size_f (int)')
if (int(bit_size(0),SIZE_T)/=typeSize*8) &
call IO_error(0,ext_msg='Default integer size does not match H5T_NATIVE_INTEGER')
#endif
call h5tget_size_f(H5T_NATIVE_DOUBLE,typeSize, hdferr)
if (hdferr < 0) call IO_error(1,ext_msg='HDF5_Utilities_init: h5tget_size_f (double)')
@ -128,7 +132,7 @@ end subroutine HDF5_utilities_init
!--------------------------------------------------------------------------------------------------
!> @brief open and initializes HDF5 output file
!--------------------------------------------------------------------------------------------------
integer(HID_T) function HDF5_openFile(fileName,mode,parallel) ! ToDo: simply "open" is enough
integer(HID_T) function HDF5_openFile(fileName,mode,parallel)
character(len=*), intent(in) :: fileName
character, intent(in), optional :: mode

View File

@ -244,7 +244,7 @@ pure function rotVector(self,v,active) result(vRot)
if (dEq0(norm2(v))) then
vRot = v
else
v_normed = v_normed/norm2(v)
v_normed = v/norm2(v)
if (passive) then
q = self%q * (quaternion([0.0_pReal, v_normed(1), v_normed(2), v_normed(3)]) * conjg(self%q) )
else