## psb_spmm -- Sparse Matrix by Dense Matrix Product

This subroutine computes the Sparse Matrix by Dense Matrix Product:

| (1)

| (2)

| (3)

where:

  is the global dense matrix
  is the global dense matrix
  is the global sparse matrix

Table 12: Data types

, , , , | Subroutine
Short Precision Real | psb_spmm
Long Precision Real | psb_spmm
Short Precision Complex | psb_spmm
Long Precision Complex | psb_spmm

    call psb_spmm(alpha, a, x, beta, y, desc_a, info)
    call psb_spmm(alpha, a, x, beta, y,desc_a, info, &
                 & trans, work)

Type:
  Synchronous.
On Entry
alpha
  the scalar .
  Scope: global
  Type: required
  Intent: in.
  Specified as: a number of the data type indicated in Table 12.
a
  the local portion of the sparse matrix .
  Scope: local
  Type: required
  Intent: in.
  Specified as: an object of type spdata`psb_Tspmat_type`.
x
  the local portion of global dense matrix .
  Scope: local
  Type: required
  Intent: in.
  Specified as: a rank one or two array or an object of type vdata`psb_T_vect_type` containing numbers of type specified in Table 12. The rank of must be the same of .
beta
  the scalar .
  Scope: global
  Type: required
  Intent: in.
  Specified as: a number of the data type indicated in Table 12.
y
  the local portion of global dense matrix .
  Scope: local
  Type: required
  Intent: inout.
  Specified as: a rank one or two array or an object of type vdata`psb_T_vect_type` containing numbers of type specified in Table 12. The rank of must be the same of .
desc_a
  contains data structures for communications.
  Scope: local
  Type: required
  Intent: in.
  Specified as: an object of type descdata`psb_desc_type`.
trans
  indicates what kind of operation to perform.
  trans = N
    the operation is specified by equation 1
  trans = T
    the operation is specified by equation 2
  trans = C
    the operation is specified by equation 3
  Scope: global
  Type: optional
  Intent: in.
  Default:
  Specified as: a character variable.

work
  work array.
  Scope: local
  Type: optional
  Intent: inout.
  Specified as: a rank one array of the same type of and with the TARGET attribute.

On Return
y
  the local portion of result matrix .
  Scope: local
  Type: required
  Intent: inout.
  Specified as: an array of rank one or two containing numbers of type specified in Table 12.
info
  Error code.
  Scope: local
  Type: required
  Intent: out.
  An integer value; 0 means no error has been detected.