not needed
This commit is contained in:
parent
1fbf14c148
commit
c53927ad6f
|
@ -259,7 +259,7 @@ subroutine formResidual(in,x_scal,f_scal,dummy,ierr)
|
||||||
PetscObject :: dummy
|
PetscObject :: dummy
|
||||||
PetscErrorCode :: ierr
|
PetscErrorCode :: ierr
|
||||||
integer :: i, j, k, ce
|
integer :: i, j, k, ce
|
||||||
real(pReal) :: phiDot, dPhiDot_dPhi, mobility
|
real(pReal) :: phiDot, mobility
|
||||||
|
|
||||||
phi_current = x_scal
|
phi_current = x_scal
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
|
@ -281,7 +281,7 @@ subroutine formResidual(in,x_scal,f_scal,dummy,ierr)
|
||||||
ce = 0
|
ce = 0
|
||||||
do k = 1, grid3; do j = 1, grid(2); do i = 1,grid(1)
|
do k = 1, grid3; do j = 1, grid(2); do i = 1,grid(1)
|
||||||
ce = ce + 1
|
ce = ce + 1
|
||||||
call damage_nonlocal_getSourceAndItsTangent(phiDot, dPhiDot_dPhi, phi_current(i,j,k),ce)
|
call damage_nonlocal_getSourceAndItsTangent(phiDot, phi_current(i,j,k),ce)
|
||||||
mobility = damage_nonlocal_getMobility(ce)
|
mobility = damage_nonlocal_getMobility(ce)
|
||||||
scalarField_real(i,j,k) = params%timeinc*(scalarField_real(i,j,k) + phiDot) &
|
scalarField_real(i,j,k) = params%timeinc*(scalarField_real(i,j,k) + phiDot) &
|
||||||
+ mobility*(phi_lastInc(i,j,k) - phi_current(i,j,k)) &
|
+ mobility*(phi_lastInc(i,j,k) - phi_current(i,j,k)) &
|
||||||
|
|
|
@ -170,12 +170,12 @@ module homogenization
|
||||||
real(pReal) :: M
|
real(pReal) :: M
|
||||||
end function damage_nonlocal_getMobility
|
end function damage_nonlocal_getMobility
|
||||||
|
|
||||||
module subroutine damage_nonlocal_getSourceAndItsTangent(phiDot, dPhiDot_dPhi, phi, ce)
|
module subroutine damage_nonlocal_getSourceAndItsTangent(phiDot, phi, ce)
|
||||||
integer, intent(in) :: ce
|
integer, intent(in) :: ce
|
||||||
real(pReal), intent(in) :: &
|
real(pReal), intent(in) :: &
|
||||||
phi
|
phi
|
||||||
real(pReal) :: &
|
real(pReal), intent(out) :: &
|
||||||
phiDot, dPhiDot_dPhi
|
phiDot
|
||||||
end subroutine damage_nonlocal_getSourceAndItsTangent
|
end subroutine damage_nonlocal_getSourceAndItsTangent
|
||||||
|
|
||||||
module subroutine damage_nonlocal_putNonLocalDamage(phi,ce)
|
module subroutine damage_nonlocal_putNonLocalDamage(phi,ce)
|
||||||
|
|
|
@ -42,7 +42,7 @@ module subroutine damage_init()
|
||||||
|
|
||||||
|
|
||||||
print'(/,a)', ' <<<+- homogenization:damage init -+>>>'
|
print'(/,a)', ' <<<+- homogenization:damage init -+>>>'
|
||||||
print'(/,a)', ' <<<+- homogenization:damage:isodamage init -+>>>'
|
print'(/,a)', ' <<<+- homogenization:damage:pass init -+>>>'
|
||||||
|
|
||||||
configHomogenizations => config_material%get('homogenization')
|
configHomogenizations => config_material%get('homogenization')
|
||||||
allocate(param(configHomogenizations%length))
|
allocate(param(configHomogenizations%length))
|
||||||
|
@ -113,20 +113,19 @@ end function damage_nonlocal_getMobility
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief calculates homogenized damage driving forces
|
!> @brief calculates homogenized damage driving forces
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
module subroutine damage_nonlocal_getSourceAndItsTangent(phiDot, dPhiDot_dPhi, phi, ce)
|
module subroutine damage_nonlocal_getSourceAndItsTangent(phiDot, phi, ce)
|
||||||
|
|
||||||
integer, intent(in) :: ce
|
integer, intent(in) :: ce
|
||||||
real(pReal), intent(in) :: &
|
real(pReal), intent(in) :: &
|
||||||
phi
|
phi
|
||||||
real(pReal) :: &
|
real(pReal), intent(out) :: &
|
||||||
phiDot, dPhiDot_dPhi
|
phiDot
|
||||||
|
|
||||||
phiDot = 0.0_pReal
|
real(pReal) :: &
|
||||||
dPhiDot_dPhi = 0.0_pReal
|
dPhiDot_dPhi
|
||||||
|
|
||||||
call phase_damage_getRateAndItsTangents(phiDot, dPhiDot_dPhi, phi, ce)
|
call phase_damage_getRateAndItsTangents(phiDot, dPhiDot_dPhi, phi, ce)
|
||||||
phiDot = phiDot/real(homogenization_Nconstituents(material_homogenizationID(ce)),pReal)
|
phiDot = phiDot/real(homogenization_Nconstituents(material_homogenizationID(ce)),pReal)
|
||||||
dPhiDot_dPhi = dPhiDot_dPhi/real(homogenization_Nconstituents(material_homogenizationID(ce)),pReal)
|
|
||||||
|
|
||||||
end subroutine damage_nonlocal_getSourceAndItsTangent
|
end subroutine damage_nonlocal_getSourceAndItsTangent
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ module subroutine thermal_init()
|
||||||
|
|
||||||
|
|
||||||
print'(/,a)', ' <<<+- homogenization:thermal init -+>>>'
|
print'(/,a)', ' <<<+- homogenization:thermal init -+>>>'
|
||||||
print'(/,a)', ' <<<+- homogenization:thermal:isotemperature init -+>>>'
|
print'(/,a)', ' <<<+- homogenization:thermal:pass init -+>>>'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue