Plans

Overview

How an instrument observes is represented as a Plan. Because it can be difficult to tell when a given source will be far enough above the horizon to observe, the easiest way to generate a plan is with a Planner.

Planners

We can generate plans with the Planner as

import maria
from maria import Planner

input_map = maria.map.load(maria.io.fetch("maps/crab_nebula.fits")) # load an example map

planner = Planner(target=input_map,
                  site="green_bank",
                  el_bounds=(60, 90)) # make a planner

plan = planner.generate_plan(total_duration=600, # in seconds
                             scan_options={"radius": input_map.width.deg / 3}, # in degrees
                             sample_rate=50) # in Hz

plan.plot()

(Source code, png, hires.png, pdf)

../../_images/plans-1.png

Passing parameters to generate_plan will be passed to the Plan.

Customizing Plans

A 60-second zenith stare would be instantiated as

stare = maria.get_plan(start_time="2022-02-10T06:00:00",
                       scan_pattern="stare"
                       duration=60, # in seconds
                       sample_rate=20, # in Hz
                       pointing_frame="az_el",
                       scan_center=(0, 90)) # in degrees

We might also do a daisy scan on some given point on the sky, which the telescope will track:

tracking_daisy = maria.get_plan(start_time="2022-02-10T06:00:00",
                                scan_pattern="daisy",
                                scan_options={"radius": 0.5, "speed": 0.1}, # in degrees
                                duration=600, # in seconds
                                sample_rate=50, # in Hz
                                frame="ra_dec"
                                scan_center=(150, 10)) # in degrees