TridiagonalSolve

public final class TridiagonalSolve

Solves tridiagonal systems of equations.

Solves tridiagonal systems of equations. Supports batch dimensions and multiple right-hand sides per each left-hand side. On CPU, solution is computed via Gaussian elimination with or without partial pivoting, depending on `partial_pivoting` attribute. On GPU, Nvidia's cuSPARSE library is used: https://docs.nvidia.com/cuda/cusparse/index.html#gtsv Partial pivoting is not yet supported by XLA backends.

Nested Classes

class TridiagonalSolve.Options Optional attributes for TridiagonalSolve  

Public Methods

Output<T>
asOutput()
Returns the symbolic handle of a tensor.
static <T> TridiagonalSolve<T>
create(Scope scope, Operand<T> diagonals, Operand<T> rhs, Options... options)
Factory method to create a class wrapping a new TridiagonalSolve operation.
Output<T>
output()
Tensor of shape `[..., M, K]` containing the solutions
static TridiagonalSolve.Options
partialPivoting(Boolean partialPivoting)
static TridiagonalSolve.Options
perturbSingular(Boolean perturbSingular)

Inherited Methods

Public Methods

public Output<T> asOutput ()

Returns the symbolic handle of a tensor.

Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.

public static TridiagonalSolve<T> create (Scope scope, Operand<T> diagonals, Operand<T> rhs, Options... options)

Factory method to create a class wrapping a new TridiagonalSolve operation.

Parameters
scope current scope
diagonals Tensor of shape `[..., 3, M]` whose innermost 2 dimensions represent the tridiagonal matrices with three rows being the superdiagonal, diagonals, and subdiagonals, in order. The last element of the superdiagonal and the first element of the subdiagonal is ignored.
rhs Tensor of shape `[..., M, K]`, representing K right-hand sides per each left-hand side.
options carries optional attributes values
Returns
  • a new instance of TridiagonalSolve

public Output<T> output ()

Tensor of shape `[..., M, K]` containing the solutions

public static TridiagonalSolve.Options partialPivoting (Boolean partialPivoting)

Parameters
partialPivoting Whether to apply partial pivoting. Partial pivoting makes the procedure more stable, but slower.

public static TridiagonalSolve.Options perturbSingular (Boolean perturbSingular)