Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
geo_basic< T, sequential >

Detailed Description

template<class T>
class rheolef::geo_basic< T, sequential >

Definition at line 1108 of file geo.h.

+ Inheritance diagram for geo_basic< T, sequential >:

Public Types

typedef sequential memory_type
 
typedef geo_abstract_rep< T, sequentialrep
 
typedef geo_rep< T, sequentialrep_geo_rep
 
typedef smart_pointer_clone< repbase
 
typedef rep::size_type size_type
 
typedef rep::node_type node_type
 
typedef rep::variant_type variant_type
 
typedef rep::reference reference
 
typedef rep::const_reference const_reference
 
typedef rep::iterator iterator
 
typedef rep::const_iterator const_iterator
 
typedef rep::iterator_by_variant iterator_by_variant
 
typedef rep::const_iterator_by_variant const_iterator_by_variant
 
typedef rep::coordinate_type coordinate_type
 
typedef rep::geo_element_map_type geo_element_map_type
 
- Public Types inherited from smart_pointer_clone< geo_abstract_rep< T, sequential > >
typedef geo_abstract_rep< T, sequentialhandled_type
 
typedef base::internal internal
 

Public Member Functions

 geo_basic ()
 
 geo_basic (std::string name, const communicator &comm=communicator())
 
void load (std::string name, const communicator &comm=communicator())
 
 geo_basic (const domain_indirect_basic< sequential > &dom, const geo_basic< T, sequential > &omega)
 
 geo_basic (const geo_basic< T, sequential > &lambda, const disarray< point_basic< T >, sequential > &node_list, const std::array< disarray< geo_element_auto< heap_allocator< size_type > >, sequential >, reference_element::max_variant > &elt_list)
 
std::string name () const
 
std::string familyname () const
 
size_type dimension () const
 
size_type map_dimension () const
 
bool is_broken () const
 
size_type serial_number () const
 
size_type variant () const
 
coordinate_type coordinate_system () const
 
std::string coordinate_system_name () const
 
const basis_basic< T > & get_piola_basis () const
 
size_type order () const
 
const node_typexmin () const
 
const node_typexmax () const
 
const Thmin () const
 
const Thmax () const
 
const distributorgeo_element_ownership (size_type dim) const
 
const geo_sizesizes () const
 
const geo_sizeios_sizes () const
 
const_reference get_geo_element (size_type dim, size_type ige) const
 
const_reference dis_get_geo_element (size_type dim, size_type dis_ige) const
 
const geo_elementbgd2dom_geo_element (const geo_element &bgd_K) const
 
const geo_elementdom2bgd_geo_element (const geo_element &dom_K) const
 
size_type neighbour (size_type ie, size_type loc_isid) const
 
void neighbour_guard () const
 
size_type n_node () const
 
const node_typenode (size_type inod) const
 
const node_typedis_node (size_type dis_inod) const
 
void dis_inod (const geo_element &K, std::vector< size_type > &dis_inod) const
 
const disarray< node_type, sequential > & get_nodes () const
 
size_type dis_inod2dis_iv (size_type dis_inod) const
 
size_type n_domain_indirect () const
 
bool have_domain_indirect (const std::string &name) const
 
const domain_indirect_basic< sequential > & get_domain_indirect (size_type i) const
 
const domain_indirect_basic< sequential > & get_domain_indirect (const std::string &name) const
 
void insert_domain_indirect (const domain_indirect_basic< sequential > &dom) const
 
size_type n_domain () const
 
geo_basic< T, sequentialget_domain (size_type i) const
 
geo_basic< T, sequentialoperator[] (const std::string &name) const
 
geo_basic< T, sequentialboundary () const
 
geo_basic< T, sequentialinternal_sides () const
 
geo_basic< T, sequentialsides () const
 
void set_name (std::string name)
 
void set_dimension (size_type dim)
 
void set_serial_number (size_type i)
 
void reset_order (size_type order)
 
void set_coordinate_system (coordinate_type sys_coord)
 
