Forward-Euler update of every set with elements on this rank. dt defaults to the parent's time step.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(MultiSetModel3D_t), | intent(inout) | :: | this | |||
| real(kind=prec), | intent(in), | optional | :: | dt |
subroutine UpdateSolution_MultiSetModel3D_t(this,dt)
!! Forward-Euler update of every set with elements on this rank. dt defaults to the
!! parent's time step.
implicit none
class(MultiSetModel3D_t),intent(inout) :: this
real(prec),optional,intent(in) :: dt
! Local
integer :: k
call this%SyncSetClocks()
do k = 1,this%nSets
if(this%sets(k)%mesh%nElem == 0) cycle
if(present(dt)) then
call this%sets(k)%model%UpdateSolution(dt)
else
call this%sets(k)%model%UpdateSolution()
endif
enddo
endsubroutine UpdateSolution_MultiSetModel3D_t