Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Public Attributes | List of all members
uni20::krylov::KrylovExponentialResult< Scalar, Vector > Struct Template Reference

Matrix-free approximation to exp(t A) v. More...

#include <krylov_exponential.hpp>

Public Attributes

Vector action
 
bool converged = true
 
uni20::make_real_t< Scalar > defect_integral_estimate = uni20::make_real_t<Scalar>{}
 Time-integrated Hermitian/Lanczos defect estimate; zero for nonsymmetric Arnoldi actions.
 
std::optional< KrylovExponentialDiagnostics< uni20::make_real_t< Scalar > > > diagnostics
 
uni20::make_real_t< Scalar > endpoint_defect_estimate = uni20::make_real_t<Scalar>{}
 
uni20::make_real_t< Scalar > error_estimate = uni20::make_real_t<Scalar>{}
 
uni20::make_real_t< Scalar > final_residual_norm = uni20::make_real_t<Scalar>{}
 
bool happy_breakdown = false
 
uni20::make_real_t< Scalar > initial_norm = uni20::make_real_t<Scalar>{}
 
int matvec_count = 0
 
int projected_dimension = 0
 
uni20::make_real_t< Scalar > target_error = uni20::make_real_t<Scalar>{}
 

Detailed Description

template<uni20::RealOrComplex Scalar, typename Vector>
struct uni20::krylov::KrylovExponentialResult< Scalar, Vector >

Matrix-free approximation to exp(t A) v.

Template Parameters
ScalarVector-space scalar type.
VectorOpaque vector type.

Member Data Documentation

◆ action

template<uni20::RealOrComplex Scalar, typename Vector >
Vector uni20::krylov::KrylovExponentialResult< Scalar, Vector >::action

◆ converged

template<uni20::RealOrComplex Scalar, typename Vector >
bool uni20::krylov::KrylovExponentialResult< Scalar, Vector >::converged = true

◆ defect_integral_estimate

template<uni20::RealOrComplex Scalar, typename Vector >
uni20::make_real_t<Scalar> uni20::krylov::KrylovExponentialResult< Scalar, Vector >::defect_integral_estimate = uni20::make_real_t<Scalar>{}

Time-integrated Hermitian/Lanczos defect estimate; zero for nonsymmetric Arnoldi actions.

◆ diagnostics

template<uni20::RealOrComplex Scalar, typename Vector >
std::optional<KrylovExponentialDiagnostics<uni20::make_real_t<Scalar> > > uni20::krylov::KrylovExponentialResult< Scalar, Vector >::diagnostics

◆ endpoint_defect_estimate

template<uni20::RealOrComplex Scalar, typename Vector >
uni20::make_real_t<Scalar> uni20::krylov::KrylovExponentialResult< Scalar, Vector >::endpoint_defect_estimate = uni20::make_real_t<Scalar>{}

◆ error_estimate

template<uni20::RealOrComplex Scalar, typename Vector >
uni20::make_real_t<Scalar> uni20::krylov::KrylovExponentialResult< Scalar, Vector >::error_estimate = uni20::make_real_t<Scalar>{}

◆ final_residual_norm

template<uni20::RealOrComplex Scalar, typename Vector >
uni20::make_real_t<Scalar> uni20::krylov::KrylovExponentialResult< Scalar, Vector >::final_residual_norm = uni20::make_real_t<Scalar>{}

◆ happy_breakdown

template<uni20::RealOrComplex Scalar, typename Vector >
bool uni20::krylov::KrylovExponentialResult< Scalar, Vector >::happy_breakdown = false

◆ initial_norm

template<uni20::RealOrComplex Scalar, typename Vector >
uni20::make_real_t<Scalar> uni20::krylov::KrylovExponentialResult< Scalar, Vector >::initial_norm = uni20::make_real_t<Scalar>{}

◆ matvec_count

template<uni20::RealOrComplex Scalar, typename Vector >
int uni20::krylov::KrylovExponentialResult< Scalar, Vector >::matvec_count = 0

◆ projected_dimension

template<uni20::RealOrComplex Scalar, typename Vector >
int uni20::krylov::KrylovExponentialResult< Scalar, Vector >::projected_dimension = 0

◆ target_error

template<uni20::RealOrComplex Scalar, typename Vector >
uni20::make_real_t<Scalar> uni20::krylov::KrylovExponentialResult< Scalar, Vector >::target_error = uni20::make_real_t<Scalar>{}

The documentation for this struct was generated from the following file: