51 label nLines = controllers_.size();
58 for (
const word& ctrlName : controllers_.sortedToc())
60 lines[nLines] = controllers_[ctrlName]->pointLabels();
77 writeStateVTP(state(), file);
122 const uint64_t payLoad = vtk::sizeofData<float, 3>(
nPoints);
128 format().writeSize(payLoad);
144 const uint64_t payLoad = vtk::sizeofData<label>(
nPoints);
147 format().writeSize(payLoad);
161 const uint64_t payLoad = vtk::sizeofData<label>(
nPoints);
164 format().writeSize(payLoad);
177 format().beginPointData();
182 const uint64_t payLoad = vtk::sizeofData<float, 3>(
nPoints);
184 format().beginDataArray<float, 3>(
"forces");
185 format().writeSize(payLoad);
196 const uint64_t payLoad = vtk::sizeofData<float, 3>(
nPoints);
198 format().beginDataArray<float, 3>(
"moments");
199 format().writeSize(payLoad);
260 const fileName& file,
261 const polyMesh&
mesh,
294 const pointPatch& ptPatch = ptMesh.boundary()[patchi];
315 = patchControls_[patchi].interp_;
325 intData[i] = interpList[i].nearest();
331 intData[i] = interpList[i].next1();
338 intData[i] = interpList[i].next2();
349 floatData[i] = interpList[i].weight0();
355 floatData[i] = interpList[i].weight1();
361 floatData[i] = interpList[i].weight2();
List< scalar > scalarList
List of scalar.
const List< face_type > & localFaces() const
Return patch faces addressing into local point list.
void size(const label n)
Older name for setAddressableSize.
A class for handling file names.
const Field< point_type > & localPoints() const
Return pointField of points in patch.
vtk::lineWriter writer(edgeCentres, edgeList::null(), fileName(aMesh.time().globalPath()/"finiteArea-edgesCentres"))
void resize(const label len)
Adjust allocated size of list.
void writeStateVTP(const lumpedPointState &state, const fileName &file) const
Write state as VTK PolyData format.
void piece(const pointField &points, const edgeList &edges)
Reset point/edge references to begin a new piece.
autoPtr< vtk::formatter > newFormatter(std::ostream &os, unsigned prec=IOstream::defaultPrecision())
Return a default asciiFormatter.
Write faces/points (optionally with fields) as a vtp file or a legacy vtk file.
T & first()
Access first element of the list, position [0].
void writeZonesVTP(const fileName &file, const polyMesh &mesh, const pointField &points0) const
Write pressure-zones geometry, write as VTK PolyData format.
labelRange range() const noexcept
The face range for all boundary faces.
virtual std::ostream & stdStream()
Access to underlying std::ostream.
static const List< face > & null()
Return a null List.
void write(const word &fieldName, const UList< Type > &field)
Write primitive field of CellData (Poly or Line) or PointData values.
void writeUniform(const word &fieldName, const Type &val)
Write a uniform field of Cell (Line) or Point values.
XML inline ASCII, asciiFormatter.
Mesh representing a set of points created from polyMesh.
#define forAll(list, i)
Loop across all elements in list.
A list of faces which address into the list of points.
A List obtained as a section of another List.
virtual bool beginPointData(label nFields=0)
Begin PointData for specified number of fields.
vectorField pointField
pointField is a vectorField.
labelList identity(const label len, label start=0)
Return an identity map of the given length with (map[i] == i)
const polyBoundaryMesh & boundaryMesh() const noexcept
Return boundary mesh.
A class for handling words, derived from Foam::string.
void writeIdentity(vtk::formatter &fmt, const label len, label start=0)
Write an identity list of labels.
bool endCellData()
Explicitly end CellData output and switch to PIECE state.
bool endPointData()
Explicitly end PointData output and switch to PIECE state.
void writeVTP(const fileName &file, const polyMesh &mesh, const pointField &points0) const
Write displaced geometry according to the current state,.
virtual const faceList & faces() const
Return raw faces.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO...
virtual bool beginCellData(label nFields=0)
Begin CellData output section for specified number of fields.
void writeList(vtk::formatter &fmt, const UList< uint8_t > &values)
Write a list of uint8_t values.
OBJstream os(runTime.globalPath()/outputName)
void writeForcesAndMomentsVTP(const fileName &file, const UList< vector > &forces, const UList< vector > &moments) const
Write forces on points as VTK PolyData format.
word format(conversionProperties.get< word >("format"))
pointField points0(pointIOField(IOobject("points", mesh.time().constant(), polyMesh::meshSubDir, mesh, IOobject::MUST_READ, IOobject::NO_WRITE, IOobject::NO_REGISTER)))
const lumpedPointState & state() const
The current state (positions/rotations)
Basic pointPatch represents a set of points from the mesh.
static const Field< vector > & null()
Return nullObject reference Field.
static bool master(const label communicator=worldComm)
True if process corresponds to the master rank in the communicator.
const polyBoundaryMesh & patches
const pointField & points() const
The points corresponding to mass centres.
virtual bool writeGeometry()
Write patch topology.
label size() const
The number of points.
Mesh consisting of general polyhedral cells.
A class for managing temporary objects.
A patch is a list of labels that address the faces in the global face list.
void writeVTP(const fileName &outputFile, const labelListList &lines=labelListList(), const labelList &pointIds=labelList::null()) const
Output points/rotations as VTK file for debugging/visualization.
The state of lumped points corresponds to positions and rotations.
uindirectPrimitivePatch pp(UIndirectList< face >(mesh.faces(), faceLabels), mesh.points())
A topoSetPointSource to select all points based on usage in given faceSet(s).