Merge remote-tracking branch 'origin/Marc-use-statev-2' into development
This commit is contained in:
commit
3352a5a199
2
PRIVATE
2
PRIVATE
|
@ -1 +1 @@
|
|||
Subproject commit a13f94880aeae06c14bde50c15f00d7f076d23ad
|
||||
Subproject commit 1b82ac39703fdea70962aea47a0381d50bd1d44e
|
Binary file not shown.
|
@ -130,7 +130,7 @@ def geometry():
|
|||
|
||||
|
||||
#-------------------------------------------------------------------------------------------------
|
||||
def initial_conditions(homogenization,microstructures):
|
||||
def initial_conditions(microstructures):
|
||||
elements = []
|
||||
element = 0
|
||||
for id in microstructures:
|
||||
|
@ -148,13 +148,6 @@ def initial_conditions(homogenization,microstructures):
|
|||
"*icond_dof_value var 300",
|
||||
"*add_icond_elements",
|
||||
"all_existing",
|
||||
"*new_icond",
|
||||
"*icond_name _homogenization",
|
||||
"*icond_type state_variable",
|
||||
"*icond_param_value state_var_id 2",
|
||||
"*icond_dof_value var %i"%homogenization,
|
||||
"*add_icond_elements",
|
||||
"all_existing",
|
||||
]
|
||||
|
||||
for grain,elementList in enumerate(elements):
|
||||
|
@ -162,7 +155,7 @@ def initial_conditions(homogenization,microstructures):
|
|||
"*new_icond",
|
||||
"*icond_name microstructure_%i"%(grain+1),
|
||||
"*icond_type state_variable",
|
||||
"*icond_param_value state_var_id 3",
|
||||
"*icond_param_value state_var_id 2",
|
||||
"*icond_dof_value var %i"%(grain+1),
|
||||
"*add_icond_elements",
|
||||
elementList,
|
||||
|
@ -211,7 +204,7 @@ for name in filenames:
|
|||
mesh(geom.grid,geom.size),
|
||||
material(),
|
||||
geometry(),
|
||||
initial_conditions(geom.homogenization,microstructure),
|
||||
initial_conditions(microstructure),
|
||||
'*identify_sets',
|
||||
'*show_model',
|
||||
'*redraw',
|
||||
|
|
24
src/IO.f90
24
src/IO.f90
|
@ -484,8 +484,6 @@ subroutine IO_error(error_ID,el,ip,g,instance,ext_msg)
|
|||
msg = 'too many systems requested'
|
||||
case (146)
|
||||
msg = 'number of values does not match'
|
||||
case (147)
|
||||
msg = 'not supported anymore'
|
||||
case (148)
|
||||
msg = 'Nconstituents mismatch between homogenization and microstructure'
|
||||
|
||||
|
@ -497,22 +495,10 @@ subroutine IO_error(error_ID,el,ip,g,instance,ext_msg)
|
|||
msg = 'microstructure has no constituents'
|
||||
case (153)
|
||||
msg = 'sum of phase fractions differs from 1'
|
||||
case (154)
|
||||
msg = 'homogenization index out of bounds'
|
||||
case (155)
|
||||
msg = 'microstructure index out of bounds'
|
||||
case (157)
|
||||
msg = 'invalid texture transformation specified'
|
||||
case (160)
|
||||
msg = 'no entries in config part'
|
||||
case (161)
|
||||
msg = 'config part found twice'
|
||||
case (165)
|
||||
msg = 'homogenization configuration'
|
||||
case (170)
|
||||
msg = 'no homogenization specified via State Variable 2'
|
||||
case (180)
|
||||
msg = 'no microstructure specified via State Variable 3'
|
||||
msg = 'missing/invalid microstructure definition via State Variable 2'
|
||||
case (190)
|
||||
msg = 'unknown element type:'
|
||||
case (191)
|
||||
|
@ -525,8 +511,6 @@ subroutine IO_error(error_ID,el,ip,g,instance,ext_msg)
|
|||
case (201)
|
||||
msg = 'unknown plasticity specified:'
|
||||
|
||||
case (210)
|
||||
msg = 'unknown material parameter:'
|
||||
case (211)
|
||||
msg = 'material parameter out of bounds:'
|
||||
case (212)
|
||||
|
@ -534,8 +518,6 @@ subroutine IO_error(error_ID,el,ip,g,instance,ext_msg)
|
|||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
! numerics error messages
|
||||
case (300)
|
||||
msg = 'unknown numerics parameter:'
|
||||
case (301)
|
||||
msg = 'numerics parameter out of bounds:'
|
||||
|
||||
|
@ -555,10 +537,6 @@ subroutine IO_error(error_ID,el,ip,g,instance,ext_msg)
|
|||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
! user errors
|
||||
case (600)
|
||||
msg = 'Ping-Pong not possible when using non-DAMASK elements'
|
||||
case (601)
|
||||
msg = 'Ping-Pong needed when using non-local plasticity'
|
||||
case (602)
|
||||
msg = 'invalid selection for debug'
|
||||
|
||||
|
|
|
@ -706,7 +706,7 @@ subroutine inputRead_microstructure(microstructureAt,&
|
|||
k = merge(2,1,initialcondTableStyle == 2)
|
||||
chunkPos = IO_stringPos(fileContent(l+k))
|
||||
sv = IO_IntValue(fileContent(l+k),chunkPos,1) ! figure state variable index
|
||||
if( (sv == 2) .or. (sv == 3) ) then ! only state vars 2 and 3 of interest
|
||||
if( (sv == 2)) then ! state var 2 is used to identify material from material.yaml
|
||||
m = 1
|
||||
chunkPos = IO_stringPos(fileContent(l+k+m))
|
||||
do while (scan(IO_stringValue(fileContent(l+k+m),chunkPos,1),'+-',back=.true.)>1) ! is noEfloat value?
|
||||
|
@ -715,7 +715,7 @@ subroutine inputRead_microstructure(microstructureAt,&
|
|||
contInts = continuousIntValues(fileContent(l+k+m+1:),nElem,nameElemSet,mapElemSet,size(nameElemSet)) ! get affected elements
|
||||
do i = 1,contInts(1)
|
||||
e = mesh_FEM2DAMASK_elem(contInts(1+i))
|
||||
if (sv == 3) microstructureAt(e) = myVal
|
||||
microstructureAt(e) = myVal
|
||||
enddo
|
||||
if (initialcondTableStyle == 0) m = m + 1
|
||||
enddo
|
||||
|
@ -723,6 +723,8 @@ subroutine inputRead_microstructure(microstructureAt,&
|
|||
endif
|
||||
enddo
|
||||
|
||||
if(any(microstructureAt < 1)) call IO_error(190)
|
||||
|
||||
end subroutine inputRead_microstructure
|
||||
|
||||
|
||||
|
@ -1061,7 +1063,7 @@ function IPneighborhood(elem,connectivity)
|
|||
integer, dimension(size(connectivity,1)) :: myConnectivity
|
||||
integer, dimension(size(elem%cellFace,1)) :: face_unordered
|
||||
integer :: e,i,f,n,c,s
|
||||
|
||||
|
||||
c = 0
|
||||
do e = 1, size(connectivity,3)
|
||||
do i = 1, size(connectivity,2)
|
||||
|
@ -1078,9 +1080,9 @@ function IPneighborhood(elem,connectivity)
|
|||
enddo; enddo
|
||||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
! sort face definitions
|
||||
! sort face definitions
|
||||
call math_sort(face,sortDim=1)
|
||||
do c=2, size(face,1)-4
|
||||
do c=2, size(face,1)-4
|
||||
s = 1
|
||||
e = 1
|
||||
do while (e < size(face,2))
|
||||
|
@ -1091,8 +1093,8 @@ function IPneighborhood(elem,connectivity)
|
|||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
IPneighborhood = 0
|
||||
|
||||
IPneighborhood = 0
|
||||
do c=1, size(face,2) - 1
|
||||
if(all(face(:n-1,c) == face(:n-1,c+1))) then
|
||||
IPneighborhood(:,face(n+2,c+1),face(n+1,c+1),face(n+0,c+1)) = face(n:n+3,c+0)
|
||||
|
|
Loading…
Reference in New Issue