Go to the documentation of this file.
164 #ifndef functionObjects_propellerInfo_H
165 #define functionObjects_propellerInfo_H
181 namespace functionObjects
212 autoPtr<Function1<scalar>>
URefPtr_;
344 const Type& defaultValue
394 virtual bool write();
scalar radius_
Propeller radius.
List< label > labelList
A List of labels.
void movePoints(const polyMesh &mesh)
Update for changes of mesh.
vectorField pointField
pointField is a vectorField.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A class for handling words, derived from Foam::string.
autoPtr< OFstream > propellerPerformanceFilePtr_
Propeller performance file.
Base class for surface writers.
autoPtr< OFstream > axialWakeFilePtr_
Axial wake field file.
Calculates the forces and moments by integrating the pressure and skin-friction forces over a given l...
A class for managing temporary objects.
autoPtr< OFstream > wakeFilePtr_
Wake field file.
void createFiles()
Create output files.
void writePropellerPerformance()
Write the wake fields.
virtual bool execute()
Execute, currently does nothing.
word MRFName_
Name of MRF zone (if applicable)
List< bool > boolList
A List of bools.
TypeName("propellerInfo")
Runtime type information.
virtual ~propellerInfo()=default
Destructor.
label nRadial_
Number of surface divisions in radial direction.
labelList cellIds_
Surface point sample cell IDs.
void writeAxialWake(const vectorField &U, const scalar URef)
Write the axial wake text file.
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
Mesh consisting of general polyhedral cells.
propellerInfo(const propellerInfo &)=delete
No copy construct.
scalar meanSampleDiskField(const scalarField &field) const
Return the area average of a field.
Registry of regIOobjects.
void writeWakeFields(const scalar URef)
Write the wake fields.
bool writeWakeFields_
Flag to write wake fields.
virtual bool write()
Write the forces.
const volVectorField & U() const
Return the velocity field.
void updateSampleDiskCells()
Set the sample cells corresponding to the sample points.
Calculates propeller performance and wake field properties.
void operator=(const propellerInfo &)=delete
No copy assignment.
static const Enum< rotationMode > rotationModeNames_
autoPtr< surfaceWriter > surfaceWriterPtr_
Surface writer.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
word interpolationScheme_
Interpolation scheme.
scalar n_
Propeller speed (revolutions per second)
void writeSampleDiskSurface(const vectorField &U, const vectorField &Ur, const scalar URef)
Write the sample surface.
void setCoordinateSystem(const dictionary &dict)
Set the coordinate system.
GeometricField< vector, fvPatchField, volMesh > volVectorField
bool writePropellerPerformance_
Flag to write performance data.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const word & name() const noexcept
Return the name of this functionObject.
rotationMode rotationMode_
Rotation mode.
List< face > faceList
A List of faces.
pointField points_
Surface points.
void writeWake(const vectorField &U, const scalar URef)
Write the wake text file.
virtual const objectRegistry & obr() const
The region or sub-region registry being used.
void setSampleDiskSurface(const dictionary &dict)
Set the sample surface based on dictionary settings.
Reads fields from the time directories and adds them to the mesh database for further post-processing...
void setSampleDiskGeometry(const coordinateSystem &coordSys, const scalar r1, const scalar r2, const scalar nTheta, const label nRadius, faceList &faces, pointField &points) const
Set the faces and points for the sample surface.
void UpdateMesh(const mapPolyMesh &mpm)
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
bool errorOnPointNotFound_
faceList faces_
Surface faces.
virtual bool read(const dictionary &)
Read the forces data.
label nTheta_
Number of surface divisions in theta direction.
autoPtr< Function1< scalar > > URefPtr_
Reference velocity.
tmp< Field< Type > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &psi, const Type &defaultValue) const
Interpolate from the mesh onto the sample surface.
boolList pointMask_
List of participating points (parallel reduced)
const volScalarField & psi
void setRotationalSpeed()
Set the rotational speed.
Base class for coordinate system specification, the default coordinate system type is cartesian .