first call to hypela2 in inc 0 is done with computation mode 2 (=plain calc), but since rev. 539 the second call was done with computation mode 6 (=only return values) instead of 2. This doesnt work, because computation mode 2 might calculate stress and tangent for all materialpoints, but the mapping from lattice to current configuration is only done for the element/IP that triggers the call.

So switched back to the former order of calls which also works for marc2010:

el 1 IP 1		|	el 1 IP 2
			|
inc mode lovl	|	inc mode lovl
------------------	|	------------------
0       2       6	|	0	2	6
1       6	4	|	1	6	4
1	4	6	|	1	3	6
1	6	4	|	1	6	4
1	1	6	|	1	2	6

Still to be checked:
according to Franz the lovl order could be different in contact analysis (e.g. starting with lovl 4 instead of 6)
This commit is contained in:
Christoph Kords 2010-05-20 09:14:59 +00:00
parent 51da3b6242
commit 3a23dc4bbd
1 changed files with 0 additions and 2 deletions

View File

@ -230,8 +230,6 @@ subroutine hypela2(&
write (6,'(a,x,i6,x,i2)') '<< hypela2 >> first call special case..!',n(1),nn; call flush(6)
!$OMP END CRITICAL (write2out)
else if (inc == 0 .and. lovl == 6) then ! Marc2010 introduces second call (lovl=6) in inc 0
computationMode = 6 ! --> just return known value
else if (lovl == 4) then ! Marc requires stiffness in separate call
if ( timinc < theDelta .and. theInc == inc ) then ! first after cutback
computationMode = 7 ! --> restore tangent and return