28#ifndef XSH_UTILS_SCIRED_SLIT_H
29#define XSH_UTILS_SCIRED_SLIT_H
38 cpl_frame* order_tab_edges,cpl_frame* master_flat,
39 cpl_frame* model_config_frame,cpl_frame* disp_tab,
41 const char* rec_prefix, cpl_frame** wavemap,
48 int* sub_sky_nbkpts2);
52 cpl_frameset *nod_set,
53 cpl_frame* spectral_format,
54 cpl_frame* master_flat,
55 cpl_frame* order_tab_edges,
57 cpl_frame* model_config_frame,
58 cpl_frame* disp_tab_frame,
63 const int do_flatfield,
65 const int compute_eff,
66 const char* rec_prefix,
67 cpl_frameset **comb_eff_set
73 cpl_frameset *nod_set,
74 cpl_frame* spectral_format,
75 cpl_frame* master_flat,
76 cpl_frame* order_tab_edges,
78 cpl_frame* model_config_frame,
79 cpl_frame* disp_tab_frame,
81 cpl_frame *skymask_frame,
86 const char *throw_name,
87 const int do_flatfield,
88 const char* rec_prefix
94 const int do_computemap,
95 cpl_frame** model_config_frame, cpl_frame** wave_tab,
100 const char* recipe_id,
int pscan,cpl_frame** spectral_format,
101 cpl_frame** master_bias,
102 cpl_frame** bpmap,cpl_frame** order_tab_edges,cpl_frame** master_flat);
109 cpl_frame** master_bias,
110 cpl_frame** master_flat,
111 cpl_frame** order_tab_edges,
112 cpl_frame** wave_tab,
113 cpl_frame** model_config_frame,
116 cpl_frame** disp_tab_frame,
117 cpl_frame** spectral_format,
118 cpl_frame** skymask_frame,
119 cpl_frame** response_ord_frame,
120 cpl_frame** frm_atmext,
124 const char* rec_prefix,
const char* rec_id);
130 cpl_frame** master_bias,
131 cpl_frame** master_flat,
132 cpl_frame** order_tab_edges,
133 cpl_frame** wave_tab,
134 cpl_frame** model_config_frame,
137 cpl_frame** disp_tab_frame,
138 cpl_frame** spectral_format,
139 cpl_frame** skymask_frame,
140 cpl_frame** response_ord_frame,
141 cpl_frame** frm_atmext,
145 const char* rec_prefix,
const char* rec_id);
157 int* rectify_fast,
int* pscan,
158 int* generate_sdp_format,
177 const char* rec_prefix,
178 cpl_frame** fcal_rect_2D,
179 cpl_frame** fcal_rect_1D,
181 cpl_frame** fcal_1D);
189 const char* rec_prefix,
190 cpl_frame** fcal_rect_2D,
191 cpl_frame** fcal_2D);
199 const char* rec_prefix,
200 cpl_frame** fcal_rect_1D,
201 cpl_frame** fcal_1D);
208 cpl_frame** spectral_format,
212 cpl_frame** otab_edges,
213 cpl_frame** model_cfg,
217 cpl_frame** ifu_cfg_tab,
218 cpl_frame** ifu_cfg_cor,
221 int * recipe_use_model,
227 cpl_frame** spectralformat,
231 cpl_frame** otab_edges,
232 cpl_frame** model_cfg,
233 cpl_frame** wave_tab,
234 cpl_frame** sky_list,
235 cpl_frame** sky_orders_chunks,
238 cpl_frame** sframe_sky_sub_tab,
242 int * recipe_use_model,
247 cpl_frame** bpmap,cpl_frame** mbias,
248 cpl_frame** mdark, cpl_frame** otab_edges,
249 cpl_frame** model_cfg, cpl_frame** wave_tab,
250 cpl_frame** mflat, cpl_frame** wmap, cpl_frame** smap,
251 cpl_frame** spectral_format,
const char* rec_id);
257 int* pre_overscan_corr,
262 int* sub_sky_nbkpts1,
264 int* sub_sky_nbkpts2,
268 int* generate_sdp_format);
280 int* generate_sdp_format);
287 const char* rec_prefix,
289 cpl_frame* order_tab_edges,
293 cpl_frame* model_config,
294 cpl_frame* single_frame_sky_sub_tab,
298 cpl_frame* qc_sky_frame,
299 cpl_frame* sky_orders_chunks,
305 cpl_frame* spectral_format,
307 cpl_frame** loc_table,
309 cpl_frame** clean_obj,
const int clean_tmp);
313 int do_compute_map,
int recipe_use_model,
315 cpl_frame* model_config_frame,cpl_frame* crhm_frame,
316 cpl_frame* disp_tab_frame, cpl_frame* order_tab_edges,
317 cpl_frame** wavemap_frame, cpl_frame** slitmap_frame);
321 cpl_frame* response,cpl_frame* atmext,
324 cpl_frame** fluxcal_2D,
325 cpl_frame** fluxcal_1D);
328 cpl_frame* atm_ext, cpl_frame* high_abs_win,
335 cpl_frame* order_tab_edges,
336 cpl_frame* model_config,
342 cpl_frame* order_tab_edges,
343 cpl_frame* model_config,
349 cpl_frame* sky_map_frm,
static xsh_instrument * instrument
cpl_error_code xsh_scired_slit_nod_get_calibs(cpl_frameset *raws, cpl_frameset *calib, xsh_instrument *instrument, cpl_frame **bpmap, cpl_frame **master_bias, cpl_frame **master_flat, cpl_frame **order_tab_edges, cpl_frame **wave_tab, cpl_frame **model_config_frame, cpl_frame **wavemap, cpl_frame **slitmap, cpl_frame **disp_tab_frame, cpl_frame **spectral_format, cpl_frame **skymask_frame, cpl_frame **response_ord_frame, cpl_frame **frm_atmext, int do_computemap, int use_skymask, int pscan, const char *rec_prefix, const char *rec_id)
cpl_frameset * xsh_nod_group_by_reloff(cpl_frameset *ord_set, xsh_instrument *instrument, xsh_stack_param *stack_par)
cpl_error_code xsh_slit_stare_correct_crh_and_sky(xsh_localize_obj_param *loc_obj_par, xsh_remove_crh_single_param *crh_single_par, xsh_rectify_param *rectify_par, int do_sub_sky, const char *rec_prefix, cpl_frame *rmbkg, cpl_frame *order_tab_edges, cpl_frame *slitmap, cpl_frame *wavemap, cpl_frame *sky_map, cpl_frame *model_config, cpl_frame *single_frame_sky_sub_tab, xsh_instrument *instrument, int sub_sky_nbkpts1, xsh_subtract_sky_single_param *sky_par, cpl_frame *qc_sky_frame, cpl_frame *sky_orders_chunks, cpl_frame **sky, cpl_frame **sky_eso, cpl_frame **sky_ima, cpl_frame *wave_tab, cpl_frame *disp_tab, cpl_frame *spectral_format, int nb_raw_frames, cpl_frame **loc_table, cpl_frame **clean, cpl_frame **clean_obj, const int clean_tmp)
correct CRH and sky lines (1st iteration)
cpl_error_code xsh_slit_offset_get_params(cpl_parameterlist *parameters, const char *rec_id, xsh_localize_obj_param **loc_obj_par, xsh_rectify_param **rectify_par, xsh_remove_crh_single_param **crh_single_par, xsh_extract_param **extract_par, xsh_combine_nod_param **combine_nod_param, int *do_flatfield, int *gen_sky, int *generate_sdp_format)
cpl_frameset * xsh_scired_slit_nod_accurate(cpl_frameset *nod_set, cpl_frame *spectral_format, cpl_frame *master_flat, cpl_frame *order_tab_edges, cpl_frame *wave_tab, cpl_frame *model_config_frame, cpl_frame *disp_tab_frame, cpl_frame *wavemap, cpl_frame *skymask_frame, xsh_instrument *instrument, xsh_remove_crh_single_param *crh_single_par, xsh_rectify_param *rectify_par, xsh_localize_obj_param *loc_obj_par, const char *throw_name, const int do_flatfield, const char *rec_prefix)
cpl_error_code xsh_stare_params_bin_scale(cpl_frameset *raws, xsh_background_param *backg, xsh_opt_extract_param *opt_extract_par, int *sub_sky_nbkpts1, int *sub_sky_nbkpts2)
Corrects parameters for binning.
cpl_error_code xsh_get_dispersion_calibs(cpl_frameset *calib, xsh_instrument *instrument, const int do_computemap, cpl_frame **model_config_frame, cpl_frame **wave_tab, cpl_frame **wavemap)
cpl_error_code xsh_ifu_stare_get_calibs(cpl_frameset *calib, xsh_instrument *inst, cpl_frame **spectral_format, cpl_frame **mbias, cpl_frame **mdark, cpl_frame **mflat, cpl_frame **otab_edges, cpl_frame **model_cfg, cpl_frame **bpmap, cpl_frame **wmap, cpl_frame **smap, cpl_frame **ifu_cfg_tab, cpl_frame **ifu_cfg_cor, cpl_frame **wavesol, const char *rec_id, int *recipe_use_model, int pscan)
cpl_error_code xsh_slit_stare_get_params(cpl_parameterlist *parameters, const char *rec_id, int *pre_overscan_corr, xsh_background_param **backg_par, xsh_localize_obj_param **loc_obj_par, xsh_rectify_param **rectify_par, xsh_remove_crh_single_param **crh_single_par, int *sub_sky_nbkpts1, int *do_flatfield, int *sub_sky_nbkpts2, xsh_subtract_sky_single_param **sky_par, int *do_optextract, xsh_opt_extract_param **opt_extract_par, int *generate_sdp_format)
cpl_frameset * xsh_frameset_crh_single(cpl_frameset *raws, xsh_remove_crh_single_param *crh_single_par, cpl_frame *sky_map_frm, xsh_instrument *instrument, const char *prefix, const char *spec)
Generates a new frameset with each frame CRH-single rejected from input frameset.
cpl_error_code xsh_compute_wavelength_resampling_accuracy(cpl_frame *wavemap, cpl_frame *order_tab_edges, cpl_frame *model_config, cpl_frame *merged1D, xsh_instrument *instrument)
cpl_error_code xsh_flux_calibrate(cpl_frame *rect2D, cpl_frame *rect1D, cpl_frame *atmext, cpl_frame *response, int mpar, xsh_instrument *inst, const char *rec_prefix, cpl_frame **fcal_rect_2D, cpl_frame **fcal_rect_1D, cpl_frame **fcal_2D, cpl_frame **fcal_1D)
cpl_error_code xsh_scired_get_proper_maps(cpl_frameset *raws, cpl_frameset *calib, cpl_frame *order_tab_edges, cpl_frame *master_flat, cpl_frame *model_config_frame, cpl_frame *disp_tab, xsh_instrument *instrument, const int do_computemap, const char *rec_prefix, cpl_frame **wavemap, cpl_frame **slitmap)
cpl_error_code xsh_slit_stare_get_maps(cpl_frameset *calib, int do_compute_map, int recipe_use_model, const char *rec_prefix, xsh_instrument *instrument, cpl_frame *model_config_frame, cpl_frame *crhm_frame, cpl_frame *disp_tab_frame, cpl_frame *order_tab_edges, cpl_frame **wavemap_frame, cpl_frame **slitmap_frame)
cpl_error_code xsh_scired_util_spectra_flux_calibrate(cpl_frame *res2D, cpl_frame *res1D, cpl_frame *response, cpl_frame *atmext, xsh_instrument *inst, const char *prefix, cpl_frame **fluxcal_2D, cpl_frame **fluxcal_1D)
cpl_frame * xsh_compute_efficiency(cpl_frame *mer1D, cpl_frame *std_cat, cpl_frame *atm_ext, cpl_frame *high_abs_win, xsh_instrument *instr)
cpl_frameset * xsh_nod_group_by_reloff2(cpl_frameset *ord_set, xsh_instrument *instrument, xsh_stack_param *stack_par)
cpl_error_code xsh_get_normal_calibs(cpl_frameset *calib, xsh_instrument *instrument, const char *recipe_id, int pscan, cpl_frame **spectral_format, cpl_frame **master_bias, cpl_frame **bpmap, cpl_frame **order_tab_edges, cpl_frame **master_flat)
cpl_frameset * xsh_frameset_mflat_divide(cpl_frameset *input, cpl_frame *mflat, xsh_instrument *instrument)
Generates a new frameset with each frame mflat divided input frameset.
cpl_error_code xsh_slit_stare_get_calibs(cpl_frameset *calib, xsh_instrument *instrument, cpl_frame **spectralformat, cpl_frame **mbias, cpl_frame **mdark, cpl_frame **mflat, cpl_frame **otab_edges, cpl_frame **model_cfg, cpl_frame **wave_tab, cpl_frame **sky_list, cpl_frame **sky_orders_chunks, cpl_frame **qc_sky, cpl_frame **bpmap, cpl_frame **sframe_sky_sub_tab, cpl_frame **wmap, cpl_frame **smap, const char *rec_id, int *recipe_use_model, int pscan)
cpl_error_code xsh_slit_offset_get_calibs(cpl_frameset *calib, xsh_instrument *instrument, cpl_frame **bpmap, cpl_frame **mbias, cpl_frame **mdark, cpl_frame **otab_edges, cpl_frame **model_cfg, cpl_frame **wave_tab, cpl_frame **mflat, cpl_frame **wmap, cpl_frame **smap, cpl_frame **spectral_format, const char *rec_id)
cpl_error_code xsh_flux_calibrate2D(cpl_frame *rect2D, cpl_frame *atmext, cpl_frame *response, int mpar, xsh_instrument *inst, const char *rec_prefix, cpl_frame **fcal_rect_2D, cpl_frame **fcal_2D)
cpl_frameset * xsh_scired_slit_nod_fast(cpl_frameset *nod_set, cpl_frame *spectral_format, cpl_frame *master_flat, cpl_frame *order_tab_edges, cpl_frame *wave_tab, cpl_frame *model_config_frame, cpl_frame *disp_tab_frame, cpl_frame *wavemap, xsh_instrument *instrument, xsh_remove_crh_single_param *crh_single_par, xsh_rectify_param *rectify_par, const int do_flatfield, const int corr_sky, const int compute_eff, const char *rec_prefix, cpl_frameset **comb_eff_set)
cpl_error_code xsh_scired_nod_get_parameters(cpl_parameterlist *parameters, xsh_instrument *instrument, xsh_remove_crh_single_param **crh_single_par, xsh_rectify_param **rectify_par, xsh_extract_param **extract_par, xsh_combine_nod_param **combine_nod_par, xsh_slit_limit_param **slit_limit_par, xsh_localize_obj_param **loc_obj_par, int *rectify_fast, int *pscan, int *generate_sdp_format, const char *rec_id)
cpl_error_code xsh_compute_resampling_accuracy(cpl_frame *wavemap, cpl_frame *slitmap, cpl_frame *order_tab_edges, cpl_frame *model_config, cpl_frame *merged2D, xsh_instrument *instrument)
cpl_error_code xsh_respon_slit_nod_get_calibs(cpl_frameset *calib, xsh_instrument *instrument, cpl_frame **bpmap, cpl_frame **master_bias, cpl_frame **master_flat, cpl_frame **order_tab_edges, cpl_frame **wave_tab, cpl_frame **model_config_frame, cpl_frame **wavemap, cpl_frame **slitmap, cpl_frame **disp_tab_frame, cpl_frame **spectral_format, cpl_frame **skymask_frame, cpl_frame **response_ord_frame, cpl_frame **frm_atmext, int do_computemap, int use_skymask, int pscan, const char *rec_prefix, const char *rec_id)
cpl_error_code xsh_flux_calibrate1D(cpl_frame *rect1D, cpl_frame *atmext, cpl_frame *response, int mpar, xsh_instrument *inst, const char *rec_prefix, cpl_frame **fcal_rect_1D, cpl_frame **fcal_1D)