void set_coordinate_system (std::string sys_coord_name)
 
void set_nodes (const disarray< node_type, sequential > &x)
 
const communicatorcomm () const
 
size_type size (size_type dim) const
 
size_type dis_size (size_type dim) const
 
size_type size () const
 
size_type dis_size () const
 
size_type n_vertex () const
 
size_type dis_n_vertex () const
 
const_reference operator[] (size_type ie) const
 
const_iterator begin (size_type dim) const
 
const_iterator end (size_type dim) const
 
const_iterator begin () const
 
const_iterator end () const
 
bool operator== (const geo_basic< T, sequential > &omega2) const
 
void save (std::string filename="") const
 
 geo_basic (details::zero_dimension, const communicator &comm=communicator())
 
bool check (bool verbose=true) const
 
idiststreamget (idiststream &ips)
 
odiststreamput (odiststream &ops) const
 
void build_by_subdividing (const geo_basic< T, sequential > &omega, size_type k)
 
void build_from_data (const geo_header &hdr, const disarray< node_type, sequential > &node, std::array< disarray< geo_element_auto<>, sequential >, reference_element::max_variant > &tmp_geo_element, bool do_upgrade)
 
size_type seq_locate (const point_basic< T > &x, size_type dis_ie_guest=std::numeric_limits< size_type >::max()) const
 
size_type dis_locate (const point_basic< T > &x, size_type dis_ie_guest=std::numeric_limits< size_type >::max()) const
 
void locate (const disarray< point_basic< T >, sequential > &x, disarray< size_type, sequential > &dis_ie) const
 
size_type seq_trace_move (const point_basic< T > &x, const point_basic< T > &v, point_basic< T > &y) const
 
size_type dis_trace_move (const point_basic< T > &x, const point_basic< T > &v, point_basic< T > &y) const
 
void trace_ray_boundary (const disarray< point_basic< T >, sequential > &x, const disarray< point_basic< T >, sequential > &v, disarray< size_type, sequential > &dis_ie, disarray< point_basic< T >, sequential > &y) const
 
void trace_move (const disarray< point_basic< T >, sequential > &x, const disarray< point_basic< T >, sequential > &v, disarray< size_type, sequential > &dis_ie, disarray< point_basic< T >, sequential > &y) const
 
size_type seq_nearest (const point_basic< T > &x, point_basic< T > &x_nearest) const
 
size_type dis_nearest (const point_basic< T > &x, point_basic< T > &x_nearest) const
 
void nearest (const disarray< point_basic< T >, sequential > &x, disarray< point_basic< T >, sequential > &x_nearest, disarray< size_type, sequential > &dis_ie) const
 
const_iterator_by_variant begin_by_variant (variant_type variant) const
 
const_iterator_by_variant end_by_variant (variant_type variant) const
 
const geo_element_map_typeget_external_geo_element_map (size_type variant) const
 
const geo_basic< T, sequential > & get_background_geo () const
 
geo_basic< T, sequentialget_background_domain () const
 
size_type ige2ios_dis_ige (size_type dim, size_type ige) const
 
size_type dis_ige2ios_dis_ige (size_type dim, size_type dis_ige) const
 
size_type ios_ige2dis_ige (size_type dim, size_type ios_ige) const
 
void set_ios_permutation (disarray< size_type, sequential > &idof2ios_dis_idof) const
 
- Public Member Functions inherited from smart_pointer_clone< geo_abstract_rep< T, sequential > >
 smart_pointer_clone (geo_abstract_rep< T, sequential > *p=0)
 
 smart_pointer_clone (void *count, internal i)
 
 smart_pointer_clone (const smart_pointer_clone< geo_abstract_rep< T, sequential > > &x)
 
smart_pointer_clone< geo_abstract_rep< T, sequential > > & operator= (const smart_pointer_clone< geo_abstract_rep< T, sequential > > &x)
 
 ~smart_pointer_clone ()
 
