fluxes are disabled when keyword "/nonlocal/" is omitted in the material.config (this is a way to use the constitutive_nonlocal model as a local dislocation based model)

This commit is contained in:
Christoph Kords 2011-01-11 14:55:36 +00:00
parent 322cbd2597
commit 6a3dd78259
1 changed files with 89 additions and 85 deletions

View File

@ -1469,10 +1469,12 @@ where (rhoSgl(:,1:2) > 0.0_pReal) &
!**************************************************************************** !****************************************************************************
!*** calculate dislocation fluxes !*** calculate dislocation fluxes (only for nonlocal constitution)
rhoDotFlux = 0.0_pReal rhoDotFlux = 0.0_pReal
periodicSurfaceFlux = (/.false.,.true.,.false./) periodicSurfaceFlux = (/.false.,.false.,.false./)
if (.not. phase_localConstitution(material_phase(g,ip,el))) then ! only for nonlocal constitution
m(:,:,1) = lattice_sd(:, constitutive_nonlocal_slipSystemLattice(:,myInstance), myStructure) m(:,:,1) = lattice_sd(:, constitutive_nonlocal_slipSystemLattice(:,myInstance), myStructure)
m(:,:,2) = -lattice_sd(:, constitutive_nonlocal_slipSystemLattice(:,myInstance), myStructure) m(:,:,2) = -lattice_sd(:, constitutive_nonlocal_slipSystemLattice(:,myInstance), myStructure)
@ -1566,6 +1568,8 @@ if (any(abs(rhoDotFlux) > 0.0_pReal)) then
!$OMP END CRITICAL (fluxes) !$OMP END CRITICAL (fluxes)
endif endif
endif
!**************************************************************************** !****************************************************************************
!*** calculate dipole formation and annihilation !*** calculate dipole formation and annihilation