.\" .de Id .. .de Sp .if n .sp .if t .sp 0.4 .. .TH band 2rheolef "rheolef-6.7" "rheolef-6.7" "rheolef-6.7" .\" label: /*Class: .SH NAME \fBband\fP - compute the band arround a level set .\" skip: @findex level_set .\" skip: @clindex field .\" skip: @clindex geo .PP .SH DESCRIPTION Given a function \fBfh\fP defined in a domain \fBLambda\fP, compute the band of elements intersecting the level set defined by {x in Lambda, fh(x) = 0}. This class is used for solving problems defined on a surface described by a level set function (See level_set(4)). .PP .SH ACCESSORS Each side in the surface mesh, as returned by the \fBlevel_set\fP member function, is included into an element of the band mesh, as returned by the \fBband\fP member function. Moreover, in the distributed memory environment, this correspondance is on the same process, so local indexes can be used for this correspondance: this is the \fBsid_ie2bnd_ie\fP member functions. .PP .SH BAND TOPOLOGY AND DOMAINS For the direct resolution of systems posed on the band, the mesh returned by the \fBband()\fP provides some domains of vertices. The \fB"zero"\fP vertex domain lists all vertices \fBxi\fP such that \fBfh(xi)=0\fP. The \fB"isolated"\fP vertex domain lists all vertices \fBxi\fP such that \fBfh(xi)!=0\fP and \fBxi\fP is contained by only one element \fBK\fP and all vertices \fBxj!=xi\fP of \fBK\fP satifies \fBfh(xj)=0\fP. Others vertices of the band, separated by the zero and isolated ones, are organizd by connected components: the \fBn_connex_component\fP member function returns its number. Corresponding vertex domains of the band are named \fB"cc"\fP where \fB\fP should be replaced by any number between 0 and \fBn_connex_component-1\fP. .\" END .SH IMPLEMENTATION .\" begin_example .Sp .nf template class band_basic { public: typedef typename geo_basic::size_type size_type; // allocators: band_basic(); band_basic(const field_basic& fh, const level_set_option_type& opt = level_set_option_type()); /// accessors: const geo_basic& band() const { return _band; } const geo_basic& level_set() const { return _gamma; } size_type sid_ie2bnd_ie (size_type sid_ie) const { return _sid_ie2bnd_ie [sid_ie]; } size_type n_connected_component() const { return _ncc; } // data: protected: geo_basic _gamma; geo_basic _band; disarray _sid_ie2bnd_ie; size_type _ncc; }; typedef band_basic band; .Sp .fi .\" end_example .\" LENGTH = 1 .SH SEE ALSO level_set(4)