Public Member Functions | List of all members
radialActuationDiskSource Class Reference

Applies sources on velocity field (i.e. U) within a specified region to enable actuator disk models with radial thrust distribution for aero/hydro thrust loading of horizontal axis turbines on surrounding flow field in terms of energy conversion processes. More...

Inheritance diagram for radialActuationDiskSource:
Inheritance graph
[legend]
Collaboration diagram for radialActuationDiskSource:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("radialActuationDiskSource")
 
 radialActuationDiskSource (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 
 radialActuationDiskSource (const radialActuationDiskSource &)=delete
 
void operator= (const radialActuationDiskSource &)=delete
 
virtual ~radialActuationDiskSource ()=default
 
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)
 
- Public Member Functions inherited from actuationDiskSource
 TypeName ("actuationDiskSource")
 
 actuationDiskSource ()=delete
 
 actuationDiskSource (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 
 actuationDiskSource (const actuationDiskSource &)=delete
 
void operator= (const actuationDiskSource &)=delete
 
virtual ~actuationDiskSource ()=default
 
const vectordiskDir () const
 
scalar diskArea () const
 
virtual void addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi)
 
- Public Member Functions inherited from cellSetOption
 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 wordcellSetName () const noexcept
 
scalar V () const noexcept
 
const labelListcells () const noexcept
 
scalar timeStart (scalar val) noexcept
 
scalar duration (scalar val) noexcept
 
virtual bool isActive ()
 
- Public Member Functions inherited from option
 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< optionclone () const
 
virtual ~option ()=default
 
const wordname () const noexcept
 
const fvMeshmesh () const noexcept
 
const dictionarycoeffs () 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< 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
 
- Public Member Functions inherited from writeFile
 writeFile (const objectRegistry &obr, const fileName &prefix, const word &name="undefined", const bool writeToFile=true)
 
 writeFile (const objectRegistry &obr, const fileName &prefix, const word &name, const dictionary &dict, const bool writeToFile=true)
 
 writeFile (const writeFile &wf)
 
virtual ~writeFile ()=default
 
virtual OFstreamfile ()
 
virtual bool writeToFile () const
 
virtual bool canWriteHeader () const
 
virtual label charWidth () const
 
virtual void writeCommented (Ostream &os, const string &str) const
 
virtual void writeTabbed (Ostream &os, const string &str) const
 
virtual void writeHeader (Ostream &os, const string &str) const
 
virtual void writeCurrentTime (Ostream &os) const
 
virtual void writeBreak (Ostream &os) const
 
template<class Type >
void writeHeaderValue (Ostream &os, const string &property, const Type &value) const
 

Additional Inherited Members

- Public Types inherited from cellSetOption
enum  selectionModeType { smAll, smCellSet, smCellZone, smPoints }
 
- Static Public Member Functions inherited from option
static autoPtr< optionNew (const word &name, const dictionary &dict, const fvMesh &mesh)
 
- Public Attributes inherited from option
bool log
 
- Static Public Attributes inherited from cellSetOption
static const Enum< selectionModeTypeselectionModeTypeNames_
 
- Static Public Attributes inherited from writeFile
static label addChars = 8
 
- Protected Types inherited from actuationDiskSource
enum  forceMethodType { FROUDE, VARIABLE_SCALING }
 
enum  monitorMethodType { POINTS, CELLSET }
 
- Protected Member Functions inherited from actuationDiskSource
virtual void writeFileHeader (Ostream &os)
 
- Protected Member Functions inherited from cellSetOption
void setSelection (const dictionary &dict)
 
void setCellSelection ()
 
void setVol ()
 
- Protected Member Functions inherited from option
void resetApplied ()
 
- Protected Member Functions inherited from writeFile
void initStream (Ostream &os) const
 
fileName baseFileDir () const
 
fileName baseTimeDir () const
 
virtual autoPtr< OFstreamcreateFile (const word &name, scalar timeValue) const
 
virtual autoPtr< OFstreamcreateFile (const word &name) const
 
virtual void resetFile (const word &name)
 
Omanip< int > valueWidth (const label offset=0) const
 
void operator= (const writeFile &)=delete
 
- Protected Attributes inherited from actuationDiskSource
enum forceMethodType forceMethod_
 
enum monitorMethodType monitorMethod_
 
