Added new propellerInfo function object
Calculates propeller performance and wake field properties.
Controlled by executeControl:
- Propeller performance
- Thrust coefficient, Kt
- Torque coefficient, 10*Kq
- Advance coefficient, J
- Open water efficiency, etaO
- Written to postProcessing//
Controlled by writeControl:
- Wake field text file
- Wake: 1 - UzMean/URef
- Velocity in cylindrical coordinates at xyz locations
- Written to postProcessing//
- Axial wake field text file
- 1 - Uz/URef at r/R and angle
- Written to postProcessing//
- Velocity surface
- Written to postProcessing//surfaces/time>/disk.
Example wake field - Courtesy of Yannick Eberhard, Promarin GmbH
Usage
Example of function object specification:
propellerInfo1
{
type propellerInfo;
libs (forces);
writeControl writeTime;
patches ("propeller.*");
URef 5; // Function1 type; 'constant' form shown here
rho rhoInf; // incompressible
rhoInf 1.2;
// Optionally write propeller performance data
writePropellerPerformance yes;
// Propeller data:
// Radius
radius 0.1;
rotationMode specified; // specified | MRF
// rotationMode = specified:
origin (0 -0.1 0);
n 25.15;
axis (0 1 0);
// Optional reference direction for angle (alpha) = 0
alphaAxis (1 0 0);
//// rotationMode = mrf
//// MRF MRFZoneName;
//// (origin, n and axis retrieved from MRF model)
// Optionally write wake text files
// Note: controlled by writeControl
writeWakeFields yes;
// Sample plane (disk) properties
// Note: controlled by writeControl
sampleDisk
{
surfaceWriter vtk;
r1 0.05;
r2 0.2;
nTheta 36;
nRadial 10;
interpolationScheme cellPoint;
errorOnPointNotFound false;
}
}
Where the entries comprise:
Property | Description | Required | Deflt value |
---|---|---|---|
type | Type name: propellerInfo | yes | |
log | Write to standard output | no | no |
patches | Patches included in the forces calculation | yes | |
p | Pressure field name | no | p |
U | Velocity field name | no | U |
rho | Density field name | no | rho |
URef | Reference velocity | yes | |
rotationMode | Rotation mode (see below) | yes | |
origin | Sample disk centre | no* | |
n | Revolutions per second | no* | |
axis | Propeller axis | no* | |
alphaAxis | Axis that defines alpha=0 dir | no | |
MRF | Name of MRF zone | no* | |
originOffset | Origin offset for MRF mode | no | (0 0 0) |
writePropellerPerformance | Write propeller performance text file | yes | |
writeWakeFields | Write wake field text files | yes | |
surfaceWriter | Sample disk surface writer | no* | |
r1 | Sample disk inner radius | no | 0 |
r2 | Sample disk outer radius | no* | |
nTheta | Divisions in theta direction | no* | |
nRadial | Divisions in radial direction | no* | |
interpolationScheme | Sampling interpolation scheme | no* | cell |
Note
-
URef
is a scalarFunction1
type, i.e. supportsconstant
,table
, lookup values -
rotationMode
is used to set the origin, axis and revolutions per second- if set to
specified
all 3 entries are required- note:
origin
is the sample disk origin
- note:
- if set to
MRF
only the MRF entry is required- to move the sample disk away from the MRF origin, use the
originOffset
- to move the sample disk away from the MRF origin, use the
- if set to
- if
writePropellerPerformance
is set to on|true:-
propellerPerformance
text file will be written
-
- if
writeWakeFields
is set to on|true:- wake and
axialWake
text files will be written
- wake and
- if the
surfaceWriter
entry is set, the sample disk surface will be written- extents set according to the
r1
andr2
entries - discretised according to the
nTheta
andnRadial
entries
- extents set according to the
Note: sign-off in EP 1719
Edited by Andrew Heather