Gascoigne::HierarchicalMesh2d Class Reference

#include <hierarchicalmesh2d.h>

Inheritance diagram for Gascoigne::HierarchicalMesh2d:

Inheritance graph
[legend]
Collaboration diagram for Gascoigne::HierarchicalMesh2d:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 HierarchicalMesh2d ()
 HierarchicalMesh2d (const HierarchicalMesh2d &H)
HierarchicalMesh2doperator= (const HierarchicalMesh2d &H)
 HierarchicalMesh2d (const ParamFile *paramfile)
 ~HierarchicalMesh2d ()
std::string GetName () const
int dimension () const
int nnodes () const
int ncells () const
int nblines () const
int nodes_per_cell (int i) const
int VtkType (int i) const
const Vertex2dvertex2d (int i) const
const Quadquad (int i) const
const BoundaryLinebline (int i) const
std::pair< int, int > GetBoundaryInformation (int i) const
int vertex_of_cell (int i, int ii) const
int vertex_of_bline (int i, int ii) const
int edge_of_quad (int i, int ii) const
int level (int i) const
bool sleep (int i) const
int child (int i, int ii) const
int nchilds (int i) const
int QuadNeighbour (const Quad &, int) const
const QuadLawAndOrderQuadLawOrder () const
const LineHangListlinehanglist () const
const BoundaryFunction2dline_shape (int i) const
const std::vector< BoundaryLine > & line_list () const
const VertexVec2dvertex2d () const
const QuadVecquad () const
const BLineVecbline () const
const LineHangListlinehang () const
const std::map< int, int > & GetQuadOfCurved () const
int Vater (const int i) const
IntVector Nachkommen (const int i) const
IntVector Geschwister (const int i) const
IntVector Kinder (const int i) const
int nactivedescendants (int i) const
IntVector GetVertices (int c) const
void write (const std::string &) const
void write_gup (const std::string &) const
void write_gip (const std::string &) const
void WriteAll (const std::string &) const
void write_inp (const std::string &) const
void read_inp (const std::string &)
void write_vtk (const std::string &) const
void read_gup (const std::string &)
void read_gip (const std::string &)
void global_coarse ()
void refine (const IntVector &, const IntVector &)
void patch_refine (IntVector &, IntVector &)
int smooth_edges ()
void FillAllBoundaryLines ()
pint EdgeNeighbour (int i, int e) const
void VertexNeighbours2d (std::set< int > &, int i) const
int NodeOnEdge (int e) const
fixarray< 2, int > ChildrenOfEdge (int e) const
void GetVertexesOfEdge (fixarray< 3, int > &, int) const
void GetVertexesOfEdge (fixarray< 2, int > &, int) const
void GetAwakePatchs (std::set< int > &) const
void GetAwakeCells (std::set< int > &) const
void ConstructQ2PatchMesh (IntVector &pm) const
IntVector ConstructQ4Patch (int c) const
std::set< int > GetColors () const
int GetBoundaryCellOfCurved (int iq) const
std::set< int > CellNeighbours (int i) const
int neighbour (int c, int le) const
void FillVolumes (DoubleVector &vol) const
void writeq2 (const IntVector &a, const std::vector< int > &b, int np) const
void AddShape (int col, BoundaryFunction< 2 > *f)

Protected Types

typedef std::vector< Vertex2dVertexVec2d
typedef std::vector< QuadQuadVec
typedef BoundaryFunction< 2 > BoundaryFunction2d
typedef BoundaryCell< 2 > BoundaryLine
typedef std::vector< BoundaryLineBLineVec
typedef HangList< 2 > LineHangList
typedef triple< int, int,
int > 
tint
typedef std::map< fixarray<
2, int >, HierarchicalMesh2d::BoundaryLine
HangBLList

Protected Member Functions

