An abstract class representing a wave passage effect. More...
#include <IrpsWLWavePassageEffect.h>
Public Member Functions | |
virtual bool | ComputeWavePassageEffectMatrixPP (const WindLabSimulationData &Data, const double &dFrequency, const double &dTime, cx_mat &dCoherenceMatrix)=0 |
Compute the wave passage effect matrix for given time and frequency. | |
virtual bool | ComputeWavePassageEffectValue (const WindLabSimulationData &Data, const Base::Vector3d &locationJ, const Base::Vector3d &locationK, const double &dFrequency, const double &dTime, std::complex< double > &dValue)=0 |
Compute the wave passage effect value for given time, frequency and locations. | |
virtual bool | ComputeWavePassageEffectVectorF (const WindLabSimulationData &Data, const Base::Vector3d &locationJ, const Base::Vector3d &locationK, const double &dTime, vec &dVarVector, cx_vec &dValVector)=0 |
Compute the wave passage effect between two simulation points for all frequency increments. | |
virtual bool | ComputeWavePassageEffectVectorT (const WindLabSimulationData &Data, const Base::Vector3d &locationJ, const Base::Vector3d &locationK, const double &dFrequency, vec &dVarVector, cx_vec &dValVector)=0 |
Compute the wave passage effect between two simulation points for all time increments. | |
virtual bool | OnInitialSetting (const WindLabSimulationData &Data)=0 |
Allows to do any initial taks before any of the other methods is called. | |
virtual | ~IrpsWLWavePassageEffect () |
Virtual destructor for IrpsWLWavePassageEffect class. | |
![]() | |
virtual const char * | getViewProviderName () const |
WindLabFeatureWavePassageEffect (void) | |
Constructor. | |
virtual | ~WindLabFeatureWavePassageEffect () |
virtual short | mustExecute () const override |
![]() | |
WindLabFeature (void) | |
Constructor. | |
virtual | ~WindLabFeature () |
destructor | |
Additional Inherited Members | |
![]() | |
virtual App::DocumentObjectExecReturn * | recompute () override |
recompute only this object | |
virtual App::DocumentObjectExecReturn * | execute () override |
recalculate the feature | |
virtual void | onChanged (const App::Property *prop) override |
![]() | |
virtual PyObject * | getPyObject () override |
![]() | |
Py::SmartPtr | PythonObject |
An abstract class representing a wave passage effect.
This is a pure virtual class (interface) that defines the interface for all wave passage effects. The wave passage effect is often seen in the simulation of phenomena that have spatial and temporal correlations, where the observed values of a random process at a given location or time depend on previous values in a way that mimics the behavior of propagating waves.
Derived classes must implement all its methods. During the implementation of this interface you have to consider stationarity depending on how your feature varies in time to capture these three situation that may come from the user's inputs (requirements):
1-The user is willing to simulate stationary wind velocity. f = f(w)
2-The user is willing to simulate non-stationary wind velocity and has also created a modulation function in the simulation. f = f(w,t) = G(w) * M(t)
3-The user is willing to simulate non-stationary wind velocity without creating any modulation function in the simulation. f = f(w,t)
|
virtual |
Virtual destructor for IrpsWLWavePassageEffect class.
Provides proper cleanup in case a derived class object is destroyed.
|
pure virtual |
Compute the wave passage effect matrix for given time and frequency.
Data | the simulation data containing all the simulation parameters input by the user. |
dFrequency | the frequency value for which the wave passage effect matrix will be computed. |
dTime | the time instant at which the wave passage effect matrix will be computed. |
dCoherenceMatrix | a matrix to be updated. It should contain the computed wave passage effect matrix. |
Referenced by WindLabAPI::CRPSWindLabFramework::ComputeWavePassageEffectMatrixPP().
|
pure virtual |
Compute the wave passage effect value for given time, frequency and locations.
Data | the simulation data containing all the simulation parameters input by the user. |
locationJ | a location J (simulation point represented by 3D position vector) where wind velocity time series is desired. |
locationK | a location K (simulation point represented by 3D position vector) where wind velocity time series is desired. |
dFrequency | the frequency value for which the wave passage effect value will be computed. |
dTime | the time instant at which the wave passage effect value will be computed. |
dValue | a value to be updated. This is the computed wave passage effect value. |
Referenced by WindLabAPI::CRPSWindLabFramework::ComputeWavePassageEffectValue().
|
pure virtual |
Compute the wave passage effect between two simulation points for all frequency increments.
Data | the simulation data containing all the simulation parameters input by the user. |
locationJ | a location J (simulation point represented by 3D position vector) where wind velocity time series is desired. |
locationK | a location K (simulation point represented by 3D position vector) where wind velocity time series is desired. |
dTime | the time instant at which the wave passage effect vector will be computed. |
dVarVector | a vector to be updated. It should contains all the frequency increments used to compute each value stored in dValVector. |
dValVector | a vector to be updated. It should contain all the values computed for each frequency increment stored in dVarVector. |
Referenced by WindLabAPI::CRPSWindLabFramework::ComputeWavePassageEffectVectorF().
|
pure virtual |
Compute the wave passage effect between two simulation points for all time increments.
Data | the simulation data containing all the simulation parameters input by the user. |
locationJ | a location J (simulation point represented by 3D position vector) where wind velocity time series is desired. |
locationK | a location K (simulation point represented by 3D position vector) where wind velocity time series is desired. |
dFrequency | the frequency value for which the wave passage effect vector will be computed. |
dVarVector | a vector to be updated. It should contains all the time increments used to compute each value stored in dValVector. |
dValVector | a vector to be updated. It should contain all the values computed for each time increment stored in dVarVector. |
Referenced by WindLabAPI::CRPSWindLabFramework::ComputeWavePassageEffectVectorT().
|
pure virtual |
Allows to do any initial taks before any of the other methods is called.
Data | the simulation data containing all the simulation parameters input by the user. |