20 #include "system_of_eqs.hpp"
23 #include "tensor_impl.hpp"
25 Eq_matching_import::Eq_matching_import(
const Domain* zedom,
int dd,
int bb,
Ope_eq* so,
const Array<int>& ozers,
int nused,
Array<int>** pused) :
Equation(zedom, dd, 1, nused, pused), bound(bb),
26 other_doms(ozers.get_size(1)), other_bounds(ozers.get_size(1)) {
39 assert (residus[conte]->get_type_data()==TERM_T) ;
45 assert (residus[conte]->get_type_data()==TERM_T) ;
56 bool res = (target==
ndom) ?
true :
false ;
reference set(const Index &pos)
Read/write of an element.
int get_size(int i) const
Returns the size of a given dimension.
Abstract class that implements the fonctionnalities common to all the type of domains.
virtual void export_tau_boundary(const Tensor &eq, int dom, int bound, Array< double > &res, int &pos_res, const Array< int > &ncond, int n_cmp=-1, Array< int > **p_cmp=0x0) const
Exports all the residual equations corresponding to a tensorial one on a given boundary It makes use ...
virtual Array< int > nbr_conditions_boundary(const Tensor &eq, int dom, int bound, int n_cmp=-1, Array< int > **p_cmp=0x0) const
Computes number of discretized equations associated with a given tensorial equation on a boundary.
void export_der(int &, Term_eq **, Array< double > &, int &) const override
Generates the discretized variations, from the various Term_eq computed by the equation.
bool take_into_account(int) const override
Check whether the variation of the residual has to be taken into account when computing a given colum...
Array< int > other_doms
Array containing the number of the domains being on the other side of the surface.
Array< int > other_bounds
Names of the boundary, as seen in the other domains.
Eq_matching_import(const Domain *dom, int nd, int bb, Ope_eq *eq, const Array< int > &ozers, int n_cmp=-1, Array< int > **p_cmp=nullptr)
Constructor.
void export_val(int &, Term_eq **, Array< double > &, int &) const override
Generates the discretized errors, from the various Term_eq computed by the equation.
int bound
Name of the boundary in the domain of the equation.
Array< int > do_nbr_conditions(const Tensor &tt) const override
Computes the number of conditions associated with the equation.
virtual ~Eq_matching_import()
Destructor.
Class implementing an equation.
const Domain * dom
Pointer on the Domain where the equation is defined.
Array< int > ** p_cmp_used
Array of pointer on the indices of the used components.
int ndom
Number of the domain.
int n_cmp_used
Number of components used (by default the same thing as n_comp).
Array< int > * n_cond
Number of discretized equations, component by component.
MMPtr_array< Ope_eq > parts
Array of pointers on the various terms.
Abstract class that describes the various operators that can appear in the equations.
This class is intended to describe the manage objects appearing in the equations.