Commit 77e8cf4c authored by Ole Streicher's avatar Ole Streicher

New upstream version 3.2.3+dfsg

parent fdc410d8
3.1.1 04/05/2017 Fixed typo workflow
3.1.0 13/03/2017 Paranal 2018 release.
3.1.0b10 19/02/2017 Candidate Paranal 2018 release. Proper handling of DRS_SETUP_WAVE and DRS_SETUP_WAVE_OH
3.1.0b9 19/02/2017 Candidate Paranal 2018 release. Merged HDRL-response branch.
3.1.0b8 19/02/2017 Candidate Paranal 2018 release. Set different PRO.CATG on DRS_SETUP_WAVE for OH lines
3.2.3 25/04/2019 Updated manual
3.2.2 20/04/2019 added SI_GCOL_FIRST_COL.fits to sinfo-calib as required by PSO oca rules
3.2.1 08/04/2019 Fixed PIPE-8372: Update gasgano pref: SINFONI moved to UT3 so its script directory changed
3.2.0 11/03/2019 Final releasae for Paranal
3.2.0b2 19/02/2019 Fixed typo OCA rules for ATM_REF_CORR to fix problem reported by Mubashir
3.2.0b2 15/02/2019 Updating version to candidate for PSO release (after merging reflex-gui branch to main trunk)
3.2.0b1 07/02/2019 Updating version to candidate for PSO release
3.1.3 15/05/2018 Testing Reflex GUI
3.1.2 15/05/2018 Fixed problems to put pdf in kit
3.1.1 08/05/2018 Fixed typo reflex workfolow in RAW_DATA_DIR value
3.1.0 06/03/2018 Final release for Paranal and QC with DFS2018
3.1.0b10 19/02/2018 Candidate Paranal 2018 release. Proper handling of DRS_SETUP_WAVE and DRS_SETUP_WAVE_OH
3.1.0b9 19/02/2018 Candidate Paranal 2018 release. Merged HDRL-response branch.
3.1.0b8 19/02/2018 Candidate Paranal 2018 release. Set different PRO.CATG on DRS_SETUP_WAVE for OH lines
3.1.0b7 15/02/2018 Andling case where HIGH_ABS_REGIONS is missing
3.1.0b6 09/02/2017 Candidate Paranal 2018 release. Fix typo help parameter bp_dist.max_cut
3.1.0b5 09/02/2017 Candidate Paranal 2018 release. Better fix of PIPE-7651
3.1.0b6 09/02/2018 Candidate Paranal 2018 release. Fix typo help parameter bp_dist.max_cut
3.1.0b5 09/02/2018 Candidate Paranal 2018 release. Better fix of PIPE-7651
3.1.0b4 06/02/2018 Updated for new data after commissioning
3.1.0b3 06/02/2017 Candidate Paranal 2018 release. Fixed problem reducing SINFONI J band distortion data after com 01/02/2017. PIPE-7651
3.1.0b3 06/02/2018 Candidate Paranal 2018 release. Fixed problem reducing SINFONI J band distortion data after com 01/02/2017. PIPE-7651
3.1.0b1 15/12/2017 Candidate Paranal 2018 release
3.0.9 15/12/2017 Fixed PIPE-7570
3.0.8 07/12/2017 Fixed bug in fluxcal of cube
......
v 3.2.0 (2019-04-01):
Updated for CPL7.1.1
PIPE-8068: Suggested improvements to interactive actors in the SINFONI Reflex workflow
PIPE-8139: Missing ATM_REF_CORR in SINFO rules in Paranal
PIPE-7755: Update the SCRIPTS_DIR path in the Gasgano preferences
PIPE-8197: Updated SINFONI reflex tutorial
PIPE-7866: Incomplete SINFONI datasets are not classified as incomplete in the wkf
v 3.1.1 (2018-05-07):
-fixed typo in reflex top level layout RAW_DATA_DIR (appearing only for install_esoreflex based installations)
v 3.1.0 (2018-04-01):
......
......@@ -5,7 +5,7 @@ CLASSRULE_FILE=/usr/share/esopipes/rul/sinfo.oca
COMPONENT_FONT=Dialog:14
CUBE_TO_VIEWER=
CUBE_VIEWER_TYPE=SHELLCOMMAND
DATA_FILES=/usr/share/esopipes/datastatic/sinfo-3.1.1
DATA_FILES=/usr/share/esopipes/datastatic/sinfo-3.2.3
DBOBS_DISPLAY_COLUMNS=CLASSIFICATION:RA:DEC:TPL.EXPNO:TPL.NEXP
DBOBS_DISPLAY_COLUMNS_SIZE=0:0:0:0:0
DBOBS_INSTRUMENT=All
......@@ -41,8 +41,8 @@ PRINTER_NAME=lp
PRINT_FONT=Monospaced:16
PRINT_ORIENTATION=P
RADEC_CONVERSION=true
RECIPE_SET=sinfo_rec_detlin=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_detlin.so;sinfo_rec_distortion=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_distortion.so;sinfo_rec_jitter=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_jitter.so;sinfo_rec_mdark=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_mdark.so;sinfo_rec_mflat=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_mflat.so;sinfo_rec_pupil=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_pupil.so;sinfo_rec_wavecal=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_rec_wavecal.so;sinfo_utl_bp_mask_add=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_bp_mask_add.so;sinfo_utl_cube2ima=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_cube2ima.so;sinfo_utl_cube_combine=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_cube_combine.so;sinfo_utl_cube2spectrum=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_cube2spectrum.so;sinfo_utl_cube_arith=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_cube_arith.so;sinfo_utl_ima_arith=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_ima_arith.so;sinfo_utl_skycor=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_skycor.so;sinfo_utl_skymap=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_skymap.so;sinfo_utl_spectrum_divide_by_blackbody=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_spectrum_divide_by_blackbody.so;sinfo_utl_spectrum_wavelength_shift=/usr/lib64/esopipes-plugins/sinfo-3.1.1/sinfo_utl_spectrum_wavelength_shift.so
SCRIPTS_DIR=/home/astro4/gasgano/scripts/gas-scripts
RECIPE_SET=sinfo_rec_detlin=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_detlin.so;sinfo_rec_distortion=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_distortion.so;sinfo_rec_jitter=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_jitter.so;sinfo_rec_mdark=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_mdark.so;sinfo_rec_mflat=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_mflat.so;sinfo_rec_pupil=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_pupil.so;sinfo_rec_wavecal=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_rec_wavecal.so;sinfo_utl_bp_mask_add=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_bp_mask_add.so;sinfo_utl_cube2ima=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_cube2ima.so;sinfo_utl_cube_combine=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_cube_combine.so;sinfo_utl_cube2spectrum=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_cube2spectrum.so;sinfo_utl_cube_arith=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_cube_arith.so;sinfo_utl_ima_arith=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_ima_arith.so;sinfo_utl_skycor=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_skycor.so;sinfo_utl_skymap=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_skymap.so;sinfo_utl_spectrum_divide_by_blackbody=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_spectrum_divide_by_blackbody.so;sinfo_utl_spectrum_wavelength_shift=/usr/lib64/esopipes-plugins/sinfo-3.2.3/sinfo_utl_spectrum_wavelength_shift.so
SCRIPTS_DIR=/home/astro3/gasgano/scripts/sinfo
SHORTEN_FILES_PATH=false
SHORT_FILENAME=true
SHOW_EXTENSIONS=true
......
......@@ -635,6 +635,12 @@ if PRO.CATG == "TELL_MOD_CATALOG" then
DO.CATG = "TELL_MOD_CATALOG";
}
if PRO.CATG == "ATM_REF_CORR" then
{
DO.CATG = "ATM_REF_CORR";
}
select execute(sinfo_rec_jitter_stdstar) from inputFiles where SIG.TEMPLATE == 1 and LF.DO.CATG == "STD";
select execute(sinfo_rec_mflat) from inputFiles where SIG.TEMPLATE == 1 and LF.DO.CATG == "FLAT_LAMP";
select execute(sinfo_rec_distortion) from inputFiles where SIG.TEMPLATE == 1 and LF.DO.CATG == "FLAT_NS";
......@@ -728,7 +734,7 @@ select file as MASTER_FLAT_LAMP from calibFiles where DO.CATG == "MASTER_FLAT_LA
minRet = 0; maxRet = 1;
select file as MASTER_DARK from calibFiles where DO.CATG == "MASTER_DARK"
and inputFile.DET.DIT==DET.DIT and inputFile.INSTRUME==INSTRUME;
minRet = 1; maxRet = 1;
minRet = 0; maxRet = 1;
select file as FIRST_COL from calibFiles where DO.CATG == "FIRST_COL";
minRet = 1; maxRet = 1;
select file as WAVE_MAP from calibFiles where DO.CATG == "WAVE_MAP"
......@@ -753,6 +759,10 @@ minRet = 0; maxRet = 1;
select file as RESPONSE from calibFiles where DO.CATG == "RESPONSE"
and inputFile.INSTRUME==INSTRUME and inputFile.INS.SETUP.ID==INS.SETUP.ID;
minRet = 0; maxRet = 1;
select file as ATM_REF_CORR from calibFiles where PRO.CATG=="ATM_REF_CORR" and inputFile.INS.SETUP.ID==INS.SETUP.ID and inputFile.INS.OPTI1.NAME==INS.OPTI1.NAME and inputFile.INSTRUME==INSTRUME;
recipe sinfo_rec_jitter;
}
......@@ -783,7 +793,7 @@ select file as MASTER_FLAT_LAMP from calibFiles where DO.CATG == "MASTER_FLAT_LA
minRet = 0; maxRet = 1;
select file as MASTER_DARK from calibFiles where DO.CATG == "MASTER_DARK"
and inputFile.DET.DIT==DET.DIT and inputFile.INSTRUME==INSTRUME;
minRet = 1; maxRet = 1;
minRet = 0; maxRet = 1;
select file as FIRST_COL from calibFiles where DO.CATG == "FIRST_COL";
minRet = 1; maxRet = 1;
select file as WAVE_MAP from calibFiles where DO.CATG == "WAVE_MAP"
......@@ -841,6 +851,10 @@ select file as RESP_FIT_POINTS_CATALOG from calibFiles where DO.CATG == "RESP_FI
//select file as RESPONSE from calibFiles where DO.CATG == "RESPONSE"
// and inputFile.INSTRUME==INSTRUME and inputFile.INS.FILT1.NAME == INS.FILT1.NAME;
minRet = 0; maxRet = 1;
select file as ATM_REF_CORR from calibFiles where PRO.CATG=="ATM_REF_CORR" and inputFile.INS.SETUP.ID==INS.SETUP.ID and inputFile.INS.OPTI1.NAME==INS.OPTI1.NAME and inputFile.INSTRUME==INSTRUME;
recipe sinfo_rec_jitter;
}
......@@ -857,11 +871,11 @@ select file as MASTER_FLAT_LAMP from calibFiles where DO.CATG == "MASTER_FLAT_LA
minRet = 0; maxRet = 1;
select file as MASTER_DARK from calibFiles where DO.CATG == "MASTER_DARK"
and inputFile.DET.DIT==DET.DIT and inputFile.INSTRUME==INSTRUME;
minRet = 1; maxRet = 1;
minRet = 0; maxRet = 1;
select file as FIRST_COL from calibFiles where DO.CATG == "FIRST_COL";
minRet = 1; maxRet = 1;
select file as WAVE_MAP from calibFiles where DO.CATG == "WAVE_MAP"
and inputFile.INSTRUME==INSTRUME and inputFile.INS.SETUP.ID==INS.SETUP.ID and inputFile.INS.OPTI1.NAME==INS.OPTI1.NAME;
and inputFile.INSTRUME==INSTRUME and inputFile.INS.SETUP.ID==INS.SETUP.ID and inputFile.INS.OPTI1.NAME=="0.25";
minRet = 1; maxRet = 1;
select file as SLITLETS_DISTANCE from calibFiles where DO.CATG == "SLITLETS_DISTANCE"
and inputFile.INSTRUME==INSTRUME and inputFile.INS.SETUP.ID==INS.SETUP.ID;
......
This diff is collapsed.
# Process this file with autoconf to produce a configure script.
AC_INIT([SINFONI Instrument Pipeline], [3.1.1], [usd-help@eso.org], [sinfo])
AC_INIT([SINFONI Instrument Pipeline], [3.2.3], [usd-help@eso.org], [sinfo])
AC_PREREQ([2.59])
......@@ -51,50 +51,27 @@ ESO_PROG_CC_FLAG([Werror=implicit-function-declaration],
#From Lars
ESO_PROG_CC_FLAG([Werror=incompatible-pointer-types],
[CFLAGS="$CFLAGS -Werror=incompatible-pointer-types"])
# Werror=format=2 replaced by below for CPL_DIAG_PRAGMA_PUSH_IGN(-Wformat-nonliteral)
ESO_PROG_CC_FLAG([Werror=format], [CFLAGS="$CFLAGS -Werror=format"])
ESO_PROG_CC_FLAG([Werror=format-nonliteral],
[CFLAGS="$CFLAGS -Werror=format-nonliteral"])
ESO_PROG_CC_FLAG([Werror=format-security],
[CFLAGS=" $CFLAGS -Werror=format-security"])
ESO_PROG_CC_FLAG([Werror=format-y2k],
[CFLAGS="$CFLAGS -Werror=format-y2k"])
ESO_PROG_CC_FLAG([Werror=init-self],
[CFLAGS="$CFLAGS -Werror=init-self"])
ESO_PROG_CC_FLAG([Werror=missing-declarations],
[CFLAGS="$CFLAGS -Werror=missing-declarations"])
ESO_PROG_CC_FLAG([Werror=missing-format-attribute],
[CFLAGS="$CFLAGS -Werror=missing-format-attribute"])
ESO_PROG_CC_FLAG([Werror=missing-noreturn],
[CFLAGS="$CFLAGS -Werror=missing-noreturn"])
ESO_PROG_CC_FLAG([Werror=nested-externs],
[CFLAGS="$CFLAGS -Werror=nested-externs"])
ESO_PROG_CC_FLAG([Werror=pointer-arith],
[CFLAGS="$CFLAGS -Werror=pointer-arith"])
ESO_PROG_CC_FLAG([Werror=redundant-decls],
[CFLAGS="$CFLAGS -Werror=redundant-decls"])
ESO_PROG_CC_FLAG([Werror=sign-compare],
[CFLAGS="$CFLAGS -Werror=sign-compare"])
ESO_PROG_CC_FLAG([Werror=undef],
[CFLAGS="$CFLAGS -Werror=undef"])
ESO_PROG_CC_FLAG([Werror=variadic-macros],
[CFLAGS="$CFLAGS -Werror=variadic-macros"])
ESO_PROG_CC_FLAG([Werror=volatile-register-var],
[CFLAGS="$CFLAGS -Werror=volatile-register-var"])
ESO_PROG_CC_FLAG([Werror=write-strings],
[CFLAGS="$CFLAGS -Werror=write-strings"])
ESO_PROG_CC_FLAG([Werror=old-style-definition],
[CFLAGS="$CFLAGS -Werror=old-style-definition"])
ESO_PROG_CC_FLAG([Werror=missing-prototypes],
[CFLAGS="$CFLAGS -Wmissing-prototypes"])
ESO_PROG_CC_FLAG([Werror=maybe-uninitialized],
[CFLAGS="$CFLAGS -Wmaybe-uninitialized"])
ESO_PROG_CC_FLAG([fno-common], [CFLAGS="$CFLAGS -fno-common"])
ESO_PROG_CC_FLAG([fstrict-aliasing], [CFLAGS="$CFLAGS -fstrict-aliasing"])
ESO_ENABLE_DEBUG(no)
ESO_ENABLE_STRICT(no)
ESO_PROG_CC_FLAG([Wimplicit-function-declaration ], [CFLAGS="$CFLAGS -Wimplicit-function-declaration "])
ESO_PROG_CC_FLAG([Wmissing-field-initializers ], [CFLAGS="$CFLAGS -Wmissing-field-initializers "])
ESO_PROG_CC_FLAG([fno-common ], [CFLAGS="$CFLAGS -fno-common "])
ESO_PROG_CC_FLAG([Wshadow ], [CFLAGS="$CFLAGS -Wshadow "])
ESO_PROG_CC_FLAG([Wunused-parameter ], [CFLAGS="$CFLAGS -Wunused-parameter "])
ESO_PROG_CC_FLAG([Wunused-variable ], [CFLAGS="$CFLAGS -Wunused-variable "])
ESO_PROG_CC_FLAG([Wimplicit-fallthrough ], [CFLAGS="$CFLAGS -Wimplicit-fallthrough "])
ESO_PROG_CC_FLAG([Wdiscarded-qualifiers ], [CFLAGS="$CFLAGS -Wdiscarded-qualifiers "])
ESO_PROG_CC_FLAG([Wmaybe-uninitialized ], [CFLAGS="$CFLAGS -Wmaybe-uninitialized "])
ESO_PROG_CC_FLAG([Wformat-truncation ], [CFLAGS="$CFLAGS -Wformat-truncation "])
ESO_PROG_CC_FLAG([fstrict-aliasing ], [CFLAGS="$CFLAGS -fstrict-aliasing "])
ESO_PROG_CC_FLAG([std=c99 ], [CFLAGS="$CFLAGS -std=c99 "])
ESO_PROG_CC_FLAG([Wformat-overflow ], [CFLAGS="$CFLAGS -Wformat-overflow "])
ESO_PROG_CC_FLAG([Wformat-truncation ], [CFLAGS="$CFLAGS -Wformat-truncation "])
ESO_PROG_CC_FLAG([Wstringop-truncation ], [CFLAGS="$CFLAGS -Wstringop-truncation "])
ESO_PROG_CC_FLAG([Wunused-function ], [CFLAGS="$CFLAGS -Wunused-function "])
ESO_PROG_CC_FLAG([Wabsolute-value ], [CFLAGS="$CFLAGS -Wabsolute-value "])
ESO_PROG_CC_FLAG([Wall ], [CFLAGS="-Wall $CFLAGS "])
......
......@@ -79,6 +79,7 @@ hdrlHEADERS = hdrl_overscan.h \
hdrl_efficiency.h \
hdrl_response.h \
hdrl_dar.h \
hdrl_fpn.h \
hdrl.h
libhdrl_la_SOURCES = hdrl_overscan.c \
......@@ -118,6 +119,7 @@ libhdrl_la_SOURCES = hdrl_overscan.c \
hdrl_response.c \
hdrl_efficiency.c \
hdrl_dar.c \
hdrl_fpn.c \
igam.c
libhdrl_la_CFLAGS = $(AM_CFLAGS)
......
......@@ -166,7 +166,7 @@ am_libhdrl_la_OBJECTS = libhdrl_la-hdrl_overscan.lo \
libhdrl_la-hdrl_spectrum_shift.lo libhdrl_la-hdrl_DER_SNR.lo \
libhdrl_la-hdrl_correlation.lo libhdrl_la-hdrl_response.lo \
libhdrl_la-hdrl_efficiency.lo libhdrl_la-hdrl_dar.lo \
libhdrl_la-igam.lo
libhdrl_la-hdrl_fpn.lo libhdrl_la-igam.lo
libhdrl_la_OBJECTS = $(am_libhdrl_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
......@@ -239,7 +239,7 @@ am__noinst_HEADERS_DIST = hdrl_overscan.h hdrl_sigclip.h hdrl_utils.h \
hdrl_catalogue.h hdrl_random.h hdrl_spectrum.h \
hdrl_spectrumlist.h hdrl_spectrum_resample.h \
hdrl_spectrum_shift.h hdrl_DER_SNR.h hdrl_correlation.h \
hdrl_efficiency.h hdrl_response.h hdrl_dar.h hdrl.h
hdrl_efficiency.h hdrl_response.h hdrl_dar.h hdrl_fpn.h hdrl.h
am__pkginclude_HEADERS_DIST = hdrl_overscan.h hdrl_sigclip.h \
hdrl_utils.h hdrl_combine.h hdrl_bpm_2d.h hdrl_bpm_3d.h \
hdrl_bpm_fit.h hdrl_bpm_utils.h hdrl_iter.h hdrl_frameiter.h \
......@@ -253,7 +253,7 @@ am__pkginclude_HEADERS_DIST = hdrl_overscan.h hdrl_sigclip.h \
hdrl_catalogue.h hdrl_random.h hdrl_spectrum.h \
hdrl_spectrumlist.h hdrl_spectrum_resample.h \
hdrl_spectrum_shift.h hdrl_DER_SNR.h hdrl_correlation.h \
hdrl_efficiency.h hdrl_response.h hdrl_dar.h hdrl.h
hdrl_efficiency.h hdrl_response.h hdrl_dar.h hdrl_fpn.h hdrl.h
HEADERS = $(noinst_HEADERS) $(pkginclude_HEADERS)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
......@@ -535,6 +535,7 @@ hdrlHEADERS = hdrl_overscan.h \
hdrl_efficiency.h \
hdrl_response.h \
hdrl_dar.h \
hdrl_fpn.h \
hdrl.h
libhdrl_la_SOURCES = hdrl_overscan.c \
......@@ -574,6 +575,7 @@ libhdrl_la_SOURCES = hdrl_overscan.c \
hdrl_response.c \
hdrl_efficiency.c \
hdrl_dar.c \
hdrl_fpn.c \
igam.c
libhdrl_la_CFLAGS = $(AM_CFLAGS)
......@@ -707,6 +709,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_elemop.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_fit.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_flat.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_fpn.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_frameiter.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_fringe.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhdrl_la-hdrl_image.Plo@am__quote@
......@@ -1011,6 +1014,13 @@ libhdrl_la-hdrl_dar.lo: hdrl_dar.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libhdrl_la_CFLAGS) $(CFLAGS) -c -o libhdrl_la-hdrl_dar.lo `test -f 'hdrl_dar.c' || echo '$(srcdir)/'`hdrl_dar.c
libhdrl_la-hdrl_fpn.lo: hdrl_fpn.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libhdrl_la_CFLAGS) $(CFLAGS) -MT libhdrl_la-hdrl_fpn.lo -MD -MP -MF $(DEPDIR)/libhdrl_la-hdrl_fpn.Tpo -c -o libhdrl_la-hdrl_fpn.lo `test -f 'hdrl_fpn.c' || echo '$(srcdir)/'`hdrl_fpn.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libhdrl_la-hdrl_fpn.Tpo $(DEPDIR)/libhdrl_la-hdrl_fpn.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hdrl_fpn.c' object='libhdrl_la-hdrl_fpn.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libhdrl_la_CFLAGS) $(CFLAGS) -c -o libhdrl_la-hdrl_fpn.lo `test -f 'hdrl_fpn.c' || echo '$(srcdir)/'`hdrl_fpn.c
libhdrl_la-igam.lo: igam.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libhdrl_la_CFLAGS) $(CFLAGS) -MT libhdrl_la-igam.lo -MD -MP -MF $(DEPDIR)/libhdrl_la-igam.Tpo -c -o libhdrl_la-igam.lo `test -f 'igam.c' || echo '$(srcdir)/'`igam.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libhdrl_la-igam.Tpo $(DEPDIR)/libhdrl_la-igam.Plo
......
......@@ -21,7 +21,7 @@
#include "../hdrl_cat_conf.h"
#include "../hdrl_cat_table.h"
#include "hdrl_types.h"
#define NTEST 10
......@@ -95,6 +95,11 @@ cpl_image * create_gauss(double dx, double dy, double fwhm)
cpl_image_divide_scalar(r, factor * factor);
/* avoiding a background rms of exactly zero */
cpl_image * noise_bkg = cpl_image_duplicate(r);
cpl_image_fill_noise_uniform(noise_bkg, -HDRL_EPS_DATA, +HDRL_EPS_DATA);
cpl_image_add(r, noise_bkg);
cpl_image_delete(noise_bkg);
/* Close up */
cpl_image_delete(g);
......
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for HDRL Pipeline 1.1.0b3.
# Generated by GNU Autoconf 2.69 for HDRL Pipeline 1.2.0.
#
# Report bugs to <usd-help@eso.org>.
#
......@@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='HDRL Pipeline'
PACKAGE_TARNAME='hdrl'
PACKAGE_VERSION='1.1.0b3'
PACKAGE_STRING='HDRL Pipeline 1.1.0b3'
PACKAGE_VERSION='1.2.0'
PACKAGE_STRING='HDRL Pipeline 1.2.0'
PACKAGE_BUGREPORT='usd-help@eso.org'
PACKAGE_URL=''
......@@ -1369,7 +1369,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures HDRL Pipeline 1.1.0b3 to adapt to many kinds of systems.
\`configure' configures HDRL Pipeline 1.2.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
......@@ -1440,7 +1440,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of HDRL Pipeline 1.1.0b3:";;
short | recursive ) echo "Configuration of HDRL Pipeline 1.2.0:";;
esac
cat <<\_ACEOF
......@@ -1575,7 +1575,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
HDRL Pipeline configure 1.1.0b3
HDRL Pipeline configure 1.2.0
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
......@@ -1990,7 +1990,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by HDRL Pipeline $as_me 1.1.0b3, which was
It was created by HDRL Pipeline $as_me 1.2.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
......@@ -2969,7 +2969,7 @@ fi
# Define the identity of the package.
PACKAGE='hdrl'
VERSION='1.1.0b3'
VERSION='1.2.0'
cat >>confdefs.h <<_ACEOF
......@@ -14764,7 +14764,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by HDRL Pipeline $as_me 1.1.0b3, which was
This file was extended by HDRL Pipeline $as_me 1.2.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
......@@ -14830,7 +14830,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
HDRL Pipeline config.status 1.1.0b3
HDRL Pipeline config.status 1.2.0
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
......
# Process this file with autoconf to produce a configure script.
AC_INIT([HDRL Pipeline], [1.1.0b3], [usd-help@eso.org], [hdrl])
AC_INIT([HDRL Pipeline], [1.2.0], [usd-help@eso.org], [hdrl])
AC_PREREQ([2.59])
AC_CONFIG_SRCDIR([Makefile.am])
......
......@@ -40,38 +40,39 @@
CPL page
Pipelines page
*/
*/
/*----------------------------------------------------------------------------*/
#ifndef HDRL_H
#define HDRL_H
#include "hdrl_image.h"
#include "hdrl_imagelist.h"
#include "hdrl_parameter.h"
#include "hdrl_imagelist_view.h"
#include "hdrl_overscan.h"
#include "hdrl_buffer.h"
#include "hdrl_collapse.h"
#include "hdrl_lacosmics.h"
#include "hdrl_bpm_2d.h"
#include "hdrl_bpm_3d.h"
#include "hdrl_bpm_fit.h"
#include "hdrl_bpm_utils.h"
#include "hdrl_fit.h"
#include "hdrl_strehl.h"
#include "hdrl_flat.h"
#include "hdrl_catalogue.h"
#include "hdrl_random.h"
#include "hdrl_iter.h"
#include "hdrl_frameiter.h"
#include "hdrl_multiiter.h"
#include "hdrl_fringe.h"
#include "hdrl_spectrum.h"
#include "hdrl_spectrumlist.h"
#include "hdrl_response.h"
#include "hdrl_efficiency.h"
#include "hdrl_spectrum_resample.h"
#include "hdrl_dar.h"
#endif
#include "hdrl_image.h"
#include "hdrl_imagelist.h"
#include "hdrl_parameter.h"
#include "hdrl_imagelist_view.h"
#include "hdrl_overscan.h"
#include "hdrl_buffer.h"
#include "hdrl_collapse.h"
#include "hdrl_lacosmics.h"
#include "hdrl_bpm_2d.h"
#include "hdrl_bpm_3d.h"
#include "hdrl_bpm_fit.h"
#include "hdrl_bpm_utils.h"
#include "hdrl_fit.h"
#include "hdrl_strehl.h"
#include "hdrl_flat.h"
#include "hdrl_catalogue.h"
#include "hdrl_random.h"
#include "hdrl_iter.h"
#include "hdrl_frameiter.h"
#include "hdrl_multiiter.h"
#include "hdrl_fringe.h"
#include "hdrl_spectrum.h"
#include "hdrl_spectrumlist.h"
#include "hdrl_response.h"
#include "hdrl_efficiency.h"
#include "hdrl_spectrum_resample.h"
#include "hdrl_dar.h"
#include "hdrl_fpn.h"
#endif /* HDRL_H */
......@@ -253,9 +253,13 @@ cpl_error_code hdrl_dar_compute(const hdrl_parameter *params,
* in um and output properties in "natural" (for the formulae) units *
* ----------------------------------------------------------------- */
/* Calculate temperature and error in Kelvin */
double temp_kel_data = temp.data + 273.15;
double temp_kel_err = (temp.error / fabs(temp.data)) * fabs(temp_kel_data);
hdrl_value temp_kel = {temp_kel_data, temp_kel_err};
/* Use the Owens formula to derive saturation pressure. Needs T[K] */
hdrl_value temp_kel = {temp.data + 273.15, temp.error};
hdrl_value sp = hdrl_dar_owens_saturation_pressure(temp_kel);
hdrl_value sp = hdrl_dar_owens_saturation_pressure(temp_kel);
/* Conversion from hPa (or mbar) to mmHg, needed for Filippenko *
* using that, derive the water vapor pressure in mmHg */
......@@ -325,7 +329,7 @@ cpl_error_code hdrl_dar_compute(const hdrl_parameter *params,
hdrl_value lambda_um = {lambda * 1e-4, lambdaRef_um.error};
hdrl_value nr = hdrl_dar_filippenko_refractive_index(lambda_um, pres, temp, fp);
hdrl_value dr = {dr0.data * (nr0.data - nr.data),
hdrl_value dr = {dr0.data * (nr0.data - nr.data),
dr0.error * fabs(nr0.data - nr.data)
+ nr0.error * fabs( dr0.data)
+ nr.error * fabs(-dr0.data)};
......@@ -360,7 +364,7 @@ cpl_error_code hdrl_dar_compute(const hdrl_parameter *params,
/**
* @brief Compute the saturation pressure using the Owens calibration.
*
* @param hvT temperature (in Kelvin) wit it error associated
* @param hvT temperature (in Kelvin) with it error associated (in Celsius)
*
* @return the saturation pressure for the given temperature with it error propagation
*
......@@ -379,7 +383,7 @@ hdrl_value hdrl_dar_owens_saturation_pressure(hdrl_value hvT)
double errorT = hvT.error;
return (hdrl_value){-10474.0 + 116.43 * T - 0.43284 * T * T + 0.00053840 * pow(T, 3),
errorT * fabs(0.0016152 * T * T - 0.86568 * T + 116.43)};
errorT * fabs(0.0016152 * T * T - 0.86568 * T + 116.43)};
}
/*----------------------------------------------------------------------------*/
......@@ -441,10 +445,11 @@ hdrl_value hdrl_dar_filippenko_refractive_index(
double errorNl1 = errorLisq * fabs( 29498.1 / pow(146. - lisq, 2) + 255.4 / pow(41. - lisq, 2) );
/* correction for non-standard conditions, Eq. (2) */
double factor = 1.e-6;
double nl2A = nl1 * ( P / 720.883 * (1. + (1.049 -0.0157 * T) * 1e-6 * P) / (1. + 0.003661 * T) );
double errorNl2A1 = errorNl1 * fabs( P / 720.883 * (1. + (1.049 - 0.0157 * T) * 1e-6 * P) / (1. + 0.003661 * T) );
double errorNl2A2 = errorP * fabs( nl1 / (720.883 * (1. + 0.003661 * T)) *( (1. + (1.049 - 0.0157 * T) * 1e-6 * P) + P * (1.049 - 0.0157 * T) * 1e-6) );
double errorNl2A3 = errorT * fabs( nl1 * P / 720.883 * ( ( -0.0157 * 1e-6 * P * (1. + 0.003661 * T) - 0.003661 * (1. + (1.049 - 0.0157 * T) * 1e-6 * P) )/pow(1. + 0.003661 * T, 2) ) );
double errorNl2A1 = errorNl1 * fabs( factor *(P / 720.883 * (1. + (1.049 - 0.0157 * T) * 1e-6 * P) / (1. + 0.003661 * T) ) );
double errorNl2A2 = errorP * fabs( factor *(nl1 / (720.883 * (1. + 0.003661 * T)) *( (1. + (1.049 - 0.0157 * T) * 1e-6 * P) + P * (1.049 - 0.0157 * T) * 1e-6) ) );
double errorNl2A3 = errorT * fabs( factor *(nl1 * P / 720.883 * ( ( -0.0157 * 1e-6 * P * (1. + 0.003661 * T) - 0.003661 * (1. + (1.049 - 0.0157 * T) * 1e-6 * P) )/pow(1. + 0.003661 * T, 2) ) ) );
double errorNl2A = errorNl2A1 + errorNl2A2 + errorNl2A3;
/* Calcule correction for water vapor, Eq. (3) */
......
......@@ -94,7 +94,7 @@ highest_w_min(const cpl_array * a1, const cpl_array * a2);
* @param Ap Parameter to indicate if the efficiency is computed at
* airmass = 0, or at a given non zero value
* @param Am Airmass at which the std star was observed
* @param G Gain [e/ADU]
* @param G Gain [ADU/e]
* @param Tex Exposure time [s]
*
* @return hdrl_parameter
......@@ -261,7 +261,7 @@ const hdrl_parameter * pars){
*
* This function implements the efficiency calculation. The formula used is:
*
* I_std(l) * 10^(0.4 * E_x(l) * (Ap-Am)) * G * E_phot(l)
* I_std(l) * 10^(0.4 * E_x(l) * (Am - Ap)) * G * E_phot(l)
* Eff(l)= -----------------------------------------------------------
* Tex * Atel * I_std_ref(l)
*
......@@ -323,15 +323,14 @@ hdrl_spectrum1D * hdrl_efficiency_compute(
{
hdrl_spectrum1D * exponential2 = hdrl_spectrum1D_duplicate(exponential);
/*0.4A_pE_x(f) */
hdrl_spectrum1D_mul_scalar(exponential, (hdrl_value){0.4, 0.0});
hdrl_spectrum1D_mul_scalar(exponential, Ap);
/*0.4A_mE_x(f) */
hdrl_spectrum1D_mul_scalar(exponential, (hdrl_value){0.4, 0.0});
hdrl_spectrum1D_mul_scalar(exponential, Am);
/*0.4A_pE_x(f) */
hdrl_spectrum1D_mul_scalar(exponential2, (hdrl_value){0.4, 0.0});
hdrl_spectrum1D_mul_scalar(exponential2, Am);
hdrl_spectrum1D_mul_scalar(exponential2, Ap);
/*0.4A_pE_x(f) - 0.4A_mE_x(f) */
/*0.4A_mE_x(f) - 0.4A_pE_x(f) */
hdrl_spectrum1D_sub_spectrum(exponential, exponential2);
hdrl_spectrum1D_delete(&exponential2);
......
/*
* This file is part of the HDRL
* Copyright (C) 2013,2014 European Southern Observatory
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include "hdrl_fpn.h"
/*---------------------------------------------------------------------------*/
/**
* @defgroup hdrl_fpn Fixed pattern noise detection
*
* @brief
* Algorithms to compute fixed pattern noise on a single image
*
* The routine in this module can be used to detect fixed pattern noise in an
* image. The algorithm first computes the power spectrum of the image using
* the Fast Fourier Transform (FFT) as follows:
*
* \f{eqnarray*}{
* fft & = & FFT\_2D(\ img\ ) \\
* power\_spec & = & abs(\ fft\ )^2
* \f}
*
* Then it computes the standard deviation (std) and the mad-based std of the
* power_spectrum excluding the masked region. For this the user can provide an
* optional mask or use the dc_mask_x and dc_mask_y function parameter to create
* one on the fly. The mask created on the fly will start at pixel (1,1) and
* extend in both direction up to (dc_mask_x, dc_mask_y).
*
* \note The power spectrum contains the DC component (the DC term is the 0 Hz
* term and is equivalent to the average of all the samples in the window)
* in pixel (1,1)
*
* \note The mask created on the fly and the optional mask are combined and
* are both taken into account.
*
*
*
*/
/*----------------------------------------------------------------------------*/
/**@{*/
/* ---------------------------------------------------------------------------*/
/**
* @brief Algorithms to compute fixed pattern noise on a single image
*
* @param img_in input cpl image (bad pixels are not allowed)
* @param mask_in optional input cpl mask applied to the power spectrum (or NULL).
* @param dc_mask_x x-pixel window (>= 1) to discard DC component starting form pixel (1, 1)
* @param dc_mask_y y-pixel window (>= 1) to discard DC component starting from pixel (1, 1)
* @param power_spectrum output power spectrum image with associated mask.
* @param std output standard deviation of the power spectrum
* @param std_mad output standard deviation of the power spectrum based on the MAD
*
*
*
* The function detects fixed pattern noise on the image (img_in). The algorithm
* first computes the power spectrum (power_spectrum) of the image using the
* Fast Fourier Transform (FFT) as follows:
*
* \f{eqnarray*}{
* fft & = & FFT\_2D(\ img\ ) \\
* power\_spec & = & abs(\ fft\ )^2
* \f}
*
* Then it computes the standard deviation (std) and the mad-based std (std_mad)
* of the power_spectrum excluding the masked region. For this the user can
* provide an optional mask or use the dc_mask_x and dc_mask_y function
* parameter to create one on the fly. The mask created on the fly will start at
* pixel (1,1) and extend in both direction up to (dc_mask_x, dc_mask_y).
*
* \note The power spectrum contains the DC component (the DC term is the 0 Hz
* term and is equivalent to the average of all the samples in the window)
* in pixel (1,1)
*
* \note The mask created on the fly by setting dc_mask_x and dc_mask_y and the
* optional mask (mask_in) are combined and are both taken into account when
* calculating (std) and (mad_std).
*
* \note The final mask used to derive (std) and (mad_std) is attached to the
* (power_spectrum) image as normal cpl_mask and can be retrieved by using the
* cpl function cpl_image_get_bpm(power_spectrum)
*
* Possible #_cpl_error_code_ set in this function:
* - CPL_ERROR_NULL_INPUT If img_in is NULL
* - CPL_ERROR_ILLEGAL_INPUT If dc_mask_x < 1 or dc_mask_y < 1
* - CPL_ERROR_ILLEGAL_INPUT If the power_spectrum is NOT NULL
* - CPL_ERROR_ILLEGAL_INPUT If img_in contains bad pixels
* - CPL_ERROR_INCOMPATIBLE_INPUT If mask NOT NULL and size(mask) != size(img_in)
*
*/
/* ---------------------------------------------------------------------------*/
cpl_error_code hdrl_fpn_compute(
cpl_image *img_in,
const cpl_mask *mask_in,
const cpl_size dc_mask_x,
const cpl_size dc_mask_y,
cpl_image **power_spectrum,
double *std,
double *std_mad)
{
/* Check Entries */
cpl_ensure_code(img_in, CPL_ERROR_NULL_INPUT);
cpl_ensure_code( dc_mask_x >= 1 && dc_mask_y >= 1
&& *power_spectrum == NULL, CPL_ERROR_ILLEGAL_INPUT);
/* Check all of the pixels are good */
if (cpl_image_count_rejected(img_in) != 0) {
return cpl_error_set_message(cpl_func, CPL_ERROR_ILLEGAL_INPUT,
"The image can't contain bad pixels");
}
/* Check if the size of the mask match with the image */
cpl_size nx = cpl_image_get_size_x(img_in);
cpl_size ny = cpl_image_get_size_y(img_in);
if (mask_in) {
cpl_ensure_code( nx == cpl_mask_get_size_x(mask_in)
&& ny == cpl_mask_get_size_y(mask_in),
CPL_ERROR_INCOMPATIBLE_INPUT);
}
/* Create ouput image */
*power_spectrum = cpl_image_new(nx, ny, CPL_TYPE_DOUBLE);
/* Calculate the fft of the input image
* Converted previously to complex to get nx columns instead of (nx / 2) + 1 */
cpl_image *img_in_complex = cpl_image_cast(img_in, CPL_TYPE_DOUBLE_COMPLEX);