|
FERS 1.0.0
The Flexible Extensible Radar Simulator
|
Classes | |
| class | Parameters |
| Struct to hold simulation parameters. More... | |
Enumerations | |
| enum class | CoordinateFrame { ENU , UTM , ECEF } |
| Defines the coordinate systems supported for scenario definition. More... | |
| enum class | RotationAngleUnit { Degrees , Radians } |
| Defines the units used at external rotation-path boundaries. More... | |
Functions | |
| RealType | c () noexcept |
| Get the speed of light. | |
| RealType | boltzmannK () noexcept |
| Get the Boltzmann constant. | |
| RealType | startTime () noexcept |
| Get the start time for the simulation. | |
| RealType | endTime () noexcept |
| Get the end time for the simulation. | |
| RealType | simSamplingRate () noexcept |
| Get the simulation sampling rate. | |
| RealType | rate () noexcept |
| Get the rendering sample rate. | |
| unsigned | randomSeed () noexcept |
| Get the random seed. | |
| unsigned | adcBits () noexcept |
| Get the ADC quantization bits. | |
| unsigned | renderFilterLength () noexcept |
| Get the render filter length. | |
| unsigned | renderThreads () noexcept |
| Get the number of worker threads. | |
| unsigned | oversampleRatio () noexcept |
| Get the oversampling ratio. | |
| void | setC (RealType cValue) noexcept |
| Set the speed of light. | |
| void | setTime (const RealType startTime, const RealType endTime) noexcept |
| Set the start and end times for the simulation. | |
| void | setSimSamplingRate (const RealType rate) noexcept |
| Set the simulation sampling rate. | |
| void | setRate (RealType rateValue) |
| Set the rendering sample rate. | |
| void | setRandomSeed (const unsigned seed) noexcept |
| Set the random seed. | |
| void | setAdcBits (const unsigned bits) noexcept |
| Set the ADC quantization bits. | |
| void | setOversampleRatio (unsigned ratio) |
| Set the oversampling ratio. | |
| void | setOrigin (const double lat, const double lon, const double alt) noexcept |
| Set the geodetic origin for the KML generator. | |
| double | originLatitude () noexcept |
| double | originLongitude () noexcept |
| double | originAltitude () noexcept |
| std::expected< void, std::string > | setThreads (const unsigned threads) noexcept |
| Set the number of worker threads. | |
| void | setCoordinateSystem (const CoordinateFrame frame, const int zone, const bool north) noexcept |
| Set the coordinate system for the scenario. | |
| CoordinateFrame | coordinateFrame () noexcept |
| RotationAngleUnit | rotationAngleUnit () noexcept |
| int | utmZone () noexcept |
| bool | utmNorthHemisphere () noexcept |
| void | setRotationAngleUnit (const RotationAngleUnit unit) noexcept |
| constexpr std::string_view | rotationAngleUnitToken (const RotationAngleUnit unit) noexcept |
| std::optional< RotationAngleUnit > | rotationAngleUnitFromToken (const std::string_view token) noexcept |
| NLOHMANN_JSON_SERIALIZE_ENUM (CoordinateFrame, {{CoordinateFrame::ENU, "ENU"}, {CoordinateFrame::UTM, "UTM"}, {CoordinateFrame::ECEF, "ECEF"}}) NLOHMANN_JSON_SERIALIZE_ENUM(RotationAngleUnit | |
Variables | |
| Parameters | params |
|
strong |
Defines the coordinate systems supported for scenario definition.
| Enumerator | |
|---|---|
| ENU | East-North-Up local tangent plane (default) |
| UTM | Universal Transverse Mercator. |
| ECEF | Earth-Centered, Earth-Fixed. |
Definition at line 29 of file parameters.h.
|
strong |
Defines the units used at external rotation-path boundaries.
| Enumerator | |
|---|---|
| Degrees | Compass azimuth and elevation expressed in degrees. |
| Radians | Compass azimuth and elevation expressed in radians. |
Definition at line 40 of file parameters.h.
|
noexcept |
Get the ADC quantization bits.
Definition at line 133 of file parameters.h.
Referenced by processing::quantizeAndScaleWindow().
Here is the caller graph for this function:
|
noexcept |
Get the Boltzmann constant.
Definition at line 97 of file parameters.h.
Referenced by processing::applyThermalNoise().
Here is the caller graph for this function:
|
noexcept |
Get the speed of light.
Definition at line 91 of file parameters.h.
Referenced by simulation::calculateDirectPathContribution(), simulation::calculatePreviewLinks(), simulation::calculateReflectedPathContribution(), fers_get_antenna_pattern(), simulation::solveRe(), and simulation::solveReDirect().
Here is the caller graph for this function:
|
noexcept |
Definition at line 284 of file parameters.h.
|
noexcept |
Get the end time for the simulation.
Definition at line 109 of file parameters.h.
Referenced by fers_signal::from_json(), radar::Receiver::getWindowCount(), core::SimulationEngine::handleRxPulsedWindowEnd(), core::SimulationEngine::handleTxPulsedStart(), serial::json_to_world(), core::OutputMetadataCollector::OutputMetadataCollector(), radar::processRawSchedule(), core::SimulationEngine::run(), core::World::scheduleInitialEvents(), and setTime().
Here is the caller graph for this function:| params::NLOHMANN_JSON_SERIALIZE_ENUM | ( | CoordinateFrame | , |
| {{CoordinateFrame::ENU, "ENU"}, {CoordinateFrame::UTM, "UTM"}, {CoordinateFrame::ECEF, "ECEF"}} | |||
| ) |
|
noexcept |
Definition at line 252 of file parameters.h.
|
noexcept |
Definition at line 248 of file parameters.h.
|
noexcept |
Definition at line 250 of file parameters.h.
|
noexcept |
Get the oversampling ratio.
Definition at line 151 of file parameters.h.
Referenced by processing::pipeline::applyDownsamplingAndQuantization(), processing::applyThermalNoise(), fers_signal::downsample(), serial::json_to_world(), fers_signal::Signal::load(), core::OutputMetadataCollector::OutputMetadataCollector(), core::SimulationEngine::processCwPhysics(), processing::renderWindow(), processing::runPulsedFinalizer(), radar::Transmitter::setPrf(), radar::Receiver::setWindowProperties(), and fers_signal::upsample().
Here is the caller graph for this function:
|
noexcept |
Get the random seed.
Definition at line 127 of file parameters.h.
|
noexcept |
Get the rendering sample rate.
Definition at line 121 of file parameters.h.
Referenced by serial::addChunkToFile(), processing::applyThermalNoise(), processing::pipeline::exportCwToHdf5(), noise::ClockModelGenerator::getSample(), serial::json_to_world(), core::OutputMetadataCollector::OutputMetadataCollector(), core::SimulationEngine::processCwPhysics(), processing::renderWindow(), processing::runPulsedFinalizer(), radar::Transmitter::setPrf(), setSimSamplingRate(), and radar::Receiver::setWindowProperties().
Here is the caller graph for this function:
|
noexcept |
Get the render filter length.
Definition at line 139 of file parameters.h.
Referenced by fers_signal::Signal::render().
Here is the caller graph for this function:
|
noexcept |
Get the number of worker threads.
Definition at line 145 of file parameters.h.
Referenced by fers_run_simulation().
Here is the caller graph for this function:
|
noexcept |
Definition at line 286 of file parameters.h.
Referenced by math::from_json(), serial::xml_serializer_utils::serializeRotation(), math::to_json(), and serial::update_platform_paths_from_json().
Here is the caller graph for this function:
|
noexcept |
Definition at line 299 of file parameters.h.
References Degrees, and Radians.
Referenced by serial::xml_parser_utils::parseParameters().
Here is the caller graph for this function:
|
constexprnoexcept |
Definition at line 294 of file parameters.h.
References Radians.
Referenced by serial::kml_generator_utils::generateDirectionalAntennaKml(), and serial::xml_serializer_utils::serializeParameters().
Here is the caller graph for this function:
|
noexcept |
Set the ADC quantization bits.
| bits | The new ADC quantization bits. |
Definition at line 213 of file parameters.h.
References logging::DEBUG, and LOG.
|
noexcept |
Set the speed of light.
| cValue | The new speed of light. |
Definition at line 157 of file parameters.h.
References logging::INFO, and LOG.
|
noexcept |
Set the coordinate system for the scenario.
| frame | The coordinate frame (ENU, UTM, ECEF). |
| zone | The UTM zone, if applicable. |
| north | The UTM hemisphere (true for North), if applicable. |
Definition at line 277 of file parameters.h.
|
noexcept |
Set the geodetic origin for the KML generator.
| lat | The latitude of the origin. |
| lon | The longitude of the origin. |
| alt | The altitude of the origin (MSL). |
Definition at line 240 of file parameters.h.
References logging::INFO, and LOG.
| void params::setOversampleRatio | ( | unsigned | ratio | ) |
Set the oversampling ratio.
| ratio | The new oversampling ratio. |
| std::runtime_error | if the ratio is zero. |
Definition at line 224 of file parameters.h.
References logging::DEBUG, and LOG.
|
noexcept |
Set the random seed.
| seed | The new random seed value. |
Definition at line 203 of file parameters.h.
References logging::DEBUG, and LOG.
| void params::setRate | ( | RealType | rateValue | ) |
Set the rendering sample rate.
| rateValue | The new sample rate for rendering. |
Definition at line 189 of file parameters.h.
References logging::DEBUG, and LOG.
|
noexcept |
Definition at line 292 of file parameters.h.
|
noexcept |
Set the simulation sampling rate.
| rate | The new simulation sampling rate. |
Definition at line 179 of file parameters.h.
References logging::DEBUG, LOG, and rate().
Here is the call graph for this function:
|
noexcept |
Set the number of worker threads.
| threads | The number of worker threads. |
std::expected<void, std::string> indicating success or an error message if the number of threads is invalid. Definition at line 260 of file parameters.h.
References logging::INFO, and LOG.
Referenced by fers_set_thread_count().
Here is the caller graph for this function:Set the start and end times for the simulation.
| startTime | Start time for the simulation. |
| endTime | End time for the simulation. |
Definition at line 168 of file parameters.h.
References endTime(), logging::INFO, LOG, and startTime().
Here is the call graph for this function:
|
noexcept |
Get the simulation sampling rate.
Definition at line 115 of file parameters.h.
Referenced by simulation::calculateResponse().
Here is the caller graph for this function:
|
noexcept |
Get the start time for the simulation.
Definition at line 103 of file parameters.h.
Referenced by processing::pipeline::applyPulsedInterference(), processing::pipeline::exportCwToHdf5(), fers_signal::from_json(), radar::Receiver::getWindowCount(), serial::json_to_world(), core::OutputMetadataCollector::OutputMetadataCollector(), core::SimulationEngine::processCwPhysics(), radar::processRawSchedule(), core::World::scheduleInitialEvents(), and setTime().
Here is the caller graph for this function:
|
noexcept |
Definition at line 290 of file parameters.h.
|
noexcept |
Definition at line 288 of file parameters.h.
| Parameters params::params |
Definition at line 85 of file parameters.h.
Referenced by fers_load_scenario_from_xml_file(), fers_load_scenario_from_xml_string(), serial::KmlGenerator::generateKml(), core::OutputMetadataCollector::OutputMetadataCollector(), serial::parseSimulation(), serial::parseSimulationFromString(), serial::xml_parser_utils::processParsedDocument(), serial::world_to_json(), and serial::world_to_xml_string().