#include <RFC_Window_transfer.h>
Public Types | |
typedef RFC_Pane_transfer | Self |
typedef RFC_Pane_base | Base |
![]() | |
typedef RFC_Pane_base | Self |
typedef COM::Pane | Base |
typedef COM::Attribute | Attribute |
typedef Base::Size | Size |
typedef RFC::Real | Real |
typedef std::pair< int, int > | V2b |
Pane id and local boundary id. More... | |
typedef std::map< int, V2b > | V2b_table |
From node id to its corresponding map. More... | |
typedef std::vector< int > | B2v |
From local boundary ids to node ids. More... | |
typedef std::map< int, B2v > | B2v_table |
From pane id to its corresponding mapping. More... | |
Public Member Functions | |
RFC_Pane_transfer (COM::Pane *b, int c) | |
virtual | ~RFC_Pane_transfer () |
RFC_Window_transfer * | window () |
const RFC_Window_transfer * | window () const |
Real * | pointer (int i) |
const Real * | pointer (int i) const |
const Real * | coordinates () const |
bool | need_recv (int i) const |
Real * | get_emm (int f) |
const Real * | get_emm (int f) const |
bool | is_master () const |
![]() | |
RFC_Pane_base (Base *b, int color) | |
A constructor. More... | |
void | init () |
virtual | ~RFC_Pane_base () |
The default destructor. More... | |
Base * | base () |
The id of its base COM::Pane object. More... | |
const Base * | base () const |
int | id () const |
bool | is_master () const |
Is this pane a master copy? More... | |
bool | is_replicate () const |
Is this pane not a master copy? More... | |
bool | is_quadratic () const |
Does this pane contain quadratic elements? More... | |
bool | is_border_node (int i) const |
Is a give node on the boundary of the pane? More... | |
bool | is_isolated_node (int i) const |
Is a give node an isolated node not belong to any element? More... | |
bool | coincident (int i, int j) const |
Report whether the two given nodes are coincident. More... | |
int | size_of_nodes () const |
The total number of nodes in the pane. More... | |
int | size_of_faces () const |
The total number of faces in the pane. More... | |
int | size_of_isolated_nodes () const |
int | size_of_border_nodes () const |
Edge_ID | get_edge_id (const int face_lid, const int vertex_lid) const |
Get the edge id within a given face. More... | |
int | size_of_subnodes () const |
The total number of nodes in the subdivision of the pane. More... | |
int | size_of_subfaces () const |
The total number of faces in the subdivision of the pane. More... | |
Real * | pointer (int i) |
Get the address of a given attribute with id i. More... | |
const Real * | pointer (int i) const |
bool | is_primary_node (const int vid) const |
Is the node with given local id a primary one? More... | |
int | size_of_primary_nodes () const |
Get total number of primary nodes contained in the pane. More... | |
const Point_3 & | get_point (int id) const |
Get the physical coordinates of the node with given local id. More... | |
const Point_3 & | get_point (int id, int) const |
const Real * | coordinates () const |
Point_3 | get_point_of_subnode (int id) const |
Bbox_3 | get_bounding_box () const |
Get the bounding box of the pane. More... | |
int | color () const |
The color of the parent window (BLUE or GREEN). More... | |
int | parent_type_of_subnode (int) const |
Determine the parent type of a subnode of given tyep. More... | |
int | get_parent_node (int) const |
Get the local parent node id of a given subnode. More... | |
int | get_parent_face (int id) const |
Get the local parent face id of a given subface. More... | |
template<class Point > | |
void | normalize_nat_coor (int idx, int e, Point &nc) const |
void | get_host_element_of_subnode (int i, Element_node_enumerator &ene, Point_2 &nc) const |
void | get_host_element_of_subface (int i, Element_node_enumerator &ene) const |
void | get_nat_coor_in_element (const int eid, const int lid, Point_2 &nc) const |
Take a subface id and a local subnode id, return the natual coordinates of the subnode within the parent element. More... | |
void | get_nat_coor_in_element (const int sn_id, Element_node_enumerator &ene, Point_2 &nc) const |
Take a subnode id and an element, return the natrual coordinates within the element. More... | |
std::pair< const COM::Connectivity *, int > | get_element (int face_id) const |
Get the connectivity object and the id within the connectivity object for a given element. More... | |
const Node_ID & | get_subnode_counterpart (int i) const |
const Face_ID & | get_subface_counterpart (int i) const |
int | get_lvid (const Element_node_enumerator &ene, const int v) const |
Private Attributes | |
RFC_Window_transfer * | _window |
std::vector< std::vector< Real > > | _buffer |
std::vector< int > | _emm_offset |
std::vector< Real > | _emm_buffer |
int | _data_buf_id |
std::vector< Real > | _coor_buf |
std::vector< Real > | _data_buf |
std::vector< MPI_Request > | _msg_requests |
int * | _to_recv |
std::vector< int > | _recv_faces |
std::vector< int > | _recv_nodes |
std::map< int, std::vector< int > > | _send_faces |
std::map< int, std::vector< int > > | _send_nodes |
std::map< int, std::vector < Real > > | _send_buffers |
Friends | |
class | RFC_Window_transfer |
Additional Inherited Members | |
![]() | |
void | comp_nat_coors () |
Compute the natural coordinates. More... | |
void | build_v2b_from_b2v (const RFC_Window_base *w) |
Build pane connectivity. More... | |
void | write_tec_ij (std::ostream &, const COM::Attribute *a=0) const |
void | write_tec_tri (std::ostream &, const COM::Connectivity &, const COM::Attribute *a=0) const |
void | write_tec_mixed (std::ostream &, const std::vector< const COM::Connectivity * > &, const COM::Attribute *a=0) const |
void | write_tec_sub (std::ostream &) const |
void | write_tec_ascii (std::ostream &os, const COM::Attribute *attr=0) const |
void | write_binary (std::ostream &os) const |
void | read_binary (std::istream &is, std::vector< int > *b2v_all=NULL, COM::Pane *p=NULL) |
void | register_sdv_attributes (const std::string &wname) const |
void | read_rocin (const std::string &sdv_wname, const std::string &parent_wname="", COM::Pane *p=NULL) |
Read in using Rocin. More... | |
![]() | |
Base * | _base |
Reference to its base object. More... | |
bool | _is_master |
Is the pane a master copy? More... | |
bool | _quadratic |
Does it contain quadratic elements? More... | |
std::vector< bool > | _is_border |
Is a node on border? More... | |
std::vector< bool > | _is_isolated |
Is a node isolated? More... | |
int | _n_border |
int | _n_isolated |
V2b_table | _v2b_table |
B2v_table | _b2v_table |
std::vector< Edge_ID > | _subnode_parents |
Edge ids of parents. More... | |
std::vector< Point_2S > | _subnode_nat_coors |
Natual coordinates in the parent face. More... | |
std::vector< Point_2S > | _subnode_normalized_nc |
Natual coordinates in the parent face. More... | |
std::vector< int > | _subnode_subID |
Sub-node ID of nodes in the pane. More... | |
std::vector< Node_ID > | _subnode_counterparts |
Ids of counterparts of subnodes. More... | |
std::vector< Three_tuple< int > > | _subfaces |
std::vector< int > | _subface_parents |
Face ids of the parents of the subfaces. More... | |
std::vector< int > | _subface_offsets |
Offsets of first subfaces contained in a face. More... | |
std::vector< Face_ID > | _subface_counterparts |
Ids of counterparts of faces. More... | |
std::vector< Three_tuple < Point_2S > > | _subface_nat_coors |
Element connectivity of the subfaces. More... | |
Definition at line 53 of file RFC_Window_transfer.h.
typedef RFC_Pane_base Base |
Definition at line 56 of file RFC_Window_transfer.h.
typedef RFC_Pane_transfer Self |
Definition at line 55 of file RFC_Window_transfer.h.
RFC_BEGIN_NAME_SPACE RFC_Pane_transfer | ( | COM::Pane * | b, |
int | c | ||
) |
Definition at line 35 of file RFC_Window_transfer.C.
|
virtual |
Definition at line 37 of file RFC_Window_transfer.C.
|
inline |
Definition at line 79 of file RFC_Window_transfer.h.
References _coor_buf, RFC_Pane_base::coordinates(), and is_master().
Referenced by Transfer_base::compute_load_vector_wra(), Transfer_base::integrate_subface(), and RFC_Window_transfer::replicate_data().
|
inline |
Definition at line 93 of file RFC_Window_transfer.h.
References _emm_buffer, _emm_offset, RFC_assertion, and RFC_Pane_base::size_of_faces().
Referenced by Transfer_base::compute_load_vector_wra(), and Transfer_base::multiply_mass_mat_and_x().
|
inline |
Definition at line 97 of file RFC_Window_transfer.h.
References _emm_buffer, _emm_offset, RFC_assertion, and RFC_Pane_base::size_of_faces().
|
inline |
Definition at line 102 of file RFC_Window_transfer.h.
References RFC_Pane_base::_base.
Referenced by coordinates(), pointer(), and RFC_Window_transfer::replicate_metadata().
|
inline |
Definition at line 86 of file RFC_Window_transfer.h.
References _to_recv, RFC_assertion, and RFC_Pane_base::size_of_faces().
Referenced by Transfer_base::interpolate_fe(), and Transfer_base::multiply_mass_mat_and_x().
|
inline |
Definition at line 65 of file RFC_Window_transfer.h.
References _buffer, _data_buf, _data_buf_id, is_master(), RFC_Pane_base::pointer(), and RFC_assertion.
Referenced by RFC_Data_const< _Tag >::get_value(), RFC_Data< _Tag >::get_value(), Transfer_base::interpolate_fe(), Transfer_base::make_field(), Transfer_base::multiply_mass_mat_and_x(), pointer(), RFC_Window_transfer::reduce_maxabs_to_all(), RFC_Window_transfer::reduce_to_all(), RFC_Window_transfer::replicate_data(), and RFC_Data< _Tag >::set_value().
|
inline |
Definition at line 77 of file RFC_Window_transfer.h.
References pointer().
|
inline |
|
inline |
|
friend |
Definition at line 57 of file RFC_Window_transfer.h.
|
private |
Definition at line 108 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::delete_facial_buffers(), RFC_Window_transfer::delete_nodal_buffers(), RFC_Window_transfer::init_facial_buffers(), RFC_Window_transfer::init_nodal_buffers(), and pointer().
|
private |
Definition at line 113 of file RFC_Window_transfer.h.
Referenced by coordinates(), and RFC_Window_transfer::replicate_data().
|
private |
Definition at line 114 of file RFC_Window_transfer.h.
Referenced by pointer(), and RFC_Window_transfer::replicate_data().
|
private |
Definition at line 112 of file RFC_Window_transfer.h.
Referenced by pointer(), and RFC_Window_transfer::replicate_data().
|
private |
Definition at line 110 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::delete_nodal_buffers(), get_emm(), and RFC_Window_transfer::init_nodal_buffers().
|
private |
Definition at line 109 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::delete_nodal_buffers(), get_emm(), and RFC_Window_transfer::init_nodal_buffers().
|
private |
Definition at line 116 of file RFC_Window_transfer.h.
|
private |
Definition at line 122 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::replicate_data(), and RFC_Window_transfer::replicate_metadata().
|
private |
Definition at line 123 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::replicate_data(), and RFC_Window_transfer::replicate_metadata().
|
private |
Definition at line 129 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::replicate_data().
|
private |
Definition at line 127 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::replicate_data(), and RFC_Window_transfer::replicate_metadata().
|
private |
Definition at line 128 of file RFC_Window_transfer.h.
Referenced by RFC_Window_transfer::replicate_data(), and RFC_Window_transfer::replicate_metadata().
|
private |
Definition at line 117 of file RFC_Window_transfer.h.
Referenced by need_recv(), and RFC_Window_transfer::set_tags().
|
private |
Definition at line 106 of file RFC_Window_transfer.h.
Referenced by window().