Gromacs  2026.0-dev-20241213-9ac17bb
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
splineutil.h File Reference
#include <cstddef>
#include <functional>
#include <utility>
#include <vector>
#include "gromacs/utility/alignedallocator.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/real.h"
+ Include dependency graph for splineutil.h:
+ This graph shows which files directly or indirectly include this file:

Description

Declares internal utility functions for spline tables.

Author
Erik Lindahl erik..nosp@m.lind.nosp@m.ahl@g.nosp@m.mail.nosp@m..com

Functions

void gmx::internal::throwUnlessDerivativeIsConsistentWithFunction (const std::function< double(double)> &function, const std::function< double(double)> &derivative, const std::pair< real, real > &range)
 Ensure analytical derivative is the derivative of analytical function. More...
 
void gmx::internal::throwUnlessDerivativeIsConsistentWithFunction (ArrayRef< const double > function, ArrayRef< const double > derivative, double inputSpacing, const std::pair< real, real > &range)
 Ensure vector of derivative values is the derivative of function vector. More...
 
real gmx::internal::findSmallestQuotientOfFunctionAndSecondDerivative (const std::function< double(double)> &f, const std::pair< real, real > &range)
 Find smallest quotient between analytical function and its 2nd derivative. More...
 
real gmx::internal::findSmallestQuotientOfFunctionAndSecondDerivative (ArrayRef< const double > function, double inputSpacing, const std::pair< real, real > &range)
 Find smallest quotient between vector of values and its 2nd derivative. More...
 
real gmx::internal::findSmallestQuotientOfFunctionAndThirdDerivative (const std::function< double(double)> &f, const std::pair< real, real > &range)
 Find smallest quotient between analytical function and its 3rd derivative. More...
 
real gmx::internal::findSmallestQuotientOfFunctionAndThirdDerivative (ArrayRef< const double > function, double inputSpacing, const std::pair< real, real > &range)
 Find smallest quotient between function and 2nd derivative (vectors) More...
 
std::vector< double > gmx::internal::vectorSecondDerivative (ArrayRef< const double > f, double spacing)
 Calculate second derivative of vector and return vector of same length. More...
 
template<class T , class U >
void gmx::internal::fillMultiplexedTableData (const T inputData, U *multiplexedOutputData, std::size_t valuesPerTablePoint, std::size_t numTables, std::size_t thisTableIndex)
 Copy (temporary) table data into aligned multiplexed vector. More...