ChangeLog for oal ================= Version 3.139 - 2010-02-05 (AI) --------------- + (src/Odf.cc) The same algorithm than 3.318 version, but now applied to HBR_OFFSET_DATA Version 3.138 - 2010-01-31 (AI) --------------- + (src/Odf.cc) New algorithm to select the correc OFFSET map data if the observation has several exposures. SOC-SCR-7503 fixed Version 3.137 - 2018-10-12 (RDS) --------------- + (src/Odf.cc, Avoid crash if ERM exposures not in SUM.SAS f90test/ermtest.f90) file. Version 3.136 - 2018-09-10 (AI) --------------- + (src/Odf.cc, Provide support for the radiation monitor (SCR-7462) f90test/ermtest) Version 3.135 - 2018-02-13 (EO) ------------------------------- + This is a new major version of this package including a new GNU Public License Text disclaimer required to distribute the SAS source code to the Astronomical Community under the terms of the GNU Public License. The text as it is shown below is the same that has been included in all SAS source code files. ESA (C) 2000-2018 This file is part of ESA's XMM-Newton Scientific Analysis System (SAS). SAS 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 3 of the License, or (at your option) any later version. SAS 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 SAS. If not, see . --------------------------------------------------------------------- Version 3.134 - 2017-08-02 (AI) --------------- + (src/Odf.cc) _isSlew flag updated to identify slews where proposalId number contains '9' after revolution number. Version 3.133.1 - 2016-09-09 (EO) --------------- + (src/AttituteLocator.h AuxHKaccess.h): GNUC >= 6 since g++ 5.3.1 does not include C++ 2011 by default. Version 3.133 - 2016-09-06 (AI) --------------- + (src/AttituteLocator.h OalServer.h AuxHKaccess.h) macro preprocessor added to constexpr statement to keep gcc backward compatibility. Version 3.132 - 2016-09-05 (AI) --------------- + (src/AttituteLocator.h OalServer.h AuxHKaccess.h) gcc-6.X portability changes. (constexpr added to "static const" statements) + (f90test/oalexample.f90 oaltest.f90) pointers initialized to null(). (mandatory fo gcc-6.X) Version 3.131 - 2016-07-14 (AI) --------------- + (f90/oal.f90) CONTIGUOUS statement added in the OAL_toEulerAngles subroutine Version 3.130 - 2016-07-06 (RDS) --------------- + (f90/oal.f90) Remove contiguous option to get it to build Version 3.129 - 2016-07-01 (AI) --------------- + (f90/Makefile) Conditional compiler option added Version 3.128 - 2016-06-30 (AI) --------------- + (f90/OalF90cxxGlue.f90) gfortran compatibility changes for Dope (array descriptor) structures. + (f9/Makefile and f90/oal.f90) fortran CONTIGUOUS statement is not present in NAGfor 5.2. To solve this dependency, we have added a preprocesor macro. Version 3.127 - 2016-03-11 (RDS) --------------- + DEPEND - added testodf into DEPEND (SPR-7349) Version 3.126.1 - 2015-12-17 (RDS) --------------- + test/myboresight.ccf - changed to ALGOID=1 for CAL compatibility Version 3.126 - 2015-09-29 (AI) --------------- + (TimeTags.cc) In RGS toObt method, we have added an extra check for wrap-arounds of the EOSCOARS values in the AUX file. Version 3.125 - 2014-04-15 (AI) --------------- + gcc4.8.2 compatibility changes Version 3.124 - 2013-10-23 (AI) --------------- + (AuxHKaccess.cc, TimeTags.cc) HK/AUX late reset checking has been disabled for mosaicing observations. Version 3.123 - 2013-07-19 (AI&RDS) --------------- + src/AttitudeLocator.cc: - Modification in the RAF contructor to store the time previous to the slew time start (only for slew processing). Version 3.122.1 - 2013-03-15 (RDS) --------------- + src/Odf.cc - fixed problem with the timing of offset maps (SPR-7098) Version 3.122 - 2013-01-22 (RDS) --------------- + various - fully removed CAL dependency Version 3.121 - 2013-01-21 (RDS) --------------- + src/Makefile - fully removed CAL dependency Version 3.120 - 2013-01-21 (RDS) --------------- + src/AuxHKaccess.cc - fully removed CAL dependency Version 3.119 - 2013-01-18 (RDS) --------------- + src/AuxHKaccess.cc, - includes the jump tolerance as src/OalServer.cc/h a state variable that can be set f90/OalF90cxxGlue.cc/h from an application. The CAL dependncy has been removed. (SCR-268) Version 3.118 - 2012-12-19 (AI) --------------- + (src/AttitudeLocator.cc/h) - Implementation of new methods (setAHF and getMedianAtt) to retrieve attitude info to be used by mosaicing splitting process (preqgti). Version 3.117 - 2012-12-19 (RDS) --------------- + src/AuxHKaccess.cc/h - gets the time jump tolerance from the CAL. (SCR-268) Version 3.116.2 - 2009-07-09 (AI) --------------- + Added new ERM timecorrelation functionality. SOC-SCR-284 closed. Version 3.116.1 - 2009-07-06 (AI) --------------- + Modifications is several source files to make dal gcc 4.3 compliant. Version 3.116 - 2008-04-24 (RDS) --------------- + src/AuxHKaccess.cc - the default is set to 22 times TIMDEL for checking for time jumps. This still may be overridden by the user with the SAS_JUMP_THRESHOLD environment variable Version 3.115 - 2006-06-01 (RDS) --------------- + src/AuxHKaccess.cc - the JUMP THRESHOLD code set back to original version unless user defines the SAS_JUMP_THRESHOLD environment variable + src/AttitudeLocator.cc - A delta of 0.75s is subtracted from the times in the RAF file to compensate for the star-tracker CCD integration time (SPR-2669) Version 3.114.2 - 2006-01-10 (RDS) --------------- + f90/OalF90cxxGlue.cc/h - added routines to access IPPV values f90/oal.f90 which are observation rather than f90test/oaltest.f90 exposure specific (OAL_hasconfIPPV and odf/0010_PPPPPPOOLL_SCX00000SUM.SAS OAL_getconfIPPV). A new test harness has been added (SPR-2649) Version 3.113.4 - 2005-12-10 (RDS) --------------- + src/Odf.cc - solves problem with RGS diagnotic maps for the second exposure (SPR-2645) Version 3.113.3 - 2005-12-05 (RDS) --------------- + src/Odf.cc - release track version of fix for problem with the wrong expanded filename being returned for ODFs containing a scheduled and unscheduled exposure with the same number Version 3.114.1 - 2005-12-02 (RDS) --------------- + src/Odf.cc - fixed a problem with the wrong expanded filename being returned for ODFs containing a scheduled and unscheduled exposure with the same number Version 3.114 - 2005-06-08 (JSH) --------------- copy of 3.113.2 for the development track Version 3.113.2 - 2005-06-08 (JSH) --------------- Default to use TCX file in Time Correlation Version 3.113.1 - 2005-02-21 (RDS) --------------- copy of 3.113 for the release track Version 3.113 - 2004-12-21 (RDS) --------------- + src/AttitudeLocator.cc - removed problem when attitude interpolation occurs with points crossing the 360.0 - 0.0 RA boundary (SPR-2589) Version 3.112 - 2004-12-16 (RDS) --------------- + src/AttitudeLocator.cc - added code to allow the gap between data and attitude records to be 20 times longer for slew observations. Version 3.111.6 - 2004-07-27 (JSH) --------------- + Time Correlation processing for SAS 6.0.5 defaults to TCS + Fix problem determining obs boundaries for TCX records for in case of multiple exposures present for instrument being processed Version 3.111.5 - 2004-07-27 (JSH) --------------- + Change TimeCorrelator constructors to avoid calling other constructors as default parameters. gcc 2.9x doesn't like that at all. Version 3.111.4 - 2004-07-20 (JSH) --------------- + Update OAL to process TCX data files - New environment variables used by OAL - OalServer uses environment variable to select TCS or TCX (a la ahf/raf handling) - OalServer then calls TimeCorrelator with appropriate arguments - TimeCorrelator updated to process TCX data - C++ test case updated - Documentation updated :) Version 3.111.3 - 2004-06-29 (RDS) --------------- + Addition of HBR_OFFSET_DATA type and logic to return the best offset map for a given exposure src/Odf.cc/h Version 3.111.2 - 2004-02-13 (UL - still around :) --------------- + more changes to pn AUX data anomaly detection/correction logic to cope with seen problems in a number of ODFs (see email MJF to MK/UL dated 2004-01-29): - relax maximum allowed fractional frame time jitter to better cope with extended counting mode intervals - for jumps that are not +/-1s _always_ look for jumps in the opposite direction within the next 50 frames even if an integer offset was found that satisfies the 'delta criterion' (=delta must be integer multiple of nominal frame time); it used to be that this check was supressed if a suitable offset was found leading to the introduction of bogus corrections (e.g. Crab ODFs 0411_0153750[2345]01) - if delta<0: only accept offsets that are odd and that correct jumps occuring close to the end of a second (FTFINE>40000) - if delta>0: only accept offsets that are +/-1s or larger than 80% of the gap size - all other found deltas will not lead to a correction now but just appear as 'unidentified deltas' in the log Version 3.111.1 - 2003-12-12 (RDS) ------------- + removed f90 interface to RGS diagnostic maps. + removed call to hasRgsDiagnosticMap - can use hasSet() instead. Version 3.111 - 2003-12-11 (RDS) ------------- + finished SCR-133. Version 3.110 - 2003-12-05 (EO) ------------- + oal_description.tex typo corrected. Version 3.109 - 2003-12-04 (RDS) ------------- + added the routine OAL_RGSDiagImage to return a diagnostic image for an RGS configuration (SCR-133) Version 3.108 - 2003-08-06 (UL) ------------- + more changes to the PN-AUX data anomaly detection/correction logic: * for negative jumps limit the search interval for an offset that makes the difference between consecutive frames an integer multiple of the frame time to [|i|, |i|+2] (was [|i|, |i|+10]); i is value of jump (fixed problem in 0156_0095810401_PNS00300AUX CCD7 reported by MJF) * supress verification of very large gap size; e.g. in 0362_0124930301_PNS02500AUX.FIT CCD4 there is gap of >177s corresponding to >30000 missing frames (Burst mode); the frame time jitter makes it senseless to verify the gap size * detection of 'premature increments' improved; 0362_0124930301_PNS02500AUX.FIT CCD4 contains a case where old logic failed + fixed very minor problem with output message Version 3.107 - 2003-07-03 (UL) ------------- + pn AUX data anomaly detection+correction logic: there can be blocks of AUX data whose QUADRANT/CCDID signature is wrong, e.g. they seemingly stem from different quadrants (see doc comments in src/AusHKaccess.cc for more info) - the size of these blocks was limited to 25 rows but 0137_0128120401_PNS00200AUX.FIT (source PSR1507) contains an example of a 31-row block; the allowed size has not been increased to 50 rows Version 3.106 - 2003-06-27 (UL) ------------- + Calculation of signal propagation delay at SAS_OBT_MET_FIT=1,...: Modified code after confirmation (email Ramon Munoz dated 2003-06-27) that onboard delays have to be SUBTRACTED instead of added Version 3.105 - 2003-06-20 (UL) ------------- + pn auxiliary data processing: fixed a minor problem in a code branch that deals with the very rare occurence of apparent CDMU crashes during an exposure - in this case the determination of pn clock reset times was incorrect (caused problem with 0104_0111130201_PNS00300AUX) Version 3.104 - 2003-06-18 (UL) ------------- + Implemented SCR 115: oal should not use unprocessed raw attitude file by introduction of new (optional) enviroment variable SAS_ATTITUDE; if not set default is to use AHF data; doc updated accordingly Version 3.103 - 2003-06-16 (GV) ------------- + Misc. fixes to make gcc-3.3 happy: include and/or proper initialization of base classes. Version 3.102 - 2003-05-02 (UL) ------------- + bug fix to solve (rare) problem with S/U exposure confusion (seen in e.g. 0591_0144900101 - unscheduled Timing exposure follows scheduled Imaging exposure with same exposure number; S/U002) Version 3.101 - 2003-04-04 (UL) ------------- + fixed minor problem with new InstrumentalTimer() I/F Version 3.100 - 2003-04-03 (UL) ------------- + added OalServer::instrumentalTimer() Version 3.99 - 2003-03-18 (UL) ------------ + closed SPR 2418: class IPPV should not be public string Version 3.98.2 - 2003-03-12 (UL) -------------- + fixed problem with repeated OdfInfo::server.odf() invocations generating new instances of OdfInfo::Odf() objects Version 3.98.1 - 2003-02-12 (UL) -------------- + fixed minor bug that would cause an 'unidentified delta' in the pn AUX data anomaly recognition stage to get reported when there is none; occurs when wrong-quad entries are present within a period after a FTCOARSE jumps and before a reset [e.g. 0149_0111100301] Version 3.98 - 2003-02-07 (UL) ------------ + implemented piecewise-linear interpolation of time correlation data as alternative method to global polynomial fit; switched on by setting second field 'degree' in SAS_OBT_MET_FIT to negative values; doc updated accordingly Version 3.97 - 2003-01-30 (UL) ------------ + small improvement in pn AUX anomaly detection logic related to find blocks of wrong-quadrant/CCD data Version 3.96 - 2003-01-30 (UL) ------------ + skip pn AUX data anomaly correction stage if data is found too anomalous (e.g. old-vintage SciSim AUX data) + catch pathological case that frame time increment is 0 (caused crash in epframes test harness) Version 3.95 - 2003-01-29 (UL) ------------ + much improved pn AUX data anomaly detection and correction algorithm; should now be able to reliably find all FTCOARSE counter jumps [Note: Access to EPN_TIMECORR CCF for AUX data anomaly processing needed] + couple of new warning messages about pn AUX anomalies (e.g. unidentified deltas) Version 3.94 - 2002-09-11 (JBa) -------- + some ANSI C++ compliance fixes (in preparation of moving to gcc>=3.1) Version 3.93 - 2002-07-02 (JBa) ------------ + replaced all occurences of 'strstream' with standard-conformant 'stringstream' Version 3.93 - 2002-07-02 (JBa) ------------ + Using sstream instead of strstream Version 3.92 - 2002-06-20 (UL) ------------ + hasAssociatedSet()/associatedSet() now works for PN DLI data (association is made by searching for CCD number match in DLI exposures not later than 15mins after science exposure) + internal code change to work around out-of-mem compiler problem at -O2 on Tru64 Version 3.91.8 - 2002-05-28 (UL) -------------- + changed text of new error message introduced with 3.91.7 Version 3.91.7 - 2002-05-24 (UL) -------------- + issue error message if used with skeleton summary file (odfingest has not been run) Version 3.91.6 - 2002-05-03 (UL) -------------- + fixed rare problem with highly anomalous pn aux data (extremely frequent occurence of FTCOARSE=32767 frames, seen in e.g. odffix'ed 0053_0121500601) Version 3.91.5 - 2002-04-26 (UL) -------------- + fixed minor problem with pathological exposures shorter than 90s + fixed minor problem with rare anomaly in pn PMH data (seen e.g. in 0175_0132520301_PNX00000PMH.FIT) Version 3.91.4 - 2002-04-23 (UL) -------------- + fixed new problem seen with ODF 0120_0102640201 (this is related to a 3.91-change to correct for TM anomaly in Crab ODF 0411_0153750301) Version 3.91.3 - 2002-04-19 (UL) -------------- + end with error if orbit file is empty Version 3.91.2 - 2002-04-18 (UL) -------------- + another improvement in enhancing robustness against EPIC clock late-reset anomalies Version 3.91.1 - 2002-04-18 (UL) -------------- + small fix in orbit file reading: better robustness againt pathological empty orbit files (e.g. odffixed data) Version 3.91 - 2002-04-17 (UL) ------------ + meliorated robustness against EPIC clock late-reset anomaly (this fixes problem seen in Crab obs 0411_0153750301) + fixed another problem with S/U exposure confusion (e.g. in ODF 0418_0110980301) + fixed minor problem with re-calculation of signal propagation delays + read entire orbit file instead of just data covering obs window; needed for recalculation of signal propagation delays in TimeCorrelator Version 3.90.2 - 2002-04-11 (UL) -------------- + fixed minor problem with determination of ODF location when SAS_ODF is given just name of summary file Version 3.90.1 - 2002-04-02 (UL) -------------- + fixed another problem related to treatment of data blocks with incorrect QUADRANT/CCDIDs in EPN auxiliary data [lead to negative GTIs generated by epframes with at least ODF 0078_0124100101] Version 3.90 - 2002-03-25 (UL) ------------ + introduced fifth SAS_OBT_MET_FIT field: 0/1 toggle switch controlling whether or not GS handovers in the TC data are ignored (1) or not (0); in the latter case all TC data after a handover are not taken into account; default is 1, i.e. all TC data are considered + updated doc w.r.t to new SAS_OBT_MET_FIT control parameter Version 3.89.1 - 2002-03-25 (UL) -------------- + changed default parameters controlling OBT-MET FIT from 0,1,1.e-2,.9 to 0,4,5.e-5,.9 Version 3.89 - 2002-03-15 (UL) ------------ + fixed bug in OBT-MET conversion (prevented correct conversion of OBT=-1 entries to NaN) Version 3.88.11 - 2002-03-12 (UL) --------------- + fixed minor documentation problems Version 3.88.10 - 2002-03-11 (UL) --------------- + fixed problem inadvertendly introduced in 3.88.9 (caused emframes' test harness to fail) Version 3.88.9 - 2002-03-08 (UL) -------------- + make OAL_setState(set) robust against missing FILENAME attribute in set + fixed minor problem with treatment of very last frame in frame-counter to OBT conversion for pn (problem occures in ODF 0093_0124710201) Version 3.88.8 - 2002-03-04 (UL) -------------- + adjustment of internal parameter in pn frame-counter to OBT conversion fixes processing problems with ODFs 0375_0134521401 Version 3.88.7 - 2002-02-26 (UL) -------------- + fixed problem described in SSC-SPR-2777: crash without error msg (emframes) [exposure confusion problem in Odf-related classes] Version 3.88.6 - 2002-02-21 (UL) -------------- + optimized memory usage in EPN frame-counter to OBT conversion + updated error labels in doc + better description of OAL_toAttitudeMatrix() Version 3.88.5 - 2002-02-14 (UL) -------------- + more robust frame time computation in EpnAuxDataServer (fixed problem with CCD-0/Quad-3 in ODF 0131_0110660101) Version 3.88.4 - 2002-02-12 (UL) -------------- + brought in line with caloalutils-1.64 Version 3.88.3 - 2002-02-06 (UL) -------------- + closed SPR 2231: OAL problems with pn event time computation in development-track [effectively closed with 3.88.2 already] + minor internal modifications Version 3.88.2 - 2002-02-05 (UL) -------------- + fixed minor compilation problem under optimization + better robustness in IPPV access (invalid string-number conversions) + fixed various processing problems of odffixed/PMSFITS data sets (0032_0117500201) Version 3.88.1 - 2002-02-04 (UL) -------------- + fixed problem with computation of frame time in SmallWindowMode + summary file may contain CONFIGURATION section Version 3.88 - 2002-01-21 (UL) ------------ + fixed couple of problems in OBT tag computation for EPN (related to FTCOARSE wrap-around) + fixed minor problem with instrument priorities read from sum file + fixed minor problem with data mode recognition + minor doc update Version 3.87 - 2002-01-15 (UL) ------------ + fixed problem of SPR 2249: OAL_addCommonAttributes does not work on odffixed data + minor doc update Version 3.86 - 2002-01-08 (UL) -------------- + fixed minor problem with OAL_addCommonAttributes() I/F + setState() accepts now full instrument/exposure identifier (e.g. 'R1U571') in argument 'instrExposureId'; can also be the name of an ODF set name Version 3.85 - 2002-01-07 (UL) ------------ + better robustness against invalid GSID from TCS (this fixes problem of SPR 2236: OAL_frameCounterToObt core dumps in emframes) + closed SPR 2234: Implement SCR 84: Source of attitude data wanted [added OAL_addCommonAttributes()] + improved ODF ICD compilance: do not require proposal data in SDFs Version 3.84.1 - 2001-12-14 (UL) -------------- + removed forgotten debug statement in TimeTags.cc Version 3.84 - 2001-12-10 (UL) ------------ + src/TimeCorrelator: * internal optimizations * user can now force linear OBT-MET relation by setting SAS_OBT_MET_LINEAR=slope,anchor slope : slope of OBT-MET line anchor: determines point in TCS to use as 'anchor' to define OBT-MET line; index is N*anchor (0<=anchor<=1, N: number of TCS data point) + coefficients of OBT-MET fit polynomial now printed on VERBOSITY>=7 Version 3.83 - 2001-12-06 (UL) ------------ + added OalStateable::instrExposureId() + brought in line with caloalutils-1.61 (class Odf [formerly in Odf.h] moved to caloalutils) Version 3.82 - 2001-11-22 (UL) ------------ + TimeCorrelator object instantiation now robust again too few data points in TCS + added OalServer::instrExposureId() to set state from "M1U001"-type strings Version 3.81 - 2001-09-11 (UL) ------------ + OdfSet::scheduled() now only returns true for 'S'-type exposures (used to give true also for type 'X') + fixed problem of SPR 2168: Does not distinguish S/U + end with error when attempting to retrieve numeric IPPV from string value (e.g. 'UNKNOWN') - requires technology in utils-1.79 + fixed problem of SPR 2213: SCR74: list/document errors Version 3.80 - 2001-09-06 (GV) ------------ + (src/TimeCorrelator.cc) fix ieee exception on DEC triggered when writing some messages to errstr. SOC-SPR-2164. This problem was also fixed in 3.68.6 (release track). Version 3.79 - 2001-08-24 (GV) ------------ + (src/Odf.h) add Odf::setNames() and Exposure::ippvs(). + (cxxtest/oalserver.cc) exercise the new i/f. Version 3.78 - 2001-08-10 (UL) ------------ + OalState I/F change to support exposure selection by scheduled flag + ODF exposure designator (e.g. "U571") + doc updated to describe above change + fixed typos Version 3.77 - 2001-07-30 (UL) ------------ + internal changes related to treatment of engineering mode exposures Version 3.76 - 2001-07-25 (UL) ------------ + fixed compilation problem under Tru64 Version 3.75 - 2001-07-24 (UL) ------------ + fixed problem of SPR 2127: attitude data extrapolation artifacts (only relevant for RAF ODFs) + fixed minor problem which lead to a crash in the extremely unlikely case that there are no usable data frames in an EPN aux file (SciSim EPN AUX files, see SPR 2128) + fixed problem of SPR 2126: not robust against OBT resets in time correlation data Version 3.74 - 2001-07-16 (UL) ------------ + if EPN Additional Periodic HK file is missing needed parameters F1534/F1634/F1734/F1834 are given d/f value 0 + name change in OdfInfo.h: scienceExposures() -> observationExposures() [now returns science+engineering exposures] Version 3.73 - 2001-07-06 (UL) ------------ + fixed subtle bug which lead to incorrect treatment of IPPVs under certain circumstances Version 3.72 - 2001-07-06 (UL) ------------ + increased offset by which HK parameter for the frame-counter to OBT conversion are sought after the exposure start to 90s (EPIC) (this is to avoid problems with late counter resets) Version 3.71 - 2001-07-05 (UL) ------------ + removed inadvertently introduced cal dependency in oal.f90 (causes compilation failure if oal is build before cal) Version 3.70 - 2001-07-04 (UL) ------------ + fixed small problem in Makefile related to new additions in 3.69 Version 3.69 - 2001-07-03 (UL) ------------ + much meliorated and extended frametime-OBT translation algorithm for EPN implemented; detects and corrects all known anomalies in auxiliary files; summary log of found problems is printed at the end - experimental + new thin access layer to Odf dedicated for odfbrowser application (odfbrowse/OdfInfo.h) Version 3.68.2 - 2001-06-07 (UL) ------------ + fixed problem in RAF reading routine (second field was skipped) + make interpretation of RAF data robust against negative time jumps (data with negative time increments w.r.t to previous row are ignored; problem has been reported to FD) + ignore entries with UTCDAY==0 in TCS (some early ODFs [e.g. 0078/0124100101] are afflicted with this problem - cause unclear) + meliorated robustness against unexpected EOF conditions in summary file reading Version 3.68.1 - 2001-05-03 (UL) -------------- + fixed minor compilation problem under optimization + implemented SPR 2011: cannot handle duplicate VALTIME entries in AHF Version 3.68 - 2001-04-18 (UL) ------------ + time boundaries of non-science data exposures are now set to observation start/end time (instead of 1958-01-01T00:00:00) Version 3.67 - 2001-04-04 (UL) ------------ + fixed another problem caused by consecutive ATS bins of duration 0s (see also related comment below on v3.65) + fixed problem introduced with 3.65 for odffix'ed data Version 3.66 - 2001-04-02 (UL) ------------- + moved tcsfix task to package utils to break cyclic dependency Version 3.65 - 2001-03-27 (UL) ------------ + open all HK files in lowmem mode + added tcsfix task (to be run in ODF BRKP chain) + fixed subtle bug in AttitudeLocator class which caused incorrect attitude data to be returned for time axis bins of duration 0s after a data gap (this absorbs oal-3.61.1 in the releasetrack) + approximately correct for wrong EPIC clock reset times after CDMU crash (this implements SCR 57: correct wrong clock reset times after CDMU crash) + implemented SCR 55: add support for new RAF + fixed obsolete old-style include statements + couple of trivial changes to satisfy optimizer Version 3.64 - 2001-03-23 (UL) ------------ + added functionality to access bad pixel tables from ODF (C++/f90 I/F + updated doc) - this closed SCR 52: Access MOS bad pixels in the HouseKeeping + -> + fixed minor bug in C++/f90 layer Version 3.63 - 2001-03-21 (UL) ------------ + fixed SPR 1960: allow for temporal overlap of consecutive AHF entries Version 3.62 - 2001-03-02 (UL) ------------ + implemented recalculation of signal propagation delays in time correlation data (see doc on environment variable SAS_OBT_MET_FIT for detail) + support for new environment variable SAS_ORBIT (see doc for detail) + brought in line with caloalutils-1.44 Version 3.61 - 2000-12-12 (UL) ------------ + fixed problem unintentionally introduced in 3.59 Version 3.60 - 2000-12-08 (UL) ------------ + a few trival changes to make the optimizer silent Version 3.59 - 2000-12-07 (UL) ------------ + parameters controlling the OBT-MET fit can now be given via environment variable SAS_OBT_MET_FIT = deg[,rms[,frac]] Version 3.58.8 - 2000-11-17 (UL) -------------- + brought a few test harnesses in line with caloalutils-1.36.3 + ObtVector::toUtc() -> ObtVector::toMET() Version 3.58.7 - 2000-11-15 (UL) -------------- + removed redundant CAL from USEDLIBS in combilib Makefile Version 3.58.6 - 2000-11-09 (UL) -------------- + fixed SPR 1825: Picks wrong AUX file ? Version 3.58.5 - 2000-11-08 (UL) -------------- + fixed SPR 1823: summary file pick up Version 3.58.4 - 2000-11-02 (UL) -------------- + a couple of transparent changes (needed by barycen) Version 3.58.3 - 2000-10-30 (UL) -------------- + fixed minor problem introduced with 3.58.2 (reading of *SUM.ASC can fail) Version 3.58.2 - 2000-10-27 (UL) -------------- + can now also read skeleton ODF summary file from ODS + added oal.info file Version 3.58.1 - 2000-10-19 (UL) -------------- + bug fix in Ra/Dec conversion routine (caused sign of small negative value to be ignored); this closes SSC-SPR-1989 Version 3.58 - 2000-09-25 (UL) ------------ + access to IPPVs from C++ + fixed SOC-SCR 9: Access the *SUM.SAS summary file by default + removed obsolete OAL_activeFilter() + added OAL_getIPPVint() + updated documentation + small updated to test harnesses Version 3.57 - 2000-09-05 (UL) ------------ + recognize new RGS DPP Non-Periodic-HK files (ODF DCP 128) of type "D1H"/"D2H" Version 3.56 - 2000-08-29 (UL) ------------ + coarse time wrap-around value now taken from periodic HK in case of EPN; it used to be taken as constant 32768 whereas the most likely operational value is 32400 - this leads to a ~300 s bogus time gap in >32ks exposures Version 3.55 - 2000-07-31 (UL) ------------ + fixed problem with exposure selection (related to simultaneous acceptance of new + old style HK sets) Version 3.54.9 - 2000-07-12 (UL) -------------- + another fix to make it work for old+new-style ODFs; the latter contain HK files that cover the entire observation instead of being broken down per exposure Version 3.54.8 - 2000-07-07 (UL) -------------- + fixed a problem in exposure recognition related to scheduled/unscheduled status Version 3.54.7 - 2000-07-06 (UL) -------------- + relaxed RMS criterion for OBT-MET polynomial fit to TCS data from 1.e-10 to 1.e-2 Version 3.54.6 - 2000-07-03 (UL) -------------- + closed SPR 1655: OAL does not recognize OM Imaging exposures + closed SPR 1652: remove \env from Change history + closed SPR 1437 : test harness fails on Linux Version 3.54.5 - 2000-06-22 (UL) -------------- + made reading of ODF summay file more robust w.r.t to empty lines, comments lines, etc. Version 3.54.4 - 2000-06-21 (UL) -------------- + some transparent fixes to read new ODF summary created by 'odfingest' Version 3.54.3 - 2000-06-19 (UL) -------------- + fix of bug introduced in 3.54.2 + fixed minor doc problem Version 3.54.2 - 2000-06-15 (UL) -------------- + change to behavior in ODF file name expansion: Asking for a set corresponding to a specified CCD will now fail if that particular set does not exist + minor documentation update + fixed SPR 1492: modifications to the summary file reading routines + fixed SPR 1552: DOC::broken links + fixed SPR 1570: make depend fails without make clobber Version 3.54.1 - 2000-05-31 (UL) -------------- + added two convencience functions to f90 API: makes checking for presence of optional sets (e.g. COUNTING_CYCLE_REPORT for EPN) easy Version 3.54 - 2000-05-19 (UL) ------------ + more diagnostic messages from setState(block/set) + opening of data set for setState more robust w.r.t to prepending ODF directory name + brought in line with cal-3.71 Version 3.53 - 2000-05-08 (UL) ------------ + fixed SPR 1278: Misusing macros in documentation + now DEPENDs on sas-210 Version 3.52 - 2000-05-04 (UL) ------------ + minor bug fix (caused ODF file name expansion to fail under certain circumstances) Version 3.51 - 2000-04-14 (UL) ------------ + another ODF ICD compliance fix + now depenent on caloalutils-1.26 Version 3.50 - 2000-04-10 (UL) ------------ + fixed SPR 1126: Problem accessing correct exposure + fixed SPR 1228: Another problem with exposure number + two exposure numbering schemes implemented: exposureIndex/exposureNumber + a few updates to bring OAL in line with ODF ICD issue 2.4 (mainly additional data modes) + fixed SPR 1236: Looking for FTCOARSE in MOS periodic housekeeping file + fixed SPR 1239: Wrong wrap around at first frame Version 3.49 - 2000-03-06 (UL) ------------ + made reading of ODF orbit file more robust w.r.t recognition of EOF conditions + shortened dummy orbit file Version 3.48 - 2000-03-02 (GV) ------------ + (PositionLocator.cc) bring in line with new STime in utils. + (DEPEND) updated. Version 3.47 - 2000-02-25 (UL) ------------ + PositionLocator class + corresponding f90 wrapper (OAL_getPosition) properly implemented + dummy POS file added to odf + updated test harness for PositionLocator class + internal name changes Version 3.46 - 2000-02-03 (UL) ------------ + fixed SPR 1079: Unwarranted IllegalObtValue warning (see ChangeLog in src/Tags.cc for more info) + fixed SPR 1080: Data viewed as SLEW Version 3.45 - 2000-01-11 (UL) ------------ + brought in line with ODF ICD 2.4 (w.r.t unsigned interger columns) Version 3.44 - 2000-01-06 (UL) + fixed SPR 957 : Problem with OAL and diagnostic files on SVT3 + fixed SPR 1063: Behaviour when exposure is not 1. Version 3.43 - 1999-12-20 (UL) ------------ + work around for SciSim bug which generates FTCOARSE values in MOS/PN AUX files in the range 0..32767,-32768,-32767,...; in telemetrt these counters are 15 bit, i.e., legal sequence is 0,32767,0,1,2,...,32767,0,1,... (this fixes the problem reported on 1999-11-25 by Matthias Ehle/Mike Denby who saw negative time jumps in event list time tags and START>STOP times in GTIs) Version 3.42 - 1999-12-17 (UL) ------------ + set OAL state from dataSet/Block/setName does no longer use the name of the set but retrieves state variables values from attributes + bug fix in InstrFrameCounterVector::toObt() - was accessing wrong auxiliary file (see email Matthias Ehle from 1999-11-25) Version 3.41 - 1999-12-16 (UL) ------------ + added functionality to access IPPV from summary file Version 3.40 - 1999-12-15 (UL) ------------ + closed minor memory leak + extended input format for Ra/Dec strings in OalUtils Version 3.39 - 1999-11-30 (UL) ------------ + dropped support for deprecated SAS_ODFDIR Version 3.38.2 - 1999-11-12 (UL) -------------- + generate error if orbit number in summary file is not an integer number + dynamically created ODF files in odf directory are no longer removed by 'make clean' (such that they can be used by other packages) Version 3.38.1 - 1999-11-10 (UL) -------------- + brough in line with caloalutils-1.14 Version 3.38 - 1999-11-09 (UL) ------------ + avail new combilib services in sas-1.169 + fixed SPR 766: OAL_frameCounterToObt calls wrong housekeeping file ? + environment variable SAS_ODFDIR changed to SAS_ODF - the latter can point to a directory or an ODF summary file (old form still supported); documentation updated + brought in line with caloalutils-1.13 + fixed problem with wrap-around condition of FTCOARSE for long exposures (wrap-around counter is now reset at every OAL state change) Version 3.37 - 1999-11-02 (UL) ------------ + bail out on attempt to set the CCD number to an invalid value + fixed SP 755 [a:spr] : OAL_getAttitude does not work on MOS2 (now the AttitudeLocator reads in the AHF data for the entire observation) Version 3.36.4 - 1999-10-29 (UL) -------------- + bug fix: reset wrap-around counter in InstrFrameCounterVector objects every time ccd/node ID changes in state (otherwise in a loop over the CCDs for a long-exposure ODF time tags of events from second/third etc. CCD are wrongly offset) Version 3.36.3 - 1999-10-28 (UL) -------------- + remove non-OAL libraries from combilib (does not work) Version 3.36.2 - 1999-10-27 (UL) -------------- + all libraries that OAL needs now in OAL combilib Version 3.36.1 - 1999-10-25 (UL) -------------- + removed forgotten debug statement Version 3.36 - 1999-10-24 (UL) ------------ + added Interpolator.h to INTERFACES Version 3.35 - 1999-10-22 (UL) ------------ + needed header file TimeAxis.h was not exported + renamed DalUtils.h -> OalDalUtils.h (name clash with Cal) Version 3.34 - 1999-10-21 (UL) ------------ + no longer export DalUtils.h Version 3.33 - 1999-10-21 (UL) ------------ + odf/auxhkgen_epn now generates two dummy HK parameter columns + Additional Periodic HK file (with another dummy parameter) + use INTERFACE / combilib mechanism + fixed SPR 798 [s:spr] : broken links in documentation Version 3.32 - 1999-09-22 (UL) ------------ + brought in line with caloalutils-1.7 Version 3.31 - 1999-09-14 (UL) ------------ + brought in line with dal-1.70 + added DISTRIBUTION file Version 3.30 - 1999-08-25 (UL) ------------ + cosmetic changes to diagnostic/warning/error messages + bug fix in Odf::registerOdfFile (fix to SPR: SPR 748 : OAL_frameCounterToObt fails in scisimmultimode + frameCounterToObt does no longer die on missing frame numbers in Auxiliary files but will set the OBT values to -1 (same for ObtToUtc) Version 3.29 - 1999-08-20 (UL) ------------ + more diagnostic messages + check for invalid exposure/ccd numbers + minor update of documentation Version 3.28 - 1999-08-18 (UL) ------------ + PositionLocation::positionVelocity()/AttitudeLocatior::attitude() now throw exceptions; OAL_getAttitude/OAL_getPosition are now logical functions returning false if there is no data Version 3.27 - 1999-08-10 (UL) ------------ + bug fix in one of the C++ test harnesses ;) (caused a problem in the STime constructor which does now error checking) Version 3.26 - 1999-08-05 (UL) ------------ + fixed bug in Odf class (caused problems with multi-exposure ODFs); this fixes SPR 728: OAL_setState fails on scisimmultimode for MOS + fixed SPR 639: Wrong reference to caloaldefs.f90 in doc + fixed SPR 693: Seg Fault on file expand (this is fixed with caloalutils-1.3) + rejected SPR 668: Misleading error message added some further explanations to documentation + closed SPR 703: Unclear error message TimeAxis.cc:59 described problem could not be reproduces; assume it is fixed with odffix>=1.15; introduced more checks in AttitudeLocator classes to facilitate detection of time mismatch problem with AHF and exposure start/end times Version 3.25 - 1999-06-23 (UL) ------------ + no longer depends on cal + depends now on caloalutils + fixed SPR 639: Wrong reference to caloaldefs.f90 in doc Version 3.24 - 1999-06-15 (UL) ------------ + getPosition() now returns (optionally) the S/C velocity vector Version 3.23 - 1999-06-11 (UL) ------------ + OAL_getPosition uses now KeplerOrbitSimulator object from caloalutils in the absence of a true orbit file Version 3.22 - 1999-06-03 (UL) ------------ + dropped obsolete vector-length arguments from F90 API + added F90 wrapper for TimeCorrelator::ert2seconds and updated f90 test harness accordingly Version 3.21 - 1999-05-25 (UL) ------------ + fixed SPR 665: OAL_frameCounterToObt() and FTCOARSE counter cycling was assuming wrong range of coarse time counters for all instruments Version 3.20 - 1999-05-19 (UL) ------------ + support for non-continuous exposure sequence numbers in ODF summary file Version 3.19 - 1999-05-12 (UL) ------------ + improved robustness against inconsistencies in ODF summary file + fixed SPR 639: Wrong reference to caloaldefs.f90 in doc Version 3.18 - 1999-05-11 (UL) ------------ + brought in line with error-1.18 Version 3.17 - 1999-05-07 (UL) ------------ + forgot to update test harness following changes to oal/odf in v3.16 Version 3.16 - 1999-05-05 (UL) ------------ + improved robustness of ODF inquiry routines Version 3.15 - 1999-04-28 (UL) ------------ + all 'fatal' messages changed to 'error' Version 3.14 - 1999-04-28 (UL) ------------ + bug fix in src/DalUtils.h Version 3.13 - 1999-04-15 (UL) ------------ + changes to test harnesses enforced by error-1.16 Version 3.12 - 1999-04-14 (UL) ------------ + newlines removed from error/warning messages Version 3.11 - 1999-04-14 (UL) ------------ + changes enforced by error-1.16 Version 3.10 - 1999-04-01 (UL) ------------ + f90: implemented subroutine to initialize state from data set; OAL_setState comes now on three flavors: accepting list of state variables, data set name, reference to block; initial implementation of latter two is through dissection of the file name for setting the state variables Version 3.9 - 1999-03-19 (UL) ----------- + bug fixes in utility class needed by Attitude/PositionLocator classes (caused a fatal error in the Interpolator class) Version 3.8 - 1999-03-17 (UL) ----------- + odf/...SUM.ASC: proposal summary record make ODF ICD compliant + update of reading routine + f90: better error messages in case of missing mandatory arguments; routines can now properly deal with empty input vectors Version 3.7 - 1999-03-15 (UL) ----------- + src/Tags.cc: column name "EOSCOARSE" changed to "EOSCOARS" as stated in ODF ICD Version 3.6 - 1999-03-10 (UL) ----------- + works with TRACER disabled Version 3.5 - 1999-03-05 (UL) ----------- + changes in C++ sources pertaining to low memory Dal; test harness passes now with low+high memory Dal Version 3.4 - 1999-03-03 (UL) ----------- + src/Odf.cc: bug fix related to handling of multiple exposures Version 3.3 - 1999-02-22 (UL) ----------- + minor change required by Cal-2.6 upgrade Version 3.2 - 1999-02-22 (UL) ----------- + f90/oal.f90: removed '...length' fields from ExposureInfoType as this can be calculated with new CalOalUtility::toTimeTag + updated test harness Version 3.1 - 1999-02-17 (UL) ----------- + f90test/oaltest.f90: fixed expected value of psi in toEulerAngles-test Version 3.0 - 1999-02-10 (UL) ----------- + environment variable ODF_DIR no longer recognized Version 2.12 - 1999-02-09 (UL) ------------ + renaming of environment variable ODF_DIR -> SAS_ODFDIR + updated documentation (new routine OAL_toEulerAngles, generic task command line parameter --odfdir in taskmain >=v1.16) Version 2.11 - 1999-02-04 (UL) ------------ + environment variable 'ODF_DIR' is now 'SAS_ODFDIR' + SPR fixes: o 460: Too cryptic error messages [have been made more lucid with more parameters being written out] o 477: OAL error message written [OAL has been made more robust - should no longer core dump without any message] o 569: Assertion in ODFs with more than one exposure [test OAL with more than one exposure in oal/odf - worked ok] Version 2.10 - 1999-02-03 (UL) ------------ + code overhaul; now there is a single global instance of an OalServer object + all attitude related processing uses now the notion of 'astronomical position angle' as opposed to 'position angle' defined by FD + bug fix: GO data from ODF summary file was incompletely read + OAL can be build as shared library + a couple of new OalUtils methods + works now with scisimsimpleodf Version 2.9 - 1999-01-29 (UL) ----------- + fixes to make the Oal compile under egcs 1.1.1 Version 2.8 - 1999-01-27 (UL) ----------- + fixes to make the Oal compile under gcc 2.8.1 Version 2.7 - 1998-11-20 (UL) ----------- + bug fix in Odf-class method (caused epframes to crash) Version 2.6 - 1998-11-19 (UL) ----------- + more fixes pertaining to ODF ICD 1.0 -> 2.0 change Version 2.5 - 1998-11-13 (UL) ----------- + new build procedure in-line with what is done in the Dal: separate libaries are build in each src-subdir which get combined in a new directory 'interface'; this also contains now all needed symbolic links to *.h/*.f90/*.mod Version 2.4 - 1998-11-12 (UL) ----------- + new sym-link src/oal.f90->../f90/oal.f90 (relates to SPRs 273/274) Version 2.3 - 1998-10-14 ----------- + changed ODF summary file in sample ODF (ODF ICD 2.0: there are now only 6 INSTRUMENT blocks - ERM was dropped) + frameCounterToObt() methods more robust + two new fields in `ExposureInfoType': scheduledExposureTime/ actualExposureTime (F90 API) + new field 'isSlew' in `OdfInfoType' (F90 API) + fixed SPR 424: Need to know filter used during exposure (new inquiry routine 'OAL_activeFilter()') Version 2.2 - 1998-10-05 ----------- + added missing include (iomanip.h) (MB) Version 2.1 - 1998-09-29 (UL) ----------- + fixed SPR 417: Problems with frameToTime conversion for EPIC PN + fixed SPR 420: Extra info. needed from ODF summary file Version 2.0 - 1998-08-30 (UL) ----------- + generally overhauled and extended; there is now a proper implementation behind every announced routine in the F90 API; new classes: o TimeCorrelator for OBT->UTC, ERT->UTC conversions o AttitudeLocator for determination of spacecraft attitude at any point during the observation o PositionLocator for determination of spacecraft position and velocity at any point in time during the observation o FrameCounterVector/ObtVector + support classes to perform the conversion from CCD frame counters to COBT values to proper event time tags o support classes for the above + a couple of non-backwards compatible changes in the F90 API (therefore the 1.4->2.0 transition): o dropped state variables 'status'/verbosity'/'observationStartDate' status : no need for it any more - OAL uses now general SAS error handling strategy ('if-error-boom') verbosity : is now controlled by the environment (VERBOSITY) observationStartDate: not needed o added new state variables 'ccdNr'/'nodeNr'/'attitudefromAhf' ccdNr/nodeNr : the chip/node id attitudeFromAhf: boolean switch determining whether attitude data are to come from the AHF or from OM tracking history frames o dropped 'OAL_error' routine o renamed 'OAL_selectType' -> 'OAL_selectScope' o new auxiliary function 'OAL_toAttitudeMatrix' to convert a attitude record as returned by 'OAL_getAttitude' into a matrix representation o new enquiry function 'OAL_exposureInfo' o 'directoryName' fields added to structure returned by 'OAL_odfInfo' + a couple of tools in the sample ODF directory 'odf' which generate a dummy Attitude History File, and embryonic EMOS1 periodic HK and auxiliary files for EMOS1 exposure #1; all are needed for the test harnesses + re-organization of directory structure: odf : dummy ODF for test harness and example task src : all C++ sources cxxtest: tests of C++ implementation f90 : F90 API, C++/F90 I/F f90test: tests of F90 layer doc : documentation + test harnesses: extentended to test new functionality (from C++ and F90); + OAL example task: moved to f90test and extended to demonstrate usage of new features + documentation updated to be in line with code changes + remaining issues: o construction of PositionLocator class from data in Reconstructed Orbit File (ROF) is still dummy - need more information on structure of ROF before a proper implementation can commence o construction of AttitudeLocator from OM tacking history data is not implemented yet - algorithms needs to be clarified and meaning of OM telemetry to be confirmed (e.g. roll angle) Version 1.4 - 1998-07-20 (UL) ----------- + depends on utils 1.8 now Version 1.3 - 1998-07-07 (UL) ----------- + test harness of StringPool class moved to Cal + fixed SOC-SPRs: o 326: Update documentation o 327: Add oal.tex closely following the template o 328: Merge v1status.txt and status.txt into description o 329: Remove spurious files (src/OalAtoms.cc.new,src/OalAtoms.h.new) + doc/oal.tex removed - this is now created on-the-fly by 'make ps/html' Version 1.2 - 1998-06-08 (UL) ----------- + new function OAL_expandFileName() Version 1.1 - 1998-06-03 (UL) ----------- + fixed SOC-SPR 244 (broken html links in doc) Version 1.0 - 1998-05-14 (UL) ----------- + Initial version for SAS v1 integration