00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #include "SundanceHNMesher2D.hpp"
00033
00034 using namespace Sundance;
00035 using namespace Teuchos;
00036
00037 REFINE_MESH_ESTIMATE( DummyNoRefineClass , { return false; } , {return 0;} )
00038 MESH_DOMAIN( DummyAllMeshDomain , {return true;})
00039
00040 const RefinementClass HNMesher2D::dummyRefineClass_ = (new DummyNoRefineClass());
00041
00042 const MeshDomainDef HNMesher2D::dummyMeshDomain_ = (new DummyAllMeshDomain());
00043
00044 HNMesher2D::HNMesher2D(const ParameterList& params)
00045 : MeshSourceBase(params),
00046 _position_x(params.get<double>("position_x")),
00047 _position_y(params.get<double>("position_y")),
00048 _offset_x(params.get<double>("offset_x")),
00049 _offset_y(params.get<double>("offset_y")),
00050 _resolution_x(params.get<int>("resolution_x")),
00051 _resolution_y(params.get<int>("resolution_y")),
00052 refineClass_(HNMesher2D::dummyRefineClass_),
00053 meshDomain_(HNMesher2D::dummyMeshDomain_)
00054 {
00055
00056 }
00057
00058 Mesh HNMesher2D::fillMesh() const
00059 {
00060
00061 HNMesh2D *hnodegrid;
00062 Mesh mesh = createMesh(2);
00063
00064 hnodegrid = (HNMesh2D*) mesh.ptr().get();
00065 hnodegrid->createMesh( _position_x , _position_y , _offset_x , _offset_y , _resolution_x , _resolution_y ,
00066 refineClass_ , meshDomain_);
00067 return (mesh);
00068 }
00069