Skip to content

Commit

Permalink
Add frame information for argument name
Browse files Browse the repository at this point in the history
  • Loading branch information
200km committed Dec 19, 2023
1 parent 2822357 commit 0c032b6
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 22 deletions.
24 changes: 12 additions & 12 deletions src/environment/global/gnss_satellites.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -835,69 +835,69 @@ double GnssSatellites::GetClockOffset_m(const size_t gnss_satellite_id) const {
return gnss_info_.GetClockOffset_m(gnss_satellite_id);
}

double GnssSatellites::GetPseudoRangeEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m, double receiver_clock_offset_m,
double GnssSatellites::GetPseudoRangeEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_ecef_m, double receiver_clock_offset_m,
const double frequency_MHz) const {
// gnss_satellite_id is wrong or not validate
if (gnss_satellite_id >= kTotalNumberOfGnssSatellite || !GetWhetherValid(gnss_satellite_id)) return 0.0;

double res = 0.0;
auto gnss_position = gnss_info_.GetPosition_ecef_m(gnss_satellite_id);
for (int i = 0; i < 3; ++i) {
res += pow(receiver_position_m(i) - gnss_position(i), 2.0);
res += pow(receiver_position_ecef_m(i) - gnss_position(i), 2.0);
}
res = sqrt(res);

// clock bias
res += receiver_clock_offset_m - gnss_info_.GetClockOffset_m(gnss_satellite_id);

// ionospheric delay
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_m, frequency_MHz, GnssFrameDefinition::kEcef);
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_ecef_m, frequency_MHz, GnssFrameDefinition::kEcef);

res += ionospheric_delay;

return res;
}

double GnssSatellites::GetPseudoRangeEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m, double receiver_clock_offset_m,
double GnssSatellites::GetPseudoRangeEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_eci_m, double receiver_clock_offset_m,
const double frequency_MHz) const {
// gnss_satellite_id is wrong or not validate
if (gnss_satellite_id >= kTotalNumberOfGnssSatellite || !GetWhetherValid(gnss_satellite_id)) return 0.0;

double res = 0.0;
auto gnss_position = gnss_info_.GetPosition_eci_m(gnss_satellite_id);
for (int i = 0; i < 3; ++i) {
res += pow(receiver_position_m(i) - gnss_position(i), 2.0);
res += pow(receiver_position_eci_m(i) - gnss_position(i), 2.0);
}
res = sqrt(res);

// clock bias
res += receiver_clock_offset_m - gnss_info_.GetClockOffset_m(gnss_satellite_id);

// ionospheric delay
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_m, frequency_MHz, GnssFrameDefinition::kEci);
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_eci_m, frequency_MHz, GnssFrameDefinition::kEci);

res += ionospheric_delay;

return res;
}

pair<double, double> GnssSatellites::GetCarrierPhaseEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m,
pair<double, double> GnssSatellites::GetCarrierPhaseEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_ecef_m,
double receiver_clock_offset_m, const double frequency_MHz) const {
// gnss_satellite_id is wrong or not validate
if (gnss_satellite_id >= kTotalNumberOfGnssSatellite || !GetWhetherValid(gnss_satellite_id)) return {0.0, 0.0};

double res = 0.0;
auto gnss_position = gnss_info_.GetPosition_ecef_m(gnss_satellite_id);
for (int i = 0; i < 3; ++i) {
res += pow(receiver_position_m(i) - gnss_position(i), 2.0);
res += pow(receiver_position_ecef_m(i) - gnss_position(i), 2.0);
}
res = sqrt(res);

// clock bias
res += receiver_clock_offset_m - gnss_info_.GetClockOffset_m(gnss_satellite_id);

// ionospheric delay
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_m, frequency_MHz, GnssFrameDefinition::kEcef);
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_ecef_m, frequency_MHz, GnssFrameDefinition::kEcef);

res -= ionospheric_delay;

Expand All @@ -911,23 +911,23 @@ pair<double, double> GnssSatellites::GetCarrierPhaseEcef(const size_t gnss_satel
return {cycle, bias};
}

