pyreduce-astro 0.7a4__tar.gz → 0.7a6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/.gitignore +1 -0
- pyreduce_astro-0.7a6/.python-version +1 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/CHANGELOG.md +20 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/CLAUDE.md +9 -9
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/PKG-INFO +5 -7
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/README.md +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/aj_example.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/crires_plus_example.py +12 -22
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/custom_instrument_example.py +5 -5
- pyreduce_astro-0.7a6/examples/harpn_example.py +48 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/harps_example.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/harps_gridsearch.py +7 -7
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/just_one_swath.py +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/jwst_miri_example.py +7 -15
- pyreduce_astro-0.7a6/examples/jwst_niriss_example.py +46 -0
- pyreduce_astro-0.7a6/examples/lick_apf_example.py +46 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/mcdonald_example.py +4 -4
- pyreduce_astro-0.7a6/examples/metis_ifu_example.py +52 -0
- pyreduce_astro-0.7a6/examples/metis_lss_example.py +52 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/micado_example.py +5 -5
- pyreduce_astro-0.7a6/examples/neid_example.py +65 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/nirspec_example.py +4 -4
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/toes_example.py +12 -12
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/uves_callfunc.py +10 -10
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/uves_example.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/examples/xshooter_example.py +4 -4
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyproject.toml +3 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/__main__.py +86 -22
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/cli.py +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/combine_frames.py +33 -25
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/aj.yaml +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/andes.py +17 -17
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/andes.yaml +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/common.py +257 -69
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/crires_plus.py +26 -36
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/crires_plus.yaml +0 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/filters.py +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/harpn.py +14 -14
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/harpn.yaml +2 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/harps.py +21 -14
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/harps.yaml +2 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/instrument_info.py +14 -14
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/jwst_miri.py +6 -4
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/jwst_miri.yaml +2 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/jwst_niriss.py +12 -8
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/jwst_niriss.yaml +2 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/lick_apf.py +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/lick_apf.yaml +2 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/mcdonald.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/mcdonald.yaml +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/metis_ifu.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/metis_ifu.yaml +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/metis_lss.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/metis_lss.yaml +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/micado.py +5 -5
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/micado.yaml +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/models.py +30 -6
- pyreduce_astro-0.7a6/pyreduce/instruments/neid.py +128 -0
- pyreduce_astro-0.7a6/pyreduce/instruments/neid.yaml +60 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/nirspec.py +10 -10
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/nirspec.yaml +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/nte.py +6 -6
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/nte.yaml +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/uves.py +8 -8
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/uves.yaml +2 -2
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/xshooter.py +4 -4
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/xshooter.yaml +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/pipeline.py +32 -32
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/reduce.py +39 -39
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_AJ.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_ANDES.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_CRIRES_PLUS.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_HARPN.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_HARPS.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_JWST_MIRI.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_JWST_NIRISS.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_LICK_APF.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_MCDONALD.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_METIS_IFU.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_METIS_LSS.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_MICADO.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_NEID.json +9 -18
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_NIRSPEC.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_NTE.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_UVES.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_XSHOOTER.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_pyreduce.json +1 -1
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/settings/settings_schema.json +3 -3
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/uv.lock +3 -454
- pyreduce_astro-0.7a4/.pyup.yml +0 -4
- pyreduce_astro-0.7a4/README_METIS.md +0 -130
- pyreduce_astro-0.7a4/codemeta.json +0 -56
- pyreduce_astro-0.7a4/environment.yml +0 -19
- pyreduce_astro-0.7a4/examples/harpn_example.py +0 -56
- pyreduce_astro-0.7a4/examples/jwst_niriss_example.py +0 -57
- pyreduce_astro-0.7a4/examples/lick_apf_example.py +0 -54
- pyreduce_astro-0.7a4/examples/metis_ifu_example.py +0 -81
- pyreduce_astro-0.7a4/examples/metis_lss_example.py +0 -81
- pyreduce_astro-0.7a4/examples/neid_example.py +0 -56
- pyreduce_astro-0.7a4/plots_for_paper/dimensionality.py +0 -172
- pyreduce_astro-0.7a4/plots_for_paper/settings_HARPS.json +0 -47
- pyreduce_astro-0.7a4/plots_for_paper/wavecal_plot.py +0 -137
- pyreduce_astro-0.7a4/pyproject.toml.sav +0 -77
- pyreduce_astro-0.7a4/pyreduce/instruments/neid.py +0 -156
- pyreduce_astro-0.7a4/pyreduce/instruments/neid.yaml +0 -61
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/.gitattributes +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/.pre-commit-config.yaml +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/.readthedocs.yaml +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/AGENTS.md +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/LICENSE +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/hatch_build.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/__init__.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clib/__init__.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clib/build_extract.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clib/slit_func_2d_xi_zeta_bd.c +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clib/slit_func_2d_xi_zeta_bd.h +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clib/slit_func_bd.c +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clib/slit_func_bd.h +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/clipnflip.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/configuration.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/continuum_normalization.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/cwrappers.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/datasets.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/echelle.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/estimate_background_scatter.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/extract.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/extraction_width.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/__init__.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/aj.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/instruments/common.yaml +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/make_shear.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_crires_plus_det1.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_crires_plus_det2.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_crires_plus_det3.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_ctio_chiron.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_elodie.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_feros3.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_flames_giraffe.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_harps_blue.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_harps_red.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_hds_blue.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_hds_red.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_het_hrs_2x5.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_jwst_miri_lrs_slitless.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_jwst_niriss_gr700xd.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_lick_apf_.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_mcdonald.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_nes.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_nirspec_nirspec.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_sarg.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_sarg_2x2a.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_sarg_2x2b.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_subaru_hds_red.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_blue.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_blue_binned_2_2.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_middle.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_middle_2x2_split.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_middle_binned_2_2.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_red.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_red_2x2.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_red_2x2_split.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_uves_red_binned_2_2.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/masks/mask_xshooter_nir.fits.gz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/rectify.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/tools/__init__.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/tools/combine.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/trace.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/util.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/MICADO_HK_3arcsec_chip5.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/atlas/thar.fits +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/atlas/thar_list.txt +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/atlas/une.fits +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/convert.py +0 -0
- /pyreduce_astro-0.7a4/pyreduce/wavecal/crires_plus_J1228_Open_det1.npz → /pyreduce_astro-0.7a6/pyreduce/wavecal/crires_plus_J1228_det1.npz +0 -0
- /pyreduce_astro-0.7a4/pyreduce/wavecal/crires_plus_J1228_Open_det2.npz → /pyreduce_astro-0.7a6/pyreduce/wavecal/crires_plus_J1228_det2.npz +0 -0
- /pyreduce_astro-0.7a4/pyreduce/wavecal/crires_plus_J1228_Open_det3.npz → /pyreduce_astro-0.7a6/pyreduce/wavecal/crires_plus_J1228_det3.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/harpn_harpn_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/harps_blue_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/harps_blue_pol_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/harps_red_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/harps_red_pol_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/mcdonald.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/metis_lss_l_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/metis_lss_m_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/nirspec_K2.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_blue_360nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_blue_390nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_blue_437nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_middle_2x2_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_middle_565nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_middle_580nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_middle_600nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_middle_665nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_middle_860nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_red_580nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_red_600nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_red_665nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_red_760nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/uves_red_860nm_2D.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavecal/xshooter_nir.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/pyreduce/wavelength_calibration.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/argon.line +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/bpm_creator.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/create_wavelength_guess.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/download_files.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6/tools}/ipy_startup.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/neon.lin +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/neon.line +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/pymultispec.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/thar.npz +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/wavecal_creator.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/wavecal_creator_from_existing.py +0 -0
- {pyreduce_astro-0.7a4 → pyreduce_astro-0.7a6}/tools/xshooter_nir.json +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.14
|
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## [0.7a6] - 2026-01-03
|
|
5
|
+
|
|
6
|
+
### Added
|
|
7
|
+
- `--file` option for CLI step commands to bypass file discovery
|
|
8
|
+
- NEID instrument with multi-amplifier support
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
- Rename `orders` step to `trace` throughout codebase (CLI, API, configs)
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- test_normflat to use column_range returned by extract
|
|
15
|
+
|
|
16
|
+
## [0.7a5] - 2025-12-30
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
- Rename `arm` to `channel` throughout codebase (API, CLI, configs)
|
|
20
|
+
- Remove decker from CRIRES+ channel format (`J1228_det1` instead of `J1228_Open_det1`)
|
|
21
|
+
- Example scripts now use `$REDUCE_DATA` env var instead of hardcoded paths
|
|
22
|
+
|
|
4
23
|
## [0.7a4] - 2025-12-23
|
|
5
24
|
|
|
6
25
|
### Added
|
|
@@ -41,7 +60,7 @@
|
|
|
41
60
|
- `filter_x` and `filter_type` options for order tracing
|
|
42
61
|
|
|
43
62
|
### Changed
|
|
44
|
-
- Rename `mode` to `
|
|
63
|
+
- Rename `mode` to `channel` terminology throughout
|
|
45
64
|
- Output extension changed from `.ech` to `.fits`
|
|
46
65
|
- Documentation converted from RST to Markdown
|
|
47
66
|
- Trace detection parameters renamed (`opower` -> `degree`, `filter_size` -> `filter_y`)
|
|
@@ -19,7 +19,7 @@ uv run reduce download UVES
|
|
|
19
19
|
PYREDUCE_PLOT=0 uv run python examples/uves_example.py
|
|
20
20
|
|
|
21
21
|
# Or use CLI
|
|
22
|
-
uv run reduce run UVES HD132205 --steps bias,flat,
|
|
22
|
+
uv run reduce run UVES HD132205 --steps bias,flat,trace,science
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
## Package Structure
|
|
@@ -63,7 +63,7 @@ The reduction pipeline consists of these steps (in typical order):
|
|
|
63
63
|
| `mask` | `Mask` | Load bad pixel mask for detector |
|
|
64
64
|
| `bias` | `Bias` | Combine bias frames into master bias |
|
|
65
65
|
| `flat` | `Flat` | Combine flat frames, subtract bias |
|
|
66
|
-
| `
|
|
66
|
+
| `trace` | `OrderTracing` | Trace echelle order positions on flat |
|
|
67
67
|
| `curvature` | `SlitCurvatureDetermination` | Measure slit tilt/shear from arc lamp |
|
|
68
68
|
| `scatter` | `BackgroundScatter` | Model inter-order scattered light |
|
|
69
69
|
| `norm_flat` | `NormalizeFlatField` | Normalize flat, extract blaze function |
|
|
@@ -95,7 +95,7 @@ Defines what the instrument IS - hardware properties and header mappings:
|
|
|
95
95
|
# Basic identification
|
|
96
96
|
instrument: HARPS
|
|
97
97
|
telescope: ESO-3.6m
|
|
98
|
-
|
|
98
|
+
channels: [red, blue]
|
|
99
99
|
|
|
100
100
|
# Detector properties
|
|
101
101
|
naxis: [4096, 4096]
|
|
@@ -138,7 +138,7 @@ Defines HOW to reduce - algorithm parameters per step:
|
|
|
138
138
|
"bias": {
|
|
139
139
|
"degree": 0
|
|
140
140
|
},
|
|
141
|
-
"
|
|
141
|
+
"trace": {
|
|
142
142
|
"degree": 4,
|
|
143
143
|
"noise": 100,
|
|
144
144
|
"min_cluster": 500,
|
|
@@ -175,8 +175,8 @@ result = Pipeline.from_instrument(
|
|
|
175
175
|
instrument="UVES",
|
|
176
176
|
target="HD132205",
|
|
177
177
|
night="2010-04-01",
|
|
178
|
-
|
|
179
|
-
steps=("bias", "flat", "
|
|
178
|
+
channel="middle",
|
|
179
|
+
steps=("bias", "flat", "trace", "science"),
|
|
180
180
|
base_dir="/data",
|
|
181
181
|
plot=1,
|
|
182
182
|
).run()
|
|
@@ -196,7 +196,7 @@ from pyreduce.pipeline import Pipeline
|
|
|
196
196
|
pipe = Pipeline(
|
|
197
197
|
instrument="UVES",
|
|
198
198
|
output_dir="/output",
|
|
199
|
-
|
|
199
|
+
channel="middle",
|
|
200
200
|
plot=0,
|
|
201
201
|
)
|
|
202
202
|
pipe.bias(bias_files)
|
|
@@ -221,11 +221,11 @@ pyreduce.reduce.main(
|
|
|
221
221
|
|
|
222
222
|
```bash
|
|
223
223
|
# Full pipeline
|
|
224
|
-
uv run reduce run UVES HD132205 --steps bias,flat,
|
|
224
|
+
uv run reduce run UVES HD132205 --steps bias,flat,trace
|
|
225
225
|
|
|
226
226
|
# Individual steps (top-level commands)
|
|
227
227
|
uv run reduce bias UVES HD132205
|
|
228
|
-
uv run reduce
|
|
228
|
+
uv run reduce trace UVES HD132205
|
|
229
229
|
uv run reduce wavecal UVES HD132205
|
|
230
230
|
|
|
231
231
|
# Combine reduced spectra
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyreduce-astro
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.7a6
|
|
4
4
|
Summary: A data reduction package for echelle spectrographs
|
|
5
5
|
Project-URL: Homepage, https://github.com/ivh/PyReduce
|
|
6
6
|
Project-URL: Documentation, https://pyreduce-astro.readthedocs.io
|
|
@@ -15,12 +15,10 @@ Classifier: Intended Audience :: Science/Research
|
|
|
15
15
|
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
|
|
16
16
|
Classifier: Programming Language :: C
|
|
17
17
|
Classifier: Programming Language :: Python :: 3
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
20
18
|
Classifier: Programming Language :: Python :: 3.13
|
|
21
19
|
Classifier: Programming Language :: Python :: 3.14
|
|
22
20
|
Classifier: Topic :: Scientific/Engineering :: Astronomy
|
|
23
|
-
Requires-Python: >=3.
|
|
21
|
+
Requires-Python: >=3.13
|
|
24
22
|
Requires-Dist: astropy>=5.3.0
|
|
25
23
|
Requires-Dist: cffi>=1.17.1
|
|
26
24
|
Requires-Dist: click>=8.1.0
|
|
@@ -44,7 +42,7 @@ Description-Content-Type: text/markdown
|
|
|
44
42
|
|
|
45
43
|
[](https://github.com/ivh/PyReduce/actions/workflows/python-publish.yml)
|
|
46
44
|
[](https://pyreduce-astro.readthedocs.io/en/latest/?badge=latest)
|
|
47
|
-
[](https://www.python.org/downloads/)
|
|
48
46
|
|
|
49
47
|
# PyReduce
|
|
50
48
|
|
|
@@ -78,7 +76,7 @@ uv sync
|
|
|
78
76
|
uv run reduce download UVES
|
|
79
77
|
|
|
80
78
|
# Run reduction
|
|
81
|
-
uv run reduce run UVES HD132205 --steps bias,flat,
|
|
79
|
+
uv run reduce run UVES HD132205 --steps bias,flat,trace,science
|
|
82
80
|
|
|
83
81
|
# Or run individual steps
|
|
84
82
|
uv run reduce bias UVES HD132205
|
|
@@ -93,7 +91,7 @@ Pipeline.from_instrument(
|
|
|
93
91
|
instrument="UVES",
|
|
94
92
|
target="HD132205",
|
|
95
93
|
night="2010-04-01",
|
|
96
|
-
|
|
94
|
+
channel="middle",
|
|
97
95
|
).run()
|
|
98
96
|
```
|
|
99
97
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[](https://github.com/ivh/PyReduce/actions/workflows/python-publish.yml)
|
|
2
2
|
[](https://pyreduce-astro.readthedocs.io/en/latest/?badge=latest)
|
|
3
|
-
[](https://www.python.org/downloads/)
|
|
4
4
|
|
|
5
5
|
# PyReduce
|
|
6
6
|
|
|
@@ -34,7 +34,7 @@ uv sync
|
|
|
34
34
|
uv run reduce download UVES
|
|
35
35
|
|
|
36
36
|
# Run reduction
|
|
37
|
-
uv run reduce run UVES HD132205 --steps bias,flat,
|
|
37
|
+
uv run reduce run UVES HD132205 --steps bias,flat,trace,science
|
|
38
38
|
|
|
39
39
|
# Or run individual steps
|
|
40
40
|
uv run reduce bias UVES HD132205
|
|
@@ -49,7 +49,7 @@ Pipeline.from_instrument(
|
|
|
49
49
|
instrument="UVES",
|
|
50
50
|
target="HD132205",
|
|
51
51
|
night="2010-04-01",
|
|
52
|
-
|
|
52
|
+
channel="middle",
|
|
53
53
|
).run()
|
|
54
54
|
```
|
|
55
55
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
"""
|
|
6
6
|
AJ instrument example: Fiber bundle tracing with direct function calls.
|
|
@@ -79,16 +79,16 @@ logical_fibers = {
|
|
|
79
79
|
|
|
80
80
|
# --- Load instrument ---
|
|
81
81
|
instrument = load_instrument(instrument_name)
|
|
82
|
-
|
|
83
|
-
print(f"Instrument: {instrument.name},
|
|
82
|
+
channel = instrument.info["channels"][0] # Use first channel
|
|
83
|
+
print(f"Instrument: {instrument.name}, channel: {channel}")
|
|
84
84
|
|
|
85
85
|
# --- Step 1: Load images using instrument class ---
|
|
86
86
|
print(f"\nLoading {file_even}...")
|
|
87
|
-
img_even, head_even = instrument.load_fits(file_even,
|
|
87
|
+
img_even, head_even = instrument.load_fits(file_even, channel=channel, extension=0)
|
|
88
88
|
print(f" Shape: {img_even.shape}, dtype: {img_even.dtype}")
|
|
89
89
|
|
|
90
90
|
print(f"Loading {file_odd}...")
|
|
91
|
-
img_odd, head_odd = instrument.load_fits(file_odd,
|
|
91
|
+
img_odd, head_odd = instrument.load_fits(file_odd, channel=channel, extension=0)
|
|
92
92
|
|
|
93
93
|
# --- Step 2: Trace each flat independently ---
|
|
94
94
|
print("\nTracing even-illuminated fibers...")
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
"""
|
|
6
6
|
Simple usage example for PyReduce
|
|
7
7
|
Loads a CRIRES+ dataset, and runs the extraction
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
import os
|
|
11
|
+
|
|
12
|
+
from pyreduce import datasets
|
|
11
13
|
from pyreduce.pipeline import Pipeline
|
|
12
14
|
|
|
13
15
|
# define parameters
|
|
14
|
-
instrument = "
|
|
16
|
+
instrument = "CRIRES_PLUS"
|
|
15
17
|
target = ""
|
|
16
18
|
night = ""
|
|
17
|
-
|
|
19
|
+
channel = "J1228_det1"
|
|
18
20
|
steps = (
|
|
19
21
|
# "bias",
|
|
20
22
|
# "flat",
|
|
21
|
-
# "
|
|
23
|
+
# "trace",
|
|
22
24
|
# "curvature",
|
|
23
25
|
# "scatter",
|
|
24
26
|
# "norm_flat",
|
|
@@ -32,32 +34,20 @@ steps = (
|
|
|
32
34
|
# "finalize",
|
|
33
35
|
)
|
|
34
36
|
|
|
35
|
-
#
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
# load dataset (and save the location)
|
|
40
|
-
base_dir = "/DATA/datasets/CRIRES"
|
|
41
|
-
input_dir = base_dir
|
|
42
|
-
output_dir = base_dir + "/reduced/"
|
|
43
|
-
|
|
44
|
-
# Path to the configuration parameters, that are to be used for this reduction
|
|
45
|
-
|
|
46
|
-
config = get_configuration_for_instrument(
|
|
47
|
-
instrument,
|
|
48
|
-
plot=1,
|
|
49
|
-
)
|
|
37
|
+
# Data location: uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
38
|
+
base_dir = os.path.join(datasets.get_data_dir(), "CRIRES")
|
|
39
|
+
input_dir = ""
|
|
40
|
+
output_dir = "reduced"
|
|
50
41
|
|
|
51
42
|
Pipeline.from_instrument(
|
|
52
43
|
instrument,
|
|
53
44
|
target,
|
|
54
45
|
night=night,
|
|
55
|
-
|
|
46
|
+
channel=channel,
|
|
56
47
|
steps=steps,
|
|
57
48
|
base_dir=base_dir,
|
|
58
49
|
input_dir=input_dir,
|
|
59
50
|
output_dir=output_dir,
|
|
60
|
-
configuration=config,
|
|
61
51
|
allow_calibration_only=True,
|
|
62
52
|
# order_range=(0, 4),
|
|
63
53
|
).run()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
"""
|
|
6
6
|
Simple usage example for PyReduce
|
|
@@ -32,7 +32,7 @@ instrument.info["prescan_x"] = "PRESCAN X"
|
|
|
32
32
|
# For loading the config we specify pyreduce as the source, since this is the default
|
|
33
33
|
config = get_configuration_for_instrument("pyreduce")
|
|
34
34
|
# Define your own configuration
|
|
35
|
-
config["
|
|
35
|
+
config["trace"]["degree"] = 5
|
|
36
36
|
|
|
37
37
|
# Since we can't find the files ourselves (at least not without defining the criteria we are looking for)
|
|
38
38
|
# We need to manually define which files go where
|
|
@@ -49,11 +49,11 @@ start_logging(log_file)
|
|
|
49
49
|
# Define other parameter for PyReduce
|
|
50
50
|
target = ""
|
|
51
51
|
night = "2019-07-21"
|
|
52
|
-
|
|
52
|
+
channel = ""
|
|
53
53
|
steps = (
|
|
54
54
|
"bias",
|
|
55
55
|
"flat",
|
|
56
|
-
"
|
|
56
|
+
"trace",
|
|
57
57
|
"curvature",
|
|
58
58
|
"scatter",
|
|
59
59
|
"norm_flat",
|
|
@@ -70,7 +70,7 @@ pipe = Pipeline.from_files(
|
|
|
70
70
|
output_dir=output_dir,
|
|
71
71
|
target=target,
|
|
72
72
|
instrument=instrument,
|
|
73
|
-
|
|
73
|
+
channel=channel,
|
|
74
74
|
night=night,
|
|
75
75
|
config=config,
|
|
76
76
|
# order_range=order_range,
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# /// script
|
|
2
|
+
# requires-python = ">=3.13"
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
|
+
# ///
|
|
5
|
+
"""
|
|
6
|
+
Simple usage example for PyReduce
|
|
7
|
+
Loads a HARPS-N dataset, and runs the extraction
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
import os
|
|
11
|
+
|
|
12
|
+
from pyreduce import datasets
|
|
13
|
+
from pyreduce.pipeline import Pipeline
|
|
14
|
+
|
|
15
|
+
# define parameters
|
|
16
|
+
instrument = "HARPN"
|
|
17
|
+
target = ""
|
|
18
|
+
night = ""
|
|
19
|
+
channel = "HARPN"
|
|
20
|
+
steps = (
|
|
21
|
+
# "bias",
|
|
22
|
+
# "flat",
|
|
23
|
+
# "trace",
|
|
24
|
+
# "norm_flat",
|
|
25
|
+
# "wavecal_master",
|
|
26
|
+
"wavecal",
|
|
27
|
+
# "science",
|
|
28
|
+
# "continuum",
|
|
29
|
+
# "finalize",
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
# Data location: uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
33
|
+
base_dir = os.path.join(datasets.get_data_dir(), "HARPN")
|
|
34
|
+
input_dir = "raw"
|
|
35
|
+
output_dir = "reduced/{channel}"
|
|
36
|
+
|
|
37
|
+
Pipeline.from_instrument(
|
|
38
|
+
instrument,
|
|
39
|
+
target,
|
|
40
|
+
night=night,
|
|
41
|
+
channel=channel,
|
|
42
|
+
steps=steps,
|
|
43
|
+
base_dir=base_dir,
|
|
44
|
+
input_dir=input_dir,
|
|
45
|
+
output_dir=output_dir,
|
|
46
|
+
# order_range=(0, 25),
|
|
47
|
+
plot=1,
|
|
48
|
+
).run()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
"""
|
|
6
6
|
Simple usage example for PyReduce
|
|
@@ -14,11 +14,11 @@ from pyreduce.pipeline import Pipeline
|
|
|
14
14
|
instrument = "HARPS"
|
|
15
15
|
target = "HD109200"
|
|
16
16
|
night = None
|
|
17
|
-
|
|
17
|
+
channel = "red"
|
|
18
18
|
steps = (
|
|
19
19
|
"bias",
|
|
20
20
|
"flat",
|
|
21
|
-
"
|
|
21
|
+
"trace",
|
|
22
22
|
"curvature",
|
|
23
23
|
"scatter",
|
|
24
24
|
"norm_flat",
|
|
@@ -36,13 +36,13 @@ steps = (
|
|
|
36
36
|
# load dataset (and save the location)
|
|
37
37
|
base_dir = datasets.HARPS() # Uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
38
38
|
input_dir = "raw"
|
|
39
|
-
output_dir = "reduced_{
|
|
39
|
+
output_dir = "reduced_{channel}"
|
|
40
40
|
|
|
41
41
|
Pipeline.from_instrument(
|
|
42
42
|
instrument,
|
|
43
43
|
target,
|
|
44
44
|
night=night,
|
|
45
|
-
|
|
45
|
+
channel=channel,
|
|
46
46
|
steps=steps,
|
|
47
47
|
base_dir=base_dir,
|
|
48
48
|
input_dir=input_dir,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
import os.path
|
|
6
6
|
|
|
@@ -13,9 +13,9 @@ from pyreduce.wavelength_calibration import (
|
|
|
13
13
|
)
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
def func_wavecal(deg, thar, instrument,
|
|
16
|
+
def func_wavecal(deg, thar, instrument, channel, **kwargs):
|
|
17
17
|
reference = instruments.instrument_info.get_wavecal_filename(
|
|
18
|
-
None, instrument,
|
|
18
|
+
None, instrument, channel, polarimetry=False
|
|
19
19
|
)
|
|
20
20
|
reference = np.load(reference, allow_pickle=True)
|
|
21
21
|
linelist = reference["cs_lines"]
|
|
@@ -40,7 +40,7 @@ def func_freq_comb(deg, comb, wave, **kwargs):
|
|
|
40
40
|
instrument = "HARPS"
|
|
41
41
|
target = "HD109200"
|
|
42
42
|
night = "2015-04-09"
|
|
43
|
-
|
|
43
|
+
channel = "red"
|
|
44
44
|
|
|
45
45
|
# some basic settings
|
|
46
46
|
# Expected Folder Structure: base_dir/datasets/HD132205/*.fits.gz
|
|
@@ -49,7 +49,7 @@ arm = "red"
|
|
|
49
49
|
# load dataset (and save the location)
|
|
50
50
|
base_dir = datasets.HARPS() # Uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
51
51
|
input_dir = "raw"
|
|
52
|
-
output_dir = f"reduced_{
|
|
52
|
+
output_dir = f"reduced_{channel}"
|
|
53
53
|
|
|
54
54
|
config = configuration.get_configuration_for_instrument(instrument)
|
|
55
55
|
|
|
@@ -82,10 +82,10 @@ for i in np.ndindex(shape):
|
|
|
82
82
|
grid[i] += 1
|
|
83
83
|
|
|
84
84
|
# aic = func_freq_comb((3, 6), comb, wave, **kwargs_comb)
|
|
85
|
-
# aic = func_wavecal((3, 6), thar, instrument,
|
|
85
|
+
# aic = func_wavecal((3, 6), thar, instrument, channel, **kwargs)
|
|
86
86
|
|
|
87
87
|
# matrix = util.gridsearch(
|
|
88
|
-
# func_wavecal, grid, args=(thar, instrument,
|
|
88
|
+
# func_wavecal, grid, args=(thar, instrument, channel), kwargs=kwargs
|
|
89
89
|
# )
|
|
90
90
|
# np.save(f"matrix_{ndim}D.npy", matrix)
|
|
91
91
|
# matrix = np.load(f"matrix_{ndim}D.npy")
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
"""
|
|
6
6
|
Simple usage example for PyReduce
|
|
7
7
|
Loads a JWST MIRI dataset, and runs the extraction
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
|
-
from pyreduce
|
|
10
|
+
from pyreduce import datasets
|
|
11
11
|
from pyreduce.pipeline import Pipeline
|
|
12
12
|
|
|
13
13
|
# define parameters
|
|
14
14
|
instrument = "JWST_MIRI"
|
|
15
15
|
target = None
|
|
16
16
|
night = None
|
|
17
|
-
|
|
17
|
+
channel = "LRS_SLITLESS"
|
|
18
18
|
steps = (
|
|
19
19
|
"bias",
|
|
20
20
|
"flat",
|
|
21
|
-
"
|
|
21
|
+
"trace",
|
|
22
22
|
"norm_flat",
|
|
23
23
|
# "wavecal",
|
|
24
24
|
# "curvature",
|
|
@@ -27,28 +27,20 @@ steps = (
|
|
|
27
27
|
# "finalize",
|
|
28
28
|
)
|
|
29
29
|
|
|
30
|
-
#
|
|
31
|
-
|
|
32
|
-
# Feel free to change this to your own preference, values in curly brackets will be replaced with the actual values {}
|
|
33
|
-
|
|
34
|
-
# load dataset (and save the location)
|
|
35
|
-
base_dir = "/DATA/JWST/MIRI/MIRIsim/"
|
|
30
|
+
# Data location: uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
31
|
+
base_dir = datasets.JWST_MIRI()
|
|
36
32
|
input_dir = "raw"
|
|
37
33
|
output_dir = "reduced"
|
|
38
34
|
|
|
39
|
-
# Path to the configuration parameters, that are to be used for this reduction
|
|
40
|
-
config = get_configuration_for_instrument(instrument)
|
|
41
|
-
|
|
42
35
|
Pipeline.from_instrument(
|
|
43
36
|
instrument,
|
|
44
37
|
target,
|
|
45
38
|
night=night,
|
|
46
|
-
|
|
39
|
+
channel=channel,
|
|
47
40
|
steps=steps,
|
|
48
41
|
base_dir=base_dir,
|
|
49
42
|
input_dir=input_dir,
|
|
50
43
|
output_dir=output_dir,
|
|
51
|
-
configuration=config,
|
|
52
44
|
# order_range=(0, 25),
|
|
53
45
|
plot=1,
|
|
54
46
|
).run()
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# /// script
|
|
2
|
+
# requires-python = ">=3.13"
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
|
+
# ///
|
|
5
|
+
"""
|
|
6
|
+
Simple usage example for PyReduce
|
|
7
|
+
Loads a sample JWST NIRISS dataset, and runs the extraction
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from pyreduce import datasets
|
|
11
|
+
from pyreduce.pipeline import Pipeline
|
|
12
|
+
|
|
13
|
+
# define parameters
|
|
14
|
+
instrument = "JWST_NIRISS"
|
|
15
|
+
target = None
|
|
16
|
+
night = None
|
|
17
|
+
channel = "GR700XD"
|
|
18
|
+
steps = (
|
|
19
|
+
"bias",
|
|
20
|
+
"flat",
|
|
21
|
+
"trace",
|
|
22
|
+
"norm_flat",
|
|
23
|
+
# "wavecal",
|
|
24
|
+
# "curvature",
|
|
25
|
+
"science",
|
|
26
|
+
"continuum",
|
|
27
|
+
"finalize",
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
# Data location: uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
31
|
+
base_dir = datasets.JWST_NIRISS()
|
|
32
|
+
input_dir = "raw"
|
|
33
|
+
output_dir = "reduced"
|
|
34
|
+
|
|
35
|
+
Pipeline.from_instrument(
|
|
36
|
+
instrument,
|
|
37
|
+
target,
|
|
38
|
+
night=night,
|
|
39
|
+
channel=channel,
|
|
40
|
+
steps=steps,
|
|
41
|
+
base_dir=base_dir,
|
|
42
|
+
input_dir=input_dir,
|
|
43
|
+
output_dir=output_dir,
|
|
44
|
+
# order_range=(0, 25),
|
|
45
|
+
plot=0,
|
|
46
|
+
).run()
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# /// script
|
|
2
|
+
# requires-python = ">=3.13"
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
|
+
# ///
|
|
5
|
+
"""
|
|
6
|
+
Simple usage example for PyReduce
|
|
7
|
+
Loads a Lick APF dataset, and runs the extraction
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from pyreduce import datasets
|
|
11
|
+
from pyreduce.pipeline import Pipeline
|
|
12
|
+
|
|
13
|
+
# define parameters
|
|
14
|
+
instrument = "LICK_APF"
|
|
15
|
+
target = "KIC05005618"
|
|
16
|
+
night = None
|
|
17
|
+
channel = ""
|
|
18
|
+
steps = (
|
|
19
|
+
"bias",
|
|
20
|
+
# "flat",
|
|
21
|
+
# "trace",
|
|
22
|
+
# "norm_flat",
|
|
23
|
+
# "wavecal",
|
|
24
|
+
# "curvature",
|
|
25
|
+
"science",
|
|
26
|
+
# "continuum",
|
|
27
|
+
# "finalize",
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
# Data location: uses $REDUCE_DATA or ~/REDUCE_DATA
|
|
31
|
+
base_dir = datasets.LICK_APF()
|
|
32
|
+
input_dir = "raw"
|
|
33
|
+
output_dir = "reduced"
|
|
34
|
+
|
|
35
|
+
Pipeline.from_instrument(
|
|
36
|
+
instrument,
|
|
37
|
+
target,
|
|
38
|
+
night=night,
|
|
39
|
+
channel=channel,
|
|
40
|
+
steps=steps,
|
|
41
|
+
base_dir=base_dir,
|
|
42
|
+
input_dir=input_dir,
|
|
43
|
+
output_dir=output_dir,
|
|
44
|
+
# order_range=(0, 25),
|
|
45
|
+
plot=0,
|
|
46
|
+
).run()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# /// script
|
|
2
2
|
# requires-python = ">=3.13"
|
|
3
|
-
# dependencies = ["pyreduce-astro>=0.
|
|
3
|
+
# dependencies = ["pyreduce-astro>=0.7a6"]
|
|
4
4
|
# ///
|
|
5
5
|
"""
|
|
6
6
|
Simple usage example for PyReduce
|
|
@@ -15,11 +15,11 @@ from pyreduce.pipeline import Pipeline
|
|
|
15
15
|
instrument = "McDonald"
|
|
16
16
|
target = "Vega"
|
|
17
17
|
night = None
|
|
18
|
-
|
|
18
|
+
channel = "CS23"
|
|
19
19
|
steps = (
|
|
20
20
|
# "bias",
|
|
21
21
|
# "flat",
|
|
22
|
-
# "
|
|
22
|
+
# "trace",
|
|
23
23
|
# "curvature",
|
|
24
24
|
"scatter",
|
|
25
25
|
# "norm_flat",
|
|
@@ -46,7 +46,7 @@ Pipeline.from_instrument(
|
|
|
46
46
|
instrument,
|
|
47
47
|
target,
|
|
48
48
|
night=night,
|
|
49
|
-
|
|
49
|
+
channel=channel,
|
|
50
50
|
steps=steps,
|
|
51
51
|
base_dir=base_dir,
|
|
52
52
|
input_dir=input_dir,
|