extendr_api::prelude::modules::evd

Function compute_hermitian_evd_custom_epsilon

pub fn compute_hermitian_evd_custom_epsilon<E>(
    matrix: MatRef<'_, E>,
    s: ColMut<'_, E>,
    u: Option<MatMut<'_, E>>,
    epsilon: <E as ComplexField>::Real,
    zero_threshold: <E as ComplexField>::Real,
    parallelism: Parallelism<'_>,
    stack: PodStack<'_>,
    params: HermitianEvdParams,
)
where E: ComplexField,
Expand description

See compute_hermitian_evd.

This function takes an additional epsilon and zero_threshold parameters. epsilon represents the precision of the values in the matrix, and zero_threshold is the value below which the precision starts to deteriorate, e.g. due to denormalized numbers.

These values need to be provided manually for types that do not have a known precision at compile time, e.g. a dynamic multiprecision floating point type.