Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
CrvEnt Class Referenceabstract

base class for curved mesh entity More...

#include <CrvEnt.h>

Inheritance diagram for CrvEnt:
Inheritance graph
[legend]

Public Member Functions

 CrvEnt (pMeshEnt in_mesh_ent)
 ctor More...
 
 CrvEnt (VtxPtrVec in_vert_vec)
 ctor More...
 
virtual ~CrvEnt ()
 dtor
 
void get_xi_by_eta (Point3d in_eta, Point3d &out_xi)
 evaluate barycentric coordinates given the standard coordinates More...
 
void get_eta_by_ceta (Point3d in_ceta, Point3d &out_eta)
 evaluate standard coordinates given the collapsed/tensor coordinates More...
 
void get_xi_by_ceta (Point3d in_ceta, Point3d &out_xi)
 evaluate barycentric coordinates given the collapsed/tensor coordinates More...
 
void eval_by_xi (Point3d in, Point3d &out)
 evaluate xyz by barycentric coordinates More...
 
void eval_by_eta (Point3d in, Point3d &out)
 evaluate xyz by standard cartesian coordinates More...
 
void eval_by_coll_eta (Point3d in, Point3d &out)
 evaluate xyz by collapsed/tensor coordinates More...
 
void diff_by_xi (Point3d in, Mat3x3 &out)
 evaluate dxyz/dxi, return all derivs in a matrix form More...
 
void diff_by_xi (Point3d in, int j, Point3d &out)
 evaluate dxyz/dxi_j, return derivs in one direction More...
 
void diff_by_eta (Point3d in, Mat3x3 &out)
 evaluate derivatives w.r.t. standard cartesian coordinates More...
 
void diff_by_eta (Point3d in, int j, Point3d &out)
 evaluate derivatives w.r.t. standard cartesian coordinates in one direction More...
 
void set_id (int i)
 sets entity id
 
int get_id ()
 gets entity id
 
int get_exp_dim ()
 return dimension in xi or eta
 
int get_coord_dim ()
 return coordinate dimension in xyz
 
pMeshEnt get_vertex (int i)
 return the ith bounding vertex of the mesh entity More...
 
int ent_type ()
 return the topological entity type. 0 – vertex, 1 – edge, 2 – face, 3 – region
 
int data_size ()
 return the number of doubles associated with the current mesh entity
 
std::string tag_name ()
 return the name string of the data
 
int save_nodal_data_to_mesh (double *in_data)
 save the data to the underlying mesh database
 
int load_nodal_data_from_mesh (double **out_data)
 fetch data from mesh database
 
bool has_data ()
 return whether the entity has high-order shape data
 
bool edge_on_model_bdry (pMeshEnt vtx0, pMeshEnt vtx1)
 return whether the mesh edge is classified on model edge or face
 
bool face_on_model_bdry (pMeshEnt vtx0, pMeshEnt vtx1, pMeshEnt vtx2)
 return whether the mesh face is classified on model face
 

Protected Member Functions

virtual void v_eval_by_xi (Point3d in, Point3d &out)=0
 
virtual void v_eval_by_eta (Point3d in, Point3d &out)=0
 
virtual void v_eval_by_coll_eta (Point3d in, Point3d &out)=0
 
virtual void v_diff_by_xi (Point3d in, Mat3x3 &out)=0
 
virtual void v_diff_by_xi (Point3d in, int j, Point3d &out)=0
 
virtual void v_diff_by_eta (Point3d in, Mat3x3 &out)=0
 
virtual void v_diff_by_eta (Point3d in, int j, Point3d &out)=0
 
virtual int v_ent_type () const =0
 
virtual int v_data_size () const =0
 
virtual std::string v_tag_name () const =0
 
virtual int v_get_exp_dim ()=0
 
virtual int v_get_coord_dim ()
 all curved entities are assumed to be embeded in 3D space
 
pMeshEnt get_mesh_ent ()
 get the mesh entity
 
void set_mesh_ent (pMeshEnt in_ent)
 set the mesh entity
 

Protected Attributes

VtxPtrVec m_vert_vec
 ordered set of mesh vertices
 
