Skip to content

DeltaConfig

struct nmeasim::core::simulation::DeltaConfig ยท Library API

Configuration of a DeltaSource: the seed state and the drift of each value.

#include <nmeasim/core/simulation/delta_source.hpp>

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp (line 70)

A variation of {0.0, 0.0} freezes that value.

Summary

Public data members

Name Description
seed Initial state: position, time and every value the source starts from and drifts around.
heading Drift of the true heading, degrees; the bound is measured on the angle from the seed heading, so it also holds across north.
speed Drift of the speed over ground, knots; the speed never goes below zero.
depth Drift of the depth below the transducer, metres; the depth never goes below zero.
water_temperature Drift of the water temperature, degrees Celsius.
wind_direction Drift of the true wind direction, degrees; the bound is measured on the angle from the seed direction, so it also holds across north.
wind_speed Drift of the true wind speed, knots; the speed never goes below zero.
turn_rate_per_rudder_deg Gain of the steering model, in degrees per minute of rate of turn per degree of rudder; with the default, ten degrees of rudder turn the vessel six degrees per minute.
max_rudder_angle_deg Largest rudder angle either side, in degrees; rudder overrides and nudges are clamped to plus or minus this value.
random_seed Seed of the pseudo-random generator, so that the same configuration always produces the same run.

Public data members

seed

model::VesselState seed

Initial state: position, time and every value the source starts from and drifts around.

Destinations and engines set on the source are stored here as well, so that they survive a reset.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:74

heading

Variation heading{2.0, 0.5}

Drift of the true heading, degrees; the bound is measured on the angle from the seed heading, so it also holds across north.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:78

speed

Variation speed{0.3, 0.1}

Drift of the speed over ground, knots; the speed never goes below zero.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:80

depth

Variation depth{1.5, 0.2}

Drift of the depth below the transducer, metres; the depth never goes below zero.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:82

water_temperature

Variation water_temperature{0.2, 0.05}

Drift of the water temperature, degrees Celsius.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:84

wind_direction

Variation wind_direction{10.0, 2.0}

Drift of the true wind direction, degrees; the bound is measured on the angle from the seed direction, so it also holds across north.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:87

wind_speed

Variation wind_speed{2.0, 0.5}

Drift of the true wind speed, knots; the speed never goes below zero.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:89

turn_rate_per_rudder_deg

double turn_rate_per_rudder_deg{0.6}

Gain of the steering model, in degrees per minute of rate of turn per degree of rudder; with the default, ten degrees of rudder turn the vessel six degrees per minute.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:94

max_rudder_angle_deg

double max_rudder_angle_deg{35.0}

Largest rudder angle either side, in degrees; rudder overrides and nudges are clamped to plus or minus this value.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:97

random_seed

unsigned int random_seed{2026}

Seed of the pseudo-random generator, so that the same configuration always produces the same run.

Declared in src/core/include/nmeasim/core/simulation/delta_source.hpp:101