Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage > Class Template Reference

#include <convex.hpp>

Public Types

using value_type = Scalar
using x_vector_storage_t = XVectorStorage
using grad_vector_storage_t = GradVectorStorage
using x_tmp_vector_storage_t = XTmpVectorStorage
using grad_tmp_vector_storage_t = GradTmpVectorStorage

Public Member Functions

 PGDState (x_vector_storage_t x, grad_vector_storage_t g, x_tmp_vector_storage_t x_tmp, grad_tmp_vector_storage_t g_tmp)
auto & x ()
const auto & x () const
auto & grad ()
const auto & grad () const
auto & x_tmp ()
const auto & x_tmp () const
auto & grad_tmp ()
const auto & grad_tmp () const
unsigned & iter ()
bool & converged ()
value_typeresidual ()
value_typestep_size ()
unsigned iter () const
bool converged () const
value_type residual () const
value_type step_size () const

Member Typedef Documentation

◆ value_type

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
using mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::value_type = Scalar

◆ x_vector_storage_t

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
using mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::x_vector_storage_t = XVectorStorage

◆ grad_vector_storage_t

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
using mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::grad_vector_storage_t = GradVectorStorage

◆ x_tmp_vector_storage_t

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
using mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::x_tmp_vector_storage_t = XTmpVectorStorage

◆ grad_tmp_vector_storage_t

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
using mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::grad_tmp_vector_storage_t = GradTmpVectorStorage

Constructor & Destructor Documentation

◆ PGDState()

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::PGDState ( x_vector_storage_t x,
grad_vector_storage_t g,
x_tmp_vector_storage_t x_tmp,
grad_tmp_vector_storage_t g_tmp )
inline

Member Function Documentation

◆ x() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::x ( )
inline

◆ x() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
const auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::x ( ) const
inline

◆ grad() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::grad ( )
inline

◆ grad() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
const auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::grad ( ) const
inline

◆ x_tmp() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::x_tmp ( )
inline

◆ x_tmp() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
const auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::x_tmp ( ) const
inline

◆ grad_tmp() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::grad_tmp ( )
inline

◆ grad_tmp() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
const auto & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::grad_tmp ( ) const
inline

◆ iter() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
unsigned & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::iter ( )
inline

◆ converged() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
bool & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::converged ( )
inline

◆ residual() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
value_type & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::residual ( )
inline

◆ step_size() [1/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
value_type & mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::step_size ( )
inline

◆ iter() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
unsigned mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::iter ( ) const
inline

◆ converged() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
bool mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::converged ( ) const
inline

◆ residual() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
value_type mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::residual ( ) const
inline

◆ step_size() [2/2]

template<class Scalar, class XVectorStorage, class GradVectorStorage, class XTmpVectorStorage, class GradTmpVectorStorage>
value_type mundy::convex::PGDState< Scalar, XVectorStorage, GradVectorStorage, XTmpVectorStorage, GradTmpVectorStorage >::step_size ( ) const
inline