next up previous contents
Next: psb_spasb Sparse Up: Data management routines Previous: psb_spall Allocates   Contents

psb_spins -- Insert a cloud of elements into a sparse matrix

call psb_spins(nz, ia, ja, val, a, desc_a, info)

Type:
Asynchronous.
On Entry
nz
the number of elements to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer scalar.
ia
the row indices of the elements to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer array of size $nz$.
ja
the column indices of the elements to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer array of size $nz$.
val
the elements to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an array of size $nz$. Must be of the same type and kind of the aspk component of the sparse matrix $a$.
desc_a
The communication descriptor.
Scope: local.
Type: required.
Intent: inout.
Specified as: a variable of type descdatapsb_desc_type.

On Return
a
the matrix into which elements will be inserted.
Scope:local
Type:required
Intent: inout.
Specified as: a structured data of type spdatapsb_spmat_type.
desc_a
The communication descriptor.
Scope: local.
Type: required.
Intent: inout.
Specified as: a variable of type descdatapsb_desc_type.
info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.

Notes

  1. On entry to this routine the descriptor may be in either the build or assembled state.
  2. On entry to this routine the sparse matrix may be in either the build or update state.
  3. If the descriptor is in the build state, then the sparse matrix must also be in the build state; the action of the routine is to (implicitly) call psb_cdins to add entries to the sparsity pattern; each sparse matrix entry implicitly defines a graph edge, that is passed to the descriptor routine for the appropriate processing.
  4. Any coefficients from matrix rows not assigned to the calling process are silently ignored;
  5. If the descriptor is in the assembled state, then any entries in the sparse matrix that would generate additional communication requirements will be ignored;
  6. If the matrix is in the update state, any entries in positions that were not present in the original matrix will be ignored.


next up previous contents
Next: psb_spasb Sparse Up: Data management routines Previous: psb_spall Allocates   Contents