00001 #ifndef _BOUNDARY_FUNCTIONS_LIB
00002 #define _BOUNDARY_FUNCTIONS_LIB
00003 #include "sfunctions.h"
00004 #include "fcylinderregion.h"
00005
00017 class FCubeBoundaryCondition : public Function3D
00018 {
00019 private:
00020 double m_left,m_right,m_top,m_bottom,m_front,m_back;
00021 double m_XDim,m_YDim,m_ZDim;
00022 double _tol;
00023 public:
00024 FCubeBoundaryCondition(double xdim,double ydim,double zdim,double left,double right,double front,double back,double bottom,double top);
00025 ~FCubeBoundaryCondition(){}
00026 virtual double operator()(const VecDouble &p, const unsigned int component=0) const;
00027 virtual bool isInDomain(const VecDouble &p,unsigned component=0) const;
00028
00029
00030 };
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040 #endif
00041