You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CCSDS OEM is a standard for transferring orbital element data. As such, ANISE shall support reading these files and producing them from an ephemeris.
The API should also allow for converting an ephemeris into another frame prior to the serialization of the data in OEM format.
Requirements
Convert the OEM state data into an SPK with relevant metadata where possible.
Copy would-be discarded data into DAF comment section
Test plans
Generate a CCSDS OEM file from a public tool, or find one online, and convert that into an SPK file. Then make sure that when queried at the epochs present in the OEM file, the state data from the SPK matches that of the OEM file.
Test that optional fields do not cause the parser to fail.
Test that incorrectly formatted fields do not cause the parser to fail.
Design
Algorithm demonstration
N/A
API definition
A new module called ccsds will be added along with an oem submodule. All of the OEM parsing logic will be there.
The ccsds module will only be available with the ccsds crate feature, enabled by default, but not supported in no_std environments.
High level architecture
The text version of the OEMs will likely be parsed using an abstract syntax tree. Although, it is to be see whether that is an overkill since the text file is relatively simple. The XML version, if it is to be supported at all, will use an standard XML parser.
The detailed design *will be used in the documentation of how ANISE works.
Feel free to fill out additional QA sections here, but these will typically be determined during the development, including the release in which this issue will be tackled.
The text was updated successfully, but these errors were encountered:
High level description
CCSDS OEM is a standard for transferring orbital element data. As such, ANISE shall support reading these files and producing them from an ephemeris.
The API should also allow for converting an ephemeris into another frame prior to the serialization of the data in OEM format.
Requirements
Test plans
Design
Algorithm demonstration
N/A
API definition
ccsds
will be added along with anoem
submodule. All of the OEM parsing logic will be there.ccsds
module will only be available with theccsds
crate feature, enabled by default, but not supported inno_std
environments.High level architecture
The text version of the OEMs will likely be parsed using an abstract syntax tree. Although, it is to be see whether that is an overkill since the text file is relatively simple. The XML version, if it is to be supported at all, will use an standard XML parser.
Ref. 1: https://createlang.rs/01_calculator/ast.html
Ref. 2: https://doc.rust-lang.org/stable/nightly-rustc/rustc_ast/ast/index.html
Detailed design
The detailed design *will be used in the documentation of how ANISE works.
Feel free to fill out additional QA sections here, but these will typically be determined during the development, including the release in which this issue will be tackled.
The text was updated successfully, but these errors were encountered: