World Ocean Simulation System (WOSS) library
woss::AltimBretschneider Class Reference

AltimBretschneider supports Bretschneider wave model. More...

#include <altimetry-definitions.h>

Inheritance diagram for woss::AltimBretschneider:
Inheritance graph
Collaboration diagram for woss::AltimBretschneider:
Collaboration graph

Public Member Functions

 AltimBretschneider ()
 
 AltimBretschneider (AltimetryMap &map)
 
 AltimBretschneider (double ch_height, double avg_per, int total_range_steps, double depth)
 
 AltimBretschneider (const AltimBretschneider &copy)
 
virtual AltimBretschneidercreate () const
 
virtual AltimBretschneidercreate (AltimetryMap &map) const
 
virtual AltimBretschneidercreate (const AltimBretschneider &copy) const
 
virtual AltimBretschneidercreate (const Altimetry &copy) const
 
virtual AltimBretschneidercreate (double ch_height, double avg_per, int total_range_steps, double depth) const
 
virtual AltimBretschneiderclone () const
 
AltimBretschneideroperator= (const AltimBretschneider &copy)
 
virtual bool initialize ()
 
virtual bool isValid () const
 
virtual AltimBretschneidertimeEvolve (const Time &time_value)
 
virtual AltimBretschneiderrandomize (double ratio_incr_value) const
 
AltimBretschneidersetCharacteristicHeight (double h)
 
AltimBretschneidersetAveragePeriod (double p)
 
double getCharacteristicHeight () const
 
double getAveragePeriod () const
 
- Public Member Functions inherited from woss::Altimetry
 Altimetry ()
 
 Altimetry (AltimetryMap &map)
 
 Altimetry (double range, double altimetry)
 
 Altimetry (const Altimetry &copy)
 
AltimetryinsertValue (double range, double altimetry)
 
AltimetrysumValue (double range, double altimetry)
 
AltCIt findValue (double range) const
 
AltimetryeraseValue (double range)
 
virtual Altimetrycrop (double range_start, double range_end)
 
AltCIt begin () const
 
AltCIt end () const
 
AltCIt at (const int i) const
 
int size () const
 
bool empty () const
 
void clear ()
 
AltimetrysetEvolutionTimeQuantum (double quantum)
 
AltimetrysetTotalRangeSteps (int r_s)
 
AltimetrysetRange (double r)
 
AltimetrysetDepth (double d)
 
double getMaxRangeValue () const
 
double getMinRangeValue () const
 
double getMaxAltimetryValue () const
 
double getMinAltimetryValue () const
 
long double getRangePrecision () const
 
double getEvolutionTimeQuantum () const
 
double getRange () const
 
int getTotalRangeSteps () const
 
double getDepth () const
 
Altimetryoperator= (const Altimetry &copy)
 

Protected Member Functions

virtual AltimBretschneidercreateWaveSpectrum ()
 
- Protected Member Functions inherited from woss::Altimetry
virtual AltimetryupdateMinMaxAltimetryValues ()
 

Protected Attributes

double char_height
 
double average_period
 
- Protected Attributes inherited from woss::Altimetry
double range
 
int total_range_steps
 
double min_altimetry_value
 
double max_altimetry_value
 
long double range_precision
 
Time last_evolution_time
 
double evolution_time_quantum
 
double depth
 
AltimetryMap altimetry_map
 

Additional Inherited Members

- Static Public Member Functions inherited from woss::Altimetry
static AltimetryMapcreateNotValid ()
 
static AltimetryMapcreateFlat (double altimetry=0)
 
static void setDebug (bool flag)
 
static bool getDebug (bool flag)
 
- Static Protected Attributes inherited from woss::Altimetry
static bool debug = false
 

Detailed Description

AltimBretschneider supports Bretschneider wave model.

AltimBretschneider wave model

Constructor & Destructor Documentation

◆ AltimBretschneider() [1/4]

AltimBretschneider::AltimBretschneider ( )

Default AltimBretschneider constructor

Referenced by clone(), create(), create(), create(), create(), and create().

◆ AltimBretschneider() [2/4]

AltimBretschneider::AltimBretschneider ( AltimetryMap map)

AltimBretschneider constructor

Parameters
mapcustom time arrival map

◆ AltimBretschneider() [3/4]

AltimBretschneider::AltimBretschneider ( double  ch_height,
double  avg_per,
int  total_range_steps,
double  depth 
)

AltimBretschneider constructor

Parameters
ch_heightcharacteristic wave height [m]
avg_peraverate period [s]
total_range_stepstotal range steps
depthdepth [m]

References woss::Altimetry::depth, and woss::Altimetry::total_range_steps.

◆ AltimBretschneider() [4/4]

AltimBretschneider::AltimBretschneider ( const AltimBretschneider copy)

AltimBretschneider copy constructor

Parameters
copyAltimBretschneider to be copied

Member Function Documentation

◆ clone()

virtual AltimBretschneider * woss::AltimBretschneider::clone ( ) const
inlinevirtual

AltimBretschneider virtual factory method

Returns
a heap-created copy of this instance

Reimplemented from woss::Altimetry.

References AltimBretschneider().

Referenced by randomize(), and timeEvolve().

Here is the call graph for this function:

◆ create() [1/5]

virtual AltimBretschneider * woss::AltimBretschneider::create ( ) const
inlinevirtual

AltimBretschneider virtual factory method

