punchbowl.level3.f_corona_model#

Functions#

solve_qp_cube(→ numpy.ndarray)

Fast solver for the quadratic programming problem.

model_fcorona_for_cube(→ numpy.ndarray)

Model the F corona given a list of times and a corresponding data cube, .

construct_f_corona_background(→ ndcube.NDCube)

Build f corona background model.

subtract_f_corona_background(→ ndcube.NDCube)

Subtract f corona background.

subtract_f_corona_background_task(→ ndcube.NDCube)

Subtracts a background f corona model from an observation.

create_empty_f_background_model(→ numpy.ndarray)

Create an empty background model.

Module Contents#

punchbowl.level3.f_corona_model.solve_qp_cube(input_vals: numpy.ndarray, cube: numpy.ndarray) numpy.ndarray#

Fast solver for the quadratic programming problem.

Parameters:
  • input_vals (np.ndarray) – array of times

  • cube (np.ndarray) – array of data

Returns:

Array of coefficients for solving polynomial

Return type:

np.ndarray

punchbowl.level3.f_corona_model.model_fcorona_for_cube(xt: numpy.ndarray, cube: numpy.ndarray, smooth_level: float | None = 4) numpy.ndarray#

Model the F corona given a list of times and a corresponding data cube, .

Parameters:
  • xt (np.ndarray) – time array

  • cube (np.ndarray) – observation array

  • smooth_level (float | None) – If None, no smoothing is applied. Otherwise, the top and bottom smooth_level standard deviations of data are rejected.

Return type:

np.ndarray

punchbowl.level3.f_corona_model.construct_f_corona_background(data_list: list[str], layer: int) ndcube.NDCube#

Build f corona background model.

punchbowl.level3.f_corona_model.subtract_f_corona_background(data_object: ndcube.NDCube, before_f_background_model: ndcube.NDCube, after_f_background_model: ndcube.NDCube) ndcube.NDCube#

Subtract f corona background.

punchbowl.level3.f_corona_model.subtract_f_corona_background_task(observation: ndcube.NDCube, before_f_background_model_path: str, after_f_background_model_path: str) ndcube.NDCube#

Subtracts a background f corona model from an observation.

This algorithm linearly interpolates between the before and after models.

Parameters:
  • observation (NDCube) – an observation to subtract an f corona model from

  • before_f_background_model_path (str) – path to a NDCube f corona background map before the observation

  • after_f_background_model_path (str) – path to a NDCube f corona background map after the observation

Returns:

A background subtracted data frame

Return type:

NDCube

punchbowl.level3.f_corona_model.create_empty_f_background_model(data_object: ndcube.NDCube) numpy.ndarray#

Create an empty background model.