Skip to content

cagpjax.linalg.congruence

Congruence transformations for linear operators.

Functions:

congruence_transform

congruence_transform(A: Any, B: Any) -> Any
congruence_transform(A: Diagonal, B: Diagonal) -> Diagonal
congruence_transform(A: BlockDiagonalSparse, B: Diagonal | ScalarMul) -> Diagonal
congruence_transform(A: Any, B: Any) -> Any

Congruence transformation A.T @ B @ A.

Parameters:

  • A

    (Any) –

    Linear operator or array to be applied.

  • B

    (Any) –

    Square linear operator or array to be transformed.

Source code in src/cagpjax/linalg/congruence.py
@cola.dispatch
def congruence_transform(A: Any, B: Any) -> Any:
    """Congruence transformation ``A.T @ B @ A``.

    Args:
        A: Linear operator or array to be applied.
        B: Square linear operator or array to be transformed.
    """
    pass