- Public Member Functions inherited from smart_pointer_base< T, C >
 smart_pointer_base (T *p=0)
 
 smart_pointer_base (const smart_pointer_base< T, C > &)
 
 smart_pointer_base (void *count, internal)
 
smart_pointer_base< T, C > & operator= (const smart_pointer_base< T, C > &)
 
 ~smart_pointer_base ()
 
const Tpointer () const
 
const Tdata () const
 
const Toperator-> () const
 
const Toperator* () const
 
Tpointer ()
 
Tdata ()
 
Toperator-> ()
 
Toperator* ()
 
int reference_counter () const
 
counter * get_count () const
 

Member Typedef Documentation

◆ memory_type

template<class T >
typedef sequential memory_type

Definition at line 1113 of file geo.h.

◆ rep

template<class T >
typedef geo_abstract_rep<T,sequential> rep

Definition at line 1114 of file geo.h.

◆ rep_geo_rep

template<class T >
typedef geo_rep<T,sequential> rep_geo_rep

Definition at line 1115 of file geo.h.

◆ base

template<class T >
typedef smart_pointer_clone<rep> base

Definition at line 1116 of file geo.h.

◆ size_type

template<class T >
typedef rep::size_type size_type

Definition at line 1117 of file geo.h.

◆ node_type

template<class T >
typedef rep::node_type node_type

Definition at line 1118 of file geo.h.

◆ variant_type

template<class T >
typedef rep::variant_type variant_type

Definition at line 1119 of file geo.h.

◆ reference

template<class T >
typedef rep::reference reference

Definition at line 1120 of file geo.h.

◆ const_reference

template<class T >
typedef rep::const_reference const_reference

Definition at line 1121 of file geo.h.

◆ iterator

template<class T >
typedef rep::iterator iterator

Definition at line 1122 of file geo.h.

◆ const_iterator

template<class T >
typedef rep::const_iterator const_iterator

Definition at line 1123 of file geo.h.

◆ iterator_by_variant

Definition at line 1124 of file geo.h.

◆ const_iterator_by_variant

Definition at line 1125 of file geo.h.

◆ coordinate_type

template<class T >
typedef rep::coordinate_type coordinate_type

Definition at line 1126 of file geo.h.

◆ geo_element_map_type

Definition at line 1127 of file geo.h.

Constructor & Destructor Documentation

◆ geo_basic() [1/5]

template<class T >
geo_basic ( )

Definition at line 1320 of file geo.h.

◆ geo_basic() [2/5]

template<class T >
geo_basic ( std::string  name,
const communicator comm = communicator() 
)

Definition at line 1326 of file geo.h.

◆ geo_basic() [3/5]

template<class T >
geo_basic ( const domain_indirect_basic< sequential > &  dom,
const geo_basic< T, sequential > &  omega 
)

◆ geo_basic() [4/5]

template<class T >
geo_basic ( const geo_basic< T, sequential > &  lambda,
const disarray< point_basic< T >, sequential > &  node_list,
const std::array< disarray< geo_element_auto< heap_allocator< size_type > >, sequential >, reference_element::max_variant > &  elt_list 
)

Definition at line 1137 of file geo.h.

◆ geo_basic() [5/5]

template<class T >
geo_basic ( details::zero_dimension  ,
const communicator comm = communicator() 
)

Member Function Documentation

◆ load()

template<class T >
void load ( std::string  name,
const communicator comm = communicator() 
)

Definition at line 1334 of file geo.h.

◆ name()

template<class T >
std::string name ( ) const

Definition at line 1146 of file geo.h.

◆ familyname()

template<class T >
std::string familyname ( ) const

Definition at line 1147 of file geo.h.

◆ dimension()

template<class T >
size_type dimension ( ) const

Definition at line 1148 of file geo.h.

◆ map_dimension()

template<class T >
size_type map_dimension ( ) const

Definition at line 1149 of file geo.h.

◆ is_broken()

template<class T >
bool is_broken ( ) const

Definition at line 1150 of file geo.h.

◆ serial_number()

template<class T >
size_type serial_number ( ) const

Definition at line 1151 of file geo.h.

