Changeset 4579 for trunk/psModules/src/psAstrometry.h
- Timestamp:
- Jul 18, 2005, 3:44:48 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psModules/src/psAstrometry.h (modified) (45 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules/src/psAstrometry.h
r4577 r4579 8 8 * @author GLG, MHPCC 9 9 * 10 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $11 * @date $Date: 2005-07-1 8 18:48:29$10 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 11 * @date $Date: 2005-07-19 01:44:48 $ 12 12 * 13 13 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 17 17 #define PS_ASTROMETRY_H 18 18 19 #include "psType.h" 20 #include "psImage.h" 21 #include "psArray.h" 22 #include "psList.h" 23 #include "psFunctions.h" 24 #include "psMetadata.h" 25 #include "psCoord.h" 26 #include "psPhotometry.h" 27 19 #include "pslib.h" 20 21 /* 28 22 struct psCell; 29 23 struct psChip; 30 24 struct psFPA; 31 25 struct psExposure; 32 26 */ 33 27 /// @addtogroup AstroImage 34 28 /// @{ … … 42 36 * 43 37 */ 38 39 /* 44 40 typedef struct 45 41 { 46 const double latitude; ///< geodetic latitude (radians)47 const double longitude; ///< longitude + ... (radians)48 const double height; ///< height (HM)49 const double abberationMag; ///< magnitude of diurnal aberration vector50 const double temperature; ///< ambient temperature (TDK)51 const double pressure; ///< pressure (PMB)52 const double humidity; ///< relative humidity (RH)53 const double wavelength; ///< wavelength (WL)54 const double lapseRate; ///< lapse rate (TLR)55 const double refractA, refractB; ///< refraction constants A and B (radians)56 const double siderealTime; ///< local apparent sidereal time (radians)42 const double latitude; ///< geodetic latitude (radians) 43 const double longitude; ///< longitude + ... (radians) 44 const double height; ///< height (HM) 45 const double abberationMag; ///< magnitude of diurnal aberration vector 46 const double temperature; ///< ambient temperature (TDK) 47 const double pressure; ///< pressure (PMB) 48 const double humidity; ///< relative humidity (RH) 49 const double wavelength; ///< wavelength (WL) 50 const double lapseRate; ///< lapse rate (TLR) 51 const double refractA, refractB; ///< refraction constants A and B (radians) 52 const double siderealTime; ///< local apparent sidereal time (radians) 57 53 } 58 54 psGrommit; 55 */ 56 59 57 60 58 /** Fixed Pattern Corrections … … 67 65 * of the grid in x and y as well as the origin of the grid. 68 66 */ 67 /* 69 68 typedef struct 70 69 { … … 84 83 } 85 84 psFixedPattern; 85 */ 86 86 87 87 /** Readout data structure. 88 88 89 * 89 90 * A readout is the result of a single read of a cell (or a portion thereof). … … 121 122 * 122 123 */ 124 /* 123 125 typedef struct 124 126 { 125 127 const psS32 col0; ///< Offset from the left of chip 126 128 const psS32 row0; ///< Offset from the bottom of chip 127 129 128 130 psArray* readouts; ///< readouts from the cell 129 131 130 132 psMetadata* metadata; ///< cell-level metadata 131 133 132 134 psPlaneTransform* toChip; ///< transformations from cell to chip coordinates 133 135 psPlaneTransform* fromChip; ///< transformations from cell to chip coordinates … … 135 137 psPlaneTransform* toTP; ///< transformations from cell to FPA coordinates 136 138 psPlaneTransform* toSky; ///< transformations from cell to tangent plane coordinates 137 139 138 140 struct psChip* parent; ///< chip in which contains this cell 139 141 } 140 142 psCell; 143 */ 141 144 142 145 /** Chip data structure … … 148 151 * 149 152 */ 150 typedef struct psChip153 /*typedef struct psChip 151 154 { 152 155 const psS32 col0; ///< Offset from the left of FPA 153 156 const psS32 row0; ///< Offset from the bottom of FPA 154 157 155 158 psArray* cells; ///< cells in the chip 156 159 157 160 psMetadata* metadata; ///< chip-level metadata 158 161 159 162 psPlaneTransform* toFPA; ///< transformation from chip to FPA coordinates 160 163 psPlaneTransform* fromFPA; ///< transformation from FPA to chip coordinates 161 164 162 165 struct psFPA* parent; ///< FPA which contains this chip 163 166 } 164 167 psChip; 168 */ 165 169 166 170 /** A Focal-Plane … … 177 181 * 178 182 */ 179 typedef struct psFPA183 /*typedef struct psFPA 180 184 { 181 185 psArray* chips; ///< chips in the focal plane array 182 186 psMetadata* metadata; ///< focal-plane's metadata 183 187 184 188 psPlaneDistort* fromTangentPlane; ///< transformation from tangent plane to focal plane 185 189 psPlaneDistort* toTangentPlane; ///< transformation from focal plane to tangent plane 186 190 psFixedPattern* pattern; ///< fixed pattern residual offsets 187 191 188 192 const struct psExposure* exposure; ///< information about this exposure 189 193 psGrommit *grommit; ///< Wallace's grommit 190 194 191 195 psPhotSystem* colorPlus; ///< Color reference 192 196 psPhotSystem* colorMinus; ///< Color reference 193 197 psProjection *projection; ///< projection 194 198 195 199 float rmsX; ///< RMS for x transformation fits 196 200 float rmsY; ///< RMS for y transformation fits … … 198 202 } 199 203 psFPA; 204 */ 200 205 201 206 /** Observatory Information … … 204 209 * 205 210 */ 206 typedef struct211 /*typedef struct 207 212 { 208 213 const char* name; ///< Name of observatory … … 213 218 } 214 219 psObservatory; 220 */ 215 221 216 222 /** Exposure Information … … 221 227 * 222 228 */ 223 typedef struct psExposure229 /*typedef struct psExposure 224 230 { 225 231 const double ra; ///< Telescope boresight, right ascention … … 236 242 const float wavelength; ///< Wavelength in microns 237 243 const psObservatory* observatory; ///< Observatory data 238 239 / * Derived quantities */244 245 // Derived quantities 240 246 const double lst; ///< Local Sidereal Time 241 247 const float positionAngle; ///< Position angle … … 247 253 } 248 254 psExposure; 255 */ 249 256 250 257 /** Allocator for psFixedPattern struct … … 255 262 * @return psFixedPattern* New psFixedPattern struct. 256 263 */ 257 psFixedPattern* psFixedPatternAlloc(264 /*psFixedPattern* psFixedPatternAlloc( 258 265 double x0, ///< X Position of 0,0 corner on focal plane 259 266 double y0, ///< Y Position of 0,0 corner on focal plane … … 263 270 const psImage *y ///< The grid of offsets in y 264 271 ); 265 272 */ 266 273 267 274 /** Allocator for psExposure … … 273 280 * @return psExposure* New psExposure struct 274 281 */ 275 psExposure* psExposureAlloc(282 /*psExposure* psExposureAlloc( 276 283 double ra, ///< Telescope boresight, right ascention 277 284 double dec, ///< Telescope boresight, declination … … 288 295 const psObservatory* observatory ///< Observatory data 289 296 ); 297 */ 290 298 291 299 /** Allocator for psObservatory … … 296 304 * @return psObservatory* new psObservatory struct 297 305 */ 298 psObservatory* psObservatoryAlloc(306 /*psObservatory* psObservatoryAlloc( 299 307 const char* name, ///< Name of observatory 300 308 double latitude, ///< Latitude of observatory, east positive … … 303 311 double tlr ///< Tropospheric Lapse Rate 304 312 ); 313 */ 305 314 306 315 /** Allocator for psFPA … … 313 322 * @return psFPA* a newly allocated psFPA 314 323 */ 315 psFPA* psFPAAlloc(324 /*psFPA* psFPAAlloc( 316 325 psS32 nChips, ///< number of chips in the FPA 317 326 const psExposure* exp ///< the exposure information 318 327 ); 328 */ 319 329 320 330 /** Allocates a psChip … … 326 336 * @return psChip* newly allocated psChip 327 337 */ 328 psChip* psChipAlloc(338 /*psChip* psChipAlloc( 329 339 psS32 nCells, ///< number of cells in Chip 330 340 psFPA* parentFPA ///< parent FPA 331 341 ); 342 */ 332 343 333 344 /** Allocates a psCell … … 339 350 * @return psCell* newly allocated psCell 340 351 */ 341 psCell* psCellAlloc(352 /*psCell* psCellAlloc( 342 353 psS32 nReadouts, ///< number of readouts in cell 343 354 psChip* parentChip ///< parent Chip 344 355 ); 356 */ 345 357 346 358 /** Allocates a psReadout … … 360 372 * @return psGrommit* New grommit structure. 361 373 */ 362 psGrommit* psGrommitAlloc(374 /*psGrommit* psGrommitAlloc( 363 375 const psExposure* exp ///< the cooresponding exposure structure. 364 376 ); 377 */ 365 378 366 379 /** Find cooresponding cell for given FPA coordinate … … 368 381 * @return psCell* the cell cooresponding to the coord in FPA 369 382 */ 370 psCell* psCellInFPA(383 /*psCell* psCellInFPA( 371 384 const psPlane* coord, ///< the coordinate in FPA plane 372 385 const psFPA* FPA ///< the FPA to search for the cell 373 386 ); 387 */ 374 388 375 389 /** Find cooresponding chip for given FPA coordinate … … 377 391 * @return psChip* the chip cooresponding to coord 378 392 */ 379 psChip* psChipInFPA(393 /*psChip* psChipInFPA( 380 394 const psPlane* coord, ///< the coordinate in FPA plane 381 395 const psFPA* FPA ///< the FPA to search for the cell 382 396 ); 397 */ 383 398 384 399 /** Find cooresponding cell for given Chip coordinate … … 386 401 * @return psCell* the cell cooresponding to coord 387 402 */ 388 psCell* psCellInChip(403 /*psCell* psCellInChip( 389 404 const psPlane* coord, ///< the coordinate in Chip plane 390 405 const psChip* chip ///< the chip to search for the cell 391 406 ); 407 */ 392 408 393 409 /** Translate a cell coordinate into a chip coordinate … … 395 411 * @return psPlane* the resulting chip coordinate 396 412 */ 397 psPlane* psCoordCellToChip(413 /*psPlane* psCoordCellToChip( 398 414 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 399 415 const psPlane* in, ///< the coordinate within Cell 400 416 const psCell* cell ///< the Cell in interest 401 417 ); 418 */ 402 419 403 420 /** Translate a chip coordinate into a FPA coordinate … … 405 422 * @return psPlane* the resulting FPA coordinate 406 423 */ 407 psPlane* psCoordChipToFPA(424 /*psPlane* psCoordChipToFPA( 408 425 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 409 426 const psPlane* in, ///< the coordinate within Chip 410 427 const psChip* chip ///< the chip in interest 411 428 ); 429 */ 412 430 413 431 /** Translate a FPA coordinate into a Tangent Plane coordinate … … 415 433 * @return psPlane* the resulting Tangent Plane coordinate 416 434 */ 417 psPlane* psCoordFPAToTP(435 /*psPlane* psCoordFPAToTP( 418 436 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 419 437 const psPlane* in, ///< the coordinate within FPA … … 422 440 const psFPA* fpa ///< the FPA in interest 423 441 ); 442 */ 424 443 425 444 /** Translate a Tangent Plane coordinate into a Sky coordinate … … 427 446 * @return psSphere* the resulting Sky coordinate 428 447 */ 429 psSphere* psCoordTPToSky(448 /*psSphere* psCoordTPToSky( 430 449 psSphere* out, ///< a sphere struct to recycle. If NULL, a new struct is created 431 450 const psPlane* in, ///< the coordinate within Tangent Plane 432 451 const psGrommit* grommit ///< the grommit of the tangent plane 433 452 ); 453 */ 434 454 435 455 /** Translate a cell coordinate into a FPA coordinate … … 437 457 * @return psPlane* the resulting FPA coordinate 438 458 */ 439 psPlane* psCoordCellToFPA(459 /*psPlane* psCoordCellToFPA( 440 460 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 441 461 const psPlane* in, ///< the coordinate within cell 442 462 const psCell* cell ///< the cell in interest 443 463 ); 464 */ 444 465 445 466 /** Translate a cell coordinate into a Sky coordinate … … 447 468 * @return psSphere* the resulting Sky coordinate 448 469 */ 449 psSphere* psCoordCellToSky(470 /*psSphere* psCoordCellToSky( 450 471 psSphere* out, ///< a sphere struct to recycle. If NULL, a new struct is created 451 472 const psPlane* in, ///< the coordinate within cell … … 454 475 const psCell* cell ///< the cell in interest 455 476 ); 477 */ 456 478 457 479 /** Translate a cell coordinate into a Sky coordinate using a 'quick and … … 460 482 * @return psSphere* the resulting Sky coordinate 461 483 */ 462 psSphere* psCoordCellToSkyQuick(484 /*psSphere* psCoordCellToSkyQuick( 463 485 psSphere* out, ///< a sphere struct to recycle. If NULL, a new struct is created 464 486 const psPlane* in, ///< the coordinate within cell 465 487 const psCell* cell ///< the cell in interest 466 488 ); 489 */ 467 490 468 491 /** Translate a Sky coordinate into a Tangent Plane coordinate … … 470 493 * @return psPlane* the resulting Tangent Plane coordinate 471 494 */ 472 psPlane* psCoordSkyToTP(495 /*psPlane* psCoordSkyToTP( 473 496 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 474 497 const psSphere* in, ///< the sky coordinate 475 498 const psGrommit* grommit ///< the grommit 476 499 ); 500 */ 477 501 478 502 /** Translate a Tangent Plane coordinate into a FPA coordinate … … 480 504 * @return psPlane* the resulting FPA coordinate 481 505 */ 482 psPlane* psCoordTPToFPA(506 /*psPlane* psCoordTPToFPA( 483 507 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 484 508 const psPlane* in, ///< the coordinate within tangent plane … … 487 511 const psFPA* fpa ///< the FPA of interest 488 512 ); 513 */ 489 514 490 515 /** Translate a FPA coordinate into a chip coordinate … … 492 517 * @return psPlane* the resulting chip coordinate 493 518 */ 494 psPlane* psCoordFPAToChip(519 /*psPlane* psCoordFPAToChip( 495 520 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 496 521 const psPlane* in, ///< the FPA coordinate 497 522 const psChip* chip ///< the chip of interest 498 523 ); 524 */ 499 525 500 526 /** Translate a chip coordinate into a cell coordinate … … 502 528 * @return psPlane* the resulting cell coordinate 503 529 */ 504 psPlane* psCoordChipToCell(530 /*psPlane* psCoordChipToCell( 505 531 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 506 532 const psPlane* in, ///< the Chip coordinate 507 533 const psCell* cell ///< the cell of interest 508 534 ); 535 */ 509 536 510 537 /** Translate a sky coordinate into a cell coordinate … … 512 539 * @return psPlane* the resulting cell coordinate 513 540 */ 514 psPlane* psCoordSkyToCell(541 /*psPlane* psCoordSkyToCell( 515 542 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 516 543 const psSphere* in, ///< the Sky coordinate … … 519 546 const psCell* cell ///< the cell of interest 520 547 ); 548 */ 521 549 522 550 /** Translate a sky coordinate into a cell coordinate using a 'quick and … … 525 553 * @return psPlane* the resulting cell coordinate 526 554 */ 527 psPlane* psCoordSkyToCellQuick(555 /*psPlane* psCoordSkyToCellQuick( 528 556 psPlane* out, ///< a plane struct to recycle. If NULL, a new struct is created 529 557 const psSphere* in, ///< the Sky coordinate 530 558 const psCell* cell ///< the cell of interest 531 559 ); 532 560 */ 533 561 534 562 #endif // #ifndef PS_ASTROMETRY_H
Note:
See TracChangeset
for help on using the changeset viewer.
