bounded_ext_derivation_procedures Submodule

Contains module procedures associated with the bounded extrapolation derivation class



Module Functions

module function calculateBExt(this, inputArray, indices) result(output)

Arguments

Type IntentOptional Attributes Name
class(BoundedExtDerivation), intent(inout) :: this
type(RealArray), intent(in), dimension(:) :: inputArray
integer(kind=ik), intent(in), dimension(:) :: indices

Return Value real(kind=rk), allocatable, dimension(:)


Module Subroutines

module subroutine initBExt(this, partitionObj, procRank, extrapolationObj, fixedLowerBound, fixedUpperBound, expectLowerBoundVar, expectUpperBoundVar)

Initialize bounded extrapolation derivation object

Arguments

Type IntentOptional Attributes Name
class(BoundedExtDerivation), intent(inout) :: this
type(Partition), intent(in) :: partitionObj

Partition object used to determine local processor grid chunk

integer(kind=ik), intent(in) :: procRank

Current processor rank

class(Extrapolation), intent(in) :: extrapolationObj

Extrapolation object used to calculate the extrapolated values

real(kind=rk), intent(in), optional :: fixedLowerBound

Optional fixed lower bound value

real(kind=rk), intent(in), optional :: fixedUpperBound

Optional fixed upper bound value

logical, intent(in), optional :: expectLowerBoundVar

True if lower bound variable is expected. Defaults to false.

logical, intent(in), optional :: expectUpperBoundVar

True if lower bound variable is expected. Defaults to false.