Esempio n. 1
0
    def plot_sat_cmd_aoi(self,
                         sats_ids_list,
                         aoi_curves_by_sat_id,
                         plot_start,
                         plot_end,
                         base_time,
                         plot_title='Satellite CMD Uplink AoI',
                         plot_size_inches=(12, 12),
                         show=False,
                         fig_name='plots/sat_aoi_plot.pdf'):

        plot_params = {}
        plot_params['plot_start_dt'] = plot_start
        plot_params['plot_end_dt'] = plot_end
        plot_params['base_time_dt'] = base_time

        plot_params['plot_title'] = plot_title
        plot_params['plot_size_inches'] = plot_size_inches
        plot_params['show'] = show
        plot_params['fig_name'] = fig_name
        plot_params['plot_fig_extension'] = self.plot_fig_extension

        plot_params['ylabel'] = 'Satellite Index'
        plot_params['time_units'] = self.time_units

        plot_params[
            'plot_bound_min_aoi_hours'] = self.cmd_aoi_metrics_plot_params[
                'plot_bound_min_aoi_hours']
        plot_params[
            'plot_bound_max_aoi_hours'] = self.cmd_aoi_metrics_plot_params[
                'plot_bound_max_aoi_hours']

        pltl.plot_aoi_by_item(sats_ids_list, aoi_curves_by_sat_id, plot_params)
Esempio n. 2
0
    def plot_obs_aoi(self,
                     targ_ids_list,
                     aoi_curves_by_targ_id,
                     plot_start,
                     plot_end,
                     base_time,
                     plot_title='Observation Target AoI',
                     plot_size_inches=(12, 12),
                     show=False,
                     fig_name='plots/obs_aoi_plot.pdf'):

        plot_params = {}
        plot_params['plot_start_dt'] = plot_start
        plot_params['plot_end_dt'] = plot_end
        plot_params['base_time_dt'] = base_time

        plot_params['plot_title'] = plot_title
        plot_params['plot_size_inches'] = plot_size_inches
        plot_params['show'] = show
        plot_params['fig_name'] = fig_name
        plot_params['plot_fig_extension'] = self.plot_fig_extension

        plot_params['ylabel'] = 'Target Index'
        plot_params['time_units'] = self.time_units

        plot_params[
            'plot_bound_min_aoi_hours'] = self.obs_aoi_metrics_plot_params[
                'plot_bound_min_aoi_hours']
        plot_params[
            'plot_bound_max_aoi_hours'] = self.obs_aoi_metrics_plot_params[
                'plot_bound_max_aoi_hours']

        pltl.plot_aoi_by_item(targ_ids_list, aoi_curves_by_targ_id,
                              plot_params)
Esempio n. 3
0
    def plot_sat_cmd_aoi(self,
                         sat_ids_list,
                         aoi_curves_by_sat_id,
                         all_downlink_winds=[],
                         gp_replan_freq=None):

        plot_params = {}
        plot_params['plot_start_dt'] = self.plots_start_dt
        plot_params['plot_end_dt'] = self.plots_end_dt
        plot_params['base_time_dt'] = self.plots_base_dt

        plot_params['plot_size_inches'] = (18, 9)
        plot_params['show'] = False
        plot_params['plot_title'] = 'CIRCINUS Sim: Satellite CMD Uplink AoI'
        plot_params[
            'fig_name'] = self.output_path + 'plots/csim_sat_cmd_aoi.pdf'
        plot_params['plot_fig_extension'] = 'pdf'

        plot_params['ylabel'] = 'Satellite Index,\nAoI (hours)\n'
        plot_params['time_units'] = self.input_plot_params['sat_cmd_aoi_plot'][
            'x_axis_time_units']
        """ plot_params['plot_bound_min_aoi_hours'] = self.input_plot_params['sat_cmd_aoi_plot']['plot_bound_min_aoi_hours']
        plot_params['plot_bound_max_aoi_hours'] = self.input_plot_params['sat_cmd_aoi_plot']['plot_bound_max_aoi_hours'] """

        plot_params['plot_bound_min_aoi_hours'] = 0
        plot_params['plot_bound_max_aoi_hours'] = max(
            [max(x['y']) for x in aoi_curves_by_sat_id.values()])

        plot_params['include_legend'] = False

        pltl.plot_aoi_by_item(sat_ids_list, aoi_curves_by_sat_id, plot_params,
                              all_downlink_winds, gp_replan_freq)
Esempio n. 4
0
    def plot_sat_tlm_aoi(self, sat_ids_list, aoi_curves_by_sat_id):

        plot_params = {}
        plot_params['plot_start_dt'] = self.plots_start_dt
        plot_params['plot_end_dt'] = self.plots_end_dt
        plot_params['base_time_dt'] = self.plots_base_dt

        plot_params['plot_title'] = 'CIRCINUS Sim: Satellite TLM Downlink AoI'
        plot_params['plot_size_inches'] = (18, 9)
        plot_params['show'] = False
        plot_params[
            'fig_name'] = self.output_path + 'plots/csim_sat_tlm_aoi.pdf'
        plot_params['plot_fig_extension'] = 'pdf'

        plot_params['ylabel'] = 'Satellite Index,\nAoI (hours)\n'
        plot_params['time_units'] = self.input_plot_params['sat_tlm_aoi_plot'][
            'x_axis_time_units']

        plot_params['plot_bound_min_aoi_hours'] = self.input_plot_params[
            'sat_tlm_aoi_plot']['plot_bound_min_aoi_hours']
        plot_params['plot_bound_max_aoi_hours'] = self.input_plot_params[
            'sat_tlm_aoi_plot']['plot_bound_max_aoi_hours']

        plot_params['include_legend'] = False

        pltl.plot_aoi_by_item(sat_ids_list, aoi_curves_by_sat_id, plot_params)
Esempio n. 5
0
    def plot_obs_aoi_w_routing(self, targ_ids_list, aoi_curves_by_targ_id):

        plot_params = {}
        plot_params['plot_start_dt'] = self.plots_start_dt
        plot_params['plot_end_dt'] = self.plots_end_dt
        plot_params['base_time_dt'] = self.plots_base_dt

        plot_params[
            'plot_title'] = 'CIRCINUS Sim: Executed Observation Target AoI, with routing'
        plot_params['plot_size_inches'] = (18, 9)
        plot_params['show'] = False
        plot_params[
            'fig_name'] = self.output_path + 'plots/csim_obs_aoi_routing.pdf'
        plot_params['plot_fig_extension'] = 'pdf'

        plot_params['ylabel'] = 'Target Index,\nAoI (hours)\n'
        plot_params['time_units'] = self.input_plot_params['obs_aoi_plot'][
            'x_axis_time_units']

        plot_params['plot_bound_min_aoi_hours'] = self.input_plot_params[
            'obs_aoi_plot']['plot_bound_min_aoi_hours']
        plot_params['plot_bound_max_aoi_hours'] = self.input_plot_params[
            'obs_aoi_plot']['plot_bound_max_aoi_hours']

        plot_params['include_legend'] = False

        pltl.plot_aoi_by_item(targ_ids_list, aoi_curves_by_targ_id,
                              plot_params)