◆ variant()

template<class T >
size_type variant ( ) const

Definition at line 1152 of file geo.h.

◆ coordinate_system()

template<class T >
coordinate_type coordinate_system ( ) const

Definition at line 1153 of file geo.h.

◆ coordinate_system_name()

template<class T >
std::string coordinate_system_name ( ) const

Definition at line 1154 of file geo.h.

◆ get_piola_basis()

template<class T >
const basis_basic< T > & get_piola_basis ( ) const

Definition at line 1155 of file geo.h.

◆ order()

template<class T >
size_type order ( ) const

Definition at line 1156 of file geo.h.

◆ xmin()

template<class T >
const node_type & xmin ( ) const

Definition at line 1157 of file geo.h.

◆ xmax()

template<class T >
const node_type & xmax ( ) const

Definition at line 1158 of file geo.h.

◆ hmin()

template<class T >
const T & hmin ( ) const

Definition at line 1159 of file geo.h.

◆ hmax()

template<class T >
const T & hmax ( ) const

Definition at line 1160 of file geo.h.

◆ geo_element_ownership()

template<class T >
const distributor & geo_element_ownership ( size_type  dim) const

Definition at line 1161 of file geo.h.

◆ sizes()

template<class T >
const geo_size & sizes ( ) const

Definition at line 1162 of file geo.h.

◆ ios_sizes()

template<class T >
const geo_size & ios_sizes ( ) const

Definition at line 1163 of file geo.h.

◆ get_geo_element()

template<class T >
const_reference get_geo_element ( size_type  dim,
size_type  ige 
) const

Definition at line 1164 of file geo.h.

◆ dis_get_geo_element()

template<class T >
const_reference dis_get_geo_element ( size_type  dim,
size_type  dis_ige 
) const

Definition at line 1165 of file geo.h.

◆ bgd2dom_geo_element()

template<class T >
const geo_element & bgd2dom_geo_element ( const geo_element bgd_K) const

Definition at line 1167 of file geo.h.

◆ dom2bgd_geo_element()

template<class T >
const geo_element & dom2bgd_geo_element ( const geo_element dom_K) const

Definition at line 1168 of file geo.h.

◆ neighbour()

template<class T >
size_type neighbour ( size_type  ie,
size_type  loc_isid 
) const

Definition at line 1169 of file geo.h.

◆ neighbour_guard()

template<class T >
void neighbour_guard ( ) const

Definition at line 1171 of file geo.h.

◆ n_node()

template<class T >
size_type n_node ( ) const

Definition at line 1172 of file geo.h.

◆ node()

template<class T >
const node_type & node ( size_type  inod) const

Definition at line 1173 of file geo.h.

◆ dis_node()

template<class T >
const node_type & dis_node ( size_type  dis_inod) const

Definition at line 1174 of file geo.h.

◆ dis_inod()

template<class T >
void dis_inod ( const geo_element K,
std::vector< size_type > &  dis_inod 
) const

Definition at line 1175 of file geo.h.

◆ get_nodes()

template<class T >
const disarray< node_type, sequential > & get_nodes ( ) const

Definition at line 1177 of file geo.h.

◆ dis_inod2dis_iv()

template<class T >
size_type dis_inod2dis_iv ( size_type  dis_inod) const

Definition at line 1178 of file geo.h.

◆ n_domain_indirect()

template<class T >
size_type n_domain_indirect ( ) const

Definition at line 1180 of file geo.h.

◆ have_domain_indirect()

template<class T >
bool have_domain_indirect ( const std::string &  name) const

Definition at line 1181 of file geo.h.

◆ get_domain_indirect() [1/2]

template<class T >
const domain_indirect_basic< sequential > & get_domain_indirect ( size_type  i) const

Definition at line 1182 of file geo.h.

◆ get_domain_indirect() [2/2]

template<class T >
const domain_indirect_basic< sequential > & get_domain_indirect ( const std::string &  name) const

Definition at line 1184 of file geo.h.

◆ insert_domain_indirect()

