added shortcuts for two do loops in the "timesyncing" procedure
math_pDecomposition enclosed by omp critical statement; somehow, this subroutine is not thread safe, not clear what exactly the problem is
This commit is contained in:
parent
bac186c5b7
commit
3736ab1d97
|
@ -712,6 +712,7 @@ do while (any(crystallite_todo(:,:,FEsolving_execELem(1):FEsolving_execElem(2)))
|
|||
write(6,'(a12,i5,1x,i2,a,i5,1x,i2)') '<< CRYST >> ', neighboring_e,neighboring_i, &
|
||||
' enforced cutback at ',e,i
|
||||
#endif
|
||||
exit
|
||||
endif
|
||||
endif
|
||||
enddo
|
||||
|
@ -739,6 +740,7 @@ do while (any(crystallite_todo(:,:,FEsolving_execELem(1):FEsolving_execElem(2)))
|
|||
write(6,'(a12,i5,1x,i2,a,i5,1x,i2)') '<< CRYST >> ',neighboring_e,neighboring_i, &
|
||||
' enforced time synchronization at ',e,i
|
||||
#endif
|
||||
exit
|
||||
endif
|
||||
endif
|
||||
enddo
|
||||
|
@ -3351,7 +3353,9 @@ subroutine crystallite_orientations
|
|||
do i = FEsolving_execIP(1,e),FEsolving_execIP(2,e)
|
||||
do g = 1_pInt,homogenization_Ngrains(mesh_element(3,e))
|
||||
|
||||
!$OMP CRITICAL (polarDecomp) ! somehow this subroutine is not threadsafe, so need critical statement here; not clear, what exactly the problem is
|
||||
call math_pDecomposition(crystallite_Fe(1:3,1:3,g,i,e), U, R, error) ! polar decomposition of Fe
|
||||
!$OMP END CRITICAL (polarDecomp)
|
||||
if (error) then
|
||||
call IO_warning(650_pInt, e, i, g)
|
||||
orientation = [1.0_pReal, 0.0_pReal, 0.0_pReal, 0.0_pReal] ! fake orientation
|
||||
|
|
Loading…
Reference in New Issue