|
FERS 1.0.0
The Flexible Extensible Radar Simulator
|
Base class for radar targets. More...
#include "target.h"
Inheritance diagram for radar::Target:
Collaboration diagram for radar::Target:Public Member Functions | |
| Target (Platform *platform, std::string name, const unsigned seed) | |
| Constructs a radar target. | |
| virtual RealType | getRcs (math::SVec3 &inAngle, math::SVec3 &outAngle, RealType time) const =0 |
| Gets the RCS value for the target. | |
| std::mt19937 & | getRngEngine () noexcept |
| Gets the target's internal random number generator engine. | |
| void | setFluctuationModel (std::unique_ptr< RcsModel > in) |
| Sets the RCS fluctuation model. | |
| const RcsModel * | getFluctuationModel () const |
| Gets the RCS fluctuation model. | |
| math::Vec3 | getPosition (const RealType time) const |
| Retrieves the position of the object. | |
| math::SVec3 | getRotation (const RealType time) const |
| Retrieves the rotation of the object. | |
| Platform * | getPlatform () const noexcept |
| Retrieves the associated platform of the object. | |
| const std::string & | getName () const noexcept |
| Retrieves the name of the object. | |
Protected Attributes | |
| std::unique_ptr< RcsModel > | _model {nullptr} |
| The RCS fluctuation model for the target. | |
| std::mt19937 | _rng |
| Per-object random number generator for statistical independence. | |
| radar::Target::Target | ( | Platform * | platform, |
| std::string | name, | ||
| const unsigned | seed | ||
| ) |
Constructs a radar target.
| platform | Pointer to the platform associated with the target. |
| name | The name of the target. |
| seed | The seed for the target's internal random number generator. |
Definition at line 126 of file target.h.
| const RcsModel * radar::Target::getFluctuationModel | ( | ) | const |
Gets the RCS fluctuation model.
Definition at line 159 of file target.h.
References _model.
Referenced by radar::to_json().
Here is the caller graph for this function:
|
noexceptinherited |
Retrieves the name of the object.
Definition at line 68 of file object.h.
Referenced by simulation::calculatePreviewLinks(), simulation::calculateResponse(), processing::finalizeCwReceiver(), serial::Response::getTransmitterName(), processing::runPulsedFinalizer(), radar::Receiver::setNoiseTemperature(), radar::to_json(), radar::to_json(), and radar::to_json().
Here is the caller graph for this function:
|
noexceptinherited |
Retrieves the associated platform of the object.
Definition at line 61 of file object.h.
Referenced by simulation::calculateDirectPathContribution(), simulation::calculateReflectedPathContribution(), and simulation::calculateResponse().
Here is the caller graph for this function:
|
inherited |
Retrieves the position of the object.
| time | The time at which to get the position of the object. |
Definition at line 46 of file object.h.
References radar::Platform::getPosition().
Referenced by simulation::calculatePreviewLinks(), simulation::solveRe(), and simulation::solveReDirect().
Here is the call graph for this function:
Here is the caller graph for this function:
|
pure virtual |
Gets the RCS value for the target.
| inAngle | The incoming angle of the radar wave. |
| outAngle | The outgoing angle of the reflected radar wave. |
| time | The current simulation time (default is 0.0). |
Implemented in radar::IsoTarget, and radar::FileTarget.
Referenced by simulation::calculateReflectedPathContribution(), and simulation::solveRe().
Here is the caller graph for this function:
|
noexcept |
|
inherited |
Retrieves the rotation of the object.
| time | The time at which to get the rotation of the object. |
Definition at line 54 of file object.h.
References radar::Platform::getRotation().
Referenced by radar::FileTarget::getRcs(), and processing::runPulsedFinalizer().
Here is the call graph for this function:
Here is the caller graph for this function:| void radar::Target::setFluctuationModel | ( | std::unique_ptr< RcsModel > | in | ) |
|
protected |
The RCS fluctuation model for the target.
Definition at line 162 of file target.h.
Referenced by getFluctuationModel(), radar::FileTarget::getRcs(), and setFluctuationModel().
|
protected |
Per-object random number generator for statistical independence.
Definition at line 163 of file target.h.
Referenced by getRngEngine().