zgetrf


NAME

zgetrf - compute an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges


SYNOPSIS

  SUBROUTINE ZGETRF( M, N, A, LDA, IPIVOT, INFO)
  DOUBLE COMPLEX A(LDA,*)
  INTEGER M, N, LDA, INFO
  INTEGER IPIVOT(*)
 
  SUBROUTINE ZGETRF_64( M, N, A, LDA, IPIVOT, INFO)
  DOUBLE COMPLEX A(LDA,*)
  INTEGER*8 M, N, LDA, INFO
  INTEGER*8 IPIVOT(*)
 

F95 INTERFACE

  SUBROUTINE GETRF( [M], [N], A, [LDA], IPIVOT, [INFO])
  COMPLEX(8), DIMENSION(:,:) :: A
  INTEGER :: M, N, LDA, INFO
  INTEGER, DIMENSION(:) :: IPIVOT
 
  SUBROUTINE GETRF_64( [M], [N], A, [LDA], IPIVOT, [INFO])
  COMPLEX(8), DIMENSION(:,:) :: A
  INTEGER(8) :: M, N, LDA, INFO
  INTEGER(8), DIMENSION(:) :: IPIVOT
 

C INTERFACE

#include <sunperf.h>

void zgetrf(int m, int n, doublecomplex *a, int lda, int *ipivot, int *info);

void zgetrf_64(long m, long n, doublecomplex *a, long lda, long *ipivot, long *info);


PURPOSE

zgetrf computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.

The factorization has the form

   A = P * L * U

where P is a permutation matrix, L is lower triangular with unit diagonal elements (lower trapezoidal if m > n), and U is upper triangular (upper trapezoidal if m < n).

This is the right-looking Level 3 BLAS version of the algorithm.


ARGUMENTS

* M (input)
The number of rows of the matrix A. M >= 0.

* N (input)
The number of columns of the matrix A. N >= 0.

* A (input/output)
On entry, the M-by-N matrix to be factored. On exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored.

* LDA (input)
The leading dimension of the array A. LDA >= max(1,M).

* IPIVOT (output)
The pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIVOT(i).

* INFO (output)