Returns
a heap-created AltimBretschneider object

Reimplemented from woss::Altimetry.

References AltimBretschneider().

Referenced by create().

Here is the call graph for this function:

◆ create() [2/5]

virtual AltimBretschneider * woss::AltimBretschneider::create ( AltimetryMap map) const
inlinevirtual

AltimBretschneider virtual factory method

Parameters
mapcustom time arrival map
Returns
a heap-created AltimBretschneider object

Reimplemented from woss::Altimetry.

References AltimBretschneider().

Here is the call graph for this function:

◆ create() [3/5]

virtual AltimBretschneider * woss::AltimBretschneider::create ( const AltimBretschneider copy) const
inlinevirtual

AltimBretschneider virtual factory method

Parameters
copyAltimBretschneider to be copied
Returns
a heap-created AltimBretschneider object

References AltimBretschneider().

Here is the call graph for this function:

◆ create() [4/5]

virtual AltimBretschneider * woss::AltimBretschneider::create ( const Altimetry copy) const
inlinevirtual

AltimBretschneider virtual factory method

Parameters
copyAltimBretschneider to be copied
Returns
a heap-created AltimBretschneider object

Reimplemented from woss::Altimetry.

References AltimBretschneider(), and create().

Here is the call graph for this function:

◆ create() [5/5]

virtual AltimBretschneider * woss::AltimBretschneider::create ( double  ch_height,
double  avg_per,
int  total_range_steps,
double  depth 
) const
inlinevirtual

AltimBretschneider virtual factory method

Parameters
ch_heightcharacteristic wave height [m]
avg_peraverate period [s]
total_range_stepstotal range steps
depthdepth [m]
Returns
a heap-created AltimBretschneider object

References AltimBretschneider(), woss::Altimetry::depth, and woss::Altimetry::total_range_steps.

Here is the call graph for this function:

◆ getAveragePeriod()

double woss::AltimBretschneider::getAveragePeriod ( ) const
inline

Gets T - the wave average period [s]

Returns
h average period [s]

References average_period.

◆ getCharacteristicHeight()

double woss::AltimBretschneider::getCharacteristicHeight ( ) const
inline

Gets H - the characteristic height of the wave [m]

Returns
characteristic height [m]

References char_height.

◆ initialize()

bool AltimBretschneider::initialize ( )
virtual

Initializes the altimetry vector. used if there is a matematical function that generates the whole vector.

Returns
true succeeded false otherwise

Reimplemented from woss::Altimetry.

References isValid(), woss::Altimetry::range, woss::Altimetry::range_precision, and woss::Altimetry::total_range_steps.

Here is the call graph for this function:

◆ isValid()

bool AltimBretschneider::isValid ( ) const
virtual

Checks the validity of AltimBretschneider

Returns
true if it has at least one value, false otherwise

Reimplemented from woss::Altimetry.

References average_period, char_height, woss::Altimetry::debug, and woss::Altimetry::total_range_steps.

Referenced by initialize().

◆ operator=()

AltimBretschneider & AltimBretschneider::operator= ( const AltimBretschneider copy)

Assignment operator

Parameters
copyconst reference to a AltimBretschneider object to be copied
Returns
AltimBretschneider reference to this

References average_period, char_height, and woss::Altimetry::operator=().

Here is the call graph for this function:

◆ randomize()

AltimBretschneider * AltimBretschneider::randomize ( double  ratio_incr_value) const
virtual

Performs a random perturbation of altimetry values with given ratio

Parameters
ratio_incr_valueperturbation ratio
Returns
a new Altimetry object

Reimplemented from woss::Altimetry.

References clone(), and woss::Altimetry::debug.

Here is the call graph for this function:

◆ setAveragePeriod()

AltimBretschneider & woss::AltimBretschneider::setAveragePeriod ( double  p)
inline

Configures T - the wave average period [s]

Parameters
haverage period [s]
Returns
AltimBretschneider reference to this

References average_period.

◆ setCharacteristicHeight()

AltimBretschneider & woss::AltimBretschneider::setCharacteristicHeight ( double  h)
inline

Configures H - the characteristic height of the wave [m]

Parameters
hcharacteristic height [m]
Returns
AltimBretschneider reference to this

References char_height.

◆ timeEvolve()

AltimBretschneider * AltimBretschneider::timeEvolve ( const Time time_value)
virtual

Performs a time evoulion

Parameters
time_valueconst reference to a valid Time object
Returns
a pointer to a new heap allocated AltimBretschneider object

Reimplemented from woss::Altimetry.

References clone(), woss::Altimetry::debug, woss::Altimetry::evolution_time_quantum, woss::Time::isValid(), and woss::Altimetry::last_evolution_time.

Here is the call graph for this function:

Member Data Documentation

◆ average_period

double woss::AltimBretschneider::average_period
protected

T - Model's average wave period [s] Refer to: G. J. Komen et al., Dynamics and modeling of ocean waves. Cambridge University Press, 1994.

Referenced by getAveragePeriod(), isValid(), operator=(), and setAveragePeriod().

◆ char_height

double woss::AltimBretschneider::char_height
protected

H - Model's characteristic height [m] Refer to: G. J. Komen et al., Dynamics and modeling of ocean waves. Cambridge University Press, 1994.

Referenced by getCharacteristicHeight(), isValid(), operator=(), and setCharacteristicHeight().


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