base class for curved mesh entity More...
#include <CrvEnt.h>
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 | |
base class for curved mesh entity
CrvEnt::CrvEnt | ( | pMeshEnt | in_mesh_ent | ) |
ctor
[in] | in_mesh_ent | The input mesh entity |
CrvEnt::CrvEnt | ( | VtxPtrVec | in_vert_vec | ) |
ctor
[in] | in_vert_vec | The input mesh vertices (ordered) |
void CrvEnt::diff_by_eta | ( | Point3d | in, |
Mat3x3 & | out | ||
) |
evaluate derivatives w.r.t. standard cartesian coordinates
[in] | in | The input barycentric coordinates in parametric space |
[out] | out | The 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
[in] | in | The input standard cartesian coordinates in parametric space |
[in] | j | The direction of the derivatives |
[out] | out | The 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
[in] | in | The input barycentric coordinates in parametric space |
[out] | out | The output Jacobian matrix (first derivatives) w.r.t. the barycentric coords |
void CrvEnt::diff_by_xi | ( | Point3d | in, |
int | j, | ||
Point3d & | out | ||
) |
evaluate dxyz/dxi_j, return derivs in one direction
[in] | in | The input barycentric coordinates in parametric space |
[in] | j | The direction of the derivatives |
[out] | out | The derivatives vector in the j direction |
void CrvEnt::eval_by_coll_eta | ( | Point3d | in, |
Point3d & | out | ||
) |
evaluate xyz by collapsed/tensor coordinates
[in] | in | The input collapsed/tensor coordinates in parametric space |
[out] | out | The output Cartesian coordinates in the physical spac e |
void CrvEnt::eval_by_eta | ( | Point3d | in, |
Point3d & | out | ||
) |
evaluate xyz by standard cartesian coordinates
[in] | in | The input standard cartesian coordinates in parametric space |
[out] | out | The output Cartesian coordinates in the physical spac e |
void CrvEnt::eval_by_xi | ( | Point3d | in, |
Point3d & | out | ||
) |
evaluate xyz by barycentric coordinates
[in] | in | The input barycentric coordinates in parametric space |
[out] | out | The output Cartesian coordinates in the physical space |
void CrvEnt::get_eta_by_ceta | ( | Point3d | in_ceta, |
Point3d & | out_eta | ||
) |
evaluate standard coordinates given the collapsed/tensor coordinates
[in] | in_ceta | The input coords in terms of collapsed/tensor coord sys. |
[out] | out_eta | The output coords in terms of standard Cartesian |
pMeshEnt CrvEnt::get_vertex | ( | int | i | ) |
return the ith bounding vertex of the mesh entity
[in] | i | The 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
[in] | in_ceta | The input coords in terms of collapsed/tensor coord sys. |
[out] | out_xi | The output coords – barycentric coordinates |
void CrvEnt::get_xi_by_eta | ( | Point3d | in_eta, |
Point3d & | out_xi | ||
) |
evaluate barycentric coordinates given the standard coordinates
[in] | in_eta | The input coords – standard Cartesian system |
[out] | out_xi | The output coords – barycentric coordinates |