Matrix_Addition_CRS Function

private function Matrix_Addition_CRS(A, B) result(C)

Arguments

Type IntentOptional Attributes Name
type(type_crs), intent(in) :: A
type(type_crs), intent(in) :: B

Return Value type(type_crs)


Called by

proc~~matrix_addition_crs~~CalledByGraph proc~matrix_addition_crs Matrix_Addition_CRS interface~operator(+) operator(+) interface~operator(+)->proc~matrix_addition_crs

Source Code

    function Matrix_Addition_CRS(A, B) result(C)
        implicit none
        type(type_crs), intent(in) :: A, B
        type(type_crs) :: C
        integer(int32) :: k

        ! Assume same sparsity structure

        C = A
        C%val(:) = 0.0d0
        do k = 1, A%nnz
            C%val(k) = A%val(k) + B%val(k)
        end do
    end function Matrix_Addition_CRS