void post_refine2d ()
void delete_vertexs2d (const IntVector &)
void new_edge_vertex2d (int, const EdgeVector &)
void new_face_vertex2d (int, const FaceVector &)
void check_mesh2d () const
void prepare2d (const IntVector &, const IntVector &, IntSet &, IntSet &)
std::pair< bool, tintcheck_inp (const std::string &)
void ghost2d (HangContainer2d &, const IntSet &, const IntSet &)
void ghostglobalcoarse (HangContainer2d &, const IntSet &)
void ghost_fill_neighbours2d ()
void basic_fill_neighbours2d ()
void new_vertexs2d (HangContainer2d &, const IntVector &, const IntSet &)
void new_quads (const HangContainer2d &, const IntVector &, const IntVector &, int, const IntSet &)
void change_hangs2d (const IntVector &, const IntVector &)
void change_vertexs2d (const IntVector &)
void change_quads2d (const IntVector &, const IntVector &)
void boundary_prepare2d (IntSet &, IntSet &, IntSet &, const HangContainer2d &)
void new_boundary2d (IntSet &, IntSet &, IntSet &)
void basic_refine2d (HangContainer2d &, const IntSet &, const IntSet &)
void init_line (BoundaryLine &)
void new_lines (const IntVector &, const IntVector &, const IntSet &)
void boundary_newton2d ()
void inner_vertex_newton2d (const IntVector &, const IntSet &)
void update_boundary_data2d (const IntSet &)
int regular_grid2d_one (IntSet &, IntVector &, IntSet &, IntSet &) const
int regular_grid2d_two (IntSet &, IntSet &) const
int regular_grid2d_three (IntSet &, IntSet &) const
int regular_grid2d_three_refine (IntSet &) const
int regular_grid2d_three_coarse (IntSet &, IntSet &) const
void GetMinMaxLevels (IntVector &maxi, IntVector &mini, const IntSet &CellRef) const
void init_edges2d ()
void LoadFathers (IntVector &v) const
void _refine2d (IntSet &, IntSet &, const IntVector &, const IntVector &)
void InitQuadOfCurved ()
int FindPatchDepth () const
void FillVertexLevels (IntVector &dst) const
void RefineCoarseNodes (IntSet &dst, const IntVector &refnodes, const IntVector &vertexlevel) const
void VertexToCells (IntVector &dst, const IntSet &src, const IntVector &vertexlevel) const
void VertexToCellsCoarsening (IntVector &dst, const IntSet &src, const IntVector &vertexlevel) const
void recursive_childs (int q, IntVector &ref, int d) const
const CurvedShapes< 2 > & GetCurvedShapes () const
CurvedShapes< 2 > & GetCurvedShapes ()

Protected Attributes

CurvedShapes< 2 > _curvedshapes
VertexVec2d vertexs2d
QuadVec quads
BLineVec Blines
LineHangList LineHang
QuadLawAndOrder QuadLaO
std::map< int, int > quadofcurved

Member Typedef Documentation

typedef std::vector<BoundaryLine> Gascoigne::HierarchicalMesh2d::BLineVec [protected]

typedef BoundaryFunction<2> Gascoigne::HierarchicalMesh2d::BoundaryFunction2d [protected]

typedef BoundaryCell<2> Gascoigne::HierarchicalMesh2d::BoundaryLine [protected]

typedef std::map<fixarray<2,int>,HierarchicalMesh2d::BoundaryLine> Gascoigne::HierarchicalMesh2d::HangBLList [protected]

typedef HangList<2> Gascoigne::HierarchicalMesh2d::LineHangList [protected]

typedef std::vector<Quad> Gascoigne::HierarchicalMesh2d::QuadVec [protected]

typedef triple<int,int,int> Gascoigne::HierarchicalMesh2d::tint [protected]

Reimplemented from Gascoigne::HierarchicalMesh.

typedef std::vector<Vertex2d> Gascoigne::HierarchicalMesh2d::VertexVec2d [protected]


Constructor & Destructor Documentation

Gascoigne::HierarchicalMesh2d::HierarchicalMesh2d (  ) 

Gascoigne::HierarchicalMesh2d::HierarchicalMesh2d ( const HierarchicalMesh2d H  ) 

Gascoigne::HierarchicalMesh2d::HierarchicalMesh2d ( const ParamFile paramfile  ) 

Gascoigne::HierarchicalMesh2d::~HierarchicalMesh2d (  )  [inline]


Member Function Documentation

void Gascoigne::HierarchicalMesh2d::_refine2d ( IntSet ,
IntSet ,
const IntVector ,
const IntVector  
) [protected]

