FreeFOAM The Cross-Platform CFD Toolkit
sampledSet Class Reference

Holds list of sampling points which is filled at construction time. Various implementations of this base class to e.g. get sampling points at uniform distance along a line (uniformSet) or directly specified (cloudSet) More...

#include <sampling/sampledSet.H>


Detailed Description

Holds list of sampling points which is filled at construction time. Various implementations of this base class to e.g. get sampling points at uniform distance along a line (uniformSet) or directly specified (cloudSet)

Each 'sampledSet' has a name and a specifier of how the axis should be write (x/y/z component or all 3 components)

Source files

Definition at line 65 of file sampledSet.H.

+ Inheritance diagram for sampledSet:
+ Collaboration diagram for sampledSet:

List of all members.

Classes

class  iNew
 Class used for the read-construction of. More...

Public Member Functions

 TypeName ("sampledSet")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, sampledSet, word,(const word &name, const polyMesh &mesh, meshSearch &searchEngine, const dictionary &dict),(name, mesh, searchEngine, dict))
 sampledSet (const word &name, const polyMesh &mesh, meshSearch &searchEngine, const word &axis)
 Construct from components.
 sampledSet (const word &name, const polyMesh &mesh, meshSearch &searchEngine, const dictionary &dict)
 Construct from dictionary.
autoPtr< sampledSetclone () const
 Clone.
virtual ~sampledSet ()
const polyMeshmesh () const
meshSearchsearchEngine () const
const labelListsegments () const
const scalarListcurveDist () const
const labelListcells () const
const labelListfaces () const
virtual point getRefPoint (const List< point > &) const =0
 Given all sampling points (on all processors) return reference point.
Ostreamwrite (Ostream &) const
 Output for debugging.
- Public Member Functions inherited from coordSet
 coordSet (const word &name, const word &axis)
 Construct from components.
 coordSet (const word &name, const word &axis, const List< point > &points, const point &refPoint=point::zero)
 Construct from components.
 coordSet (const word &name, const word &axis, const scalarField &points, const scalar refPoint=0.0)
 Construct from components.
const wordname () const
const wordaxis () const
const pointrefPoint () const
bool hasVectorAxis () const
 Is axis specification a vector.
scalar scalarCoord (const label index) const
 Get coordinate of point according to axis specification.
vector vectorCoord (const label index) const
 Get point according to axis="full" specification.
- Public Member Functions inherited from Field< vector >
 Field ()
 Construct null.
 Field (const label)
 Construct given size.
 Field (const label, const vector &)
 Construct given size and initial value.
 Field (const UList< vector > &)
 Construct as copy of a UList<Type>
 Field (const Xfer< List< vector > > &)
 Construct by transferring the List contents.
 Field (const UList< vector > &mapF, const unallocLabelList &mapAddressing)
 Construct by 1 to 1 mapping from the given field.
 Field (const tmp< Field< vector > > &tmapF, const unallocLabelList &mapAddressing)
 Construct by 1 to 1 mapping from the given tmp field.
 Field (const UList< vector > &mapF, const labelListList &mapAddressing, const scalarListList &weights)
 Construct by interpolative mapping from the given field.
 Field (const tmp< Field< vector > > &tmapF, const labelListList &mapAddressing, const scalarListList &weights)
 Construct by interpolative mapping from the given tmp field.
 Field (const UList< vector > &mapF, const FieldMapper &map)
 Construct by mapping from the given field.
 Field (const tmp< Field< vector > > &tmapF, const FieldMapper &map)
 Construct by mapping from the given tmp field.
 Field (const Field< vector > &)
 Construct as copy.
 Field (Field< vector > &, bool reUse)
 Construct as copy or re-use as specified.
 Field (const Xfer< Field< vector > > &)
 Construct by transferring the Field contents.
 Field (const typename Field< vector >::subField &)
 Construct as copy of subField.
 Field (Istream &)
 Construct as copy of tmp<Field>
 Field (const word &keyword, const dictionary &dict, const label size)
 Construct from a dictionary entry.
void map (const UList< vector > &mapF, const unallocLabelList &mapAddressing)
 1 to 1 map from the given field
