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 ©) | |
virtual Altimetry * | create () const |
virtual Altimetry * | create (AltimetryMap &map) const |
virtual Altimetry * | create (const Altimetry ©) const |
virtual 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 Altimetry * | crop (double range_start, double range_end) |
virtual 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 Altimetry * | timeEvolve (const Time &time_value) |
Altimetry & | operator= (const Altimetry ©) |
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 | ( | ) |
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.
Altimetry::Altimetry | ( | const Altimetry & | copy | ) |
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.
Referenced by woss::BellhopWoss::writeAltimetryFile().
|
inline |
Erase all values of altimetry
References altimetry_map.
|
inlinevirtual |
Altimetry virtual factory method
Reimplemented in woss::AltimBretschneider.
References Altimetry().
Referenced by woss::DefHandler::operator=(), and timeEvolve().
|
inlinevirtual |
Altimetry virtual factory method
Reimplemented in woss::AltimBretschneider.
References Altimetry().
Referenced by crop(), and woss::WossDbManager::getAltimetry().
|
inlinevirtual |
Altimetry virtual factory method
map | custom time arrival map |
Reimplemented in woss::AltimBretschneider.
References Altimetry().
Altimetry virtual factory method
copy | Altimetry to be copied |
Reimplemented in woss::AltimBretschneider.
References Altimetry().
|
inlinestatic |
Creates a flat altimetry
References altimetry_map.
|
inlinestatic |
Creates an instance not valid
References altimetry_map.
Referenced by crop(), woss::WossDbManager::getAltimetry(), 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(), 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.
Referenced by woss::BellhopWoss::writeAltimetryFile().
|
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::ACToolboxWoss::initAltimetry(), and woss::BellhopWoss::writeAltimetryFile().
|
inline |
|
inline |
Returns the minimum altimetry value
References min_altimetry_value.
Referenced by woss::ACToolboxWoss::initAltimetry(), and woss::BellhopWoss::writeAltimetryFile().
|
inline |
|
inline |
Returns the max range [m]
References range.
Referenced by woss::ACToolboxWoss::initAltimetry().
|
inline |
|
inline |
Returns the total range step
References total_range_steps.
Referenced by woss::ACToolboxWoss::initAltimetry().
|
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.
Referenced by woss::ACToolboxWoss::initAltimetry().
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.
|
virtual |
Checks the validity of Altimetry
Reimplemented in woss::AltimBretschneider.
References altimetry_map.
Referenced by crop(), woss::WossDbManager::getAltimetry(), woss::ACToolboxWoss::initAltimetry(), initialize(), randomize(), woss::BellhopWoss::timeEvolve(), woss::BellhopWoss::writeCfgFiles(), and woss::BellhopWoss::writeNormalizedSSP().
Assignment operator
copy | const reference to a Altimetry object to be copied |
References altimetry_map, depth, evolution_time_quantum, last_evolution_time, max_altimetry_value, min_altimetry_value, range, range_precision, and total_range_steps.
Referenced by woss::AltimBretschneider::operator=().
|
virtual |
Performs a random perturbation of altimetry values with given ratio
ratio_incr_value | perturbation ratio |
Reimplemented in woss::AltimBretschneider.
References Altimetry(), altimetry_map, createNotValid(), woss::Singleton< T >::instance(), and isValid().
Referenced by timeEvolve(), and woss::BellhopWoss::writeAltimetryFile().
|
inlinestatic |
|
inline |
Sets the depth
d | scenario depth [m] |
References depth.
Referenced by woss::ACToolboxWoss::initAltimetry().
|
inline |
Sets the evolution time quantum
quantum | time quantum [s] |
References evolution_time_quantum.
|
inline |
Sets the range
r | max range [m] |
References range.
Referenced by woss::ACToolboxWoss::initAltimetry().
|
inline |
Sets the total range step
r_s | range steps |
References total_range_steps.
Referenced by woss::ACToolboxWoss::initAltimetry().
|
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 evoulion
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().
Referenced by woss::BellhopWoss::timeEvolve().
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(), crop(), empty(), end(), eraseValue(), findValue(), getMaxRangeValue(), getMinRangeValue(), insertValue(), isValid(), woss::operator*=(), woss::operator+=(), woss::operator+=(), woss::operator-=(), woss::operator-=(), woss::operator/=(), operator=(), randomize(), size(), and sumValue().
|
staticprotected |
Debug flag
Referenced by crop(), getDebug(), woss::AltimBretschneider::isValid(), woss::AltimBretschneider::randomize(), setDebug(), timeEvolve(), and woss::AltimBretschneider::timeEvolve().
|
protected |
Stores the depth of the scenario [m]
Referenced by woss::AltimBretschneider::AltimBretschneider(), woss::AltimBretschneider::create(), getDepth(), operator=(), and setDepth().
|
protected |
Stores the last evolution time quantum [s]
Referenced by getEvolutionTimeQuantum(), operator=(), setEvolutionTimeQuantum(), timeEvolve(), and woss::AltimBretschneider::timeEvolve().
|
protected |
Stores the last evolution's simulation time
Referenced by operator=(), 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(), operator=(), and sumValue().
|
protected |
Stores the miminum altimetry value [m] i.e. the maximum positive value (if present)
Referenced by Altimetry(), getMinAltimetryValue(), insertValue(), operator=(), and sumValue().
|
protected |
range [m]
Referenced by Altimetry(), eraseValue(), findValue(), getRange(), initialize(), woss::AltimBretschneider::initialize(), insertValue(), operator=(), setRange(), and sumValue().
|
protected |
Stores the precision of all PDouble ranges [m]
Referenced by Altimetry(), crop(), getRangePrecision(), initialize(), woss::AltimBretschneider::initialize(), and operator=().
|
protected |