[328] | 1 | Duchamp version 1.1.1 (2007/07/20) |
---|
| 2 | ------------------------------------ |
---|
| 3 | |
---|
[329] | 4 | Minor update to the release, with just a few changes: |
---|
[328] | 5 | |
---|
| 6 | * The verification script was generating diffs due to differences in |
---|
| 7 | the precision of some calculations when done on different machines. |
---|
| 8 | One of these was the integrated flux, and this has been corrected so |
---|
| 9 | that the same value should appear on all machines. |
---|
| 10 | The verification script has also changed so that just the number of |
---|
| 11 | sources and their positions are tested, as well as the |
---|
| 12 | logfiles. This should avoid the reporting of spurious differences. |
---|
| 13 | |
---|
| 14 | * The grey-scale used in the image cutouts (in the spectral plots) has |
---|
| 15 | been inverted. This makes it consistent with the scale used in the |
---|
| 16 | maps, and hopefully easier to see when printing. |
---|
| 17 | |
---|
[334] | 18 | * The configure/make system has been altered to make it easier to |
---|
| 19 | install, and to specify different external libraries. In particular, |
---|
| 20 | it is now not necessary to have PGPLOT installed on your system to |
---|
| 21 | run Duchamp. In the absence of PGPLOT, Duchamp will run as normal, |
---|
| 22 | just without any graphical output. Some source code needed to be |
---|
[345] | 23 | restructured to make this work. Please read the README file, or the |
---|
| 24 | Installation appendix in the User's Guide, for complete details. |
---|
[328] | 25 | |
---|
[329] | 26 | * The time of completion is now written to the log file, so that the |
---|
| 27 | user can have some idea of how long the program took. |
---|
[328] | 28 | |
---|
| 29 | |
---|
[310] | 30 | Duchamp version 1.1 (2007/05/17) |
---|
[259] | 31 | ------------------------------------ |
---|
| 32 | |
---|
| 33 | Changes made since the last numbered release: |
---|
| 34 | |
---|
[295] | 35 | EFFICIENCY OF EXECUTION: |
---|
| 36 | |
---|
[259] | 37 | * Major change to the way detections are stored. They are now recorded |
---|
| 38 | via run-length encoding in the x-y plane, and stored as collections |
---|
| 39 | of channel-maps. This improves the memory usage and the speed of |
---|
[298] | 40 | execution (particularly for routines such as the merging |
---|
| 41 | routines). The memory usage has also been improved by changing the |
---|
| 42 | way the list of detected objects is stored. |
---|
[259] | 43 | |
---|
[295] | 44 | SMOOTHING: |
---|
| 45 | |
---|
[279] | 46 | * Addition of ability to spatially smooth the cube before |
---|
| 47 | searching. This is done with a Gaussian kernel, the size and shape |
---|
[287] | 48 | of which can be specified by the user, using the parameters kernMaj |
---|
| 49 | & kernMin (which are the FWHM for the major & minor axes -- if |
---|
| 50 | kernMin is not given it is assumed to match kernMaj) and kernPA (the |
---|
| 51 | position angle of the major axis). There is a new parameter |
---|
[279] | 52 | smoothType that distinguishes this method from the spectral (Hanning) |
---|
| 53 | smoothing already in use. |
---|
| 54 | |
---|
[295] | 55 | DETECTIONS: |
---|
| 56 | |
---|
[264] | 57 | * Changed the way detection is done -- now only search in 2D images, |
---|
| 58 | keeping all detections (ie. no minimum-pixel requirement). This |
---|
| 59 | should be the same as doing both the 1D and 2D searches with the |
---|
| 60 | minimum pixel requirement in, but simpler. The rejection is done at |
---|
[295] | 61 | the end after all the merging and growing has been done. This leads |
---|
| 62 | to a larger number of intermediate detections (ie. the number |
---|
| 63 | before merging), which may increase the run-time slightly, although |
---|
| 64 | this is offset by the changes to the efficiency (see above). |
---|
[264] | 65 | |
---|
| 66 | * Increased the range over which objects can be grown to match the |
---|
| 67 | threshSpatial & threshVelocity parameters, as well as rejecting new |
---|
| 68 | pixels based on the BLANK and MW tests. |
---|
| 69 | |
---|
[295] | 70 | INPUTS: |
---|
[259] | 71 | |
---|
[287] | 72 | * There has been a subtle change in the way BLANK pixels are dealt |
---|
| 73 | with. To enable trimming of BLANK pixels, users should use the new |
---|
| 74 | parameter flagTrim. The parameters flagBlankPix and blankPixVal are |
---|
[295] | 75 | no longer accessible via the parameter file -- warning messages are |
---|
| 76 | given if they are provided in the parameter file. |
---|
[287] | 77 | |
---|
[295] | 78 | * Added ability to specify a statsec, so that the statistics are only |
---|
| 79 | calculated from a given subsection of the cube, rather than the full |
---|
| 80 | cube. |
---|
| 81 | |
---|
| 82 | * The subsections can also specify the ability to remove a border of n |
---|
| 83 | pixels from the edges of an axis (ie. n from the start and from the |
---|
| 84 | end) -- as requested in Trac ticket #5. |
---|
| 85 | |
---|
| 86 | * Changed the default value of the reconDim parameter from 3 to 1, and |
---|
| 87 | the default value of the flagATrous parameter to false. |
---|
| 88 | |
---|
| 89 | OUTPUTS: |
---|
| 90 | |
---|
[279] | 91 | * The output now includes three different estimates of the "centre" of |
---|
| 92 | the detection: peak location, centroid (flux-weighted), or average. |
---|
| 93 | |
---|
[295] | 94 | * Some slight improvements to the user feedback during execution. |
---|
| 95 | |
---|
[282] | 96 | * Spectral output now includes the baseline, if one was fitted. The |
---|
| 97 | format of the plot headers is slightly changed, to stop information |
---|
| 98 | falling off the edge of the page. |
---|
[279] | 99 | |
---|
[295] | 100 | * Added command-line option -x to directly disable the PGPLOT X-window |
---|
| 101 | map plotting. This overrides the setting of flagXOutput in the |
---|
| 102 | parameter file. |
---|
[259] | 103 | |
---|
[295] | 104 | * Fallback spectral units (in case the FITS header fails to record |
---|
| 105 | them) changed to SPC, but code has been fixed so that any problem |
---|
| 106 | should be caught before this becomes an issue. |
---|
| 107 | |
---|
| 108 | BUGFIXES: |
---|
| 109 | |
---|
[259] | 110 | * Fixed bug (Trac ticket #4) that meant the velocity units were not |
---|
| 111 | correctly dealt with. Duchamp should be more robust for different |
---|
| 112 | velocity axis setups now. |
---|
| 113 | |
---|
| 114 | * Fixed bug (ticket #9) with the VOTable output, where the tags were |
---|
| 115 | not closing. |
---|
| 116 | |
---|
[305] | 117 | * Fixed a bug that meant the integrated fluxes were not calculated |
---|
| 118 | properly -- no allowance was made for the number of spatial |
---|
| 119 | pixels. This should also work properly for 2D images now as well. |
---|
| 120 | |
---|
[264] | 121 | * Fixed minor bug in calculating the flux threshold from the p-value |
---|
| 122 | threshold when the FDR method is used. This did not affect the |
---|
| 123 | actual thresholding, merely the quoted flux threshold in the results |
---|
| 124 | file. Also, the MW channels are kept out of the p-value threshold |
---|
| 125 | determination if they are being flagged. |
---|
| 126 | |
---|
[259] | 127 | |
---|
| 128 | |
---|
[211] | 129 | Duchamp version 1.0.7 (2006/11/22) |
---|
| 130 | ---------------------------------- |
---|
| 131 | |
---|
| 132 | One new feature, and some improvements and bug-fixes. |
---|
| 133 | |
---|
[264] | 134 | * The user can now elect to Hanning-smooth the spectral direction of |
---|
| 135 | the cube before the searching is done. This can be done instead of the |
---|
| 136 | wavelet reconstruction (although if both are selected, the |
---|
| 137 | reconstruction takes precendence). This functionality is switched on |
---|
| 138 | and off by the flagSmooth parameter, and the width of the Hanning |
---|
| 139 | kernel is governed by the hanningWidth parameter. |
---|
[211] | 140 | |
---|
[264] | 141 | * The smoothed array can also be written to a FITS file and read in at |
---|
| 142 | the start in the same manner as the reconstructed array. |
---|
[211] | 143 | |
---|
[264] | 144 | * Several improvements have been made to the memory |
---|
| 145 | management. Several memory leaks were fixed, and the memory usage of |
---|
| 146 | Duchamp is considerably less, which will be a help for running it on |
---|
| 147 | large cubes. The speed of some routines has also been improved, by |
---|
| 148 | removing unnecessarily repetitive loops. |
---|
[211] | 149 | |
---|
[287] | 150 | * The sorting routines have been changed, and should now be slightly quicker |
---|
[215] | 151 | (and a bit more robust). |
---|
| 152 | |
---|
[287] | 153 | * Enabled the scale bar (plotted on the 0th moment map in the spectral |
---|
| 154 | output file) to be able to deal with much finer spatial scales (as |
---|
| 155 | may be expected from VLBI data). |
---|
[211] | 156 | |
---|
[215] | 157 | * Other minor changes to code and presentation. |
---|
[211] | 158 | |
---|
| 159 | |
---|
[194] | 160 | Duchamp version 1.0.6 (2006/11/01) |
---|
| 161 | ---------------------------------- |
---|
| 162 | |
---|
| 163 | Some incremental improvements and changes to the code: |
---|
| 164 | |
---|
| 165 | * The statistics used for the detection are now calculated once for |
---|
| 166 | the entire cube, rather than being calculated separately for each |
---|
| 167 | channel map and spectrum. This results in a uniform threshold value |
---|
| 168 | across the entire cube. The way the statistics calculations are |
---|
| 169 | implemented in the code was changed, using a new statistics class. |
---|
| 170 | |
---|
| 171 | * This means we can report a peak signal-to-noise value for each |
---|
| 172 | detection. This is given in the text-based output, as well as in the |
---|
| 173 | summary information above the spectral output for each source. |
---|
| 174 | |
---|
[195] | 175 | * The user can now elect not to have the moment map displayed in a |
---|
| 176 | PGPlot window, through the use of the new flagXOutput |
---|
| 177 | parameter. This should help in cases of running Duchamp on a dumb |
---|
| 178 | terminal (with no X-display capabilities), or as part of a batch |
---|
| 179 | script where the continual popping-up of the PGPlot window might |
---|
| 180 | become annoying. |
---|
| 181 | |
---|
[265] | 182 | * There are different Flags reported for the case of an object lying on |
---|
[194] | 183 | the spatial edge and spectral edge of the cube (E and S respectively). |
---|
| 184 | |
---|
| 185 | * A few minor bug fixes: |
---|
| 186 | - When providing a subsection, any axes with the range given by * |
---|
| 187 | had the pixel values offset incorrectly. This has been fixed. |
---|
| 188 | - Negative searches now correctly invert the reconstructed array |
---|
| 189 | when it is read in from a file. |
---|
| 190 | |
---|
| 191 | * Other minor changes to the code, to improve memory handling and |
---|
| 192 | remove redundant arrays and variables. |
---|
| 193 | |
---|
| 194 | |
---|
[146] | 195 | Duchamp version 1.0.5 (2006/09/06) |
---|
[142] | 196 | ---------------------------------- |
---|
| 197 | |
---|
[146] | 198 | Since version 1.0, there have been a range of mostly minor |
---|
| 199 | changes. These are generally bug-fixes, thanks to feedback from a |
---|
[157] | 200 | number of users, as well as a few extra features. |
---|
[146] | 201 | |
---|
[157] | 202 | Here is a summary of the changes since version 1.0: |
---|
[142] | 203 | |
---|
[157] | 204 | USER INTERFACE: |
---|
[146] | 205 | |
---|
[142] | 206 | * The user is now able to enter the value of flag parameters in the |
---|
| 207 | parameter file as strings, as well as integers (so one can enter |
---|
| 208 | true or 1 to give the same result). |
---|
| 209 | |
---|
[157] | 210 | GRAPHICAL OUTPUT: |
---|
| 211 | |
---|
[142] | 212 | * Added a new function that draws the edge of the blank region on the |
---|
[146] | 213 | maps and image cutouts. There is a new flag parameter -- |
---|
| 214 | drawBlankEdges -- that controls the use of this function (the |
---|
| 215 | default is true). |
---|
| 216 | Also, the edge of the field is plotted on the image cutouts as a |
---|
| 217 | yellow line. This distinguishes it from the purple blank pixel |
---|
| 218 | dividing line. |
---|
[142] | 219 | |
---|
[146] | 220 | * The size of the tick mark in the image cutout (indicating the |
---|
| 221 | spatial scale of the image) is now adaptable, so that it shows the |
---|
| 222 | scale that best fits the image (ranging from 1 arcsec to 15 |
---|
| 223 | degrees). (This is a change from the previous standard length of 15 |
---|
| 224 | arcmin.) |
---|
[142] | 225 | |
---|
[113] | 226 | * The zoomed spectrum had its flux scale determined by all points in |
---|
[146] | 227 | the zoom box,including those flagged by the Milky Way (MW) |
---|
| 228 | range. This has been fixed so that any MW channels will not affect |
---|
| 229 | the flux scaling, potentially improving the appearance of objects |
---|
| 230 | detected close in velocity to strong MW emission or absorption. |
---|
[112] | 231 | |
---|
[157] | 232 | * Improved Karma Annotation file output, so that files without good |
---|
| 233 | WCS are dealt with appropriately. |
---|
| 234 | |
---|
| 235 | TEXT-BASED OUTPUT: |
---|
| 236 | |
---|
[113] | 237 | * The position resolution in the IAU-format names has been increased, |
---|
| 238 | so that distinct objects close to one another are more readily |
---|
| 239 | distinguished. Overlapping sources at different velocities may |
---|
| 240 | still have the same name, but this is a more general problem. |
---|
[112] | 241 | |
---|
[146] | 242 | * The presentation of the results in tabular format has been improved, |
---|
| 243 | so that the precision of faint sources is sufficient to show their |
---|
| 244 | flux, for instance, is not 0. This also applies to the information |
---|
| 245 | presented above the spectral plots. |
---|
[112] | 246 | |
---|
[146] | 247 | * Improved error and warning reporting, so that the formatting and |
---|
| 248 | presentation of information is clearer. |
---|
| 249 | |
---|
[157] | 250 | FITS I/O RELATED: |
---|
| 251 | |
---|
[172] | 252 | * The previous version was did not deal well with 4 (or greater) |
---|
| 253 | dimensions in the FITS file -- the memory allocation was badly done, |
---|
| 254 | and the axes needed to be in a particular order. This has been |
---|
| 255 | fixed, so that the FITS I/O routines can now handle any sized FITS |
---|
| 256 | file, with axes in any order (as long as there are two spatial and one |
---|
| 257 | spectral axes). |
---|
[157] | 258 | |
---|
| 259 | * When the FITS file does not have a rest frequency defined, there is |
---|
| 260 | no way to transform the frequency axis into velocity. In this case, |
---|
| 261 | the spectral axis is left as frequency, and put into units of MHz. |
---|
| 262 | |
---|
[172] | 263 | * If the beam size is not indicated by the FITS header (through the |
---|
| 264 | BMAJ and BMIN keywords), the user can manually specify the size |
---|
| 265 | through the parameter file (using parameter beamSize). |
---|
| 266 | |
---|
| 267 | * The FITS I/O routines make use of the command fits_file_exists. This |
---|
| 268 | was introduced into the CFITSIO package from version 2.5, so Duchamp |
---|
| 269 | will only work with this version or higher. Version 3+ is preferred. |
---|
| 270 | |
---|
[157] | 271 | OTHER BUG-FIXING: |
---|
| 272 | |
---|
| 273 | * Several bugs related to the blank-pixels were dealt with. |
---|
| 274 | The correct values were not propagating through correctly, meaning |
---|
| 275 | that the default values were being used. Also, there was the |
---|
| 276 | potential for blank pixels to be detected when the FDR method was |
---|
| 277 | used. Finally, the image cutout displays occasionally did not |
---|
| 278 | obscure the blank pixels. All these problems should be fixed now. |
---|
| 279 | |
---|
| 280 | * The FDR setup routine was occasionally failing with a segmentation |
---|
| 281 | fault, due to it accessing unallocated memory. This has been fixed. |
---|
| 282 | |
---|
| 283 | * Fixed bugs that affected the way 2D images (rather than 3D cubes) |
---|
| 284 | were dealt with. The minChannels test failed when minChannels=0. |
---|
| 285 | |
---|
[165] | 286 | * If there is no beam information in the FITS header, the user can now |
---|
| 287 | enter a beam size as a parameter. |
---|
| 288 | |
---|
[146] | 289 | * Other minor fixes to the code, to improve its structure and |
---|
| 290 | robustness. |
---|
| 291 | |
---|
| 292 | |
---|
[112] | 293 | Duchamp version 1.0 (2006/06/30) |
---|
| 294 | -------------------------------- |
---|
| 295 | |
---|
[113] | 296 | The first full release version. |
---|
| 297 | |
---|
| 298 | Several major changes compared to previous version: |
---|
| 299 | |
---|
| 300 | * Incorporated a FitsHeader class, to keep track of header information |
---|
| 301 | (including WCS) from the FITS file. All units-related calculations |
---|
| 302 | are done with this class, such as conversion to velocity, and |
---|
| 303 | pixel-to-WCS conversion. The main advantage of this is improved |
---|
| 304 | speed of execution, more adaptable to different units, and improved |
---|
| 305 | code (easier for me!). |
---|
| 306 | |
---|
| 307 | * Able to select the dimensionality of the reconstruction, rather than |
---|
| 308 | just doing it in 3-D. |
---|
| 309 | |
---|
| 310 | * Robust text output, so that the columns are sized correctly given |
---|
| 311 | the data being written, and the relevant units (derived from the |
---|
| 312 | FITS header) are included in the output table. |
---|
| 313 | |
---|
| 314 | * Improved the way the reconstructed image is saved and read back in, |
---|
| 315 | with a better naming scheme and a better set of new FITS header |
---|
| 316 | keywords. The MW headers are now not written. |
---|
| 317 | |
---|
| 318 | Other, more minor changes include: |
---|
| 319 | |
---|
| 320 | * MW channels now not set to 0, but just ignored for searching |
---|
| 321 | purposes (and for the scaling of the spectral output -- they are |
---|
| 322 | plotted though and highlighted with a hashed box). |
---|
| 323 | |
---|
| 324 | * The scale bar in the moment map in the spectral output file has its |
---|
| 325 | length indicated. |
---|
| 326 | |
---|
| 327 | * Improved VOTable output, with more information about the way Duchamp |
---|
| 328 | was run. |
---|
| 329 | |
---|
| 330 | * Made sure all statistics calculations in the reconstruction are |
---|
| 331 | based on robust (ie. median) methods. |
---|
| 332 | |
---|
| 333 | Also moved to an autoconf based configure/make compilation, for ease of use. |
---|
| 334 | |
---|
| 335 | |
---|
| 336 | Duchamp version 0.9.2 (2006/06/27) |
---|
| 337 | -------------------------------- |
---|
| 338 | |
---|
| 339 | * Added the use of warning flags for detections: for either edge |
---|
| 340 | location or negative enclosed flux. |
---|
| 341 | |
---|
| 342 | * A new command line option added so that the user can specify a FITS |
---|
| 343 | file to be searched with the default parameters, rather than giving |
---|
| 344 | a full parameter file. |
---|
| 345 | |
---|
| 346 | * The scale bar on the moment cutout now works in general case, using |
---|
| 347 | an iterative process to get to the correct length. |
---|
| 348 | |
---|
| 349 | * RA axes are now done correctly on the full-scale maps. |
---|
| 350 | |
---|
| 351 | * Various coding fixes, improving the readability of the code, |
---|
| 352 | particularly regarding the declaration of temporary variables. |
---|
| 353 | |
---|
| 354 | * Changed the way the time of execution is called : now using time.h |
---|
| 355 | functions, rather than a system call. |
---|
| 356 | |
---|
| 357 | * Changed output in Detection/outputDetection.cc for the pixel |
---|
| 358 | information of detected objects (the info printed above the spectral |
---|
| 359 | plots) -- now print out number of voxels in object, and have |
---|
| 360 | improved the formatting a little. |
---|
| 361 | |
---|
| 362 | * Improved the functionality of saving the FITS file containing the |
---|
| 363 | reconstructed array. Added ability to save and read back in the MW |
---|
| 364 | parameters when saving a reconstructed cube (if a reconstructed cube |
---|
| 365 | has different MW range to that being considered, it would cause |
---|
| 366 | problems). ReadRecon now just returns a FAILURE and will reconstruct |
---|
| 367 | the cube anew. |
---|
| 368 | |
---|
| 369 | * Changed default value of flagGrowth to 0. |
---|
| 370 | |
---|
| 371 | |
---|
| 372 | |
---|
| 373 | Duchamp version 0.9 (2006/05/05) |
---|
| 374 | -------------------------------- |
---|
| 375 | |
---|
| 376 | First public release version. |
---|