3-D scalar field with custom field function. More...
#include <Core/Field/CustomScalarField3.h>
Classes | |
class | Builder |
Front-end to create CustomScalarField3 objects step by step. More... | |
Public Member Functions | |
CustomScalarField3 (const std::function< double(const Vector3D &)> &customFunction, double derivativeResolution=1e-3) | |
Constructs a field with given function. More... | |
CustomScalarField3 (const std::function< double(const Vector3D &)> &customFunction, const std::function< Vector3D(const Vector3D &)> &customGradientFunction, double derivativeResolution=1e-3) | |
Constructs a field with given field and gradient function. More... | |
CustomScalarField3 (const std::function< double(const Vector3D &)> &customFunction, const std::function< Vector3D(const Vector3D &)> &customGradientFunction, const std::function< double(const Vector3D &)> &customLaplacianFunction) | |
Constructs a field with given field, gradient, and Laplacian function. More... | |
double | Sample (const Vector3D &x) const override |
Returns the sampled value at given position x . More... | |
std::function< double(const Vector3D &)> | Sampler () const override |
Returns the sampler function. More... | |
Vector3D | Gradient (const Vector3D &x) const override |
Returns the gradient vector at given position x . More... | |
double | Laplacian (const Vector3D &x) const override |
Returns the Laplacian at given position x . More... | |
Public Member Functions inherited from CubbyFlow::ScalarField3 | |
ScalarField3 () | |
Default constructor. More... | |
virtual | ~ScalarField3 () |
Default destructor. More... | |
Public Member Functions inherited from CubbyFlow::Field3 | |
Field3 () | |
virtual | ~Field3 () |
Static Public Member Functions | |
static Builder | GetBuilder () |
Returns builder fox CustomScalarField3. More... | |
Detailed Description
3-D scalar field with custom field function.
Constructor & Destructor Documentation
◆ CustomScalarField3() [1/3]
CubbyFlow::CustomScalarField3::CustomScalarField3 | ( | const std::function< double(const Vector3D &)> & | customFunction, |
double | derivativeResolution = 1e-3 |
||
) |
Constructs a field with given function.
This constructor creates a field with user-provided function object. To compute derivatives, such as gradient and Laplacian, finite differencing is used. Thus, the differencing resolution also can be provided as the last parameter.
◆ CustomScalarField3() [2/3]
CubbyFlow::CustomScalarField3::CustomScalarField3 | ( | const std::function< double(const Vector3D &)> & | customFunction, |
const std::function< Vector3D(const Vector3D &)> & | customGradientFunction, | ||
double | derivativeResolution = 1e-3 |
||
) |
Constructs a field with given field and gradient function.
This constructor creates a field with user-provided field and gradient function objects. To compute Laplacian, finite differencing is used. Thus, the differencing resolution also can be provided as the last parameter.
◆ CustomScalarField3() [3/3]
CubbyFlow::CustomScalarField3::CustomScalarField3 | ( | const std::function< double(const Vector3D &)> & | customFunction, |
const std::function< Vector3D(const Vector3D &)> & | customGradientFunction, | ||
const std::function< double(const Vector3D &)> & | customLaplacianFunction | ||
) |
Constructs a field with given field, gradient, and Laplacian function.
Member Function Documentation
◆ GetBuilder()
|
static |
Returns builder fox CustomScalarField3.
◆ Gradient()
Returns the gradient vector at given position x
.
Reimplemented from CubbyFlow::ScalarField3.
◆ Laplacian()
|
overridevirtual |
Returns the Laplacian at given position x
.
Reimplemented from CubbyFlow::ScalarField3.
◆ Sample()
|
overridevirtual |
Returns the sampled value at given position x
.
Implements CubbyFlow::ScalarField3.
◆ Sampler()
|
overridevirtual |
Returns the sampler function.
Reimplemented from CubbyFlow::ScalarField3.
The documentation for this class was generated from the following file:
- Core/Field/CustomScalarField3.h