ABLATE Source Documentation  0.12.36
imq.hpp
1 #ifndef ABLATELIBRARY_RBF_IMQ_HPP
2 #define ABLATELIBRARY_RBF_IMQ_HPP
3 
4 #include "rbf.hpp"
5 
6 #define __RBF_IMQ_DEFAULT_PARAM 0.1
7 
8 namespace ablate::domain::rbf {
9 
10 class IMQ : public RBF {
11  private:
12  const double scale = -1;
13 
14  public:
15  std::string_view type() const override { return "IMQ"; }
16 
17  IMQ(int p = 4, double scale = 0.1, bool doesNotHaveDerivatives = false, bool doesNotHaveInterpolation = false);
18 
19  PetscReal RBFVal(PetscInt dim, PetscReal x[], PetscReal y[]) override;
20  PetscReal RBFDer(PetscInt dim, PetscReal x[], PetscInt dx, PetscInt dy, PetscInt dz) override;
21 };
22 
23 } // namespace ablate::domain::rbf
24 
25 #endif // ABLATELIBRARY_RBF_IMQ_HPP
Definition: imq.hpp:10
PetscReal RBFVal(PetscInt dim, PetscReal x[], PetscReal y[]) override
Definition: imq.cpp:10
std::string_view type() const override
Definition: imq.hpp:15
PetscReal RBFDer(PetscInt dim, PetscReal x[], PetscInt dx, PetscInt dy, PetscInt dz) override
Definition: imq.cpp:19
Definition: rbf.hpp:12