#include <PathLossModel.h>
Public 成员函数 | |
ActorPowerMap | GetReceiveActorPowerList () |
float | GetTransmitPower () |
PathLossModel (URandomEngine *random_engine) | |
void | SetOwner (AActor *Owner) |
void | SetParams (const float TransmitPower, const float ReceiverSensitivity, const float Frequency, const float combined_antenna_gain, const float path_loss_exponent, const float reference_distance_fspl, const float filter_distance, const bool use_etsi_fading, const float custom_fading_stddev) |
void | SetPathLossModel (const EPathLossModel path_loss_model) |
void | SetScenario (EScenario scenario) |
void | Simulate (const std::vector< ActorPowerPair > ActorList, UCarlaEpisode *CarlaEpisode, UWorld *World) |
Protected 成员函数 | |
void | CalculateFSPL_d0 () |
double | CalculateNLOSvLoss (const FVector Source, const FVector Destination, const double TxHeight, const double RxHeight, const double RxDistance3d, std::vector< FVector > &vehicle_obstacles) |
float | CalculatePathLoss_WINNER (EPathState state, double Distance) |
float | CalculateShadowFading (EPathState state) |
double | CalculateTwoRayPathLoss (double Distance3d, double TxHeight, double RxHeight) |
float | CalculateTwoRayPathLossSimple (double Distance3d, double TxHeight, double RxHeight) |
float | ComputeLoss (AActor *OtherActor, FVector Source, FVector Destination, double Distance3d, double TxHeight, double RxHeight, double reference_z) |
Method that allow to preprocess if the rays will be traced. | |
bool | GetLocationIfVehicle (const FVector CurrentActorLocation, const FHitResult &HitInfo, const double reference_z, FVector &location) |
bool | HitIsSelfOrOther (const FHitResult &HitInfo, AActor *OtherActor) |
bool | IsVehicle (const FHitResult &HitInfo) |
Protected 属性 | |
TArray< FHitResult > | HitResult |
Private 成员函数 | |
float | CalculateReceivedPower (AActor *OtherActor, const float OtherTransmitPower, const FVector Source, const FVector Destination, const double Distance3d, const double ht, const double ht_local, const double hr, const double hr_local, const double reference_z) |
double | CalcVehicleLoss (const double d1, const double d2, const double h) |
void | EstimatePathStateAndVehicleObstacles (AActor *OtherActor, FVector Source, double TxHeight, double RxHeight, double reference_z, EPathState &state, std::vector< FVector > &vehicle_obstacles) |
double | MakeVehicleBlockageLoss (double TxHeight, double RxHeight, double obj_height, double obj_distance) |
Private 属性 | |
float | combined_antenna_gain |
FVector | CurrentActorLocation |
float | custom_fading_stddev |
const double | epsilon_r = 1.02 |
float | filter_distance |
float | m_fspl_d0 |
AActor * | mActorOwner |
UCarlaEpisode * | mCarlaEpisode |
EPathLossModel | model |
URandomEngine * | mRandomEngine |
ActorPowerMap | mReceiveActorPowerList |
UWorld * | mWorld |
float | path_loss_exponent |
float | ReceiverSensitivity |
float | reference_distance_fspl |
EScenario | scenario |
float | TransmitPower |
bool | use_etsi_fading |
静态 Private 属性 | |
static constexpr float | c_speedoflight = 299792458.0 |
static double | Frequency = 5.9f * std::pow(10, 9) |
static double | Frequency_GHz = 5.9f |
static double | lambda = PathLossModel::c_speedoflight / (5.9f * std::pow(10, 9)) |
在文件 PathLossModel.h 第 35 行定义.
PathLossModel::PathLossModel | ( | URandomEngine * | random_engine | ) |
在文件 PathLossModel.cpp 第 19 行定义.
引用了 mRandomEngine.
|
protected |
在文件 PathLossModel.cpp 第 449 行定义.
引用了 c_speedoflight, Frequency, m_fspl_d0 , 以及 reference_distance_fspl.
被这些函数引用 SetParams().
|
protected |
|
protected |
在文件 PathLossModel.cpp 第 455 行定义.
引用了 Frequency_GHz, Highway, NLOSb , 以及 scenario.
被这些函数引用 ComputeLoss().
|
private |
在文件 PathLossModel.cpp 第 131 行定义.
引用了 combined_antenna_gain, ComputeLoss(), HitResult, mWorld , 以及 ReceiverSensitivity.
被这些函数引用 Simulate().
|
protected |
在文件 PathLossModel.cpp 第 477 行定义.
引用了 custom_fading_stddev, URandomEngine::GetNormalDistribution(), Highway, LOS, mRandomEngine, NLOSb, NLOSv, Rural, scenario, Urban , 以及 use_etsi_fading.
被这些函数引用 ComputeLoss().
|
protected |
|
protected |
在文件 PathLossModel.cpp 第 543 行定义.
|
private |
|
protected |
Method that allow to preprocess if the rays will be traced.
在文件 PathLossModel.cpp 第 328 行定义.
引用了 CalculateNLOSvLoss(), CalculatePathLoss_WINNER(), CalculateShadowFading(), CalculateTwoRayPathLoss(), EstimatePathStateAndVehicleObstacles(), lambda, LOS, m_fspl_d0, model, NLOSb, NLOSv, path_loss_exponent, reference_distance_fspl , 以及 Winner.
被这些函数引用 CalculateReceivedPower().
|
private |
在文件 PathLossModel.cpp 第 224 行定义.
引用了 CurrentActorLocation, GetLocationIfVehicle(), HitIsSelfOrOther(), HitResult, LOS, NLOSb , 以及 NLOSv.
被这些函数引用 ComputeLoss().
|
protected |
在文件 PathLossModel.cpp 第 420 行定义.
引用了 FActorRegistry::FindCarlaActor(), UCarlaEpisode::GetActorRegistry(), FCarlaActor::GetActorType(), mCarlaEpisode, FCarlaActor::Vehicle , 以及 Vehicle.
被这些函数引用 EstimatePathStateAndVehicleObstacles().
std::map< AActor *, float > PathLossModel::GetReceiveActorPowerList | ( | ) |
在文件 PathLossModel.cpp 第 59 行定义.
被这些函数引用 ACustomV2XSensor::PostPhysTick() , 以及 AV2XSensor::PostPhysTick().
|
inline |
在文件 PathLossModel.h 第 52 行定义.
引用了 TransmitPower.
被这些函数引用 ACustomV2XSensor::PrePhysTick() , 以及 AV2XSensor::PrePhysTick().
|
protected |
在文件 PathLossModel.cpp 第 403 行定义.
引用了 mActorOwner.
被这些函数引用 EstimatePathStateAndVehicleObstacles().
|
protected |
在文件 PathLossModel.cpp 第 381 行定义.
引用了 FActorRegistry::FindCarlaActor(), UCarlaEpisode::GetActorRegistry(), FCarlaActor::GetActorType(), mCarlaEpisode, FCarlaActor::Vehicle , 以及 Vehicle.
|
private |
void PathLossModel::SetOwner | ( | AActor * | Owner | ) |
在文件 PathLossModel.cpp 第 24 行定义.
引用了 mActorOwner.
被这些函数引用 ACustomV2XSensor::SetOwner() , 以及 AV2XSensor::SetOwner().
void PathLossModel::SetParams | ( | const float | TransmitPower, |
const float | ReceiverSensitivity, | ||
const float | Frequency, | ||
const float | combined_antenna_gain, | ||
const float | path_loss_exponent, | ||
const float | reference_distance_fspl, | ||
const float | filter_distance, | ||
const bool | use_etsi_fading, | ||
const float | custom_fading_stddev ) |
在文件 PathLossModel.cpp 第 29 行定义.
引用了 c_speedoflight, CalculateFSPL_d0(), combined_antenna_gain, custom_fading_stddev, filter_distance, Frequency, Frequency_GHz, lambda, path_loss_exponent, ReceiverSensitivity, reference_distance_fspl, TransmitPower , 以及 use_etsi_fading.
被这些函数引用 ACustomV2XSensor::SetPropagationParams() , 以及 AV2XSensor::SetPropagationParams().
void PathLossModel::SetPathLossModel | ( | const EPathLossModel | path_loss_model | ) |
在文件 PathLossModel.cpp 第 323 行定义.
引用了 model.
被这些函数引用 ACustomV2XSensor::SetPathLossModel() , 以及 AV2XSensor::SetPathLossModel().
void PathLossModel::SetScenario | ( | EScenario | scenario | ) |
在文件 PathLossModel.cpp 第 54 行定义.
引用了 scenario.
被这些函数引用 ACustomV2XSensor::SetScenario() , 以及 AV2XSensor::SetScenario().
void PathLossModel::Simulate | ( | const std::vector< ActorPowerPair > | ActorList, |
UCarlaEpisode * | CarlaEpisode, | ||
UWorld * | World ) |
在文件 PathLossModel.cpp 第 64 行定义.
引用了 CalculateReceivedPower(), CurrentActorLocation, filter_distance, FActorRegistry::FindCarlaActor(), UCarlaEpisode::GetActorRegistry(), mActorOwner, mCarlaEpisode, mReceiveActorPowerList , 以及 mWorld.
被这些函数引用 ACustomV2XSensor::PostPhysTick() , 以及 AV2XSensor::PostPhysTick().
|
staticconstexprprivate |
在文件 PathLossModel.h 第 81 行定义.
被这些函数引用 CalculateFSPL_d0() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 99 行定义.
被这些函数引用 CalculateReceivedPower() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 78 行定义.
被这些函数引用 EstimatePathStateAndVehicleObstacles() , 以及 Simulate().
|
private |
在文件 PathLossModel.h 第 98 行定义.
被这些函数引用 CalculateShadowFading() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 84 行定义.
被这些函数引用 CalculateTwoRayPathLoss().
|
private |
在文件 PathLossModel.h 第 95 行定义.
被这些函数引用 SetParams() , 以及 Simulate().
|
staticprivate |
在文件 PathLossModel.h 第 88 行定义.
被这些函数引用 CalculateFSPL_d0() , 以及 SetParams().
|
staticprivate |
在文件 PathLossModel.h 第 87 行定义.
被这些函数引用 CalculatePathLoss_WINNER() , 以及 SetParams().
|
protected |
在文件 PathLossModel.h 第 123 行定义.
被这些函数引用 CalculateReceivedPower() , 以及 EstimatePathStateAndVehicleObstacles().
|
staticprivate |
在文件 PathLossModel.h 第 89 行定义.
被这些函数引用 CalculateTwoRayPathLoss(), CalcVehicleLoss(), ComputeLoss() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 102 行定义.
被这些函数引用 CalculateFSPL_d0() , 以及 ComputeLoss().
|
private |
在文件 PathLossModel.h 第 72 行定义.
被这些函数引用 HitIsSelfOrOther(), SetOwner() , 以及 Simulate().
|
private |
在文件 PathLossModel.h 第 73 行定义.
被这些函数引用 GetLocationIfVehicle(), IsVehicle() , 以及 Simulate().
|
private |
在文件 PathLossModel.h 第 96 行定义.
被这些函数引用 ComputeLoss() , 以及 SetPathLossModel().
|
private |
在文件 PathLossModel.h 第 75 行定义.
被这些函数引用 CalculateShadowFading() , 以及 PathLossModel().
|
private |
在文件 PathLossModel.h 第 77 行定义.
被这些函数引用 GetReceiveActorPowerList() , 以及 Simulate().
|
private |
在文件 PathLossModel.h 第 74 行定义.
被这些函数引用 CalculateReceivedPower() , 以及 Simulate().
|
private |
在文件 PathLossModel.h 第 94 行定义.
被这些函数引用 ComputeLoss() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 92 行定义.
被这些函数引用 CalculateReceivedPower() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 90 行定义.
被这些函数引用 CalculateFSPL_d0(), ComputeLoss() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 93 行定义.
被这些函数引用 CalculatePathLoss_WINNER(), CalculateShadowFading() , 以及 SetScenario().
|
private |
在文件 PathLossModel.h 第 91 行定义.
被这些函数引用 GetTransmitPower() , 以及 SetParams().
|
private |
在文件 PathLossModel.h 第 97 行定义.
被这些函数引用 CalculateShadowFading() , 以及 SetParams().