ESA EOF文件输入/输出库。
项目描述
xseof
概述
ESA EOF文件输入/输出库。
此包提供了一组“数据类”,与xsdata Python库兼容,用于访问和操作ESA地球观测地面段文件格式(EOF)XML文件[1]。
特别是,此包支持[1]中描述的所有基于XML的轨道和姿态产品。
项目链接
安装
通过pip进行标准安装
$ pip install xseof
通过conda安装
$ conda install -c avalentino xseof
测试
转到源目录根目录并运行以下命令
$ python3 -m pytest
基本用法
加载一个通用的轨道文件
>>> import xseof
>>> orbit = xseof.load(
"MA1_TEST_AUX_ORBRES_20210610T045753_20210610T065853_0001.EOF")
访问和打印加载的数据
>>> import pprint
>>> orbit.earth_observation_header.fixed_header.notes = ""
>>> pprint.pprint(orbit.earth_observation_header.fixed_header)
FixedHeaderType(
file_name='MA1_TEST_AUX_ORBRES_20210610T045753_20210610T065853_0001',
file_description='FOS Orbit File',
notes='',
mission='MetOpSGA1',
file_class='TEST',
file_type='AUX_ORBRES',
validity_period=ValidityPeriodType(
validity_start='UTC=2021-06-10T04:57:53',
validity_stop='UTC=2021-06-10T05:02:23'),
file_version='0001',
eoffs_version='3.0',
source=SourceType(system='System Identification as per Ground '
'Segment File Format Standard '
'(PE-TN-ESA-GS-0001)',
creator='Creator Identification as per '
'Ground Segment File Format Standard '
'(PE-TN-ESA-GS-0001)',
creator_version='Creator Version '
'Identification as per '
'Ground Segment File Format '
'Standard '
'(PE-TN-ESA-GS-0001)',
creation_date='UTC=2022-06-23T10:06:43'))
>>> print(orbit.data_block.list_of_osvs.count)
10
>>> pprint.pprint(orbit.data_block.list_of_osvs.osv[0])
OsvType(tai='TAI=2021-06-10T04:57:17.817060',
utc='UTC=2021-06-10T04:57:52.817060',
ut1='UT1=2021-06-10T04:57:53.117059',
absolute_orbit=999,
x=PositionComponentType(value=Decimal('-1606749.988'), unit='m'),
y=PositionComponentType(value=Decimal('-5677008.966'), unit='m'),
z=PositionComponentType(value=Decimal('-4135675.595'), unit='m'),
vx=VelocityComponentType(value=Decimal('-2876.652288'), unit='m/s'),
vy=VelocityComponentType(value=Decimal('-3541.028256'), unit='m/s'),
vz=VelocityComponentType(value=Decimal('5985.303441'), unit='m/s'),
quality='0000000000000')
加载特定类型的EOF文件
>>> from xseof import int_attref
>>> quaternions = int_attref.load(
"MA1_TEST_INT_ATTREF_20210610T045753_20210610T065853_0001.EOF")
从字符串加载数据
>>> from xseof import aux_orbres >>> filename = "MA1_TEST_AUX_ORBRES_20210610T045753_20210610T065853_0001.EOF" >>> with open(filename) as fd: ... data = fd.read() >>> orbit = aux_orbres.from_string(data)
许可
版权所有 2022 Antonio Valentino
本软件受Apache许可证2.0版(“许可证”)许可;除非遵守许可证,否则不得使用此文件。您可以在以下位置获得许可证副本:
除非适用法律要求或书面同意,否则在许可证下分发的软件按“原样”基础分发,不提供任何形式的明示或暗示保证。有关具体语言,请参阅许可证。
版本历史
xseof v1.1.1 (27/12/2022)
提高EOF文件检测的鲁棒性。
改进对element-tree输入的支持。
xseof v1.1.0 (23/12/2022)
修复Sentine-1轨道表字符串的加载问题。
新增strict选项(默认:False),在
和 中强制执行严格的XML命名空间检查。 改进文档字符串,明确指出使用
和 函数需要 lxml。还添加了专门的单元测试。 提高测试覆盖率。
xseof v1.0.0 (20/11/2022)
初始发布。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
xseof-1.1.1.tar.gz (48.7 kB 查看哈希值)
构建分发
xseof-1.1.1-py3-none-any.whl (169.3 kB 查看哈希值)
关闭
xseof-1.1.1.tar.gz的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | de2eeb9c5e9512cf0c76c557392d91bbf8e8999aa27e987bc08af9ab35040e1a |
|
| MD5 | 38189393a48b6076563438ea512ca070 |
|
| BLAKE2b-256 | 173f32b8b37914e8848329d94194a00ae205e9e0a90ce71b2f65282b1327c154 |
关闭
xseof-1.1.1-py3-none-any.whl的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 797035e8a9bf17931b090bc3dbee3b3e4c4a13a23a750531f6638c509e82dd0a |
|
| MD5 | ac06f7ecaf2fe6bd6a9ed83480715350 |
|
| BLAKE2b-256 | dc276518d55653b45b6283737ae572df24fb119dc497cae8a2523e25add38206 |