void Gascoigne::HierarchicalMesh2d::AddShape ( int  col,
BoundaryFunction< 2 > *  f 
) [inline, virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::basic_fill_neighbours2d (  )  [protected]

void Gascoigne::HierarchicalMesh2d::basic_refine2d ( HangContainer2d ,
const IntSet ,
const IntSet  
) [protected]

const BLineVec& Gascoigne::HierarchicalMesh2d::bline (  )  const [inline]

const BoundaryLine& Gascoigne::HierarchicalMesh2d::bline ( int  i  )  const [inline]

void Gascoigne::HierarchicalMesh2d::boundary_newton2d (  )  [protected]

void Gascoigne::HierarchicalMesh2d::boundary_prepare2d ( IntSet ,
IntSet ,
IntSet ,
const HangContainer2d  
) [protected]

set< int > Gascoigne::HierarchicalMesh2d::CellNeighbours ( int  i  )  const [virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::change_hangs2d ( const IntVector ,
const IntVector  
) [protected]

void Gascoigne::HierarchicalMesh2d::change_quads2d ( const IntVector ,
const IntVector  
) [protected]

void Gascoigne::HierarchicalMesh2d::change_vertexs2d ( const IntVector  )  [protected]

pair< bool, triple< int, int, int > > Gascoigne::HierarchicalMesh2d::check_inp ( const std::string  )  [protected]

void Gascoigne::HierarchicalMesh2d::check_mesh2d (  )  const [protected]

int Gascoigne::HierarchicalMesh2d::child ( int  i,
int  ii 
) const [inline, virtual]

Implements Gascoigne::HierarchicalMesh.

fixarray< 2, int > Gascoigne::HierarchicalMesh2d::ChildrenOfEdge ( int  e  )  const

void Gascoigne::HierarchicalMesh2d::ConstructQ2PatchMesh ( IntVector pm  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

IntVector Gascoigne::HierarchicalMesh2d::ConstructQ4Patch ( int  c  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::delete_vertexs2d ( const IntVector  )  [protected]

int Gascoigne::HierarchicalMesh2d::dimension (  )  const [inline, virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::edge_of_quad ( int  i,
int  ii 
) const [inline]

pint Gascoigne::HierarchicalMesh2d::EdgeNeighbour ( int  i,
int  e 
) const

void Gascoigne::HierarchicalMesh2d::FillAllBoundaryLines (  ) 

void Gascoigne::HierarchicalMesh2d::FillVertexLevels ( IntVector dst  )  const [protected, virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::FillVolumes ( DoubleVector vol  )  const

int Gascoigne::HierarchicalMesh2d::FindPatchDepth (  )  const [protected, virtual]

Implements Gascoigne::HierarchicalMesh.

IntVector Gascoigne::HierarchicalMesh2d::Geschwister ( const int  i  )  const [virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::GetAwakeCells ( std::set< int > &   )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::GetAwakePatchs ( std::set< int > &   )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::GetBoundaryCellOfCurved ( int  iq  )  const [inline, virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

pair< int, int > Gascoigne::HierarchicalMesh2d::GetBoundaryInformation ( int  i  )  const

set< int > Gascoigne::HierarchicalMesh2d::GetColors (  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

CurvedShapes<2>& Gascoigne::HierarchicalMesh2d::GetCurvedShapes (  )  [inline, protected]

const CurvedShapes<2>& Gascoigne::HierarchicalMesh2d::GetCurvedShapes (  )  const [inline, protected]

void Gascoigne::HierarchicalMesh2d::GetMinMaxLevels ( IntVector maxi,
IntVector mini,
const IntSet CellRef 
) const [protected]

std::string Gascoigne::HierarchicalMesh2d::GetName (  )  const [inline, virtual]

Implements Gascoigne::MeshInterface.

const std::map<int,int>& Gascoigne::HierarchicalMesh2d::GetQuadOfCurved (  )  const [inline]

void Gascoigne::HierarchicalMesh2d::GetVertexesOfEdge ( fixarray< 2, int > &  ,
int   
) const

void Gascoigne::HierarchicalMesh2d::GetVertexesOfEdge ( fixarray< 3, int > &  ,
int   
) const

IntVector Gascoigne::HierarchicalMesh2d::GetVertices ( int  c  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::ghost2d ( HangContainer2d ,
const IntSet ,
const IntSet  
) [protected]

void Gascoigne::HierarchicalMesh2d::ghost_fill_neighbours2d (  )  [protected]

void Gascoigne::HierarchicalMesh2d::ghostglobalcoarse ( HangContainer2d ,
const IntSet  
) [protected]

void Gascoigne::HierarchicalMesh2d::global_coarse (  ) 

void Gascoigne::HierarchicalMesh2d::init_edges2d (  )  [protected]

void Gascoigne::HierarchicalMesh2d::init_line ( BoundaryLine  )  [protected]

void Gascoigne::HierarchicalMesh2d::InitQuadOfCurved (  )  [protected]

void Gascoigne::HierarchicalMesh2d::inner_vertex_newton2d ( const IntVector ,
const IntSet  
) [protected]

IntVector Gascoigne::HierarchicalMesh2d::Kinder ( const int  i  )  const [virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::level ( int  i  )  const [inline, virtual]

Implements Gascoigne::HierarchicalMesh.

const std::vector<BoundaryLine>& Gascoigne::HierarchicalMesh2d::line_list (  )  const [inline]

const BoundaryFunction< 2 > * Gascoigne::HierarchicalMesh2d::line_shape ( int  i  )  const

const LineHangList& Gascoigne::HierarchicalMesh2d::linehang (  )  const [inline]

const LineHangList& Gascoigne::HierarchicalMesh2d::linehanglist (  )  const [inline]

void Gascoigne::HierarchicalMesh2d::LoadFathers ( IntVector v  )  const [protected]

IntVector Gascoigne::HierarchicalMesh2d::Nachkommen ( const int  i  )  const [virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::nactivedescendants ( int  i  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::nblines (  )  const [inline]

int Gascoigne::HierarchicalMesh2d::ncells (  )  const [inline, virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::nchilds ( int  i  )  const [inline, virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::neighbour ( int  c,
int  le 
) const

void Gascoigne::HierarchicalMesh2d::new_boundary2d ( IntSet ,
IntSet ,
IntSet  
) [protected]

void Gascoigne::HierarchicalMesh2d::new_edge_vertex2d ( int  ,
const EdgeVector  
) [protected]

void Gascoigne::HierarchicalMesh2d::new_face_vertex2d ( int  ,
const FaceVector  
) [protected]

void Gascoigne::HierarchicalMesh2d::new_lines ( const IntVector ,
const IntVector ,
const IntSet  
) [protected]

void Gascoigne::HierarchicalMesh2d::new_quads ( const HangContainer2d ,
const IntVector ,
const IntVector ,
int  ,
const IntSet  
) [protected]

void Gascoigne::HierarchicalMesh2d::new_vertexs2d ( HangContainer2d ,
const IntVector ,
const IntSet  
) [protected]

int Gascoigne::HierarchicalMesh2d::nnodes (  )  const [inline, virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::NodeOnEdge ( int  e  )  const

int Gascoigne::HierarchicalMesh2d::nodes_per_cell ( int  i  )  const [inline, virtual]

Implements Gascoigne::MeshInterface.

HierarchicalMesh2d & Gascoigne::HierarchicalMesh2d::operator= ( const HierarchicalMesh2d H  ) 

void Gascoigne::HierarchicalMesh2d::patch_refine ( IntVector ,
IntVector  
) [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::post_refine2d (  )  [protected]

void Gascoigne::HierarchicalMesh2d::prepare2d ( const IntVector ,
const IntVector ,
IntSet ,
IntSet  
) [protected]

const QuadVec& Gascoigne::HierarchicalMesh2d::quad (  )  const [inline]

const Quad& Gascoigne::HierarchicalMesh2d::quad ( int  i  )  const [inline]

const QuadLawAndOrder& Gascoigne::HierarchicalMesh2d::QuadLawOrder (  )  const [inline]

int Gascoigne::HierarchicalMesh2d::QuadNeighbour ( const Quad ,
int   
) const

void Gascoigne::HierarchicalMesh2d::read_gip ( const std::string  )  [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::read_gup ( const std::string  )  [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::read_inp ( const std::string  )  [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::recursive_childs ( int  q,
IntVector ref,
int  d 
) const [protected]

void Gascoigne::HierarchicalMesh2d::refine ( const IntVector ,
const IntVector  
) [virtual]

Implements Gascoigne::HierarchicalMesh.

Reimplemented in Gascoigne::CoarseHierarchicalMesh2d.

void Gascoigne::HierarchicalMesh2d::RefineCoarseNodes ( IntSet dst,
const IntVector refnodes,
const IntVector vertexlevel 
) const [protected, virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::regular_grid2d_one ( IntSet ,
IntVector ,
IntSet ,
IntSet  
) const [protected]

int Gascoigne::HierarchicalMesh2d::regular_grid2d_three ( IntSet ,
IntSet  
) const [protected]

int Gascoigne::HierarchicalMesh2d::regular_grid2d_three_coarse ( IntSet ,
IntSet  
) const [protected]

int Gascoigne::HierarchicalMesh2d::regular_grid2d_three_refine ( IntSet  )  const [protected]

int Gascoigne::HierarchicalMesh2d::regular_grid2d_two ( IntSet ,
IntSet  
) const [protected]

bool Gascoigne::HierarchicalMesh2d::sleep ( int  i  )  const [inline, virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::smooth_edges (  ) 

void Gascoigne::HierarchicalMesh2d::update_boundary_data2d ( const IntSet  )  [protected]

int Gascoigne::HierarchicalMesh2d::Vater ( const int  i  )  const [virtual]

Reimplemented from Gascoigne::HierarchicalMesh.

const VertexVec2d& Gascoigne::HierarchicalMesh2d::vertex2d (  )  const [inline]

const Vertex2d& Gascoigne::HierarchicalMesh2d::vertex2d ( int  i  )  const [inline, virtual]

Reimplemented from Gascoigne::MeshInterface.

int Gascoigne::HierarchicalMesh2d::vertex_of_bline ( int  i,
int  ii 
) const [inline]

int Gascoigne::HierarchicalMesh2d::vertex_of_cell ( int  i,
int  ii 
) const [inline, virtual]

Implements Gascoigne::MeshInterface.

void Gascoigne::HierarchicalMesh2d::VertexNeighbours2d ( std::set< int > &  ,
int  i 
) const

void Gascoigne::HierarchicalMesh2d::VertexToCells ( IntVector dst,
const IntSet src,
const IntVector vertexlevel 
) const [protected, virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::VertexToCellsCoarsening ( IntVector dst,
const IntSet src,
const IntVector vertexlevel 
) const [protected, virtual]

Implements Gascoigne::HierarchicalMesh.

int Gascoigne::HierarchicalMesh2d::VtkType ( int  i  )  const [inline, virtual]

Implements Gascoigne::MeshInterface.

void Gascoigne::HierarchicalMesh2d::write ( const std::string  )  const

void Gascoigne::HierarchicalMesh2d::write_gip ( const std::string  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::write_gup ( const std::string  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::write_inp ( const std::string  )  const [virtual]

Implements Gascoigne::HierarchicalMesh.

void Gascoigne::HierarchicalMesh2d::write_vtk ( const std::string  )  const

void Gascoigne::HierarchicalMesh2d::WriteAll ( const std::string  )  const

void Gascoigne::HierarchicalMesh2d::writeq2 ( const IntVector a,
const std::vector< int > &  b,
int  np 
) const


Member Data Documentation

CurvedShapes<2> Gascoigne::HierarchicalMesh2d::_curvedshapes [protected]

BLineVec Gascoigne::HierarchicalMesh2d::Blines [protected]

LineHangList Gascoigne::HierarchicalMesh2d::LineHang [protected]

QuadLawAndOrder Gascoigne::HierarchicalMesh2d::QuadLaO [protected]

std::map<int,int> Gascoigne::HierarchicalMesh2d::quadofcurved [protected]

QuadVec Gascoigne::HierarchicalMesh2d::quads [protected]

VertexVec2d Gascoigne::HierarchicalMesh2d::vertexs2d [protected]


The documentation for this class was generated from the following files:
Generated on Thu Sep 14 10:50:29 2006 for Gascoigne by  doxygen 1.4.7