|
| TypeName ("rotorDisk") |
|
| rotorDiskSource (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) |
|
| rotorDiskSource (const rotorDiskSource &)=delete |
|
void | operator= (const rotorDiskSource &)=delete |
|
virtual | ~rotorDiskSource ()=default |
|
scalar | rhoRef () const |
|
scalar | omega () const |
|
const List< point > & | x () const |
|
const coordSystem::cylindrical & | coordSys () const |
|
template<class RhoFieldType > |
void | calculate (const RhoFieldType &rho, const vectorField &U, const scalarField &thetag, vectorField &force, const bool divideVolume=true, const bool output=true) const |
|
virtual void | addSup (fvMatrix< vector > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi) |
|
virtual bool | read (const dictionary &dict) |
|
| TypeName ("cellSetOption") |
|
| cellSetOption (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) |
|
virtual | ~cellSetOption ()=default |
|
scalar | timeStart () const noexcept |
|
scalar | duration () const noexcept |
|
bool | inTimeLimits (const scalar timeValue) const |
|
selectionModeType | selectionMode () const noexcept |
|
bool | useSubMesh () const noexcept |
|
const word & | cellSetName () const noexcept |
|
scalar | V () const noexcept |
|
const labelList & | cells () const noexcept |
|
scalar | timeStart (scalar val) noexcept |
|
scalar | duration (scalar val) noexcept |
|
virtual bool | isActive () |
|
| TypeName ("option") |
|
| declareRunTimeSelectionTable (autoPtr, option, dictionary,(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh),(name, modelType, dict, mesh)) |
|
| option (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) |
|
autoPtr< option > | clone () const |
|
virtual | ~option ()=default |
|
const word & | name () const noexcept |
|
const fvMesh & | mesh () const noexcept |
|
const dictionary & | coeffs () const noexcept |
|
bool | active () const noexcept |
|
void | setApplied (const label fieldi) |
|
bool | active (const bool on) noexcept |
|
virtual label | applyToField (const word &fieldName) const |
|
virtual void | checkApplied () const |
|
virtual void | addSup (fvMatrix< scalar > &eqn, const label fieldi) |
|
virtual void | addSup (fvMatrix< symmTensor > &eqn, const label fieldi) |
|
virtual void | addSup (fvMatrix< sphericalTensor > &eqn, const label fieldi) |
|
virtual void | addSup (fvMatrix< tensor > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi) |
|
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi) |
|
virtual void | constrain (fvMatrix< scalar > &eqn, const label fieldi) |
|
virtual void | constrain (fvMatrix< vector > &eqn, const label fieldi) |
|
virtual void | constrain (fvMatrix< sphericalTensor > &eqn, const label fieldi) |
|
virtual void | constrain (fvMatrix< symmTensor > &eqn, const label fieldi) |
|
virtual void | constrain (fvMatrix< tensor > &eqn, const label fieldi) |
|
virtual void | correct (volScalarField &field) |
|
virtual void | correct (volVectorField &field) |
|
virtual void | correct (volSphericalTensorField &field) |
|
virtual void | correct (volSymmTensorField &field) |
|
virtual void | correct (volTensorField &field) |
|
virtual void | postProcessSens (scalarField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null) |
|
virtual void | postProcessSens (vectorField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null) |
|
virtual void | postProcessSens (tensorField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null) |
|
virtual void | writeHeader (Ostream &) const |
|
virtual void | writeFooter (Ostream &) const |
|
virtual void | writeData (Ostream &) const |
|
Applies cell-based momentum sources on velocity (i.e. U
) within a specified cylindrical region to approximate the mean effects of rotor forces.
Sources applied to:
U | Velocity [m/s]
Required fields:
U | Velocity [m/s]
- Usage
- Minimal example by using
constant/fvOptions
: rotorDiskSource1 { Mandatory entries (unmodifiable) type rotorDiskSource;
Mandatory entries (runtime modifiable) fields (<field1> <field2> ... <fieldN>); rhoRef 1.0; rpm 5.5; nBlades 3; inletFlowType local; geometryMode auto; tipEffect 0.96; // [0, 1] refDirection (-1 0 0 ); flapCoeffs { beta0 0.0; beta1c 0.0; beta2s 0.0; }
trimModel fixed;
blade { see bladeModel.H for documentation }
profiles { profile1 { type lookup; // lookup || series ... see lookupProfile.H or seriesProfile.H for documentation } profile2 { ... } }
Conditional mandatory entries (runtime modifiable)
when inletFlowType=fixed inletVelocity (1 0 0);
when inletFlowType=surfaceNormal inletNormalVelocity 5.0;
when geometryMode=auto pointAbove (1 0 0);
when geometryMode=specified origin (0 0 0); axis (1 0 0);
Mandatory/Optional (inherited) entries ... }
where the entries mean:
Property | Description | Type | Reqd | Dflt |
type | Type name: rotorDiskSource | word | yes | - |
fields | Names of operand fields | wordList | yes | - |
rhoRef | Reference density for incompressible case | scalar | yes | - |
rpm | Rotational speed [rad/s] | scalar | yes | - |
nBlades | Number of rotor blades | label | yes | - |
tipEffect | Ratio of blade radius beyond which lift=0 | scalar | yes | - |
refDirection | Reference direction used as reference for psi angle | vector | yes | - |
beta0 | Coning angle [deg] | scalar | yes | - |
beta1c | Lateral flapping coeff (cos coeff) [deg] | scalar | yes | - |
beta2s | Longitudinal flapping coeff (sin coeff) [deg] | scalar | yes | - |
inletFlowType | Inlet flow type specification | word | yes | - |
inletVelocity | Inlet velocity [m/s] | vector | cndtnl | - |
inletNormalVelocity | Inlet normal velocity magnitude | scalar | cndtnl | - |
geometryMode | Geometry mode specification | word | yes | - |
pointAbove | Correct the axis direction using a point above the rotor | vector | cndtnl | - |
origin | Origin of the specified coordinate system | vector | cndtnl | - |
axis | Axis of the specified coordinate system | vector | cndtnl | - |
trimModel | Trim model specification | word | yes | - |
blade | Blade properties | dictionary | yes | - |
The inherited entries are elaborated in:
Options for the inletFlowType
entry:
fixed | Use a specified velocity
local | Use local flow conditions
surfaceNormal | Use a specified normal velocity (positive towards rotor)
Options for the geometryMode
entry:
auto | Determine rotor coordinate system from selected cells
specified | Use a specified coordinate system
Options for the trimModel
entry:
fixed | Fixed blade/angle characteristics
targetForce | Target thrust/torque by using time-variant blade characs.
- Note
- The entry
rpm
is positive anti-clockwise when looking along -ve lift direction.
- See also
-
- Source files
-
Definition at line 326 of file rotorDiskSource.H.