Go to the documentation of this file.
29 #ifndef vtkPV4FoamVolFields_H
30 #define vtkPV4FoamVolFields_H
51 const bool interpFields,
52 vtkMultiBlockDataSet* output
64 Info<<
"convertVolFieldBlock interpolating:" <<
tf.name()
111 int partId = arrayRangePatches_.start();
112 partId < arrayRangePatches_.end();
116 const word patchName = getPartName(partId);
117 const label datasetNo = partDataset_[partId];
120 if (!partStatus_[partId] || datasetNo < 0 ||
patchId < 0)
132 reader_->GetExtrapolatePatches()
155 convertPatchPointField
158 ppInterpList[
patchId].faceToPointInterpolate(tpptf)(),
178 convertPatchPointField
181 ppInterpList[
patchId].faceToPointInterpolate(ptf)(),
195 int partId = arrayRangeFaceZones_.start();
196 partId < arrayRangeFaceZones_.end();
200 const word zoneName = getPartName(partId);
201 const label datasetNo = partDataset_[partId];
203 if (!partStatus_[partId] || datasetNo < 0)
220 arrayRangeFaceZones_,
234 int partId = arrayRangeFaceSets_.start();
235 partId < arrayRangeFaceSets_.end();
239 const word selectName = getPartName(partId);
240 const label datasetNo = partDataset_[partId];
242 if (!partStatus_[partId] || datasetNo < 0)
270 const bool interpFields,
271 vtkMultiBlockDataSet* output
279 iter()->headerClassName()
294 convertVolField(ppInterpList,
tf, interpFields, output);
305 const bool interpFields,
306 vtkMultiBlockDataSet* output
314 iter()->headerClassName()
328 io.
readOpt() = IOobject::NO_READ;
331 forAll(patchFields, patchI)
339 mesh.boundary()[patchI],
355 convertVolField(ppInterpList, volFld, interpFields, output);
365 vtkMultiBlockDataSet* output,
370 for (
int partId =
range.start(); partId <
range.end(); ++partId)
372 const label datasetNo = partDataset_[partId];
374 if (datasetNo >= 0 && partStatus_[partId])
406 vtkMultiBlockDataSet* output,
408 const label datasetNo,
416 celldata->SetNumberOfTuples(superCells.
size());
417 celldata->SetNumberOfComponents(nComp);
418 celldata->Allocate(nComp*superCells.
size());
419 celldata->SetName(
tf.name().c_str());
423 Info<<
"convert volField: "
425 <<
" size = " <<
tf.size()
426 <<
" nComp=" << nComp
427 <<
" nTuples = " << superCells.
size() <<
endl;
433 const Type& t =
tf[superCells[i]];
438 vtkOpenFOAMTupleRemap<Type>(vec);
440 celldata->InsertTuple(i, vec);
443 vtkUnstructuredGrid::SafeDownCast
447 ->AddArray(celldata);
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
Bookkeeping for GUI checklists and the multi-block organization.
void component(FieldField< Field, typename FieldField< Field, Type >::cmptType > &sf, const FieldField< Field, Type > &f, const direction d)
Bookkeeping for polyhedral cell decomposition.
A class for handling words, derived from string.
autoPtr< BasicCompressibleTurbulenceModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const typename BasicCompressibleTurbulenceModel::transportModel &transport, const word &propertiesName)
List< Key > toc() const
Return the table of contents.
#define forAll(list, i)
Loop across all elements in list.
A class for managing temporary objects.
void convertVolFieldBlock(const GeometricField< Type, fvPatchField, volMesh > &, autoPtr< GeometricField< Type, pointPatchField, pointMesh > > &, vtkMultiBlockDataSet *output, const arrayRange &, const List< polyDecomp > &decompLst)
Volume field - all selected parts.
tmp< surfaceScalarField > interpolate(const RhoType &rho)
Ostream & endl(Ostream &os)
Add newline and flush stream.
This boundary condition applies a zero-gradient condition from the patch internal field onto the patc...
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
bool set(const label) const
Is element set.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const Mesh & mesh() const
Return mesh.
readOption readOpt() const
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
void convertVolField(const PtrList< PrimitivePatchInterpolation< primitivePatch > > &, const GeometricField< Type, fvPatchField, volMesh > &, const bool interpFields, vtkMultiBlockDataSet *output)
Volume field - all types.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
This boundary condition provides an 'empty' condition for reduced dimensions cases,...
Mesh data needed to do the Finite Volume discretisation.
label findZoneID(const word &zoneName) const
Find zone index given a name.
const dimensionSet & dimensions() const
Return dimensions.
List of IOobjects with searching and retrieving facilities.
void convertDimFields(const fvMesh &, const PtrList< PrimitivePatchInterpolation< primitivePatch > > &, const IOobjectList &, const bool interpFields, vtkMultiBlockDataSet *output)
Volume internal fields (DimensionedField)- all types.
labelList & superCells()
Label of original cell for decomposed cells.
void correctBoundaryConditions()
Correct boundary field.
bool isType(const Type &t)
Check the typeid.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Interpolation class within a primitive patch. Allows interpolation from points to faces and vice vers...
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
Traits class for primitives.
const polyPatch & patch() const
Return the polyPatch.
vtkDataSet * GetDataSetFromBlock(vtkMultiBlockDataSet *output, const partInfo &selector, const label datasetNo)
Convenience method use to convert the readers from VTK 5.
void reset(T *=0)
If object pointer already set, delete object and set to given.
const fvPatch & patch() const
Return patch.
void size(const label)
Override size to be inconsistent with allocated storage.
Generic GeometricField class.
void convertVolFields(vtkMultiBlockDataSet *)
Convert volume fields.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...