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

Detailed Description

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

Definition at line 146 of file form.h.

Public Types

typedef csr< T, M >::size_type size_type
 
typedef T value_type
 
typedef scalar_traits< T >::type float_type
 
typedef geo_basic< float_type, Mgeo_type
 
typedef space_basic< float_type, Mspace_type
 

Public Member Functions

 form_basic ()
 
 form_basic (const form_basic< T, M > &)
 
form_basic< T, M > & operator= (const form_basic< T, M > &)
 
template<class Expr , class Sfinae = typename std::enable_if<details::is_form_lazy<Expr>::value, Expr>::type>
 form_basic (const Expr &)
 
template<class Expr , class Sfinae = typename std::enable_if<details::is_form_lazy<Expr>::value, Expr>::type>
form_basic< T, M > & operator= (const Expr &)
 
 form_basic (const std::initializer_list< details::form_concat_value< T, M > > &init_list)
 
 form_basic (const std::initializer_list< details::form_concat_line< T, M > > &init_list)
 
const space_typeget_first_space () const
 
const space_typeget_second_space () const
 
const geo_typeget_geo () const
 
bool is_symmetric () const
 
void set_symmetry (bool is_symm=true) const
 
bool is_definite_positive () const
 
void set_definite_positive (bool is_dp=true) const
 
bool is_symmetric_definite_positive () const
 
void set_symmetric_definite_positive () const
 
const communicatorcomm () const
 
form_basic< T, Moperator+ (const form_basic< T, M > &b) const
 
form_basic< T, Moperator- (const form_basic< T, M > &b) const
 
form_basic< T, Moperator* (const form_basic< T, M > &b) const
 
form_basic< T, M > & operator*= (const T &lambda)
 
field_basic< T, Moperator* (const field_basic< T, M > &xh) const
 
field_basic< T, Mtrans_mult (const field_basic< T, M > &yh) const
 
float_type operator() (const field_basic< T, M > &uh, const field_basic< T, M > &vh) const
 
odiststreamput (odiststream &ops, bool show_partition=true) const
 
void dump (std::string name) const
 
const csr< T, M > & uu () const
 
const csr< T, M > & ub () const
 
const csr< T, M > & bu () const
 
const csr< T, M > & bb () const
 
csr< T, M > & set_uu ()
 
csr< T, M > & set_ub ()
 
csr< T, M > & set_bu ()
 
csr< T, M > & set_bb ()
 
int constraint_process_rank () const
 
template<class Expr , class Sfinae = typename std::enable_if<details::is_form_lazy<Expr>::value, Expr>::type>
void convert_from_form_lazy (const Expr &expr)
 
template<class Expr >
void do_integrate_internal (const geo_basic< T, M > &dom, const geo_basic< T, M > &band, const band_basic< T, M > &gh, const Expr &expr, const integrate_option &fopt, bool is_on_band)
 
template<class Expr >
void do_integrate (const geo_basic< T, M > &domain, const Expr &expr, const integrate_option &fopt)
 
template<class Expr >
void do_integrate (const band_basic< T, M > &gh, const Expr &expr, const integrate_option &fopt)
 
 form_basic (const space_type &X, const space_type &Y, const std::string &name="", const quadrature_option &qopt=quadrature_option())
 
 form_basic (const space_type &X, const space_type &Y, const std::string &name, const field_basic< T, M > &weight, const quadrature_option &qopt=quadrature_option())
 
template<class Function >
 form_basic (const space_type &X, const space_type &Y, const std::string &name, Function weight, const quadrature_option &qopt=quadrature_option())
 
 form_basic (const space_type &X, const space_type &Y, const std::string &name, const geo_basic< T, M > &gamma, const quadrature_option &qopt=quadrature_option())
 
 form_basic (const space_type &X, const space_type &Y, const std::string &name, const geo_basic< T, M > &gamma, const field_basic< T, M > &weight, const quadrature_option &qopt=quadrature_option())
 
template<class Function >
 form_basic (const space_type &X, const space_type &Y, const std::string &name, const geo_basic< T, M > &gamma, Function weight, const quadrature_option &qopt=quadrature_option())
 

Protected Member Functions

template<class WeightFunction >
void form_init (const std::string &name, bool has_weight, WeightFunction weight, const quadrature_option &qopt)
 
template<class WeightFunction >
void form_init_on_domain (const std::string &name, const geo_basic< T, M > &gamma, bool has_weight, WeightFunction weight, const geo_basic< T, M > &w_omega, const quadrature_option &qopt)
 

Protected Attributes

space_type _X
 
space_type _Y
 
csr< T, M_uu
 
csr< T, M_ub
 
csr< T, M_bu
 
csr< T, M_bb
 

Member Typedef Documentation

◆ size_type

template<class T , class M >
typedef csr<T,M>::size_type size_type

Definition at line 150 of file form.h.

◆ value_type

