IBM Books

Parallel Engineering and Scientific Subroutine Library for AIX Version 2 Release 3: Guide and Reference

PDGEASB--Assembles a Dense Vector

This sparse utility subroutine assembles a dense vector.

Syntax

Fortran CALL PDGEASB (nx, x, ldx, desc_a)
C and C++ pdgeasb (nx, x, ldx, desc_a);

On Entry

nx
is the number of columns in the local dense vector.

Scope: local

Specified as: fullword integer; nx = 1.

x
is the local part of the dense matrix x produced by previous call(s) to PDGEINS.

Scope: local

Specified as: an ldx by (at least) nx array, containing long-precision real numbers.

ldx
is the local leading dimension of the dense matrix.

Scope: local

Specified as: fullword integer; ldx >= max(1,N_ROW).

desc_a
is the array descriptor, which was finalized in a preceding call to PDSPASB.

Specified as: an array of length DLEN, containing fullword integers.

On Return

x
is the updated local part of the dense matrix.

Scope: local

Returned as: an ldx by (at least) length nx, containing long-precision real numbers.

Notes and Coding Rules
  1. Before you call this subroutine, you must have called PDGEINS as many times as needed; that is, you must have completed building the dense vectors with call(s) to PDGEINS before you place a call to this subroutine.

    Before you call this subroutine, you must have called PDSPASB.

  2. You do not need a separate array descriptor for a dense vector because it must conform to the size of matrix A. For more details about N_ROW, N_COL, and other elements of desc_a, see Table 28.
  3. This subroutine must be called for:

Error Conditions

Computational Errors

None

Resource Errors

None.

Input-Argument and Miscellaneous Errors

Stage 1 

  1. The BLACS context is invalid.

Stage 2 

  1. This subroutine was called from outside the process grid.

Stage 3 

  1. The process grid is not np × 1.
  2. desc_a is not valid.

Stage 4 

  1. ldx < max(1,N_ROW)


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]