void map (const tmp< Field< vector > > &tmapF, const unallocLabelList &mapAddressing)
 1 to 1 map from the given tmp field
void map (const UList< vector > &mapF, const labelListList &mapAddressing, const scalarListList &weights)
 Interpolative map from the given field.
void map (const tmp< Field< vector > > &tmapF, const labelListList &mapAddressing, const scalarListList &weights)
 Interpolative map from the given tmp field.
void map (const UList< vector > &mapF, const FieldMapper &map)
 Map from the given field.
void map (const tmp< Field< vector > > &tmapF, const FieldMapper &map)
 Map from the given tmp field.
void autoMap (const FieldMapper &map)
 Map from self.
void rmap (const UList< vector > &mapF, const unallocLabelList &mapAddressing)
 1 to 1 reverse-map from the given field
void rmap (const tmp< Field< vector > > &tmapF, const unallocLabelList &mapAddressing)
 1 to 1 reverse-map from the given tmp field
void rmap (const UList< vector > &mapF, const unallocLabelList &mapAddressing, const scalarList &weights)
 Interpolative reverse map from the given field.
void rmap (const tmp< Field< vector > > &tmapF, const unallocLabelList &mapAddressing, const scalarList &weights)
 Interpolative reverse map from the given tmp field.
void negate ()
 Negate this field.
tmp< Field< cmptType > > component (const direction) const
 Return a component field of the field.
void replace (const direction, const UList< cmptType > &)
 Replace a component field of the field.
void replace (const direction, const tmp< Field< cmptType > > &)
 Replace a component field of the field.
void replace (const direction, const cmptType &)
 Replace a component field of the field.
tmp< Field< vector > > T () const
 Return the field transpose (only defined for second rank tensors)
void writeEntry (const word &keyword, Ostream &os) const
 Write the field as a dictionary entry.
void operator= (const Field< vector > &)
void operator= (const UList< vector > &)
 Assignment from UList operator. Takes linear time.
void operator= (const SubField< vector > &)
void operator= (const tmp< Field< vector > > &)
void operator= (const vector &)
 Assignment of all entries to the given value.
void operator= (const VectorSpace< Form, Cmpt, nCmpt > &)
void operator+= (const UList< vector > &)
void operator+= (const tmp< Field< vector > > &)
void operator+= (const vector &)
void operator-= (const UList< vector > &)
void operator-= (const tmp< Field< vector > > &)
void operator-= (const vector &)
void operator*= (const UList< scalar > &)
void operator*= (const tmp< Field< scalar > > &)
void operator*= (const scalar &)
void operator/= (const UList< scalar > &)
void operator/= (const tmp< Field< scalar > > &)
void operator/= (const scalar &)
- Public Member Functions inherited from refCount
 refCount ()
 Construct null with zero count.
int count () const
 Return the reference count.
bool okToDelete () const
 Return true if the reference count is zero.
void resetRefCount ()
 Reset the reference count to zero.
void operator++ ()
 Increment the reference count.
void operator++ (int)
 Increment the reference count.
void operator-- ()
 Decrement the reference count.
void operator-- (int)
 Decrement the reference count.
- Public Member Functions inherited from List< vector >
label size () const
 Return the number of elements in the UList.
 List ()
 Null constructor.
 List (const label)
 Construct with given size.
 List (const label, const vector &)
 Construct with given size and value for all elements.
 List (const List< vector > &)
 Copy constructor.
 List (const Xfer< List< vector > > &)
 Construct by transferring the parameter contents.
 List (List< vector > &, bool reUse)
 Construct as copy or re-use as specified.
 List (const UList< vector > &, const unallocLabelList &mapAddressing)
 Construct as subset.
 List (InputIterator first, InputIterator last)
 Construct given start and end iterators.
 List (const FixedList< vector, Size > &)
 Construct as copy of FixedList<T, Size>
 List (const PtrList< vector > &)
 Construct as copy of PtrList<T>
 List (const SLList< vector > &)
 Construct as copy of SLList<T>
 List (const IndirectList< vector > &)
 Construct as copy of IndirectList<T>
 List (const UIndirectList< vector > &)
 Construct as copy of UIndirectList<T>
 List (const BiIndirectList< vector > &)
 Construct as copy of BiIndirectList<T>
 List (Istream &)
 Construct from Istream.
 ~List ()
