# p?laset

Initializes the offdiagonal elements of a matrix to alpha and the diagonal elements to beta.

## Syntax

call pslaset(uplo, m, n, alpha, beta, a, ia, ja, desca)

call pdlaset(uplo, m, n, alpha, beta, a, ia, ja, desca)

call pclaset(uplo, m, n, alpha, beta, a, ia, ja, desca)

call pzlaset(uplo, m, n, alpha, beta, a, ia, ja, desca)

## Description

This routine initializes an m-by-n distributed matrix sub(A) denoting `A(ia:ia+m-1, ja:ja+n-1)` to beta on the diagonal and alpha on the offdiagonals.

## Input Parameters

uplo

  (global) CHARACTER.

  Specifies the part of the distributed matrix sub(A) to be set:

  if `uplo = 'U'`: upper triangular part; the strictly lower triangular part of sub(A) is not changed;

  if `uplo = 'L'`: lower triangular part; the strictly upper triangular part of sub(A) is not changed.

  Otherwise: all of the matrix sub(A) is set.

m

  (global) INTEGER.

  The number of rows to be operated on, that is, the number of rows of the distributed submatrix sub(A). `(m≥0)`.

n

  (global) INTEGER.

  The number of columns to be operated on, that is, the number of columns of the distributed submatrix sub(A). `(n≥0)`.

alpha

  (global).

  REAL for pslaset

  DOUBLE PRECISION for pdlaset

  COMPLEX for pclaset

  COMPLEX*16 for pzlaset.

  The constant to which the offdiagonal elements are to be set.

beta

  (global).

  REAL for pslaset

  DOUBLE PRECISION for pdlaset

  COMPLEX for pclaset

  COMPLEX*16 for pzlaset.

  The constant to which the diagonal elements are to be set.

## Output Parameters

a

  (local).

  REAL for pslaset

  DOUBLE PRECISION for pdlaset

  COMPLEX for pclaset

  COMPLEX*16 for pzlaset.

  Pointer into the local memory to an array of DIMENSION`(lld_a, LOCc(ja+n-1))`.

  This array contains the local pieces of the distributed matrix sub(A) to be set. On exit, the leading m-by-n submatrix sub(A) is set as follows:

  if `uplo = 'U'`, `A(ia+i-1`, `ja+j-1) = alpha`, `1≤i≤j-1`, `1≤j≤n`,

  if `uplo = 'L'`, `A(ia+i-1`, `ja+j-1) = alpha`, `j+1≤i≤ m`, `1≤j≤ n`,

  otherwise, `A(ia+i-1`, `ja+j-1) = alpha`, `1≤i≤m`, `1≤j≤n`, `ia+i.ne.ja+j`, and, for all uplo, `A(ia+i-1`, `ja+i-1) = beta`, `1≤i≤min(m,n)`.

ia, ja

  (global) INTEGER.

  The column and row indices in the global array A indicating the first row and column of the submatrix sub(A), respectively.

desca

  (global and local) INTEGER .

  Array of DIMENSION (dlen_). The array descriptor for the distributed matrix A.

Parent topic: Auxiliary Routines