template<class T >
void insert_domain_indirect ( const domain_indirect_basic< sequential > &  dom) const

Definition at line 1186 of file geo.h.

◆ n_domain()

template<class T >
size_type n_domain ( ) const

Definition at line 1189 of file geo.h.

◆ get_domain()

template<class T >
geo_basic< T, sequential > get_domain ( size_type  i) const

◆ operator[]() [1/2]

template<class T >
geo_basic< T, sequential > operator[] ( const std::string &  name) const

◆ boundary()

template<class T >
geo_basic< T, sequential > boundary ( ) const

Definition at line 1341 of file geo.h.

◆ internal_sides()

template<class T >
geo_basic< T, sequential > internal_sides ( ) const

Definition at line 1349 of file geo.h.

◆ sides()

template<class T >
geo_basic< T, sequential > sides ( ) const

Definition at line 1357 of file geo.h.

◆ set_name()

template<class T >
void set_name ( std::string  name)

◆ set_dimension()

template<class T >
void set_dimension ( size_type  dim)

◆ set_serial_number()

template<class T >
void set_serial_number ( size_type  i)

◆ reset_order()

template<class T >
void reset_order ( size_type  order)

◆ set_coordinate_system() [1/2]

template<class T >
void set_coordinate_system ( coordinate_type  sys_coord)

◆ set_coordinate_system() [2/2]

template<class T >
void set_coordinate_system ( std::string  sys_coord_name)

Definition at line 1203 of file geo.h.

◆ set_nodes()

template<class T >
void set_nodes ( const disarray< node_type, sequential > &  x)

◆ comm()

template<class T >
const communicator & comm ( ) const

Definition at line 1208 of file geo.h.

◆ size() [1/2]

template<class T >
size_type size ( size_type  dim) const

Definition at line 1209 of file geo.h.

◆ dis_size() [1/2]

template<class T >
size_type dis_size ( size_type  dim) const

Definition at line 1210 of file geo.h.

◆ size() [2/2]

template<class T >
size_type size ( ) const

Definition at line 1211 of file geo.h.

◆ dis_size() [2/2]

template<class T >
size_type dis_size ( ) const

Definition at line 1212 of file geo.h.

◆ n_vertex()

template<class T >
size_type n_vertex ( ) const

Definition at line 1213 of file geo.h.

◆ dis_n_vertex()

template<class T >
size_type dis_n_vertex ( ) const

Definition at line 1214 of file geo.h.

◆ operator[]() [2/2]

template<class T >
const_reference operator[] ( size_type  ie) const

Definition at line 1215 of file geo.h.

◆ begin() [1/2]

template<class T >
const_iterator begin ( size_type  dim) const

Definition at line 1216 of file geo.h.

◆ end() [1/2]

template<class T >
const_iterator end ( size_type  dim) const

Definition at line 1217 of file geo.h.

◆ begin() [2/2]

template<class T >
const_iterator begin ( ) const

Definition at line 1218 of file geo.h.

◆ end() [2/2]

template<class T >
const_iterator end ( ) const

Definition at line 1219 of file geo.h.

◆ operator==()

template<class T >
bool operator== ( const geo_basic< T, sequential > &  omega2) const

Definition at line 1223 of file geo.h.

◆ save()

template<class T >
void save ( std::string  filename = "") const

◆ check()

template<class T >
bool check ( bool  verbose = true) const

Definition at line 1232 of file geo.h.

◆ get()

template<class T >
idiststream & get ( idiststream ips)

Definition at line 34 of file geo_seq_get.cc.

◆ put()

template<class T >
odiststream & put ( odiststream ops) const

Definition at line 34 of file geo_seq_put.cc.

◆ build_by_subdividing()

template<class T >
void build_by_subdividing ( const geo_basic< T, sequential > &  omega,
size_type  k 
)

◆ build_from_data()

template<class T >
void build_from_data ( const geo_header hdr,
const disarray< node_type, sequential > &  node,
std::array< disarray< geo_element_auto<>, sequential >, reference_element::max_variant > &  tmp_geo_element,
bool  do_upgrade 
)

◆ seq_locate()

template<class T >
size_type seq_locate ( const point_basic< T > &  x,
size_type  dis_ie_guest = std::numeric_limits<size_type>::max() 
) const

Definition at line 1245 of file geo.h.

◆ dis_locate()

template<class T >
size_type dis_locate ( const point_basic< T > &  x,
size_type  dis_ie_guest = std::numeric_limits<size_type>::max() 
) const

Definition at line 1249 of file geo.h.

◆ locate()

template<class T >
void locate ( const disarray< point_basic< T >, sequential > &  x,
disarray< size_type, sequential > &  dis_ie 
) const

Definition at line 1253 of file geo.h.

◆ seq_trace_move()

template<class T >
size_type seq_trace_move ( const point_basic< T > &  x,
const point_basic< T > &  v,
point_basic< T > &  y 
) const

Definition at line 1257 of file geo.h.

◆ dis_trace_move()

template<class T >
size_type dis_trace_move ( const point_basic< T > &  x,
const point_basic< T > &  v,
point_basic< T > &  y 
) const

Definition at line 1262 of file geo.h.

◆ trace_ray_boundary()

template<class T >
void trace_ray_boundary ( const disarray< point_basic< T >, sequential > &  x,
const disarray< point_basic< T >, sequential > &  v,
disarray< size_type, sequential > &  dis_ie,
disarray< point_basic< T >, sequential > &  y 
) const

Definition at line 1267 of file geo.h.

◆ trace_move()

template<class T >
void trace_move ( const disarray< point_basic< T >, sequential > &  x,
const disarray< point_basic< T >, sequential > &  v,
disarray< size_type, sequential > &  dis_ie,
disarray< point_basic< T >, sequential > &  y 
) const

Definition at line 1273 of file geo.h.

◆ seq_nearest()

template<class T >
size_type seq_nearest ( const point_basic< T > &  x,
point_basic< T > &  x_nearest 
) const

Definition at line 1279 of file geo.h.

◆ dis_nearest()

template<class T >
size_type dis_nearest ( const point_basic< T > &  x,
point_basic< T > &  x_nearest 
) const

Definition at line 1283 of file geo.h.

◆ nearest()

template<class T >
void nearest ( const disarray< point_basic< T >, sequential > &  x,
disarray< point_basic< T >, sequential > &  x_nearest,
disarray< size_type, sequential > &  dis_ie 
) const

Definition at line 1287 of file geo.h.

◆ begin_by_variant()

template<class T >
const_iterator_by_variant begin_by_variant ( variant_type  variant) const

Definition at line 1293 of file geo.h.

◆ end_by_variant()

template<class T >
const_iterator_by_variant end_by_variant ( variant_type  variant) const

Definition at line 1295 of file geo.h.

◆ get_external_geo_element_map()

template<class T >
const geo_element_map_type & get_external_geo_element_map ( size_type  variant) const

Definition at line 1297 of file geo.h.

◆ get_background_geo()

template<class T >
const geo_basic< T, sequential > & get_background_geo ( ) const

◆ get_background_domain()

template<class T >
geo_basic< T, sequential > get_background_domain ( ) const

◆ ige2ios_dis_ige()

template<class T >
size_type ige2ios_dis_ige ( size_type  dim,
size_type  ige 
) const

Definition at line 1304 of file geo.h.

◆ dis_ige2ios_dis_ige()

template<class T >
size_type dis_ige2ios_dis_ige ( size_type  dim,
size_type  dis_ige 
) const

Definition at line 1305 of file geo.h.

◆ ios_ige2dis_ige()

template<class T >
size_type ios_ige2dis_ige ( size_type  dim,
size_type  ios_ige 
) const

Definition at line 1306 of file geo.h.

◆ set_ios_permutation()

template<class T >
void set_ios_permutation ( disarray< size_type, sequential > &  idof2ios_dis_idof) const

Definition at line 1307 of file geo.h.


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