DFSolver

Overview

DFSolver represents an operator that applies the inverse (or an approximate inverse) of the auxiliary metric matrix V. It is a thin C++/pybind11 wrapper exposed to Python for efficient dense transformations.

Constructor

DFSolver(basis, mtx, type='cholesky', device='cuda', gpu_mem_fraction=0.5)

Parameters

  • basis (libintx.Basis) - basis associated with the matrix.

  • mtx (ndarray, shape (n,n)) - square metric matrix.

  • type (str) - solver type ("cholesky", "lu", …).

  • device (str) - "cuda" or "host".

  • gpu_mem_fraction (float) - GPU memory fraction for CUDA runs.

Methods

  • solve(vec) - apply the transformation in-place (\(V^{-1} \ \mathrm{vec}\)).

Notes

  • The Python binding creates a DFSolver by validating the dimension and then calling into the C++ helper that returns a solver object potentially backed by GPU resources. See the Python bindings for exact behavior.