C++ main module for emicrom Package  1.0
EMM_Kd_zz.h
Go to the documentation of this file.
1 #ifndef EMM_Kd_zz_H
2 #define EMM_Kd_zz_H
3 
4 #include "EMM_Kd.h"
5 
21 
22 class EMM_Kd_zz : public EMM_Kd_xx {
23 
24 
26 
27  // ATTRIBUTES
28 
29 private:
30 
31 
32 protected:
33  // METHODS
34 
35  // CONSTRUCTORS
36 
39  EMM_Kd_zz(void) {
40  }
41 
42 
43 
44  // DESTRUCTORS
45 
46 
49  virtual ~EMM_Kd_zz(void) {
50  }
51 
52 
53 private:
54 
55  // CONSTRUCTORS
56 
57 public:
61  inline static SP::EMM_Kd_zz New() {
62  SP::EMM_Kd_zz ret(new EMM_Kd_zz(),
64  ret->setThis(ret);
65  return ret;
66  };
67 
68 
69 
70 public:
71 
72 
73 
74 
75 public:
76  // OTHERS methods
77 
78 
86  virtual void setDistance(const tIndex &dx,const tIndex& dy,const tIndex& dz) {
87  EMM_Kd::setDistance(dz,dy,dx);
88  }
95  virtual void setMeshSize(const tReal& hx,const tReal& hy,const tReal& hz) {
96  EMM_Kd::setMeshSize(hz,hy,hx);
97  }
98 
99 
107  virtual tReal computeFunction(const tUSInt& dim,const tReal x[]) {
108 
109  return analyticIntegration(x[2],x[1],x[0]);
110 
111  }
112 
113 };
114 
115 #endif
SP_OBJECT(EMM_Kd_zz)
Definition: EMM_Kd_zz.h:22
virtual tReal computeFunction(const tUSInt &dim, const tReal x[])
compute the function at the point x of size dim
Definition: EMM_Kd_zz.h:107
virtual ~EMM_Kd_zz(void)
destroy the class
Definition: EMM_Kd_zz.h:49
DEFINE_SPTR(EMM_Kd_zz)
This class computes the function:
Definition: EMM_Kd_xx.h:43
#define tUSInt
Definition: types.h:28
virtual tReal analyticIntegration(const tReal &u, const tReal &v, const tReal &w) const
compute the function with analytic integration
Definition: EMM_Kd_xx.cpp:7
virtual void setDistance(const tIndex &dx, const tIndex &dy, const tIndex &dz)
set the distance from both interative cells
Definition: EMM_Kd_zz.h:86
#define tIndex
Definition: types.h:129
static SP::EMM_Kd_zz New()
build a new instance of class
Definition: EMM_Kd_zz.h:61
void setDistance(const tIndex d[])
set the distance from both interative cells
Definition: EMM_DistanceFunction.h:114
EMM_Kd_zz(void)
create the class
Definition: EMM_Kd_zz.h:39
virtual void setMeshSize(const tReal &hx, const tReal &hy, const tReal &hz)
set the mesh size
Definition: EMM_Kd_zz.h:95
void setMeshSize(const tReal h[])
set the mesh size
Definition: EMM_DistanceFunction.h:155
#define tReal
Definition: types.h:118
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:141