punchpipe.flows.level2#

Attributes#

Functions#

level2_query_ready_files(session, pipeline_config[, ...])

level2_query_ready_clear_files(session, pipeline_config)

_level2_query_ready_files(session, polarized, ...[, max_n])

group_l2_inputs(→ list[tuple[punchpipe.control.db.File]])

Group up L1 inputs into MZP clusters that match in time (i.e. occur sequentially in one image cluster).

group_l2_inputs_single_observatory(...)

For a single observatory, groups up L1 inputs into MZP clusters that match in time (i.e. occur sequentially in one

level2_construct_flow_info(level1_files, level2_file, ...)

level2_construct_file_info(...)

level2_scheduler_flow([pipeline_config_path, session, ...])

level2_clear_scheduler_flow([pipeline_config_path, ...])

level2_call_data_processor(→ dict)

level2_process_flow(flow_id[, pipeline_config_path, ...])

level2_clear_process_flow(flow_id[, ...])

Module Contents#

punchpipe.flows.level2.SCIENCE_POLARIZED_LEVEL1_TYPES = ['PM', 'PZ', 'PP']#
punchpipe.flows.level2.SCIENCE_CLEAR_LEVEL1_TYPES = ['CR']#
punchpipe.flows.level2.level2_query_ready_files(session, pipeline_config: dict, reference_time=None, max_n=9e+99)[source]#
punchpipe.flows.level2.level2_query_ready_clear_files(session, pipeline_config: dict, reference_time=None, max_n=9e+99)[source]#
punchpipe.flows.level2._level2_query_ready_files(session, polarized: bool, pipeline_config: dict, max_n=9e+99)[source]#
punchpipe.flows.level2.group_l2_inputs(files: list[punchpipe.control.db.File]) list[tuple[punchpipe.control.db.File]][source]#

Group up L1 inputs into MZP clusters that match in time (i.e. occur sequentially in one image cluster).

Handles the swapped MZP/PZM orders, handles any combination of missing files, and for each observatory returns only complete MZP triplets

punchpipe.flows.level2.group_l2_inputs_single_observatory(files: list[punchpipe.control.db.File], expected_sequence: list[str] | str, max_separation: float = 80, only_complete=False) list[tuple[punchpipe.control.db.File]][source]#

For a single observatory, groups up L1 inputs into MZP clusters that match in time (i.e. occur sequentially in one image cluster).

Accepts as input the order of P, Z and M, and handles any combination of missing files

punchpipe.flows.level2.level2_construct_flow_info(level1_files: list[punchpipe.control.db.File], level2_file: punchpipe.control.db.File, pipeline_config: dict, session=None, reference_time=None)[source]#
punchpipe.flows.level2.level2_construct_file_info(level1_files: List[punchpipe.control.db.File], pipeline_config: dict, reference_time=None) List[punchpipe.control.db.File][source]#
punchpipe.flows.level2.level2_scheduler_flow(pipeline_config_path=None, session=None, reference_time=None)[source]#
punchpipe.flows.level2.level2_clear_scheduler_flow(pipeline_config_path=None, session=None, reference_time=None)[source]#
punchpipe.flows.level2.level2_call_data_processor(call_data: dict, pipeline_config, session=None) dict[source]#
punchpipe.flows.level2.level2_process_flow(flow_id: int | list[int], pipeline_config_path=None, session=None)[source]#
punchpipe.flows.level2.level2_clear_process_flow(flow_id: int | list[int], pipeline_config_path=None, session=None)[source]#