pMeshEnt m_mesh_ent
 topological mesh entity
 
std::vector< Point3d > m_ctrl_pt_vec
 container used to store the control point values
 

Private Attributes

int m_id
 the ID of the curved mesh entity
 

Detailed Description

base class for curved mesh entity

Constructor & Destructor Documentation

CrvEnt::CrvEnt ( pMeshEnt  in_mesh_ent)

ctor

Parameters
[in]in_mesh_entThe input mesh entity
CrvEnt::CrvEnt ( VtxPtrVec  in_vert_vec)

ctor

Parameters
[in]in_vert_vecThe input mesh vertices (ordered)

Member Function Documentation

void CrvEnt::diff_by_eta ( Point3d  in,
Mat3x3 &  out 
)

evaluate derivatives w.r.t. standard cartesian coordinates

Parameters
[in]inThe input barycentric coordinates in parametric space
[out]outThe output Jacobian matrix (first derivatives) w.r.t. the standard Cartesian coord. sys.
void CrvEnt::diff_by_eta ( Point3d  in,
int  j,
Point3d &  out 
)

evaluate derivatives w.r.t. standard cartesian coordinates in one direction

Parameters
[in]inThe input standard cartesian coordinates in parametric space
[in]jThe direction of the derivatives
[out]outThe derivatives vector in the j direction
void CrvEnt::diff_by_xi ( Point3d  in,
Mat3x3 &  out 
)

evaluate dxyz/dxi, return all derivs in a matrix form

Parameters
[in]inThe input barycentric coordinates in parametric space
[out]outThe output Jacobian matrix (first derivatives) w.r.t. the barycentric coords

Here is the caller graph for this function:

void CrvEnt::diff_by_xi ( Point3d  in,
int  j,
Point3d &  out 
)

evaluate dxyz/dxi_j, return derivs in one direction

Parameters
[in]inThe input barycentric coordinates in parametric space
[in]jThe direction of the derivatives
[out]outThe derivatives vector in the j direction
void CrvEnt::eval_by_coll_eta ( Point3d  in,
Point3d &  out 
)

evaluate xyz by collapsed/tensor coordinates

Parameters
[in]inThe input collapsed/tensor coordinates in parametric space
[out]outThe output Cartesian coordinates in the physical spac e
void CrvEnt::eval_by_eta ( Point3d  in,
Point3d &  out 
)

evaluate xyz by standard cartesian coordinates

Parameters
[in]inThe input standard cartesian coordinates in parametric space
[out]outThe output Cartesian coordinates in the physical spac e

Here is the caller graph for this function:

void CrvEnt::eval_by_xi ( Point3d  in,
Point3d &  out 
)

evaluate xyz by barycentric coordinates

Parameters
[in]inThe input barycentric coordinates in parametric space
[out]outThe output Cartesian coordinates in the physical space

Here is the caller graph for this function:

void CrvEnt::get_eta_by_ceta ( Point3d  in_ceta,
Point3d &  out_eta 
)

evaluate standard coordinates given the collapsed/tensor coordinates

Parameters
[in]in_cetaThe input coords in terms of collapsed/tensor coord sys.
[out]out_etaThe output coords in terms of standard Cartesian
pMeshEnt CrvEnt::get_vertex ( int  i)

return the ith bounding vertex of the mesh entity

Parameters
[in]iThe index of the selected vertex, starting from 0
void CrvEnt::get_xi_by_ceta ( Point3d  in_ceta,
Point3d &  out_xi 
)

evaluate barycentric coordinates given the collapsed/tensor coordinates

Parameters
[in]in_cetaThe input coords in terms of collapsed/tensor coord sys.
[out]out_xiThe output coords – barycentric coordinates
void CrvEnt::get_xi_by_eta ( Point3d  in_eta,
Point3d &  out_xi 
)

evaluate barycentric coordinates given the standard coordinates

Parameters
[in]in_etaThe input coords – standard Cartesian system
[out]out_xiThe output coords – barycentric coordinates

Here is the call graph for this function:

Here is the caller graph for this function:


The documentation for this class was generated from the following files: