From df9a94422f3debb8677ba85718c376dae77b795a Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sat, 10 Jul 2021 09:49:29 +0200 Subject: [PATCH] 0-based indexing in MSC.Marc inline with Python library and grid, still need to decide on mesh (neper is 1-based) --- PRIVATE | 2 +- examples/Marc/sheet_r-value.dat | 2 +- src/Marc/discretization_Marc.f90 | 9 +++++---- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/PRIVATE b/PRIVATE index 1e8613bc2..8fec909d1 160000 --- a/PRIVATE +++ b/PRIVATE @@ -1 +1 @@ -Subproject commit 1e8613bc2ac3b5e8315cb514a8c7fef153fed75d +Subproject commit 8fec909d1931b092b223b0560dd30c3339c6e5a7 diff --git a/examples/Marc/sheet_r-value.dat b/examples/Marc/sheet_r-value.dat index 5f195616b..176bd34eb 100644 --- a/examples/Marc/sheet_r-value.dat +++ b/examples/Marc/sheet_r-value.dat @@ -345,7 +345,7 @@ oben_ziehen_nodes initial state 2 6 1 0 0 0DAMASK - 1.000000000000000+0 + 0.000000000000000+0 0 1 DAMASK_elements diff --git a/src/Marc/discretization_Marc.f90 b/src/Marc/discretization_Marc.f90 index 88020f046..8a5a06653 100644 --- a/src/Marc/discretization_Marc.f90 +++ b/src/Marc/discretization_Marc.f90 @@ -698,6 +698,7 @@ end function inputRead_connectivityElem !-------------------------------------------------------------------------------------------------- !> @brief Store material ID +!> @details 0-based ID in file is converted to 1-based ID used in DAMASK !-------------------------------------------------------------------------------------------------- subroutine inputRead_material(materialAt,& nElem,nNodes,nameElemSet,mapElemSet,initialcondTableStyle,fileContent) @@ -709,8 +710,8 @@ subroutine inputRead_material(materialAt,& nNodes, & !< number of nodes per element initialcondTableStyle character(len=*), dimension(:), intent(in) :: nameElemSet - integer, dimension(:,:), intent(in) :: mapElemSet !< list of elements in elementSet - character(len=*), dimension(:), intent(in) :: fileContent !< file content, separated per lines + integer, dimension(:,:), intent(in) :: mapElemSet !< list of elements in elementSet + character(len=*), dimension(:), intent(in) :: fileContent !< file content, separated per lines integer, allocatable, dimension(:) :: chunkPos @@ -718,7 +719,7 @@ subroutine inputRead_material(materialAt,& integer :: i,j,t,sv,myVal,e,nNodesAlreadyRead,l,k,m - allocate(materialAt(nElem),source=0) + allocate(materialAt(nElem),source=1) do l = 1, size(fileContent) chunkPos = IO_stringPos(fileContent(l)) @@ -737,7 +738,7 @@ subroutine inputRead_material(materialAt,& contInts = continuousIntValues(fileContent(l+k+m+1:),nElem,nameElemSet,mapElemSet,size(nameElemSet)) ! get affected elements do i = 1,contInts(1) e = discretization_Marc_FEM2DAMASK_elem(contInts(1+i)) - materialAt(e) = myVal + materialAt(e) = materialAt(e) + myVal enddo if (initialcondTableStyle == 0) m = m + 1 enddo