海上任务规划
seaplan的Python项目详细描述
基于站位和占用时间的远洋任务规划
概述
读取包含变量的参数文件(yaml格式) 以及要执行的操作列表。
参数文件还可以指定包含名称、纬度的“车站文件” 以及车站的经度。所有这些站点都将在地图上标出 如果一个操作具有相同的名称,并且没有指定纬度和经度,则此站 将使用位置。
输出具有预测(或指定)时间的操作表。桌子在里面 多标记格式,可以按原样打印或转换为HTML、LaTex等格式 印刷。
参数文件
参数文件中可以提供的变量有(默认值在[大括号]):
station_file:包含站点信息的csv文件。它的第一行 是使用名称"Name", "Lat", "Lon", "Type" and "Comment"
指定字段顺序的头。- ^ csv文件的{tt3}$
- field_separator:[';']
printout:
- show_comments:在输出中显示注释[False]
- print_past:打印过去的事件[False]
timing:
ignore_depart_arrive_times:忽略'arrive_time'和 'depart_time'in events(允许您测试时间预测) [False]
ship_speed.kn_i:以节为单位的船舶巡航速度[10.]
ship_latency.h:从stopped[0.5]到speed的时间丢失
action_times.h:每个操作/站类型的默认小时数:
action_times.h: "{action_type1}": "{station_type1}": *float* "{station_type2}": *float* default: *float* "{action_type2}": default: *float*
map:
- grid:以十进制度数表示的网格间距[x:1; y:1]
- bounds:以十进制度数为单位的绘图界限(如果绘图映射=真,则为必需)
- 地图背景图片[假]。三种可能性:
- {string}:要在地图上作为背景图像打印的netcdf文件的名称
- True:将etopo图像绘制为背景
- False:没有背景地图
- plot_past_tracks:绘制过去的船舶轨迹[True]
- show_plot:绘制屏幕和文件[False]
- events:连续的“事件”列表[强制]。
如果“station”键对应于station文件中的“name”, 然后是站点位置、类型和注释 都是从那个档案里拿出来的。如果没有,则必须至少指定 你第一次点名的时候拉特和隆。这个 关键是:
- station (str):站名[必需]
- lat (float):车站纬度[车站纬度或0.]
- lon (float):站点经度[station.lat或0.]
- arrive_time (ISO):[上一次出发时间+过境时间+延迟时间]
- depart_time (ISO):[到达时间+小时]
- hours (float):预计运行小时数 [action_time.h['{action_type}']['{station_type}'], action_time.h['{action_type}']['default'],或0.]
- comment (str):注释
- speed (float):上一站点和给定站点之间的速度[船速/节]
其他功能
- 将站点/操作的名称放在绘图上,除非它们没有“小时”(只是 航路点)
- 划掉已经访问过的车站(输入出发时间 在utcdatetime.now()之前
- 每次使用动作名称“newleg”时更改船的轨迹颜色