# tensorflow::ops::MatrixDiagPartV3::Attrs Struct Reference

# tensorflow::ops::MatrixDiagPartV3::Attrs

`#include <array_ops.h>`

Optional attribute setters for [MatrixDiagPartV3](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/matrix-diag-part-v3#classtensorflow_1_1ops_1_1_matrix_diag_part_v3).

## Summary

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/matrix-diag-part-v3/attrs#structtensorflow_1_1ops_1_1_matrix_diag_part_v3_1_1_attrs_1ae1205a1c8ca51298169e77725f8079aa = "RIGHT_LEFT"` | `StringPiece` |

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/matrix-diag-part-v3/attrs#structtensorflow_1_1ops_1_1_matrix_diag_part_v3_1_1_attrs_1afa4bed225de64e118ded946aec30aae6(StringPiece x)` | `TF_MUST_USE_RESULT https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/matrix-diag-part-v3/attrs#structtensorflow_1_1ops_1_1_matrix_diag_part_v3_1_1_attrs` Some diagonals are shorter than `max_diag_len` and need to be padded. |

## Public attributes

### align_

```
StringPiece tensorflow::ops::MatrixDiagPartV3::Attrs::align_ = "RIGHT_LEFT"
```

## Public functions

### Align

```
TF_MUST_USE_RESULT Attrs tensorflow::ops::MatrixDiagPartV3::Attrs::Align(
  StringPiece x
)
```
Some diagonals are shorter than `max_diag_len` and need to be padded.

`align` is a string specifying how superdiagonals and subdiagonals should be aligned, respectively. There are four possible alignments: "RIGHT_LEFT" (default), "LEFT_RIGHT", "LEFT_LEFT", and "RIGHT_RIGHT". "RIGHT_LEFT" aligns superdiagonals to the right (left-pads the row) and subdiagonals to the left (right-pads the row). It is the packing format LAPACK uses. cuSPARSE uses "LEFT_RIGHT", which is the opposite alignment.

Defaults to "RIGHT_LEFT"