template<class T , class M >
typedef T value_type

Definition at line 151 of file form.h.

◆ float_type

template<class T , class M >
typedef scalar_traits<T>::type float_type

Definition at line 152 of file form.h.

◆ geo_type

template<class T , class M >
typedef geo_basic<float_type,M> geo_type

Definition at line 153 of file form.h.

◆ space_type

template<class T , class M >
typedef space_basic<float_type,M> space_type

Definition at line 154 of file form.h.

Constructor & Destructor Documentation

◆ form_basic() [1/11]

template<class T , class M >
form_basic ( )

Definition at line 316 of file form.h.

◆ form_basic() [2/11]

template<class T , class M >
form_basic ( const form_basic< T, M > &  a)

Definition at line 322 of file form.h.

◆ form_basic() [3/11]

template<class T , class M >
template<class Expr , class Sfinae >
form_basic ( const Expr &  a)

Definition at line 799 of file form_lazy_expr.h.

◆ form_basic() [4/11]

template<class T , class M >
form_basic ( const std::initializer_list< details::form_concat_value< T, M > > &  init_list)

Definition at line 175 of file form_concat.h.

◆ form_basic() [5/11]

template<class T , class M >
form_basic ( const std::initializer_list< details::form_concat_line< T, M > > &  init_list)

Definition at line 233 of file form_concat.h.

◆ form_basic() [6/11]

template<class T , class M >
form_basic ( const space_type X,
const space_type Y,
const std::string &  name = "",
const quadrature_option &  qopt = quadrature_option() 
)

Definition at line 34 of file form.cc.

◆ form_basic() [7/11]

template<class T , class M >
form_basic ( const space_type X,
const space_type Y,
const std::string &  name,
const field_basic< T, M > &  weight,
const quadrature_option &  qopt = quadrature_option() 
)

Definition at line 49 of file form.cc.

◆ form_basic() [8/11]

template<class T , class M >
template<class Function >
form_basic ( const space_type X,
const space_type Y,
const std::string &  name,
Function  weight,
const quadrature_option &  qopt = quadrature_option() 
)

Definition at line 201 of file form_weighted.h.

◆ form_basic() [9/11]

template<class T , class M >
form_basic ( const space_type X,
const space_type Y,
const std::string &  name,
const geo_basic< T, M > &  gamma,
const quadrature_option &  qopt = quadrature_option() 
)

Definition at line 65 of file form.cc.

◆ form_basic() [10/11]

template<class T , class M >
form_basic ( const space_type X,
const space_type Y,
const std::string &  name,
const geo_basic< T, M > &  gamma,
const field_basic< T, M > &  weight,
const quadrature_option &  qopt = quadrature_option() 
)

Definition at line 87 of file form.cc.

◆ form_basic() [11/11]

template<class T , class M >
template<class Function >
form_basic ( const space_type X,
const space_type Y,
const std::string &  name,
const geo_basic< T, M > &  gamma,
Function  weight,
const quadrature_option &  qopt = quadrature_option() 
)

Definition at line 238 of file form_weighted.h.

Member Function Documentation

◆ operator=() [1/2]

template<class T , class M >
form_basic< T, M > & operator= ( const form_basic< T, M > &  a)

Definition at line 329 of file form.h.

◆ operator=() [2/2]

template<class T , class M >
template<class Expr , class Sfinae >
form_basic< T, M > & operator= ( const Expr &  a)

Definition at line 789 of file form_lazy_expr.h.

◆ get_first_space()

template<class T , class M >
const form_basic< T, M >::space_type & get_first_space ( ) const

Definition at line 342 of file form.h.

◆ get_second_space()

template<class T , class M >
const form_basic< T, M >::space_type & get_second_space ( ) const

Definition at line 349 of file form.h.

◆ get_geo()

template<class T , class M >
const form_basic< T, M >::geo_type & get_geo ( ) const

Definition at line 356 of file form.h.

◆ is_symmetric()

template<class T , class M >
bool is_symmetric ( ) const

Definition at line 436 of file form.h.

◆ set_symmetry()

template<class T , class M >
void set_symmetry ( bool  is_symm = true) const

Definition at line 443 of file form.h.

◆ is_definite_positive()

template<class T , class M >
bool is_definite_positive ( ) const

Definition at line 451 of file form.h.

◆ set_definite_positive()

template<class T , class M >
void set_definite_positive ( bool  is_dp = true) const

Definition at line 458 of file form.h.

◆ is_symmetric_definite_positive()

template<class T , class M >
bool is_symmetric_definite_positive ( ) const

Definition at line 466 of file form.h.

◆ set_symmetric_definite_positive()

template<class T , class M >
void set_symmetric_definite_positive ( ) const

Definition at line 473 of file form.h.

◆ comm()

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

Definition at line 363 of file form.h.

◆ operator+()

template<class T , class M >
form_basic< T, M > operator+ ( const form_basic< T, M > &  b) const

