⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rdfits_struct.pro

📁 basic median filter simulation
💻 PRO
字号:
pro rdfits_struct, filename, struct,SILENT = silent, HEADER_ONLY = header_only ;+; NAME:;      RDFITS_STRUCT; PURPOSE:;      Read an entire FITS file (all extensions) into a single IDL structure. ; EXPLANATION:;      Each header, image or table array is placed in a separate structure ;      tag.;; CALLING SEQUENCE:;      RDFITS_STRUCT, filename, struct, /SILENT, /HEADER_ONLY ];; INPUT:;      FILENAME = Scalar string giving the name of the FITS file.  ;                 One can also specify a gzip (.gz) compressed file ;; OPTIONAL KEYWORD: ;      /HEADER_ONLY - If set, then only the FITS headers (and not the data);                are read into the structure.;      /SILENT - Set this keyword to suppress informational displays at the;               terminal.; OUTPUT:;      struct = structure into which FITS data is read.   The primary header;             and image are placed into tag names HDR0 and IM0.   The ith;             extension is placed into the tag names HDRi, and either TABi;             (if it is a binary or ASCII table) or IMi (if it is an image;             extension);;             If /HEADER_ONLY is set, then struct will contain tags HDR0, HDR1;             ....HDRn containing all the headers of a FITS file with n ;             extensions; PROCEDURES USED:;       FITS_OPEN, FITS_READ, FITS_CLOSE;; METHOD:;       The file is opened with FITS_OPEN which return information on the ;       number and type of each extension.    The CREATE_STRUCT() function;       is used iteratively, with FITS_READ calls to build the final structure.;; EXAMPLE:;       Read the FITS file 'm33.fits' into an IDL structure, st;;       IDL> rdfits_struct, 'm33.fits', st;       IDL> help, /str, st                   ;Display info about the structure;; RESTRICTIONS:;       Does not handle random groups or variable length binary tables; MODIFICATION HISTORY:;       Written K. Venkatakrishna, STX April 1992;       Code cleaned up a bit  W. Landsman  STX  October 92;       Modified for MacOS     I.  Freedman  HSTX April 1994;       Work under Windows 95  W. Landsman   HSTX  January 1996;       Use anonymous structures, skip extensions without data WBL April 1998;       Converted to IDL V5.0, W. Landsman, April 1998;       OS-independent deletion of temporary file  W. Landsman  Jan 1999;       Major rewrite to use FITS_OPEN and CREATE_STRUCT() W. Landsman Sep 2002;       Added /HEADER_ONLY keyword   W. Landsman  October 2003;       Do not copy primary header into extension headers W. Landsman Dec 2004;       Do not modify NAXIS when using /HEADER_ONLY W. Landsman Jan 2005;- compile_opt idl2 if N_Params() LT 2 then begin         print,'Syntax - RDFITS_STRUCT, file, struct, [ /SILENT, /HEADER_ONLY ]'        return endif fits_open, filename, fcb                ; Get the description of the file if not keyword_set(silent) then $      message,/inf,'Now reading file ' + filename + ' with ' + $      strtrim(fcb.nextend,2) + ' extensions' h_only = keyword_set(header_only)   if h_only then begin     fits_read,fcb,0,h,/header_only,exten_no=0     struct = {hdr0:h} endif else begin     fits_read,fcb,d,h,exten_no=0     struct = {hdr0:h,im0:temporary(d)} endelse if fcb.nextend EQ 0 then begin      fits_close,fcb       return endif for i=1,fcb.nextend do begin     if h_only then begin     fits_read,fcb,0,h,/header_only,/no_pdu     struct = create_struct(temporary(struct), 'hdr' + strtrim(i,2), $              temporary(h))     endif else begin     fits_read,fcb,d,h,/no_pdu     if fcb.xtension[i] EQ 'IMAGE' then tag = 'im' + strtrim(i,2) $                                else tag = 'tab' + strtrim(i,2)     struct = create_struct(temporary(struct), 'hdr' + strtrim(i,2), $              temporary(h),tag, temporary(d))    endelse endfor      fits_close,fcb                              return end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -