rheolef  6.3
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
rheolef::space_base_rep< T, M > Class Template Reference

#include <space.h>

Collaboration diagram for rheolef::space_base_rep< T, M >:
Collaboration graph
[legend]

Public Types

typedef space_pair_type::size_type size_type
typedef space_constant::valued_type valued_type

Public Member Functions

 space_base_rep ()
 space_base_rep (const space_constitution< T, M > &constit)
 space_base_rep (const geo_basic< T, M > &omega, std::string approx, std::string valued)
 space_base_rep (const space_mult_list< T, M > &)
virtual ~space_base_rep ()
const distributorownership () const
size_type ndof () const
size_type dis_ndof () const
const communicator & comm () const
const space_constitution< T, M > & get_constitution () const
const geo_basic< T, M > & get_geo () const
const numbering< T, M > & get_numbering () const
valued_type valued_tag () const
const std::string & valued () const
size_type size () const
space_component< T, M > operator[] (size_type i_comp)
space_component_const< T, M > operator[] (size_type i_comp) const
std::string stamp () const
void block (const domain_indirect_basic< M > &dom)
 e.g. "P1(square)", for field_expr<Expr> checks
void unblock (const domain_indirect_basic< M > &dom)
bool is_blocked (size_type idof) const
size_type iub (size_type idof) const
const point_basic< T > & xdof (size_type idof) const
const array< point_basic< T >
, M > & 
get_xdofs () const
const distributoriu_ownership () const
const distributorib_ownership () const
void dis_idof (const geo_element &K, std::vector< size_type > &dis_idof) const
template<class Function >
momentum (Function f, size_type idof) const
template<class Function >
point_basic< T > vector_momentum (Function f, size_type idof) const
template<class Function >
tensor_basic< T > tensor_momentum (Function f, size_type idof) const
array< size_type, M > build_indirect_array (const space_base_rep< T, M > &Wh, const std::string &dom_name) const
 Implementation note: there is two numbering styles.
array< size_type, M > build_indirect_array (const space_base_rep< T, M > &Wh, const geo_basic< T, M > &bgd_gamma) const
bool operator== (const space_base_rep< T, M > &V2) const

Protected Member Functions

void init_xdof ()
void freeze_guard () const
void no_freeze_guard () const
void base_freeze_body () const
virtual void freeze_body () const

Protected Attributes

space_constitution< T, M > _constit
array< point_basic< T >, M > _xdof
bool _have_freezed
array< space_pair_type, M > _idof2blk_iub
distributor _iu_ownership
distributor _ib_ownership

Friends

class field_basic
bool are_compatible (const space_base_rep< T, M > &V1, const space_base_rep< T, M > &V2)

Detailed Description

template<class T, class M>
class rheolef::space_base_rep< T, M >

Definition at line 46 of file space.h.

Member Typedef Documentation

template<class T, class M>
typedef space_pair_type::size_type rheolef::space_base_rep< T, M >::size_type

Definition at line 50 of file space.h.

template<class T, class M>
typedef space_constant::valued_type rheolef::space_base_rep< T, M >::valued_type

Definition at line 51 of file space.h.

Constructor & Destructor Documentation

template<class T, class M>
rheolef::space_base_rep< T, M >::space_base_rep ( )
template<class T, class M>
rheolef::space_base_rep< T, M >::space_base_rep ( const space_constitution< T, M > &  constit)

Definition at line 25 of file space.cc.

template<class T, class M>
rheolef::space_base_rep< T, M >::space_base_rep ( const geo_basic< T, M > &  omega,
std::string  approx,
std::string  valued 
)

Definition at line 9 of file space.cc.

template<class T, class M>
rheolef::space_base_rep< T, M >::space_base_rep ( const space_mult_list< T, M > &  expr)

Definition at line 38 of file space.cc.

template<class T, class M>
virtual rheolef::space_base_rep< T, M >::~space_base_rep ( )
inlinevirtual

Definition at line 58 of file space.h.

Member Function Documentation

template<class T, class M>
const distributor& rheolef::space_base_rep< T, M >::ownership ( ) const
inline

Definition at line 61 of file space.h.

template<class T, class M>
size_type rheolef::space_base_rep< T, M >::ndof ( ) const
inline

Definition at line 62 of file space.h.

template<class T, class M>
size_type rheolef::space_base_rep< T, M >::dis_ndof ( ) const
inline

Definition at line 63 of file space.h.

template<class T, class M>
const communicator& rheolef::space_base_rep< T, M >::comm ( ) const
inline

Reimplemented in rheolef::space_rep< T, distributed >.

Definition at line 64 of file space.h.

template<class T, class M>
const space_constitution<T,M>& rheolef::space_base_rep< T, M >::get_constitution ( ) const
inline

Definition at line 66 of file space.h.

template<class T, class M>
const geo_basic<T,M>& rheolef::space_base_rep< T, M >::get_geo ( ) const
inline

Definition at line 67 of file space.h.

template<class T, class M>
const numbering<T,M>& rheolef::space_base_rep< T, M >::get_numbering ( ) const
inline

Definition at line 68 of file space.h.

template<class T, class M>
valued_type rheolef::space_base_rep< T, M >::valued_tag ( ) const
inline

Definition at line 69 of file space.h.

template<class T, class M>
const std::string& rheolef::space_base_rep< T, M >::valued ( ) const
inline

Definition at line 70 of file space.h.

template<class T, class M>
size_type rheolef::space_base_rep< T, M >::size ( ) const
inline

Definition at line 71 of file space.h.

template<class T , class M >
space_component< T, M > rheolef::space_base_rep< T, M >::operator[] ( size_type  i_comp)
inline