Definition at line 373 of file form.h.

◆ operator-()

template<class T , class M >
form_basic< T, M > operator- ( const form_basic< T, M > &  b) const

Definition at line 385 of file form.h.

◆ operator*() [1/2]

template<class T , class M >
form_basic< T, M > operator* ( const form_basic< T, M > &  b) const

Definition at line 397 of file form.h.

◆ operator*=()

template<class T , class M >
form_basic< T, M > & operator*= ( const T lambda)

Definition at line 409 of file form.h.

◆ operator*() [2/2]

template<class T , class M >
field_basic< T, M > operator* ( const field_basic< T, M > &  xh) const

Definition at line 123 of file form.cc.

◆ trans_mult()

template<class T , class M >
field_basic< T, M > trans_mult ( const field_basic< T, M > &  yh) const

Definition at line 134 of file form.cc.

◆ operator()()

template<class T , class M >
form_basic< T, M >::float_type operator() ( const field_basic< T, M > &  uh,
const field_basic< T, M > &  vh 
) const

Definition at line 143 of file form.cc.

◆ put()

template<class T , class M >
odiststream & put ( odiststream ops,
bool  show_partition = true 
) const

Definition at line 235 of file form.cc.

◆ dump()

template<class T , class M >
void dump ( std::string  name) const

Definition at line 262 of file form.cc.

◆ uu()

template<class T , class M >
const csr< T, M > & uu ( ) const

Definition at line 204 of file form.h.

◆ ub()

template<class T , class M >
const csr< T, M > & ub ( ) const

Definition at line 205 of file form.h.

◆ bu()

template<class T , class M >
const csr< T, M > & bu ( ) const

Definition at line 206 of file form.h.

◆ bb()

template<class T , class M >
const csr< T, M > & bb ( ) const

Definition at line 207 of file form.h.

◆ set_uu()

template<class T , class M >
csr< T, M > & set_uu ( )

Definition at line 208 of file form.h.

◆ set_ub()

template<class T , class M >
csr< T, M > & set_ub ( )

Definition at line 209 of file form.h.

◆ set_bu()

template<class T , class M >
csr< T, M > & set_bu ( )

Definition at line 210 of file form.h.

◆ set_bb()

template<class T , class M >
csr< T, M > & set_bb ( )

Definition at line 211 of file form.h.

◆ constraint_process_rank()

template<class T , class M >
int constraint_process_rank ( ) const

Definition at line 214 of file form.h.

◆ convert_from_form_lazy()

template<class T , class M >
template<class Expr , class Sfinae >
void convert_from_form_lazy ( const Expr &  expr)

Definition at line 52 of file form_lazy_convert.h.

◆ do_integrate_internal()

template<class T , class M >
template<class Expr >
void do_integrate_internal ( const geo_basic< T, M > &  dom,
const geo_basic< T, M > &  band,
const band_basic< T, M > &  gh,
const Expr &  expr,
const integrate_option fopt,
bool  is_on_band 
)

Definition at line 89 of file form_vf_assembly.h.

◆ do_integrate() [1/2]

template<class T , class M >
template<class Expr >
void do_integrate ( const geo_basic< T, M > &  domain,
const Expr &  expr,
const integrate_option fopt 
)

Definition at line 244 of file form_vf_assembly.h.

◆ do_integrate() [2/2]

template<class T , class M >
template<class Expr >
void do_integrate ( const band_basic< T, M > &  gh,
const Expr &  expr,
const integrate_option fopt 
)

Definition at line 255 of file form_vf_assembly.h.

◆ form_init()

template<class T , class M >
template<class WeightFunction >
void form_init ( const std::string &  name,
bool  has_weight,
WeightFunction  weight,
const quadrature_option &  qopt 
)
protected

Definition at line 165 of file form_weighted.h.

◆ form_init_on_domain()

template<class T , class M >
template<class WeightFunction >
void form_init_on_domain ( const std::string &  name,
const geo_basic< T, M > &  gamma,
bool  has_weight,
WeightFunction  weight,
const geo_basic< T, M > &  w_omega,
const quadrature_option &  qopt 
)
protected

Definition at line 222 of file form_weighted.h.

Member Data Documentation

◆ _X

template<class T , class M >
space_type _X
protected

Definition at line 217 of file form.h.

◆ _Y

template<class T , class M >
space_type _Y
protected

Definition at line 218 of file form.h.

◆ _uu

template<class T , class M >
csr<T,M> _uu
protected

Definition at line 219 of file form.h.

◆ _ub

template<class T , class M >
csr<T,M> _ub
protected

Definition at line 220 of file form.h.

◆ _bu

template<class T , class M >
csr<T,M> _bu
protected

Definition at line 221 of file form.h.

◆ _bb

template<class T , class M >
csr<T,M> _bb
protected

Definition at line 222 of file form.h.


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