mtx_inverse Interface

public interface mtx_inverse

Module Procedures

private subroutine mtx_inverse_dbl(a, iwork, work, olwork, err)

Computes the inverse of a square matrix.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(inout), dimension(:,:) :: a

On input, the N-by-N matrix to invert. On output, the inverted matrix.

integer(kind=int32), intent(out), optional, target, dimension(:) :: iwork

An optional N-element integer workspace array.

real(kind=real64), intent(out), optional, target, dimension(:) :: work

An optional input, that if provided, prevents any local memory allocation. If not provided, the memory required is allocated within. If provided, the length of the array must be at least olwork.

integer(kind=int32), intent(out), optional :: olwork

An optional output used to determine workspace size. If supplied, the routine determines the optimal size for work, and returns without performing any actual calculations.

class(errors), intent(inout), optional, target :: err

The error object to be updated.

private subroutine mtx_inverse_cmplx(a, iwork, work, olwork, err)

Computes the inverse of a square matrix.

Arguments

Type IntentOptional Attributes Name
complex(kind=real64), intent(inout), dimension(:,:) :: a

On input, the N-by-N matrix to invert. On output, the inverted matrix.

integer(kind=int32), intent(out), optional, target, dimension(:) :: iwork

An optional N-element integer workspace array.

complex(kind=real64), intent(out), optional, target, dimension(:) :: work

An optional input, that if provided, prevents any local memory allocation. If not provided, the memory required is allocated within. If provided, the length of the array must be at least olwork.

integer(kind=int32), intent(out), optional :: olwork

An optional output used to determine workspace size. If supplied, the routine determines the optimal size for work, and returns without performing any actual calculations.

class(errors), intent(inout), optional, target :: err

The error object to be updated.