23 static std::string
name() {
return "Gauss"; }
25 static std::string
doc() {
return "Gauss-Green Gradient"; }
27 static std::string
schema() {
return "none"; }
70 virtual std::unique_ptr<GradOperatorFactory<Vec3>>
clone()
const
Represents an unstructured mesh in NeoN.
A class to contain the data and executors for a field and define some basic operations.
A class that represents a coefficient for the NeoN dsl.
virtual void grad(const VolumeField< scalar > &, const dsl::Coeff, la::LinearSystem< Vec3, localIdx > &) const override
virtual void grad(const VolumeField< scalar > &, const dsl::Coeff, VolumeField< Vec3 > &) const
static std::string name()
static std::string schema()
VolumeField< Vec3 > grad(const VolumeField< scalar > &phi, const dsl::Coeff operatorScaling=dsl::Coeff {}) const
virtual std::unique_ptr< GradOperatorFactory< Vec3 > > clone() const
GaussGreenGrad(const Executor &exec, const UnstructuredMesh &mesh)
virtual void grad(const VolumeField< scalar > &phi, const dsl::Coeff operatorScaling, Vector< Vec3 > &gradPhi) const
Represents a volume field in a finite volume method.
A class representing a linear system of equations.
A template class for registering derived classes with a base class.
#define NF_ERROR_EXIT(message)
Macro for printing an error message and aborting the program.
std::variant< SerialExecutor, CPUExecutor, GPUExecutor > Executor