Definition at line 71 of file space_component.h.

template<class T , class M >
space_component_const< T, M > rheolef::space_base_rep< T, M >::operator[] ( size_type  i_comp) const
inline

Definition at line 78 of file space_component.h.

template<class T , class M >
std::string rheolef::space_base_rep< T, M >::stamp ( ) const

Definition at line 154 of file space.cc.

template<class T, class M>
void rheolef::space_base_rep< T, M >::block ( const domain_indirect_basic< M > &  dom)
inline

e.g. "P1(square)", for field_expr<Expr> checks

Definition at line 77 of file space.h.

template<class T, class M>
void rheolef::space_base_rep< T, M >::unblock ( const domain_indirect_basic< M > &  dom)
inline

Definition at line 78 of file space.h.

template<class T, class M>
bool rheolef::space_base_rep< T, M >::is_blocked ( size_type  idof) const
inline

Definition at line 80 of file space.h.

template<class T, class M>
size_type rheolef::space_base_rep< T, M >::iub ( size_type  idof) const
inline

Definition at line 81 of file space.h.

template<class T, class M>
const point_basic<T>& rheolef::space_base_rep< T, M >::xdof ( size_type  idof) const
inline

Definition at line 82 of file space.h.

template<class T, class M>
const array<point_basic<T>,M >& rheolef::space_base_rep< T, M >::get_xdofs ( ) const
inline

Definition at line 83 of file space.h.

template<class T, class M>
const distributor& rheolef::space_base_rep< T, M >::iu_ownership ( ) const
inline

Definition at line 85 of file space.h.

template<class T, class M>
const distributor& rheolef::space_base_rep< T, M >::ib_ownership ( ) const
inline

Definition at line 86 of file space.h.

template<class T , class M >
void rheolef::space_base_rep< T, M >::dis_idof ( const geo_element K,
std::vector< size_type > &  dis_idof 
) const

Definition at line 146 of file space.cc.

template<class T, class M>
template<class Function >
T rheolef::space_base_rep< T, M >::momentum ( Function  f,
size_type  idof 
) const
inline

Definition at line 92 of file space.h.

template<class T, class M>
template<class Function >
point_basic<T> rheolef::space_base_rep< T, M >::vector_momentum ( Function  f,
size_type  idof 
) const
inline

Definition at line 95 of file space.h.

template<class T, class M>
template<class Function >
tensor_basic<T> rheolef::space_base_rep< T, M >::tensor_momentum ( Function  f,
size_type  idof 
) const
inline

Definition at line 98 of file space.h.

template<class T, class M>
array< typename space_base_rep< T, M >::size_type, M > rheolef::space_base_rep< T, M >::build_indirect_array ( const space_base_rep< T, M > &  Wh,
const std::string &  dom_name 
) const

Implementation note: there is two numbering styles.

bgd_idof : from the current space dom_idof : from a space compacted to the domain "dom", as geo_domain does

This function returns the renumbering array "dom_idof2bgd_idof". It is a temporary, used at the fly when using the u[dom] syntax.

Definition at line 171 of file space.cc.

template<class T, class M>
array< typename space_base_rep< T, M >::size_type, M > rheolef::space_base_rep< T, M >::build_indirect_array ( const space_base_rep< T, M > &  Wh,
const geo_basic< T, M > &  bgd_gamma 
) const

Definition at line 181 of file space.cc.

template<class T, class M>
bool rheolef::space_base_rep< T, M >::operator== ( const space_base_rep< T, M > &  V2) const
inline

Definition at line 107 of file space.h.

template<class T , class M >
void rheolef::space_base_rep< T, M >::init_xdof ( )
protected

Definition at line 51 of file space.cc.

template<class T, class M>
void rheolef::space_base_rep< T, M >::freeze_guard ( ) const
inlineprotected

Definition at line 116 of file space.h.

template<class T, class M>
void rheolef::space_base_rep< T, M >::no_freeze_guard ( ) const
inlineprotected

Definition at line 121 of file space.h.

template<class T , class M >
void rheolef::space_base_rep< T, M >::base_freeze_body ( ) const
protected

Definition at line 114 of file space.cc.

template<class T, class M>
virtual void rheolef::space_base_rep< T, M >::freeze_body ( ) const
inlineprotectedvirtual

Reimplemented in rheolef::space_rep< T, distributed >.

Definition at line 125 of file space.h.

Friends And Related Function Documentation

template<class T, class M>
friend class field_basic
friend

Definition at line 114 of file space.h.

template<class T, class M>
bool are_compatible ( const space_base_rep< T, M > &  V1,
const space_base_rep< T, M > &  V2 
)
friend

Definition at line 110 of file space.h.

Member Data Documentation

template<class T, class M>
space_constitution<T,M> rheolef::space_base_rep< T, M >::_constit
protected

Definition at line 126 of file space.h.

template<class T, class M>
array<point_basic<T>,M > rheolef::space_base_rep< T, M >::_xdof
protected

Definition at line 127 of file space.h.

template<class T, class M>
bool rheolef::space_base_rep< T, M >::_have_freezed
mutableprotected

Definition at line 128 of file space.h.

template<class T, class M>
array<space_pair_type,M> rheolef::space_base_rep< T, M >::_idof2blk_iub
mutableprotected

Definition at line 129 of file space.h.

template<class T, class M>
distributor rheolef::space_base_rep< T, M >::_iu_ownership
mutableprotected

Definition at line 130 of file space.h.

template<class T, class M>
distributor rheolef::space_base_rep< T, M >::_ib_ownership
mutableprotected

Definition at line 131 of file space.h.


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