|
World Ocean Simulation System (WOSS) library
|
Altimetry profile class. More...
#include <altimetry-definitions.h>


Public Member Functions | |
| Altimetry () | |
| Altimetry (AltimetryMap &map) | |
| Altimetry (double range, double altimetry) | |
| Altimetry (const Altimetry ©)=default | |
| Altimetry (Altimetry &&tmp)=default | |
| virtual | ~Altimetry ()=default |
| virtual std::unique_ptr< Altimetry > | create () const |
| virtual std::unique_ptr< Altimetry > | create (AltimetryMap &map) const |
| virtual std::unique_ptr< Altimetry > | clone () const |
| Altimetry & | insertValue (double range, double altimetry) |
| Altimetry & | sumValue (double range, double altimetry) |
| AltCIt | findValue (double range) const |
| Altimetry & | eraseValue (double range) |
| virtual std::unique_ptr< Altimetry > | crop (double range_start, double range_end) const |
| virtual std::unique_ptr< Altimetry > | randomize (double ratio_incr_value) const |
| AltCIt | begin () const |
| AltCIt | end () const |
| AltCIt | at (const int i) const |
| int | size () const |
| bool | empty () const |
| void | clear () |
| Altimetry & | setEvolutionTimeQuantum (double quantum) |
| Altimetry & | setTotalRangeSteps (int r_s) |
| Altimetry & | setRange (double r) |
| Altimetry & | setDepth (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 |
| virtual bool | isValid () const |
| virtual bool | initialize () |
| virtual std::unique_ptr< Altimetry > | timeEvolve (const Time &time_value) |
| Altimetry & | operator= (const Altimetry ©)=default |
| Altimetry & | operator= (Altimetry &&tmp)=default |
Static Public Member Functions | |
| static AltimetryMap & | createNotValid () |
| static AltimetryMap & | createFlat (double altimetry=0) |
| static void | setDebug (bool flag) |
| static bool | getDebug (bool flag) |
Protected Member Functions | |
| virtual Altimetry & | updateMinMaxAltimetryValues () |
Protected Attributes | |
| 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 |
Static Protected Attributes | |
| static bool | debug = false |
Friends | |
| bool | operator== (const Altimetry &left, const Altimetry &right) |
| bool | operator!= (const Altimetry &left, const Altimetry &right) |
| const Altimetry | operator+ (const Altimetry &left, const Altimetry &right) |
| const Altimetry | operator- (const Altimetry &left, const Altimetry &right) |
| const Altimetry | operator+ (const Altimetry &left, const double right) |
| const Altimetry | operator- (const Altimetry &left, const double right) |
| const Altimetry | operator/ (const Altimetry &left, const double right) |
| const Altimetry | operator* (const Altimetry &left, const double right) |
| const Altimetry | operator+ (const double left, const Altimetry &right) |
| const Altimetry | operator- (const double left, const Altimetry &right) |
| const Altimetry | operator/ (const double left, const Altimetry &right) |
| const Altimetry | operator* (const double left, const Altimetry &right) |
| Altimetry & | operator+= (Altimetry &left, const Altimetry &right) |
| Altimetry & | operator-= (Altimetry &left, const Altimetry &right) |
| Altimetry & | operator+= (Altimetry &left, double right) |
| Altimetry & | operator-= (Altimetry &left, double right) |
| Altimetry & | operator/= (Altimetry &left, double right) |
| Altimetry & | operator*= (Altimetry &left, double right) |
| std::ostream & | operator<< (std::ostream &os, const Altimetry &instance) |
Altimetry profile class.
Altimetry class offers the possibility to store and manipulate altimetry profiles, e.g. a collection of range [m] values associated to a altimetry value [m].
| Altimetry::Altimetry | ( | ) |
Default Altimetry constructor
| Altimetry::Altimetry | ( | AltimetryMap & | map | ) |
Altimetry constructor
| map | custom time arrival map |
References altimetry_map, and range_precision.
| Altimetry::Altimetry | ( | double | range, |
| double | altimetry | ||
| ) |
Altimetry constructor
| range | range [m] |
| altimetry | altimetry [m] |
References altimetry_map, max_altimetry_value, min_altimetry_value, and range.
|
default |
|
default |
|
virtualdefault |
| AltCIt Altimetry::at | ( | const int | i | ) | const |
Returns a const iterator to the altimetry value at i-th position
| i | integer should be between 0 and size() |
References altimetry_map.
|
inline |
Returns a const iterator to the beginning of the altimetry map
References altimetry_map.
|
inline |
Erase all values of altimetry
References altimetry_map.
Referenced by woss::AltimBretschneider::createWaveSpectrum().
|
inlinevirtual |
Altimetry virtual factory method
Reimplemented in woss::AltimBretschneider.
Referenced by woss::WossDbManager::setCustomAltimetry(), and timeEvolve().
|
inlinevirtual |
Altimetry virtual factory method
Reimplemented in woss::AltimBretschneider.
Referenced by crop(), and randomize().
|
inlinevirtual |
Altimetry virtual factory method
| map | custom time arrival map |
Reimplemented in woss::AltimBretschneider.
|
inlinestatic |
Creates a flat AltimetryMap
References altimetry_map.
|
inlinestatic |
Returns a reference an AltimetryMap object not valid
References altimetry_map.
Referenced by crop(), woss::WossDbManager::getAltimetry(), woss::WossDbManager::getCustomAltimetry(), and randomize().
|
virtual |
Crops the Altimetry between given range values and returns a new heap-allocated object. The new object will have range values in [range_start, range_end)
| time_start | start range value [m] |
| time_end | end range value [m] |
References altimetry_map, create(), createNotValid(), debug, isValid(), and range_precision.

|
inline |
Checks if the instance has stored values
References altimetry_map.
|
inline |
Returns a const iterator to the end of the altimetry map
References altimetry_map.
|
inline |
Erase the altimetry value with key == range parameter
| range | range value [s] |
References altimetry_map, and range.
|
inline |
Returns a const iterator to the altimetry with key == range parameter
| range | range value [m] |
References altimetry_map, and range.
|
inlinestatic |
|
inline |
|
inline |
|
inline |
Returns the maximum altimetry value
References max_altimetry_value.
Referenced by woss::BellhopWoss::writeAltimetryFile().
|
inline |
|
inline |
Returns the minimum altimetry value
References min_altimetry_value.
Referenced by woss::BellhopWoss::writeAltimetryFile().
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
Initializes the altimetry vector. used if there is a matematical function that generates the whole vector.
Reimplemented in woss::AltimBretschneider.
References isValid(), range, range_precision, and total_range_steps.

| Altimetry & Altimetry::insertValue | ( | double | range, |
| double | altimetry | ||
| ) |
Inserts and replace an altimetry value at closest range step
| range | range value [m] |
| altimetry | altimetry value [m]; > 0 ==> under water; < 0 ==> above water |
References altimetry_map, max_altimetry_value, min_altimetry_value, and range.
Referenced by woss::AltimBretschneider::createWaveSpectrum().
|
virtual |
Checks the validity of Altimetry
Reimplemented in woss::AltimBretschneider.
References altimetry_map.
Referenced by crop(), initialize(), and randomize().
|
virtual |
Performs a random perturbation of altimetry values with given ratio
| ratio_incr_value | perturbation ratio |
Reimplemented in woss::AltimBretschneider.
References altimetry_map, create(), createNotValid(), woss::Singleton< T >::instance(), and isValid().
Referenced by timeEvolve(), and woss::BellhopWoss::writeAltimetryFile().

|
inlinestatic |
|
inline |
|
inline |
Sets the evolution time quantum
| quantum | time quantum [s] |
References evolution_time_quantum.
|
inline |
|
inline |
|
inline |
Returns the number of altimetry values stored
References altimetry_map.
Referenced by woss::BellhopWoss::writeAltimetryFile().
|
inline |
Inserts and sums an altimetry value at closest range step
| range | range value [m] |
| altimetry | altimetry value [m]; > 0 ==> under water; < 0 ==> above water |
References altimetry_map, max_altimetry_value, min_altimetry_value, and range.
Performs a time evolution
| time_value | const reference to a valid Time object |
Reimplemented in woss::AltimBretschneider.
References clone(), debug, evolution_time_quantum, woss::Time::isValid(), last_evolution_time, and randomize().

|
protectedvirtual |
References altimetry_map, max_altimetry_value, and min_altimetry_value.
Inequality operator
| left | left operand const reference |
| right | right operand const reference |
Multiplication operator
| left | left operand const reference |
| right | right operand const reference |
Multiplication operator
| left | left operand const reference |
| right | right operand const reference |
Compound assignment multiplication operator
| left | left operand reference |
| right | right operand const reference |
Sum operator
| left | left operand const reference |
| right | right operand const reference |
Sum operator
| left | left operand const reference |
| right | right operand const reference |
Sum operator
| left | left operand const reference |
| right | right operand const reference |
Compound assignment sum operator
| left | left operand reference |
| right | right operand const reference |
Compound assignment sum operator
| left | left operand reference |
| right | right operand const reference |
Subtraction operator
| left | left operand const reference |
| right | right operand const reference |
Subtraction operator
| left | left operand const reference |
| right | right operand const reference |
Subtraction operator
| left | left operand const reference |
| right | right operand const reference |
Compound assignment subtraction operator
| left | left operand reference |
| right | right operand const reference |
Compound assignment subtraction operator
| left | left operand reference |
| right | right operand const reference |
Division operator
| left | left operand const reference |
| right | right operand const reference |
Division operator
| left | left operand const reference |
| right | right operand const reference |
Compound assignment division operator
| left | left operand reference |
| right | right operand const reference |
|
friend |
<< operator
| os | left operand ostream reference |
| instance | right operand const Pressure reference |
Equality operator
| left | left operand const reference |
| right | right operand const reference |
|
protected |
altimetry values map
Referenced by Altimetry(), Altimetry(), at(), begin(), clear(), createFlat(), createNotValid(), woss::AltimBretschneider::createWaveSpectrum(), crop(), empty(), end(), eraseValue(), findValue(), getMaxRangeValue(), getMinRangeValue(), insertValue(), isValid(), woss::operator*=(), woss::operator+=(), woss::operator+=(), woss::operator-=(), woss::operator-=(), woss::operator/=(), randomize(), size(), sumValue(), and updateMinMaxAltimetryValues().
|
staticprotected |
|
protected |
Stores the depth of the scenario [m]
Referenced by woss::AltimBretschneider::AltimBretschneider(), woss::AltimBretschneider::create(), woss::AltimBretschneider::createWaveSpectrum(), getDepth(), and setDepth().
|
protected |
Stores the last evolution time quantum [s]
Referenced by getEvolutionTimeQuantum(), setEvolutionTimeQuantum(), timeEvolve(), and woss::AltimBretschneider::timeEvolve().
|
protected |
Stores the last evolution's simulation time
Referenced by timeEvolve(), and woss::AltimBretschneider::timeEvolve().
|
protected |
Stores the maximum altimetry value [m] i.e. the min negative value (if present)
Referenced by Altimetry(), getMaxAltimetryValue(), insertValue(), sumValue(), and updateMinMaxAltimetryValues().
|
protected |
Stores the miminum altimetry value [m] i.e. the maximum positive value (if present)
Referenced by Altimetry(), getMinAltimetryValue(), insertValue(), sumValue(), and updateMinMaxAltimetryValues().
|
protected |
range [m]
Referenced by Altimetry(), woss::AltimBretschneider::createWaveSpectrum(), eraseValue(), findValue(), getRange(), initialize(), woss::AltimBretschneider::initialize(), insertValue(), setRange(), and sumValue().
|
protected |
Stores the precision of all PDouble ranges [m]
Referenced by Altimetry(), woss::AltimBretschneider::createWaveSpectrum(), crop(), getRangePrecision(), initialize(), and woss::AltimBretschneider::initialize().
|
protected |
range total steps
Referenced by woss::AltimBretschneider::AltimBretschneider(), woss::AltimBretschneider::create(), woss::AltimBretschneider::createWaveSpectrum(), getTotalRangeSteps(), initialize(), woss::AltimBretschneider::initialize(), woss::AltimBretschneider::isValid(), and setTotalRangeSteps().