pair<double, double> GnssSatellites::GetCarrierPhaseEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m,
pair<double, double> GnssSatellites::GetCarrierPhaseEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_eci_m,
double receiver_clock_offset_m, const double frequency_MHz) const {
// gnss_satellite_id is wrong or not validate
if (gnss_satellite_id >= kTotalNumberOfGnssSatellite || !GetWhetherValid(gnss_satellite_id)) return {0.0, 0.0};

double res = 0.0;
auto gnss_position = gnss_info_.GetPosition_eci_m(gnss_satellite_id);
for (int i = 0; i < 3; ++i) {
res += pow(receiver_position_m(i) - gnss_position(i), 2.0);
res += pow(receiver_position_eci_m(i) - gnss_position(i), 2.0);
}
res = sqrt(res);

// clock bias
res += receiver_clock_offset_m - gnss_info_.GetClockOffset_m(gnss_satellite_id);

// ionospheric delay
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_m, frequency_MHz, GnssFrameDefinition::kEci);
const double ionospheric_delay = AddIonosphericDelay(gnss_satellite_id, receiver_position_eci_m, frequency_MHz, GnssFrameDefinition::kEci);

res -= ionospheric_delay;

Expand Down
20 changes: 10 additions & 10 deletions src/environment/global/gnss_satellites.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -372,46 +372,46 @@ class GnssSatellites : public ILoggable {
* @fn GetPseudoRangeEcef
* @brief Calculate pseudo range between receiver and a GNSS satellite
* @param [in] gnss_satellite_id: GNSS satellite ID
* @param [in] receiver_position_m: Receiver position vector in the ECEF frame [m]
* @param [in] receiver_position_ecef_m: Receiver position vector in the ECEF frame [m]
* @param [in] receiver_clock_offset_m: Receiver clock
* @param [in] frequency_MHz: Frequency of the signal [MHz]
* @return Pseudo range [m]
*/
double GetPseudoRangeEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m, double receiver_clock_offset_m,
double GetPseudoRangeEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_ecef_m, double receiver_clock_offset_m,
const double frequency_MHz) const;
/**
* @fn GetPseudoRangeEci
* @brief Calculate pseudo range between receiver and a GNSS satellite
* @param [in] gnss_satellite_id: GNSS satellite ID
* @param [in] receiver_position_m: Receiver position vector in the ECI frame [m]
* @param [in] receiver_position_eci_m: Receiver position vector in the ECI frame [m]
* @param [in] receiver_clock_offset_m: Receiver clock
* @param [in] frequency_MHz: Frequency of the signal [MHz]
* @return Pseudo range [m]
*/
double GetPseudoRangeEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m, double receiver_clock_offset_m,
double GetPseudoRangeEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_eci_m, double receiver_clock_offset_m,
const double frequency_MHz) const;
/**
* @fn GetCarrierPhaseEcef
* @brief Calculate carrier phase observed by a receiver for a GNSS satellite
* @param [in] gnss_satellite_id: GNSS satellite ID
* @param [in] receiver_position_m: Receiver position vector in the ECEF frame [m]
* @param [in] receiver_position_ecef_m: Receiver position vector in the ECEF frame [m]
* @param [in] receiver_clock_offset_m: Receiver clock
* @param [in] frequency_MHz: Frequency of the signal [MHz]
* @return Carrier phase cycle and bias [-]
*/
std::pair<double, double> GetCarrierPhaseEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m, double receiver_clock_offset_m,
const double frequency_MHz) const;
std::pair<double, double> GetCarrierPhaseEcef(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_ecef_m,
double receiver_clock_offset_m, const double frequency_MHz) const;
/**
* @fn GetCarrierPhaseEci
* @brief Calculate carrier phase observed by a receiver for a GNSS satellite
* @param [in] gnss_satellite_id: GNSS satellite ID
* @param [in] receiver_position_m: Receiver position vector in the ECI frame [m]
* @param [in] receiver_position_eci_m: Receiver position vector in the ECI frame [m]
* @param [in] receiver_clock_offset_m: Receiver clock
* @param [in] frequency_MHz: Frequency of the signal [MHz]
* @return Carrier phase cycle and bias [-]
*/
std::pair<double, double> GetCarrierPhaseEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_m, double receiver_clock_offset_m,
const double frequency_MHz) const;
std::pair<double, double> GetCarrierPhaseEci(const size_t gnss_satellite_id, libra::Vector<3> receiver_position_eci_m,
double receiver_clock_offset_m, const double frequency_MHz) const;

// Override ILoggable
/**
Expand Down

0 comments on commit 0c032b6

Please sign in to comment.