The AdditivelySeparableScalarField3 class constructs a scalar field F in R^3 as a sum of scalar functions i.e. F(x, y, z) = k (p(x) + q(y) + r(z)). More...
#include <gz/math/AdditivelySeparableScalarField3.hh>
Public Member Functions | |
AdditivelySeparableScalarField3 (ScalarT _k, ScalarFunctionT _p, ScalarFunctionT _q, ScalarFunctionT _r) | |
Constructor. More... | |
ScalarT | Evaluate (const Vector3< ScalarT > &_point) const |
Evaluate the scalar field at _point More... | |
ScalarT | Minimum () const |
Compute scalar field minimum. More... | |
ScalarT | Minimum (const Region3< ScalarT > &_region) const |
Compute scalar field minimum in a _region More... | |
ScalarT | Minimum (const Region3< ScalarT > &_region, Vector3< ScalarT > &_pMin) const |
Compute scalar field minimum in a _region More... | |
ScalarT | Minimum (Vector3< ScalarT > &_pMin) const |
Compute scalar field minimum. More... | |
ScalarT | operator() (const Vector3< ScalarT > &_point) const |
Call operator overload. More... | |
Detailed Description
template<typename ScalarFunctionT, typename ScalarT>
class gz::math::AdditivelySeparableScalarField3< ScalarFunctionT, ScalarT >
The AdditivelySeparableScalarField3 class constructs a scalar field F in R^3 as a sum of scalar functions i.e. F(x, y, z) = k (p(x) + q(y) + r(z)).
- Template Parameters
-
ScalarFunctionT a callable type that taking a single ScalarT value as argument and returning another ScalarT value. Additionally: - for AdditivelySeparableScalarField3T to have a stream operator overload, ScalarFunctionT must implement a void Print(std::ostream &, const std::string &) method that streams a representation of it using the given string as argument variable name;
- for AdditivelySeparableScalarField3T::Minimum to be callable, ScalarFunctionT must implement a ScalarT Minimum(const Interval<ScalarT> &, ScalarT &) method that computes its minimum in the given interval and returns an argument value that yields said minimum.
ScalarT a numeric type for which std::numeric_limits<> traits have been specialized.
Example
Constructor & Destructor Documentation
◆ AdditivelySeparableScalarField3()
|
inline |
Constructor.
- Parameters
-
[in] _k scalar constant [in] _p scalar function of x [in] _q scalar function of y [in] _r scalar function of z
Member Function Documentation
◆ Evaluate()
|
inline |
Evaluate the scalar field at _point
- Parameters
-
[in] _point scalar field argument
- Returns
- the result of evaluating
F(_point)
References Vector3< T >::X(), Vector3< T >::Y(), and Vector3< T >::Z().
Referenced by AdditivelySeparableScalarField3< ScalarFunctionT, ScalarT >::operator()().
◆ Minimum() [1/4]
|
inline |
Compute scalar field minimum.
- Returns
- the scalar field minimum
Referenced by AdditivelySeparableScalarField3< ScalarFunctionT, ScalarT >::Minimum().
◆ Minimum() [2/4]
|
inline |
Compute scalar field minimum in a _region
- Parameters
-
[in] _region scalar field argument set to check
- Returns
- the scalar field minimum in the given
_region
, or NaN if_region
is empty
References AdditivelySeparableScalarField3< ScalarFunctionT, ScalarT >::Minimum().
◆ Minimum() [3/4]
Compute scalar field minimum in a _region
- Parameters
-
[in] _region scalar field argument set to check [out] _pMin scalar field argument that yields the minimum, or NaN if _region
is empty
- Returns
- the scalar field minimum in the given
_region
, or NaN if_region
is empty
References Region3< T >::Empty(), Region3< T >::Ix(), Region3< T >::Iy(), Region3< T >::Iz(), numeric_limits::quiet_NaN(), Vector3< T >::X(), Vector3< T >::Y(), and Vector3< T >::Z().
◆ Minimum() [4/4]
|
inline |
Compute scalar field minimum.
- Parameters
-
[out] _pMin scalar field argument that yields the minimum, or NaN if _region
is empty
- Returns
- the scalar field minimum
References AdditivelySeparableScalarField3< ScalarFunctionT, ScalarT >::Minimum().
◆ operator()()
|
inline |
Call operator overload.
- See also
- SeparableScalarField3::Evaluate()
- Parameters
-
[in] _point scalar field argument
- Returns
- the result of evaluating
F(_point)
References AdditivelySeparableScalarField3< ScalarFunctionT, ScalarT >::Evaluate().
The documentation for this class was generated from the following file: