26static int faces_sommets_segment[2][1] =
29template <
typename _SIZE_>
35template <
typename _SIZE_>
44template <
typename _SIZE_>
52 const int_t nb_elem=domaine.nb_elem();
53 for (
int_t num_poly=0; num_poly<nb_elem; num_poly++)
56 S[i] = elem(num_poly,i);
58 if(sup_strict(dom.
coord(S[0], 0),dom.
coord(S[1], 0)))
66 elem(num_poly, i)=S[i];
75template <
typename _SIZE_>
78 static Nom nom=
"SEGMENT";
93template <
typename _SIZE_>
98 const Domaine_t& domaine=mon_dom.valeur();
100 const IntTab_t& elem=domaine.les_elems();
105 double O1 = dom.
coord(elem(element,1), d) - dom.
coord(elem(element,0), d);
106 double OM = pos[d] - dom.
coord(elem(element,0), d);
113 if (autre_a>0 && !est_egal(a, autre_a))
return 0;
116 else if (!est_egal(OM,0))
return 0;
130template <
typename _SIZE_>
134 const Domaine_t& domaine=mon_dom.valeur();
135 if((domaine.sommet_elem(element,0)==pos[0])&&
136 (domaine.sommet_elem(element,1)==pos[1]))
146template <
typename _SIZE_>
149 const Domaine_t& domaine=mon_dom.valeur();
154 int_t size_tot = domaine.nb_elem_tot();
156 for (
int_t num_poly=0; num_poly<size_tot; num_poly++)
158 S1 = domaine.sommet_elem(num_poly,0);
159 S2 = domaine.sommet_elem(num_poly,1);
166 volumes[num_poly]= sqrt(dx);
172template <
typename _SIZE_>
175 faces_som_local.
resize(2,1);
176 for (
int j=0; j<2; j++)
177 faces_som_local(j,0) = faces_sommets_segment[j][0];
double coord(int_t i, int j) const
Class Elem_geom_base This class is the base class for the definition of elements.
Class defining operators and methods for all reading operation in an input flow (file,...
class Nom: a character string for naming TRUST objects.
virtual Entree & readOn(Entree &)
Reads an Objet_U from an input stream. Virtual method to override.
static double precision_geom
virtual Sortie & printOn(Sortie &) const
Writes the object to an output stream. Virtual method to override.
Class Segment: represents the geometric element segment.
int get_tab_faces_sommets_locaux(IntTab &faces_som_local) const override
See ElemGeomBase::get_tab_faces_sommets_locaux.
void calculer_volumes(DoubleVect_t &vols) const override
Computes the volumes of the elements of the associated domain.
const Nom & nom_lml() const override
Returns the LML name of a segment.
SmallArrOfTID_T< _SIZE_ > SmallArrOfTID_t
IntTab_T< _SIZE_ > IntTab_t
DoubleVect_T< _SIZE_ > DoubleVect_t
int contient(const ArrOfDouble &pos, int_t elem) const override
Returns 1 if element "element" of the domain associated with this geometric element contains the poin...
void reordonner() override
Reorders the vertices of the segment.
Domaine_32_64< _SIZE_ > Domaine_t
Base class for output streams.
_SIZE_ size_array() const
void resize(_SIZE_ n, RESIZE_OPTIONS opt=RESIZE_OPTIONS::COPY_INIT)
_SIZE_ size_totale() const