label sink_
 
scalar writeFileStart_
 
scalar writeFileEnd_
 
scalar diskArea_
 
vector diskDir_
 
autoPtr< Function1< scalar > > UvsCpPtr_
 
autoPtr< Function1< scalar > > UvsCtPtr_
 
labelList monitorCells_
 
- Protected Attributes inherited from cellSetOption
scalar timeStart_
 
scalar duration_
 
selectionModeType selectionMode_
 
word cellSetName_
 
List< pointpoints_
 
labelList cells_
 
scalar V_
 
- Protected Attributes inherited from option
const word name_
 
const word modelType_
 
const fvMeshmesh_
 
dictionary dict_
 
dictionary coeffs_
 
wordList fieldNames_
 
List< boolapplied_
 
bool active_
 
- Protected Attributes inherited from writeFile
const objectRegistryfileObr_
 
const fileName prefix_
 
word fileName_
 
autoPtr< OFstreamfilePtr_
 
label writePrecision_
 
bool writeToFile_
 
bool updateHeader_
 
bool writtenHeader_
 
bool useUserTime_
 
scalar startTime_
 
- Static Protected Attributes inherited from actuationDiskSource
static const Enum< forceMethodTypeforceMethodTypeNames
 
static const Enum< monitorMethodTypemonitorMethodTypeNames
 

Detailed Description

Applies sources on velocity field (i.e. U) within a specified region to enable actuator disk models with radial thrust distribution for aero/hydro thrust loading of horizontal axis turbines on surrounding flow field in terms of energy conversion processes.

Sources applied to:

  U         | Velocity    [m/s]

Required fields:

  U         | Velocity    [m/s]

Thrust, which is computed by actuationDiskSource.H is distributed as a function of actuator disk radius through a given forth order polynomial function:

\[ T(r) = T (C_0 + C_1 r^2 + C_2 r^4) \]

where

$ T $ = Thrust magnitude computed by actuationDiskSource setup
$ T(r) $ = Thrust magnitude as a function of "r"
$ r $ = Local actuator disk radius
$ C_* $ = Polynomial coefficients
Usage
Minimal example by using constant/fvOptions:
radialActuationDiskSource1
{
    // Mandatory entries (unmodifiable)
    type            radialActuationDiskSource;

    // Mandatory entries (runtime modifiable)
    coeffs          (0.1 0.5 0.01);

    // Mandatory/Optional (inherited) entries
    ...
}

where the entries mean:

Property Description Type Reqd Dflt
type Type name: radialActuationDiskSource word yes -
coeffs Radial distribution function coefficients vector yes -

The inherited entries are elaborated in:

Note
Source files

Definition at line 150 of file radialActuationDiskSource.H.

Constructor & Destructor Documentation

◆ radialActuationDiskSource() [1/2]

radialActuationDiskSource ( const word name,
const word modelType,
const dictionary dict,
const fvMesh mesh 
)

Definition at line 40 of file radialActuationDiskSource.C.

References Foam::endl(), and Foam::Info.

Here is the call graph for this function:

◆ radialActuationDiskSource() [2/2]

◆ ~radialActuationDiskSource()

virtual ~radialActuationDiskSource ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "radialActuationDiskSource"  )

◆ operator=()

void operator= ( const radialActuationDiskSource )
delete

◆ addSup() [1/2]

void addSup ( fvMatrix< vector > &  eqn,
const label  fieldi 
)
virtual

Reimplemented from actuationDiskSource.

Definition at line 57 of file radialActuationDiskSource.C.

References fvMatrix::psi(), fvMatrix::source(), and U.

Here is the call graph for this function:

◆ addSup() [2/2]

void addSup ( const volScalarField rho,
fvMatrix< vector > &  eqn,
const label  fieldi 
)
virtual

Reimplemented from actuationDiskSource.

Definition at line 81 of file radialActuationDiskSource.C.

References fvMatrix::psi(), rho, fvMatrix::source(), and U.

Here is the call graph for this function:

◆ read()

bool read ( const dictionary dict)
virtual

Reimplemented from actuationDiskSource.

Definition at line 105 of file radialActuationDiskSource.C.

References option::coeffs_, dict, actuationDiskSource::read(), and dictionary::readEntry().

Here is the call graph for this function:

The documentation for this class was generated from the following files: