BoxBOD_functor Struct Reference
+ Inheritance diagram for BoxBOD_functor:

Public Member Functions

 BoxBOD_functor (void)
 
int operator() (const VectorXd &b, VectorXd &fvec)
 
int df (const VectorXd &b, MatrixXd &fjac)
 
 BoxBOD_functor (void)
 
int operator() (const VectorXd &b, VectorXd &fvec)
 
int df (const VectorXd &b, MatrixXd &fjac)
 
- Public Member Functions inherited from Eigen::DenseFunctor< double >
 DenseFunctor ()
 
 DenseFunctor (int inputs, int values)
 
int inputs () const
 
int values () const
 
- Public Member Functions inherited from Functor< double >
 Functor ()
 
 Functor (int inputs, int values)
 
 Functor ()
 
 Functor (int inputs_, int values_)
 
int inputs () const
 
int inputs () const
 
int values () const
 
int values () const
 

Static Public Attributes

static const double x [6] = {1., 2., 3., 5., 7., 10.}
 

Additional Inherited Members

- Public Types inherited from Eigen::DenseFunctor< double >
enum  
 
typedef double Scalar
 
typedef Matrix< Scalar, InputsAtCompileTime, 1 > InputType
 
typedef Matrix< Scalar, ValuesAtCompileTime, 1 > ValueType
 
typedef Matrix< Scalar, ValuesAtCompileTime, InputsAtCompileTimeJacobianType
 
typedef ColPivHouseholderQR< JacobianTypeQRSolver
 
- Public Types inherited from Functor< double >
enum  
 
enum  
 
typedef double Scalar
 
typedef double Scalar
 
typedef Matrix< Scalar, InputsAtCompileTime, 1 > InputType
 
typedef Matrix< Scalar, InputsAtCompileTime, 1 > InputType
 
typedef Matrix< Scalar, ValuesAtCompileTime, 1 > ValueType
 
typedef Matrix< Scalar, ValuesAtCompileTime, 1 > ValueType
 
typedef Matrix< Scalar, ValuesAtCompileTime, InputsAtCompileTimeJacobianType
 
typedef Matrix< Scalar, ValuesAtCompileTime, InputsAtCompileTimeJacobianType
 
- Public Attributes inherited from Eigen::DenseFunctor< double >
const int m_inputs
 
const int m_values
 
- Public Attributes inherited from Functor< double >
const int m_inputs
 
int m_inputs
 
const int m_values
 
int m_values
 

Constructor & Destructor Documentation

◆ BoxBOD_functor() [1/2]

BoxBOD_functor::BoxBOD_functor ( void  )
inline

◆ BoxBOD_functor() [2/2]

BoxBOD_functor::BoxBOD_functor ( void  )
inline

Member Function Documentation

◆ df() [1/2]

int BoxBOD_functor::df ( const VectorXd &  b,
MatrixXd &  fjac 
)
inline
890  {
891  assert(b.size() == 2);
892  assert(fjac.rows() == 6);
893  assert(fjac.cols() == 2);
894  for (int i = 0; i < 6; i++) {
895  double e = exp(-b[1] * x[i]);
896  fjac(i, 0) = 1. - e;
897  fjac(i, 1) = b[0] * x[i] * e;
898  }
899  return 0;
900  }
int i
Definition: BiCGSTAB_step_by_step.cpp:9
Array< double, 1, 3 > e(1./3., 0.5, 2.)
#define assert(e,...)
Definition: Logger.h:744
Scalar * b
Definition: benchVecAdd.cpp:17
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 exp(const bfloat16 &a)
Definition: BFloat16.h:615
static const double x[6]
Definition: levenberg_marquardt.cpp:882

References assert, b, e(), Eigen::bfloat16_impl::exp(), i, and x.

◆ df() [2/2]

int BoxBOD_functor::df ( const VectorXd &  b,
MatrixXd &  fjac 
)
inline
1206  {
1207  assert(b.size() == 2);
1208  assert(fjac.rows() == 6);
1209  assert(fjac.cols() == 2);
1210  for (int i = 0; i < 6; i++) {
1211  double e = exp(-b[1] * x[i]);
1212  fjac(i, 0) = 1. - e;
1213  fjac(i, 1) = b[0] * x[i] * e;
1214  }
1215  return 0;
1216  }

References assert, b, e(), Eigen::bfloat16_impl::exp(), i, and x.

◆ operator()() [1/2]

int BoxBOD_functor::operator() ( const VectorXd &  b,
VectorXd &  fvec 
)
inline
883  {
884  static const double y[6] = {109., 149., 149., 191., 213., 224.};
885  assert(b.size() == 2);
886  assert(fvec.size() == 6);
887  for (int i = 0; i < 6; i++) fvec[i] = b[0] * (1. - exp(-b[1] * x[i])) - y[i];
888  return 0;
889  }
Scalar * y
Definition: level1_cplx_impl.h:128

References assert, b, Eigen::bfloat16_impl::exp(), i, x, and y.

◆ operator()() [2/2]

int BoxBOD_functor::operator() ( const VectorXd &  b,
VectorXd &  fvec 
)
inline
1199  {
1200  static const double y[6] = {109., 149., 149., 191., 213., 224.};
1201  assert(b.size() == 2);
1202  assert(fvec.size() == 6);
1203  for (int i = 0; i < 6; i++) fvec[i] = b[0] * (1. - exp(-b[1] * x[i])) - y[i];
1204  return 0;
1205  }

References assert, b, Eigen::bfloat16_impl::exp(), i, x, and y.

Member Data Documentation

◆ x

const double BoxBOD_functor::x = {1., 2., 3., 5., 7., 10.}
static

Referenced by df(), and operator()().


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