Molassembler  3.0.0
Molecule graph and conformer library
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Scine::Molassembler::Temple::NelderMead< FloatType > Struct Template Reference

Nelder-Mead optimization. More...

#include <NelderMead.h>

Data Structures

struct  IndexValuePair
 
struct  OptimizationReturnType
 Type returned from an optimization. More...
 

Public Types

using MatrixType = Eigen::Matrix< FloatType, Eigen::Dynamic, Eigen::Dynamic >
 
using VectorType = Eigen::Matrix< FloatType, Eigen::Dynamic, 1 >
 

Static Public Member Functions

static VectorType generateVertex (const FloatType coefficient, const VectorType &centroid, const VectorType &worstVertex)
 
static FloatType valueStandardDeviation (const std::vector< IndexValuePair > &sortedPairs)
 
static VectorType centroid (const MatrixType &vertices, const std::vector< IndexValuePair > &pairs)
 Calculates the simplex centroid excluding the worst vertex.
 
template<typename UpdateFunction >
static void shrink (Eigen::Ref< MatrixType > vertices, std::vector< IndexValuePair > &pairs, UpdateFunction &&function)
 
static void replaceWorst (std::vector< IndexValuePair > &sortedPairs, const VectorType &newVertex, const FloatType newValue, Eigen::Ref< MatrixType > vertices)
 
template<typename UpdateFunction , typename Checker >
static OptimizationReturnType minimize (Eigen::Ref< MatrixType > vertices, UpdateFunction &&function, Checker &&check)
 

Detailed Description

template<typename FloatType = double>
struct Scine::Molassembler::Temple::NelderMead< FloatType >

Nelder-Mead optimization.

Template Parameters
FloatTypeType to represent floating point numbers

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