operator(.inv.) Interface

public interface operator(.inv.)

Inverse operator of a square matrix (Specification)

Summary

Operator interface for computing the inverse of a square real or complex matrix.

Description

This operator interface provides a convenient way to compute the inverse of a matrix. Supported data types include real and complex. On input errors or singular matrix, NaNs will be returned.

Note

The provided functions are intended for square matrices.


Functions

private module function stdlib_linalg_inverse_c_operator(a) result(inva)

Arguments

Type IntentOptional Attributes Name
complex(kind=sp), intent(in) :: a(:,:)

Input matrix a[n,n]

Return Value complex(kind=sp), allocatable, (:,:)

Result matrix

private module function stdlib_linalg_inverse_d_operator(a) result(inva)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: a(:,:)

Input matrix a[n,n]

Return Value real(kind=dp), allocatable, (:,:)

Result matrix

private module function stdlib_linalg_inverse_s_operator(a) result(inva)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in) :: a(:,:)

Input matrix a[n,n]

Return Value real(kind=sp), allocatable, (:,:)

Result matrix

private module function stdlib_linalg_inverse_z_operator(a) result(inva)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(in) :: a(:,:)

Input matrix a[n,n]

Return Value complex(kind=dp), allocatable, (:,:)

Result matrix