Have a question? Connect with the community at the TensorFlow Forum

# tensorflow::ops::SparseTensorDenseMatMul

`#include <sparse_ops.h>`

Multiply SparseTensor (of rank 2) "A" by dense matrix "B".

## Summary

No validity checking is performed on the indices of A. However, the following input format is recommended for optimal behavior:

if adjoint_a == false: A should be sorted in lexicographically increasing order. Use SparseReorder if you're not sure. if adjoint_a == true: A should be sorted in order of increasing dimension 1 (i.e., "column major" order instead of "row major" order).

Arguments:

• scope: A Scope object
• a_indices: 2-D. The `indices` of the `SparseTensor`, size `[nnz, 2]` Matrix.
• a_values: 1-D. The `values` of the `SparseTensor`, size `[nnz]` Vector.
• a_shape: 1-D. The `shape` of the `SparseTensor`, size `[2]` Vector.
• b: 2-D. A dense Matrix.

Optional attributes (see `Attrs`):

• adjoint_a: Use the adjoint of A in the matrix multiply. If A is complex, this is transpose(conj(A)). Otherwise it's transpose(A).
• adjoint_b: Use the adjoint of B in the matrix multiply. If B is complex, this is transpose(conj(B)). Otherwise it's transpose(B).

Returns:

• `Output`: The product tensor.

### Constructors and Destructors

`SparseTensorDenseMatMul(const ::tensorflow::Scope & scope, ::tensorflow::Input a_indices, ::tensorflow::Input a_values, ::tensorflow::Input a_shape, ::tensorflow::Input b)`
`SparseTensorDenseMatMul(const ::tensorflow::Scope & scope, ::tensorflow::Input a_indices, ::tensorflow::Input a_values, ::tensorflow::Input a_shape, ::tensorflow::Input b, const SparseTensorDenseMatMul::Attrs & attrs)`

### Public attributes

`operation`
`Operation`
`product`
`::tensorflow::Output`

### Public functions

`node() const `
`::tensorflow::Node *`
`operator::tensorflow::Input() const `
``` ```
``` ```
`operator::tensorflow::Output() const `
``` ```
``` ```

### Public static functions

`AdjointA(bool x)`
`Attrs`
`AdjointB(bool x)`
`Attrs`

### Structs

tensorflow::ops::SparseTensorDenseMatMul::Attrs

Optional attribute setters for SparseTensorDenseMatMul.

## Public attributes

### operation

`Operation operation`

### product

`::tensorflow::Output product`

## Public functions

### SparseTensorDenseMatMul

``` SparseTensorDenseMatMul(
const ::tensorflow::Scope & scope,
::tensorflow::Input a_indices,
::tensorflow::Input a_values,
::tensorflow::Input a_shape,
::tensorflow::Input b
)```

### SparseTensorDenseMatMul

``` SparseTensorDenseMatMul(
const ::tensorflow::Scope & scope,
::tensorflow::Input a_indices,
::tensorflow::Input a_values,
::tensorflow::Input a_shape,
::tensorflow::Input b,
const SparseTensorDenseMatMul::Attrs & attrs
)```

### node

`::tensorflow::Node * node() const `

### operator::tensorflow::Input

` operator::tensorflow::Input() const `

### operator::tensorflow::Output

` operator::tensorflow::Output() const `

## Public static functions

```Attrs AdjointA(
```Attrs AdjointB(