void resize (const label)
 Reset size of List.
void resize (const label, const vector &)
 Reset size of List and value for new elements.
void setSize (const label)
 Reset size of List.
void setSize (const label, const vector &)
 Reset size of List and value for new elements.
void clear ()
 Clear the list, i.e. set size to zero.
void append (const UList< vector > &)
 Append a List at the end of this list.
void append (const UIndirectList< vector > &)
 Append a UIndirectList at the end of this list.
void transfer (List< vector > &)
 Transfer the contents of the argument List into this list.
void transfer (DynamicList< vector, SizeInc, SizeMult, SizeDiv > &)
 Transfer the contents of the argument List into this list.
void transfer (SortableList< vector > &)
 Transfer the contents of the argument List into this list.
Xfer< List< vector > > xfer ()
 Transfer contents to the Xfer container.
vectornewElmt (const label)
 Return subscript-checked element of UList.
void operator= (const List< vector > &)
 Assignment operator. Takes linear time.
void operator= (const SLList< vector > &)
 Assignment from SLList operator. Takes linear time.
void operator= (const IndirectList< vector > &)
 Assignment from IndirectList operator. Takes linear time.
void operator= (const UIndirectList< vector > &)
 Assignment from UIndirectList operator. Takes linear time.
void operator= (const BiIndirectList< vector > &)
 Assignment from BiIndirectList operator. Takes linear time.
- Public Member Functions inherited from UList< vector >
 UList ()
 Null constructor.
 UList (vector *__restrict__ v, label size)
 Construct from components.
label fcIndex (const label i) const
 Return the forward circular index, i.e. the next index.
label rcIndex (const label i) const
 Return the reverse circular index, i.e. the previous index.
label byteSize () const
 Return the binary size in number of characters of the UList.
const vectorcdata () const
 Return a const pointer to the first data element,.
vectordata ()
 Return a pointer to the first data element,.
void checkStart (const label start) const
 Check start is within valid range (0 ... size-1).
void checkSize (const label size) const
 Check size is within valid range (0 ... size).
void checkIndex (const label i) const
 Check index i is within valid range (0 ... size-1).
void writeEntry (Ostream &) const
 Write the UList as a dictionary entry.
void assign (const UList< vector > &)
 Assign elements to those from UList.
vectoroperator[] (const label)
 Return element of UList.
const vectoroperator[] (const label) const
 Return element of constant UList.
 operator const Foam::List< vector > & () const
 Allow cast to a const List<T>&.
iterator begin ()
 Return an iterator to begin traversing the UList.
const_iterator begin () const
 Return const_iterator to begin traversing the constant UList.
iterator end ()
 Return an iterator to end traversing the UList.
const_iterator end () const
 Return const_iterator to end traversing the constant UList.
const_iterator cbegin () const
 Return const_iterator to begin traversing the constant UList.
const_iterator cend () const
 Return const_iterator to end traversing the constant UList.
reverse_iterator rbegin ()
 Return reverse_iterator to begin reverse traversing the UList.
const_reverse_iterator rbegin () const
 Return const_reverse_iterator to begin reverse traversing the UList.
reverse_iterator rend ()
 Return reverse_iterator to end reverse traversing the UList.
const_reverse_iterator rend () const
 Return const_reverse_iterator to end reverse traversing the UList.
const_reverse_iterator crbegin () const
 Return const_reverse_iterator to begin reverse traversing the UList.
const_reverse_iterator crend () const
 Return const_reverse_iterator to end reverse traversing the UList.
label max_size () const
 Return size of the largest possible UList.
bool empty () const
 Return true if the UList is empty (ie, size() is zero).
void swap (UList< vector > &)
 Swap two ULists of the same type in constant time.
bool operator== (const UList< vector > &) const
 Equality operation on ULists of the same type.
bool operator!= (const UList< vector > &) const
 The opposite of the equality operation. Takes linear time.
bool operator< (const UList< vector > &) const
 Compare two ULists lexicographically. Takes linear time.
bool operator> (const UList< vector > &) const
 Compare two ULists lexicographically. Takes linear time.
bool operator<= (const UList< vector > &) const
 Return true if !(a > b). Takes linear time.
bool operator>= (const UList< vector > &) const
 Return true if !(a < b). Takes linear time.

Static Public Member Functions

static autoPtr< sampledSetNew (const word &name, const polyMesh &mesh, meshSearch &searchEngine, const dictionary &dict)
 Return a reference to the selected sampledSet.

Static Public Attributes

static const scalar tol = 1e-6
 Tolerance when comparing points. Usually relative to difference.

Protected Member Functions

label getBoundaryCell (const label) const
 Returns cell next to boundary face.
label getCell (const label faceI, const point &sample) const
 Returns cell using face and containing sample.
scalar calcSign (const label faceI, const point &sample) const
 Calculates inproduct of face normal and vector sample-face centre.
label findNearFace (const label cellI, const point &sample, const scalar smallDist) const
 Returns face label (or -1) of face which is close to sample.
point pushIn (const point &sample, const label faceI) const
 Moves sample in direction of -n to it is 'inside' of faceI.
bool getTrackingPoint (const vector &offset, const point &samplePt, const point &bPoint, const label bFaceI, point &trackPt, label &trackCellI, label &trackFaceI) const
 Calculates start of tracking given samplePt and first boundary.
void setSamples (const List< point > &samplingPts, const labelList &samplingCells, const labelList &samplingFaces, const labelList &samplingSegments, const scalarList &samplingCurveDist)
 Sets sample data.

Protected Attributes

labelList segments_
 Segment numbers.
scalarList curveDist_
 Parameter along sample curve. Uniquely identifies position.
labelList cells_
 Cell numbers.
labelList faces_
 Face numbers (-1 if not known)
- Protected Attributes inherited from coordSet
const word name_
 Name.
const word axis_
 Axis write type.
point refPoint_
 Reference point for "distance" write specifier.

Constructor & Destructor Documentation

sampledSet ( const word name,
const polyMesh mesh,
meshSearch searchEngine,
const word axis 
)

Construct from components.

Definition at line 367 of file sampledSet.C.

sampledSet ( const word name,
const polyMesh mesh,
meshSearch searchEngine,
const dictionary dict 
)

Construct from dictionary.

Definition at line 385 of file sampledSet.C.

~sampledSet ( )
virtual

Definition at line 404 of file sampledSet.C.


Member Function Documentation

Foam::label getBoundaryCell ( const label  faceI) const
protected

Returns cell next to boundary face.

Definition at line 45 of file sampledSet.C.

References polyMesh::faceOwner(), and sampledSet::mesh().

Foam::label getCell ( const label  faceI,
const point sample 
) const
protected

Returns cell using face and containing sample.

Definition at line 52 of file sampledSet.C.

References Foam::abort(), polyMesh::faceNeighbour(), polyMesh::faceOwner(), Foam::FatalError, FatalErrorIn, and mesh.

Foam::scalar calcSign ( const label  faceI,
const point sample 
) const
protected

Calculates inproduct of face normal and vector sample-face centre.

<0 if sample inside.

Definition at line 116 of file sampledSet.C.

References primitiveMesh::faceAreas(), primitiveMesh::faceCentres(), Foam::mag(), and mesh.

Foam::label findNearFace ( const label  cellI,
const point sample,
const scalar  smallDist 
) const
protected

Returns face label (or -1) of face which is close to sample.

Definition at line 143 of file sampledSet.C.

References primitiveMesh::cells(), dist, f(), polyMesh::faces(), forAll, PointHit< Point >::hit(), PointHit< Point >::hitPoint(), Foam::mag(), mesh, PointHit< Point >::missPoint(), face::nearestPoint(), and points.

Foam::point pushIn ( const point sample,
const label  faceI 
) const
protected

Moves sample in direction of -n to it is 'inside' of faceI.

Definition at line 180 of file sampledSet.C.

