Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/doppler measured frequency observation model #214

Draft
wants to merge 24 commits into
base: develop
Choose a base branch
from

Conversation

simon-van-hulle
Copy link

@simon-van-hulle simon-van-hulle commented May 12, 2024

Doppler Measured Frequency Model

This pull request implements an observation model for the Doppler Measured Frequency. The name is a temporary choice, but it is supposed to mean the received frequency in a Doppler observation.

Model

Here is some information about the implementation:

  • The model requires that the receiver LinkEnd is associated with the observation time
  • It requires ancillarySettings with FrequencyBands set so that the turnaround ratio can be calculated
  • The model requires a TwoWayDopplerObservationModel (which it uses for the underlying LightTimeCalculators to make a MultiLegLightTimeCalculator
  • A StationFrequencyInterpolator is necessary to determine the transmitted frequency
  • The model relies on twoWayDopplerModel_->getMultiplicationTerm() so that it works both for averagedWithSpeedOfLight as well as the normal case.
  • Finally the observable is as follows, where $h_{2wDoppler}$ is the 2-way Doppler observable and TAR is the turn-around-ratio as a function of the FrequencyBands:

$$h = f_T \cdot (1 + h_{2wDoppler} ) \cdot TAR $$

Note that it is currently only implemented for 3 LinkEnds (uplink + downlink) and I have only tested with transmitter and receiver being the same ground station.

Not ready to be merged

The following items need to be resolved:

  • Change naming if necessary
  • Implementation of the Partials
  • Complete unit test. There currently is only a very preliminary test.
  • Validation. I implemented a simple example (see tudatpy-examples), but this still shows a significant residual of which I don't know the origin.
  • I think the current MultiLegLightTimeCalculator does not account for the changing transmitted frequency. We should check and fix this
  • ... ?

Please let me know if anything is unclear or if more TODOs need to be added.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: tudat
Development

Successfully merging this pull request may close these issues.

2 participants