Copy_convergence Subroutine

private subroutine Copy_convergence(left, right)

This function provides the assignment operator of two convergence. Temporary Solution as CRAY compiler dont have = Operator Copying a convegence object (right) into other convergence (left)

Arguments

Type IntentOptional Attributes Name
type(tem_convergence_type), intent(out) :: left

convegence to copy to

type(tem_convergence_type), intent(in) :: right

convegence to copy from


Called by

proc~~copy_convergence~~CalledByGraph proc~copy_convergence Copy_convergence interface~assignment(=) assignment(=) interface~assignment(=)->proc~copy_convergence

Source Code

  subroutine Copy_convergence(left,right)
    ! -------------------------------------------------------------------- !
    !> convegence to copy to
    type(tem_convergence_type), intent(out) :: left
    !> convegence to copy from
    type(tem_convergence_type), intent(in) :: right
    ! -------------------------------------------------------------------- !
    ! -------------------------------------------------------------------- !

    left%header = right%header
    left%norm_kind = right%norm_kind
    left%varMap = right%varMap
    left%subTree = right%subTree
    left%proc = right%proc
    if (allocated(right%redSpatial)) then
      allocate(left%redSpatial(size(right%redSpatial)))
      left%redSpatial = right%redSpatial
    end if
    left%nDofs = right%nDofs

  end subroutine Copy_convergence