References Foam::abort(), primitiveMesh::cellCentres(), Foam::endl(), polyMesh::faceOwner(), Foam::FatalError, FatalErrorIn, and mesh.

bool getTrackingPoint ( const vector offset,
const point samplePt,
const point bPoint,
const label  bFaceI,
point trackPt,
label &  trackCellI,
label &  trackFaceI 
) const
protected

Calculates start of tracking given samplePt and first boundary.

intersection (bPoint, bFaceI) (bFaceI == -1 if no boundary intersection) Returns true if trackPt is valid sampling point. Sets trackPt, trackFaceI, trackCellI (-1 if no tracking point found)

Definition at line 213 of file sampledSet.C.

References Foam::endl(), primitiveMesh::findCell(), Foam::Info, Foam::mag(), mesh, and Foam::sign().

void setSamples ( const List< point > &  samplingPts,
const labelList samplingCells,
const labelList samplingFaces,
const labelList samplingSegments,
const scalarList samplingCurveDist 
)
protected

Sets sample data.

Definition at line 321 of file sampledSet.C.

References Foam::abort(), Foam::FatalError, FatalErrorIn, forAll, setSize(), and List< T >::size().

TypeName ( "sampledSet"  )

Runtime type information.

declareRunTimeSelectionTable ( autoPtr  ,
sampledSet  ,
word  ,
(const word &name, const polyMesh &mesh, meshSearch &searchEngine, const dictionary &dict)  ,
(name, mesh, searchEngine, dict)   
)
autoPtr<sampledSet> clone ( ) const
inline

Clone.

Reimplemented from Field< vector >.

Definition at line 228 of file sampledSet.H.

References notImplemented.

Foam::autoPtr< Foam::sampledSet > New ( const word name,
const polyMesh mesh,
meshSearch searchEngine,
const dictionary dict 
)
static

Return a reference to the selected sampledSet.

Definition at line 411 of file sampledSet.C.

References Foam::exit(), Foam::FatalError, FatalErrorIn, dictionary::lookup(), mesh, Foam::name(), and Foam::nl.

Referenced by sampledSet::iNew::operator()().

const polyMesh& mesh ( ) const
inline

Definition at line 254 of file sampledSet.H.

Referenced by sampledSet::getBoundaryCell().

meshSearch& searchEngine ( ) const
inline

Definition at line 259 of file sampledSet.H.

const labelList& segments ( ) const
inline

Definition at line 264 of file sampledSet.H.

References sampledSet::segments_.

const scalarList& curveDist ( ) const
inline

Definition at line 269 of file sampledSet.H.

References sampledSet::curveDist_.

const labelList& cells ( ) const
inline

Definition at line 274 of file sampledSet.H.

References sampledSet::cells_.

const labelList& faces ( ) const
inline

Definition at line 279 of file sampledSet.H.

References sampledSet::faces_.

virtual point getRefPoint ( const List< point > &  ) const
pure virtual

Given all sampling points (on all processors) return reference point.

Implemented in uniformSet, faceOnlySet, curveSet, patchCloudSet, and cloudSet.

Foam::Ostream & write ( Ostream os) const

Output for debugging.

Reimplemented from coordSet.

Definition at line 449 of file sampledSet.C.

References Foam::endl(), forAll, and coordSet::write().


Member Data Documentation

labelList segments_
protected

Segment numbers.

Definition at line 81 of file sampledSet.H.

Referenced by sampledSet::segments().

scalarList curveDist_
protected

Parameter along sample curve. Uniquely identifies position.

along sampling. Used for combining parallel results.

Definition at line 85 of file sampledSet.H.

Referenced by sampledSet::curveDist().

labelList cells_
protected

Cell numbers.

Definition at line 88 of file sampledSet.H.

Referenced by sampledSet::cells().

labelList faces_
protected

Face numbers (-1 if not known)

Definition at line 91 of file sampledSet.H.

Referenced by sampledSet::faces().

const scalar tol = 1e-6
static

Tolerance when comparing points. Usually relative to difference.

between start_ and end_

Definition at line 204 of file sampledSet.H.


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