tf.linalg.lu_solve  |  TensorFlow v2.16.1 (original) (raw)

tf.linalg.lu_solve

Stay organized with collections Save and categorize content based on your preferences.

Solves systems of linear eqns A X = RHS, given LU factorizations.

View aliases

Compat aliases for migration

SeeMigration guide for more details.

tf.compat.v1.linalg.lu_solve

tf.linalg.lu_solve(
    lower_upper, perm, rhs, validate_args=False, name=None
)
Args
lower_upper lu as returned by tf.linalg.lu, i.e., if matmul(P, matmul(L, U)) = X then lower_upper = L + U - eye.
perm p as returned by tf.linag.lu, i.e., if matmul(P, matmul(L, U)) = X then perm = argmax(P).
rhs Matrix-shaped float Tensor representing targets for which to solve;A X = RHS. To handle vector cases, use: lu_solve(..., rhs[..., tf.newaxis])[..., 0].
validate_args Python bool indicating whether arguments should be checked for correctness. Note: this function does not verify the implied matrix is actually invertible, even when validate_args=True. Default value: False (i.e., don't validate arguments).
name Python str name given to ops managed by this object. Default value: None (i.e., 'lu_solve').
Returns
x The X in A @ X = RHS.

Examples

import numpy as np
import tensorflow as tf
import tensorflow_probability as tfp

x = [[[1., 2],
      [3, 4]],
     [[7, 8],
      [3, 4]]]
inv_x = tf.linalg.lu_solve(*tf.linalg.lu(x), rhs=tf.eye(2))
tf.assert_near(tf.matrix_inverse(x), inv_x)
# ==> True

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.

Last updated 2024-04-26 UTC.