Perform noise analysis on surface-based pressure data. More...
Public Member Functions | |
TypeName ("surfaceNoise") | |
surfaceNoise (const dictionary &dict, const bool readFields=true) | |
virtual | ~surfaceNoise ()=default |
virtual bool | read (const dictionary &dict) |
virtual void | calculate () |
![]() | |
TypeName ("noiseModel") | |
declareRunTimeSelectionTable (autoPtr, noiseModel, dictionary,(const dictionary &dict),(dict)) | |
noiseModel (const dictionary &dict, const bool readFields=true) | |
virtual | ~noiseModel ()=default |
tmp< Foam::scalarField > | PSD (const scalarField &PSDf) const |
tmp< scalarField > | SPL (const scalarField &Prms2, const scalar f) const |
tmp< scalarField > | SPL (const scalarField &Prms2, const scalarField &f) const |
void | cleanFFTW () |
void | writeWeightings () const |
Protected Member Functions | |
void | initialise (const fileName &fName) |
void | readSurfaceData (const labelList &procFaceOffset, List< scalarField > &pData) |
scalar | writeSurfaceData (const fileName &outDirBase, const word &fName, const word &title, const scalar freq, const scalarField &data, const labelList &procFaceOffset, const bool writeSurface) const |
scalar | surfaceAverage (const scalarField &data, const labelList &procFaceOffset) const |
![]() | |
void | readWriteOption (const dictionary &dict, const word &lookup, bool &option) const |
scalar | checkUniformTimeStep (const scalarList ×) const |
bool | validateBounds (const scalarList &p) const |
label | findStartTimeIndex (const instantList &allTimes, const scalar startTime) const |
fileName | baseFileDir (const label dataseti) const |
tmp< scalarField > | uniformFrequencies (const scalar deltaT, const bool check) const |
tmp< scalarField > | octaves (const scalarField &data, const scalarField &f, const labelUList &freqBandIDs) const |
tmp< scalarField > | Pf (const scalarField &p) const |
tmp< scalarField > | meanPf (const scalarField &p) const |
tmp< scalarField > | RMSmeanPf (const scalarField &p) const |
tmp< scalarField > | PSDf (const scalarField &p, const scalar deltaT) const |
scalar | RAf (const scalar f) const |
scalar | gainA (const scalar f) const |
scalar | RBf (const scalar f) const |
scalar | gainB (const scalar f) const |
scalar | RCf (const scalar f) const |
scalar | gainC (const scalar f) const |
scalar | RDf (const scalar f) const |
scalar | gainD (const scalar f) const |
Protected Attributes | |
List< fileName > | inputFileNames_ |
word | pName_ |
label | pIndex_ |
scalarList | times_ |
scalar | deltaT_ |
label | startTimeIndex_ |
label | nFace_ |
label | fftWriteInterval_ |
bool | areaAverage_ |
word | readerType_ |
autoPtr< surfaceReader > | readerPtr_ |
autoPtr< surfaceWriter > | writerPtr_ |
![]() | |
const dictionary | dict_ |
scalar | rhoRef_ |
label | nSamples_ |
scalar | fLower_ |
scalar | fUpper_ |
scalar | startTime_ |
autoPtr< windowModel > | windowModelPtr_ |
word | graphFormat_ |
weightingType | SPLweighting_ |
scalar | dBRef_ |
scalar | minPressure_ |
scalar | maxPressure_ |
fileName | outputPrefix_ |
bool | writePrmsf_ |
bool | writeSPL_ |
bool | writePSD_ |
bool | writePSDf_ |
bool | writeOctaves_ |
planInfo | planInfo_ |
Additional Inherited Members | |
![]() | |
enum | weightingType { none, dBA, dBB, dBC, dBD } |
![]() | |
static autoPtr< noiseModel > | New (const dictionary &dict) |
![]() | |
static const Enum< weightingType > | weightingTypeNames_ |
![]() | |
static void | setOctaveBands (const scalarField &f, const scalar fLower, const scalar fUpper, const scalar octave, labelList &fBandIDs, scalarField &fCentre) |
Perform noise analysis on surface-based pressure data.
Input data is read from a dictionary, e.g.
// Pressure reference pRef 0; // Number of samples in sampling window, default = 2^16 (=65536) N 4096; // Lower frequency bounds fl 25; // Upper frequency bounds fu 25; // Start time startTime 0; windowModel <modelType> <modelType>Coeffs { ... } // Input file file "postProcessing/faceSource1/surface/patch/patch.case"; //files ("postProcessing/faceSource1/surface/patch/patch.case"); // Write interval for FFT data, default = 1 fftWriteInterval 100; // Area-weighted averaging switch, default = no (ensemble) for backwards // compatibility areaAverage yes; // Surface reader reader ensight; // Surface writer writer ensight; // Collate times for ensight output - ensures geometry is only written once writeOptions { ensight { collateTimes true; } // Write Prmsf; default = yes writePrmsf no; // Write SPL; default = yes writeSPL yes; // Write PSD; default = yes writePSD yes; // Write PSDf; default = yes writePSDf no; // Write writeOctaves; default = yes writeOctaves yes; }
Definition at line 126 of file surfaceNoise.H.
surfaceNoise | ( | const dictionary & | dict, |
const bool | readFields = true |
||
) |
Definition at line 423 of file surfaceNoise.C.
References dict, surfaceNoise::read(), and Foam::readFields().
|
virtualdefault |
|
protected |
Definition at line 42 of file surfaceNoise.C.
References noiseModel::checkUniformTimeStep(), surfaceNoise::deltaT_, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, fieldNames(), noiseModel::findStartTimeIndex(), forAll, Foam::Info, UPstream::master(), surfaceReader::New(), surfaceNoise::nFace_, surfaceNoise::pIndex_, surfaceNoise::pName_, surfaceNoise::readerPtr_, surfaceNoise::readerType_, Pstream::scatter(), List::setSize(), MeshedSurface::size(), noiseModel::startTime_, surfaceNoise::startTimeIndex_, surfaceNoise::times_, and noiseModel::windowModelPtr_.
Referenced by surfaceNoise::calculate().
|
protected |
Definition at line 111 of file surfaceNoise.C.
References UPstream::allProcs(), Foam::average(), PstreamBuffers::clear(), Foam::endl(), PstreamBuffers::finishedSends(), forAll, Foam::Info, UPstream::master(), UPstream::myProcNo(), Foam::nl, UPstream::nonBlocking, p, UPstream::parRun(), Foam::returnReduce(), and List::setSize().
Referenced by surfaceNoise::calculate().
|
protected |
Definition at line 234 of file surfaceNoise.C.
References List::clear(), Foam::endl(), PstreamBuffers::finishedSends(), forAll, Foam::Info, MeshedSurface::magSf(), UPstream::master(), Foam::name(), UPstream::nonBlocking, UPstream::parRun(), Pstream::scatter(), MeshedSurface::size(), UPstream::subProcs(), Foam::sum(), and MeshedSurface::surfFaces().
Referenced by surfaceNoise::calculate().
|
protected |
Definition at line 358 of file surfaceNoise.C.
References PstreamBuffers::finishedSends(), forAll, UPstream::master(), UPstream::nonBlocking, UPstream::parRun(), Pstream::scatter(), MeshedSurface::size(), UPstream::subProcs(), and Foam::sum().
Referenced by surfaceNoise::calculate().
TypeName | ( | "surfaceNoise" | ) |
|
virtual |
Reimplemented from noiseModel.
Definition at line 448 of file surfaceNoise.C.
References surfaceNoise::areaAverage_, dict, Foam::endl(), surfaceNoise::fftWriteInterval_, Foam::Info, surfaceNoise::inputFileNames_, surfaceWriter::New(), Foam::nl, surfaceNoise::pName_, noiseModel::read(), surfaceNoise::readerType_, List::resize(), and surfaceNoise::writerPtr_.
Referenced by surfaceNoise::surfaceNoise().
|
virtual |
Implements noiseModel.
Definition at line 497 of file surfaceNoise.C.
References noiseModel::baseFileDir(), surfaceNoise::deltaT_, Foam::endl(), argList::envGlobalPath(), string::expand(), surfaceNoise::fftWriteInterval_, noiseModel::fLower_, forAll, noiseModel::fUpper_, noiseModel::graphFormat_, Foam::Info, surfaceNoise::initialise(), surfaceNoise::inputFileNames_, fileName::isAbsolute(), UPstream::master(), Foam::max(), Foam::min(), fileName::nameLessExt(), surfaceNoise::nFace_, UPstream::nProcs(), windowModel::nSamples(), noiseModel::octaves(), p, UPstream::parRun(), noiseModel::PSD(), noiseModel::PSDf(), surfaceNoise::readSurfaceData(), noiseModel::RMSmeanPf(), noiseModel::setOctaveBands(), List::setSize(), noiseModel::SPL(), surfaceNoise::surfaceAverage(), graph::title(), noiseModel::uniformFrequencies(), WarningInFunction, noiseModel::windowModelPtr_, graph::wordify(), graph::write(), noiseModel::writeOctaves_, noiseModel::writePrmsf_, noiseModel::writePSD_, noiseModel::writePSDf_, noiseModel::writeSPL_, surfaceNoise::writeSurfaceData(), and Foam::Zero.
Definition at line 136 of file surfaceNoise.H.
Referenced by surfaceNoise::calculate(), and surfaceNoise::read().
|
protected |
Definition at line 139 of file surfaceNoise.H.
Referenced by surfaceNoise::initialise(), and surfaceNoise::read().
|
protected |
Definition at line 142 of file surfaceNoise.H.
Referenced by surfaceNoise::initialise().
|
protected |
Definition at line 145 of file surfaceNoise.H.
Referenced by surfaceNoise::initialise().
|
protected |
Definition at line 148 of file surfaceNoise.H.
Referenced by surfaceNoise::calculate(), and surfaceNoise::initialise().
|
protected |
Definition at line 151 of file surfaceNoise.H.
Referenced by surfaceNoise::initialise().
|
protected |
Definition at line 154 of file surfaceNoise.H.
Referenced by surfaceNoise::calculate(), and surfaceNoise::initialise().
|
protected |
Definition at line 159 of file surfaceNoise.H.
Referenced by surfaceNoise::calculate(), and surfaceNoise::read().
|
protected |
Definition at line 163 of file surfaceNoise.H.
Referenced by surfaceNoise::read().
|
protected |
Definition at line 166 of file surfaceNoise.H.
Referenced by surfaceNoise::initialise(), and surfaceNoise::read().
|
mutableprotected |
Definition at line 169 of file surfaceNoise.H.
Referenced by surfaceNoise::initialise().
|
mutableprotected |
Definition at line 172 of file surfaceNoise.H.
Referenced by surfaceNoise::read().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.