Name | juice-phs JSON |
Version |
0.6.0
JSON |
| download |
home_page | None |
Summary | None |
upload_time | 2024-10-04 06:45:28 |
maintainer | None |
docs_url | None |
author | JUICE SOC team |
requires_python | >=3.6 |
license | MIT |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# 🪢 JUICE Planning Harmonisation System
juice-phs is a Python package that supports the Detailed Scenario Exercises during the Observation Plan,
Pointing and Instrument Timeline Harmonisation processes. It also includes number of routines to calculate the
geometry parameters that require spacecraft attitude information.
## 🛠️️ Prerequisites
* A computer based on a 64-bit Unix operating system: Linux or Mac
* Python 3.8 (or higher)
## ⎆ Python Installation
Install juice-phs with:
```sh
pip install [--upgrade] juice-phs
```
If you have a JUICE Git user, you can also install juice-phs locally from the repository:
```sh
git clone https://juigitlab.esac.esa.int/python/juice-phs
cd juice-phs
pip install .
```
## Using the library
After installing the library can be used with the Python Shell or with its CLI.
### Command line interface
The package has a number of CLI entry points:
- `opl2otl` convert Observation Plan (`OPL`) to Observation Timeline (`OTL`).
- `opl2otc` convert Observation Plan (`OPL`) to Observation Timeline Coverage (`OTC`).
Usage examples are provided hereunder. Using the following input Observation Plan:
```sh
RIME_PRIME_OBSERVATION,2032-07-02T16:09:54.000Z,2032-07-02T16:31:31.000Z,RIME_EUROPA_FLYBY_02,RIME
RPWI_OBSERVATION,2032-07-02T16:08:54.000Z,2032-07-02T16:32:31.000Z,RPWI_In_situ_slow_Radio_Full,RPWI
RPWI_OBSERVATION,2032-07-02T06:52:25.000Z,2032-07-02T14:52:25.000Z,RPWI_In_situ_normal_Radio_Full,RPWI
JANUS_PRIME_OBSERVATION,2032-07-02T04:18:40.000Z,2032-07-02T04:32:00.000Z,SJS0004C50A_UVS_SAT_STELL_OCC_A,JANUS
```
with:
```sh
opl2otl -h
usage: opl2otl [-h] [-o OUTPUT] [-s SCENARIO] [-i ITERATION] [-u] csv
juice-itl: convert Observation Plan (OPL) to Observation Timeline (OTL).
positional arguments:
csv Observation Plan (OPL) CSV input file.
optional arguments:
-h, --help show this help message and exit
-o OUTPUT, --output OUTPUT
Output directory (default: Current).
-s SCENARIO, --scenario SCENARIO
Scenario Identifier (default: E001).
-i ITERATION, --iteration ITERATION
Iteration reference (default: S01P00).
-u, --utc File times as UTC (default: Relative to events).
```
with the following arguments:
```sh
opl2otl opl_input.csv
```
generates the following directory structure:
```sh
.
|-- EVF_E001_01_SOC_S01P01.EVF
|-- EVF_E001_01_SOC_SXXPYY.EVF
|-- JANUS
| |-- OTL_E001_01_JAN_S01P01.ITL
| `-- OTL_E001_01_JAN_SXXPYY.ITL
|-- RIME
| |-- OTL_E001_01_RIM_S01P01.ITL
| `-- OTL_E001_01_RIM_SXXPYY.ITL
`-- RPWI
|-- OTL_E001_01_RPW_S01P01.ITL
`-- OTL_E001_01_RPW_SXXPYY.ITL
```
with the following content for `OTL_E001_01_RPW_SXXPYY.ITL`:
```sh
PTR_OBS_END (COUNT = 1) 02:20:25 RPWI OBS_START RPWI_In_situ_normal_Radio_Full
PTR_OBS_START (COUNT = 2) -01:17:29 RPWI OBS_END RPWI_In_situ_normal_Radio_Full
PTR_OBS_START (COUNT = 2) -00:01:00 RPWI OBS_START RPWI_In_situ_slow_Radio_Full
PTR_OBS_END (COUNT = 2) 00:01:00 RPWI OBS_END RPWI_In_situ_slow_Radio_Full
```
with :
```sh
opl2qlc -h
usage: opl2otc [-h] [-o OUTPUT] csv
juice-itl: convert Observation Plan (OPL) to Observation Timeline Coverage (OTC).
positional arguments:
csv Quick-Look Coverage input CSV input file.
optional arguments:
-h, --help show this help message and exit
-o OUTPUT, --output OUTPUT
Output file (default: qlc_output.csv at current directory).
```
with the following arguments:
```sh
opl2otc opl_input.csv -o otc_output.csv
```
generates the following output file:
```sh
RIME_EUROPA_FLYBY_02,2032-07-02T16:09:54.000Z,2032-07-02T16:31:31.000Z,0,RIME
RPWI_In_situ_slow_Radio_Full,2032-07-02T16:08:54.000Z,2032-07-02T16:32:31.000Z,0,RPWI
RPWI_In_situ_normal_Radio_Full,2032-07-02T06:52:25.000Z,2032-07-02T14:52:25.000Z,0,RPWI
SJS0004C50A_UVS_SAT_STELL_OCC_A,2032-07-02T04:18:40.000Z,2032-07-02T04:32:00.000Z,0,JANUS
```
Raw data
{
"_id": null,
"home_page": null,
"name": "juice-phs",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": null,
"author": "JUICE SOC team",
"author_email": "juice_soc@cosmos.esa.int",
"download_url": null,
"platform": null,
"description": "# \ud83e\udea2 JUICE Planning Harmonisation System\n\njuice-phs is a Python package that supports the Detailed Scenario Exercises during the Observation Plan,\nPointing and Instrument Timeline Harmonisation processes. It also includes number of routines to calculate the\ngeometry parameters that require spacecraft attitude information.\n\n\n## \ud83d\udee0\ufe0f\ufe0f Prerequisites\n\n * A computer based on a 64-bit Unix operating system: Linux or Mac\n * Python 3.8 (or higher)\n\n\n## \u2386 Python Installation\n\nInstall juice-phs with:\n\n```sh\npip install [--upgrade] juice-phs\n```\n\nIf you have a JUICE Git user, you can also install juice-phs locally from the repository:\n\n```sh\ngit clone https://juigitlab.esac.esa.int/python/juice-phs\ncd juice-phs\npip install .\n```\n\n## Using the library\n\nAfter installing the library can be used with the Python Shell or with its CLI.\n\n### Command line interface\n\nThe package has a number of CLI entry points:\n - `opl2otl` convert Observation Plan (`OPL`) to Observation Timeline (`OTL`).\n - `opl2otc` convert Observation Plan (`OPL`) to Observation Timeline Coverage (`OTC`).\n\nUsage examples are provided hereunder. Using the following input Observation Plan:\n```sh\nRIME_PRIME_OBSERVATION,2032-07-02T16:09:54.000Z,2032-07-02T16:31:31.000Z,RIME_EUROPA_FLYBY_02,RIME\nRPWI_OBSERVATION,2032-07-02T16:08:54.000Z,2032-07-02T16:32:31.000Z,RPWI_In_situ_slow_Radio_Full,RPWI\nRPWI_OBSERVATION,2032-07-02T06:52:25.000Z,2032-07-02T14:52:25.000Z,RPWI_In_situ_normal_Radio_Full,RPWI\nJANUS_PRIME_OBSERVATION,2032-07-02T04:18:40.000Z,2032-07-02T04:32:00.000Z,SJS0004C50A_UVS_SAT_STELL_OCC_A,JANUS\n```\n\nwith:\n```sh\nopl2otl -h \n\nusage: opl2otl [-h] [-o OUTPUT] [-s SCENARIO] [-i ITERATION] [-u] csv\n\njuice-itl: convert Observation Plan (OPL) to Observation Timeline (OTL).\n\npositional arguments:\n csv Observation Plan (OPL) CSV input file.\n\noptional arguments:\n -h, --help show this help message and exit\n -o OUTPUT, --output OUTPUT\n Output directory (default: Current).\n -s SCENARIO, --scenario SCENARIO\n Scenario Identifier (default: E001).\n -i ITERATION, --iteration ITERATION\n Iteration reference (default: S01P00).\n -u, --utc File times as UTC (default: Relative to events).\n```\n\nwith the following arguments:\n```sh\nopl2otl opl_input.csv\n```\n\ngenerates the following directory structure:\n```sh\n.\n|-- EVF_E001_01_SOC_S01P01.EVF\n|-- EVF_E001_01_SOC_SXXPYY.EVF\n|-- JANUS\n| |-- OTL_E001_01_JAN_S01P01.ITL\n| `-- OTL_E001_01_JAN_SXXPYY.ITL\n|-- RIME\n| |-- OTL_E001_01_RIM_S01P01.ITL\n| `-- OTL_E001_01_RIM_SXXPYY.ITL\n`-- RPWI\n |-- OTL_E001_01_RPW_S01P01.ITL\n `-- OTL_E001_01_RPW_SXXPYY.ITL\n\n```\n\nwith the following content for `OTL_E001_01_RPW_SXXPYY.ITL`:\n```sh\nPTR_OBS_END (COUNT = 1) 02:20:25 RPWI OBS_START RPWI_In_situ_normal_Radio_Full \nPTR_OBS_START (COUNT = 2) -01:17:29 RPWI OBS_END RPWI_In_situ_normal_Radio_Full\n\nPTR_OBS_START (COUNT = 2) -00:01:00 RPWI OBS_START RPWI_In_situ_slow_Radio_Full \nPTR_OBS_END (COUNT = 2) 00:01:00 RPWI OBS_END RPWI_In_situ_slow_Radio_Full\n```\n\nwith :\n```sh\nopl2qlc -h\n\nusage: opl2otc [-h] [-o OUTPUT] csv\n\njuice-itl: convert Observation Plan (OPL) to Observation Timeline Coverage (OTC).\n\npositional arguments:\n csv Quick-Look Coverage input CSV input file.\n\noptional arguments:\n -h, --help show this help message and exit\n -o OUTPUT, --output OUTPUT\n Output file (default: qlc_output.csv at current directory).\n```\n\nwith the following arguments:\n```sh\nopl2otc opl_input.csv -o otc_output.csv\n```\n\ngenerates the following output file:\n```sh\nRIME_EUROPA_FLYBY_02,2032-07-02T16:09:54.000Z,2032-07-02T16:31:31.000Z,0,RIME\nRPWI_In_situ_slow_Radio_Full,2032-07-02T16:08:54.000Z,2032-07-02T16:32:31.000Z,0,RPWI\nRPWI_In_situ_normal_Radio_Full,2032-07-02T06:52:25.000Z,2032-07-02T14:52:25.000Z,0,RPWI\nSJS0004C50A_UVS_SAT_STELL_OCC_A,2032-07-02T04:18:40.000Z,2032-07-02T04:32:00.000Z,0,JANUS\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": null,
"version": "0.6.0",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "11713941744cc7f034f78ba436e812d2e24c9f34964cd16dc0683331f3699a8e",
"md5": "1d6a91a5d6638a11dfdec39b73f97f0b",
"sha256": "ac2a4d6232633895e9a5098a3fc79f42c7113d06cd3c792d68d5f6d4d6b2082a"
},
"downloads": -1,
"filename": "juice_phs-0.6.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1d6a91a5d6638a11dfdec39b73f97f0b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 42218,
"upload_time": "2024-10-04T06:45:28",
"upload_time_iso_8601": "2024-10-04T06:45:28.704680Z",
"url": "https://files.pythonhosted.org/packages/11/71/3941744cc7f034f78ba436e812d2e24c9f34964cd16dc0683331f3699a8e/juice_phs-0.6.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-04 06:45:28",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "juice-phs"
}