FITSVERIFY(1)
π« fitsverify β the vibe check for your FITS files π«
okay bestie, so this is fitsverify(1) from the User Commands section, and honestly? it's giving strict but fair. It reads your FITS files and tells you if they're actually conforming to the rules. No cap. πβ¨
β¨ NAME β¨
fitsverify β test if the input file(s) conform to the FITS format π¦
πΈ SYNOPSIS πΈ
fitsverify filename ...
fitsverify @filelist.txt
π DESCRIPTION π
So here's the tea: this task reads one or more input FITS files and verifies that they conform to the specifications of the FITS Standard document (known as the NASA/Science Office of Standards and Technology 'Definition of the Current FITS Standard', document number, NOST 100-2.0, available online at https://fits.gsfc.nasa.gov/). Iconic. π
The input filename template may contain wildcard characters, in which case all matching files will be tested. Slay, batch mode.
Alternatively β and this is the lil shortcut I'm obsessed with β the name of an ASCII text file containing a list of file names, one per line, may be entered preceded by an '@' character. π
π OPTIONS π
-Hβ test ESOHIERARCHkeywords π-lβ list all header keywords π-qβ quiet mode; print one-line pass/fail summary per file π€«-eβ only test for error conditions; don't issue warnings π«β οΈ-hβ Help π
π ERROR CONDITIONS π
these are the big ones, the "we need to talk" moments. not me being dramatic but each of these = your file failed the vibe check π
- Mandatory keyword not present or out of order
- Mandatory keyword has wrong datatype or illegal value
ENDheader keyword is not present- Sum of table column widths is inconsistent with
NAXIS1value BLANKkeyword present in image with floating-point datatypeTNULLnkeyword present for floating-point binary table column- Bit column has non-zero fill bits or is not left adjusted
- ASCII TABLE column contains illegal value inconsistent with
TFORMn - Address to a variable length array not within the data heap
- Extraneous bytes in the FITS file following the last HDU
- Mandatory keyword values not expressed in fixed format
- Mandatory keyword duplicated elsewhere in the header
- Header contains illegal ASCII character (not ASCII 32 - 126)
- Keyword name contains illegal character
- Keyword value field has illegal format
- Value and comment fields not separated by a slash character
ENDkeyword not filled with blanks in columns 9 - 80- Reserved keyword with wrong datatype or illegal value
EXTENDnot present in the primary array if there are extensionsBLOCKED, if present, not among the first 36 keywordsXTENSIONkeyword in the primary array- Column related keyword (
TFIELDS,TTYPEn,TFORMn, etc.) in an image SIMPLE,EXTEND, orBLOCKEDkeyword in any extensionBSCALE,BZERO,BUNIT,BLANK,DATAMAX,DATAMINkeywords in a table- Image WCS keywords (
CTYPEn,CRPIXn,CRVALn, etc.) in a table - Table WCS keywords (
TCTYPn,TCRPXn,TCRVLn, etc.) in an image TDIMnorTHEAPkeyword in an ASCII tableTBCOLnkeyword in a Binary tableTHEAPkeyword in a binary table that hasPCOUNT= 0XTENSION,TFORMn,TDISPnorTDIMnvalue contains leading space(s)- Index of any WCS keyword (
CRPIXn,CRVALn, etc.) greater than value ofWCSAXES - Index of any table column descriptor keyword (
TTYPEn,TFORMn, etc.) greater than value ofTFIELDS TSCALnorTZEROnpresent for an ASCII, logical, or Bit columnTDISPnvalue is inconsistent with the column datatype- Length of a variable length array greater than the maximum length as given by the
TFORMnkeyword - Logical column contains illegal value not equal to
'T','F', or 0 - Character string column contains non-ASCII text character
- Header fill bytes not all blanks
- Data fill bytes not all blanks in ASCII tables or all zeros in any other type of HDU
- Gaps between defined ASCII table columns contain characters with ASCII value > 127
β οΈ WARNING CONDITIONS β οΈ
not a full fail, but... bestie, we're side-eyeing this file π
SIMPLE = F- Presence of deprecated keywords
BLOCKEDorEPOCH - 2 HDUs have identical
EXTNAME,EXTVER, andEXTLEVELvalues BSCALEorTSCALnvalue = 0.BLANKORTNULLnvalue exceeds the legal rangeTFORMnhas'rAw'format andris not a multiple ofwDATE = 'dd/mm/yy'andyyis less than 10 (Y2K problem??)- Index of any WCS keyword (
CRPIXn,CRVALn, etc.) greater than value ofNAXIS, if theWCSAXESkeyword is not present - Duplicated keyword (except
COMMENT,HISTORY, blank, etc.) - Column name (
TTYPEn) does not exist or contains characters other than letter, digit and underscore - Calculated checksum inconsistent with
CHECKSUMorDATASUMkeyword
π AUTHOR π
HEASARC at NASA/GSFC π°οΈπ (actual legends, fr fr)
π«Ά REPORTING BUGS π«Ά
https://heasarc.gsfc.nasa.gov/cgi-bin/ftoolshelp
lowkey a whole checklist but honestly? run it, fix the errors, and your file will be that girl. π
okay that's the whole page, bestie, and the lil sign-off at the bottom is: fitsverify, Oct 2010 β so yeah, this page has been serving accurate FITS-verification realness since way back. periodt. πβ¨π¦
π¦ where this page comes from
- debian bookworm: fitsverify 4.20-4+b1 Β· MIT
- ubuntu jammy: fitsverify 4.20-4 Β· MIT
- ubuntu noble: fitsverify 4.22-1build2 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms