AFEPack
组合类型 | 公有类型 | 公有成员 | 私有成员 | 私有属性 | 静态私有属性
MovingMesh2D类参考

#include <MovingMesh2D.h>

类MovingMesh2D继承关系图:
EasyMesh TriangleMesh< 2 > Mesh< 2, DOW >

所有成员的列表。

组合类型

struct  Domain
struct  Edge
class  Solver
struct  Vertex

公有类型

typedef GeometryBM::bmark_t bound_t

公有成员

 MovingMesh2D ()
virtual ~MovingMesh2D ()
const std::vector< double > & monitor () const
std::vector< double > & monitor ()
const double & monitor (const int &i) const
double & monitor (const int &i)
const std::vector
< afepack::Point< 2 > > & 
moveDirection () const
std::vector< afepack::Point< 2 > > & moveDirection ()
const afepack::Point< 2 > & moveDirection (const int &i) const
afepack::Point< 2 > & moveDirection (const int &i)
std::vector< double > moveDirection (const afepack::Point< 2 > &point, const int &element) const
std::vector< std::vector
< double > > 
moveDirection (const std::vector< afepack::Point< 2 > > &point, const int &element) const
double moveDirectionDivergence (const int &element) const
double moveStepLength () const
double & moveStepLength ()
int moveStep () const
int & moveStep ()
u_int solveStep () const
u_int & solveStep ()
double tolerence () const
double & tolerence ()
u_int maxStep () const
u_int & maxStep ()
void moveMesh ()
void outputPhysicalMesh (const std::string &file)
void outputLogicalMesh (const std::string &file)
virtual void getMonitor ()
virtual void smoothMonitor (int step=1)
virtual void updateMesh ()
virtual void updateSolution ()=0
virtual void outputSolution ()=0
virtual void getMoveStepLength ()
void readDomain (const std::string &file)

私有成员

void getLogicalMesh ()
void getMoveDirection ()
void readDummy (std::ifstream &is)
void parseBoundary ()
void outputMoveDirection (const std::string &)

私有属性

Domain domain
std::vector< afepack::Point< 2 > > logical_node
double move_step_length
int n_move_step
std::vector< afepack::Point< 2 > > move_direction
std::vector< afepack::Point< 2 > > logical_move_direction
std::vector< double > mon
std::vector< std::vector< int > > mb_node
std::vector< int > boundary_mark
  i ϵĽڵָ
SparsityPattern spM
 ʹõIJϱʶ
SparseMatrix< double > M
Solver solver
u_int solve_step
 
u_int max_step
 ƶĵȱʡΪ 1000 Ϊ
double tol
 ƶ̶ȣȱʡΪ 10%.
double energy_reduction
 ӳպٵİٷֱ

静态私有属性

static int primes []
 

详细描述

__MovingMesh2D_h__


成员类型定义文档


构造及析构函数文档


成员函数文档

void MovingMesh2D::getLogicalMesh ( ) [private]

߼IJΪ

1. ڱ߽ϸӳ䣬ϱֵĵӳգΪһ ʼֵ 2. Ըղŵijʼֵ߽⣬õʵĵӳգ

һ

ڲڵ

˵λ

ϣ˽ڵڱڵλõı

߼ϣӦ߼ڵ꣬ϵͳ

ڶ

Todo: ...

void MovingMesh2D::getMonitor ( ) [virtual]
void MovingMesh2D::getMoveDirection ( ) [private]

ȡƺеСֵԱ

½ȣжǷ˳

void MovingMesh2D::getMoveStepLength ( ) [virtual]
u_int MovingMesh2D::maxStep ( ) const [inline]
u_int& MovingMesh2D::maxStep ( ) [inline]
const std::vector<double>& MovingMesh2D::monitor ( ) const [inline]
std::vector<double>& MovingMesh2D::monitor ( ) [inline]
const double& MovingMesh2D::monitor ( const int &  i) const [inline]
double& MovingMesh2D::monitor ( const int &  i) [inline]
const std::vector<afepack::Point<2> >& MovingMesh2D::moveDirection ( ) const [inline]
std::vector<afepack::Point<2> >& MovingMesh2D::moveDirection ( ) [inline]
const afepack::Point<2>& MovingMesh2D::moveDirection ( const int &  i) const [inline]
afepack::Point<2>& MovingMesh2D::moveDirection ( const int &  i) [inline]
std::vector<double> MovingMesh2D::moveDirection ( const afepack::Point< 2 > &  point,
const int &  element 
) const
std::vector<std::vector<double> > MovingMesh2D::moveDirection ( const std::vector< afepack::Point< 2 > > &  point,
const int &  element 
) const
double MovingMesh2D::moveDirectionDivergence ( const int &  element) const

Ԥ貽ֵֹͣ

int MovingMesh2D::moveStep ( ) const [inline]
int& MovingMesh2D::moveStep ( ) [inline]
double MovingMesh2D::moveStepLength ( ) const [inline]
double& MovingMesh2D::moveStepLength ( ) [inline]
void MovingMesh2D::outputLogicalMesh ( const std::string &  file)
void MovingMesh2D::outputMoveDirection ( const std::string &  file) [private]
void MovingMesh2D::outputPhysicalMesh ( const std::string &  file)
virtual void MovingMesh2D::outputSolution ( ) [pure virtual]
void MovingMesh2D::parseBoundary ( ) [private]

j ϵIJϱʶΪ j

ÿλıߵ

еıѭ

Ѱλڱ߽ϵıߣڲ

domain еϢиºͽһĴ

߽IJϱʶΪ i

ÿϵĵλ

ϵķ

߼ϵķ

IJϱʶΪڵߵIJϱʶij˻

ͳÿ߽ϵĽڵĸΪÿڵȷIJϱʶ

еıѭ

ڲȥ

˵

ôΪߵIJϱʶ

void MovingMesh2D::readDomain ( const std::string &  file)

ȱʡֵΪ 1

׼ϡϡģ

< ÿѭ

void MovingMesh2D::readDummy ( std::ifstream &  is) [private]
void MovingMesh2D::smoothMonitor ( int  step = 1) [virtual]
u_int MovingMesh2D::solveStep ( ) const [inline]
u_int& MovingMesh2D::solveStep ( ) [inline]
double MovingMesh2D::tolerence ( ) const [inline]
double& MovingMesh2D::tolerence ( ) [inline]
void MovingMesh2D::updateMesh ( ) [virtual]
virtual void MovingMesh2D::updateSolution ( ) [pure virtual]

成员数据文档

std::vector<int> MovingMesh2D::boundary_mark [private]

i ϵĽڵָ

ӳպٵİٷֱ

std::vector<afepack::Point<2> > MovingMesh2D::logical_node [private]
SparseMatrix<double> MovingMesh2D::M [private]
u_int MovingMesh2D::max_step [private]

ƶĵȱʡΪ 1000 Ϊ

ʱʹõĵȱʡΪ 5

std::vector<std::vector<int> > MovingMesh2D::mb_node [private]
std::vector<double> MovingMesh2D::mon [private]
std::vector<afepack::Point<2> > MovingMesh2D::move_direction [private]
int MovingMesh2D::primes [static, private]
初始化序列:
 {
  02, 03, 05, 07, 11, 
  13, 17, 19, 23, 29, 
  31, 37, 41, 43, 47,
  53, 59, 61, 67, 71,
  73, 79, 83, 89, 91
}

u_int MovingMesh2D::solve_step [private]

SparsityPattern MovingMesh2D::spM [private]

ʹõIJϱʶ

double MovingMesh2D::tol [private]

ƶ̶ȣȱʡΪ 10%.


该类的文档由以下文件生成: