dlerp Function

private pure function dlerp(self, r, value) result(val)

Type Bound

abst_mesh

Arguments

Type IntentOptional Attributes Name
class(abst_mesh), intent(in) :: self
type(type_dp_vector_3d), intent(in) :: r
real(kind=real64), intent(in) :: value(:)

Return Value type(type_dp_vector_3d)


Calls

proc~~dlerp~~CallsGraph proc~dlerp abst_mesh%dlerp dpsi dpsi proc~dlerp->dpsi

Source Code

    pure function dlerp(self, r, value) result(val)
        implicit none
        class(abst_mesh), intent(in) :: self
        type(type_dp_vector_3d), intent(in) :: r
        real(real64), intent(in) :: value(:)
        type(type_dp_vector_3d) :: val

        integer(int32) :: i

        val%x = 0.0d0
        val%y = 0.0d0
        val%z = 0.0d0

        do i = 1, self%num_nodes
            if (self%dimension >= 1) val%x = val%x + self%dpsi(i, 1, r) * value(self%connectivity(i))
            if (self%dimension >= 2) val%y = val%y + self%dpsi(i, 2, r) * value(self%connectivity(i))
            if (self%dimension >= 3) val%z = val%z + self%dpsi(i, 3, r) * value(self%connectivity(i))
        end do

    end function dlerp