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: