---
name: "mFixNaN"
section: "1"
platform: "linux"
package: "montage"
version: "6.1+dfsg-1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/mFixNaN"
---

# mFixNaN(1)

Replace a particular set of values in a FITS image with NaNs (or vice-versa)

## NAME

mFixNaN - Replace a particular set of values in a FITS image with NaNs (or vice-versa)

## SYNOPSIS

mFixNaN \[-d *level*\] \[-v *NaN-value*\] in.fits out.fits \[*minblank maxblank*\]

## DESCRIPTION

Converts NaNs found in the image to some other value (given by the user), *or* converts a range of supplied values into NaNs.

## OPTIONS

- \-d *level*

  Turn on debugging to the specified level (1-3)

- \-b

  Check for non-physical boundary area (*e.g.* the corners of an Aitoff image) and correct them.

- \-v *NaN-value*

  Value to use in place of any NaNs

## ARGUMENTS

- in.fits

  Input FITS image file

- out.fits

  Path of output FITS file.  To run in "count" mode without creating an output file, use a dash ("-") for this argument.

- minblank maxblank

  If the "-v" switch is not used, **mFixNaN** will replace all pixel values between *minblank* and *maxblank* with NaN.

## RESULT

**\[struct stat="OK", rangeCount=***rangeCount***, nanCount=***nanCount***\]**

*rangeCount is the number of pixels that were found between minblank and maxblank, if they were specified.  If not (i.e., NaNs were removed and replaced with value), nanCount is the number of NaNs removed.*

## MESSAGES

- *OK*

  *\[struct stat="OK", rangeCount=rangeCount, nanCount=nanCount"\]*

- *ERROR*

  *No debug level given*

- *ERROR*

  *Debug level string is invalid: level*

- *ERROR*

  *Debug level string is invalid: level*

- *ERROR*

  *Debug level string cannot be negative*

- *ERROR*

  *No value given for NaN conversion*

- *ERROR*

  *NaN conversion value string is invalid: 'NaN-value'*

- *ERROR*

  *Invalid input file 'in.fits'\]*

- *ERROR*

  *min blank value string is not a number*

- *ERROR*

  *max blank value string is not a number*

- *ERROR*

  *Image file in.fits missing or invalid FITS*

- *ERROR*

  *FITS library error*

## EXAMPLES

*A FITS image with BITPIX -64 (double-precision floating point) was generated without using NaNs; all "blank" pixels are represented by very small negative numbers.  This can throw off initial attempts to display the image with a proper stretch, and does not conform to the FITS standard.  To replace all those "blank" pixels with NaNs:*

- *mFixNaN original.fits NaN.fits -4.61169e32 -4.61169e10*

  *\[struct stat="OK", rangeCount=1321, nanCount=0\]*

*To convert those NaNs back into a single pixel value:*

- *mFixNaN -v -4.6e32 NaN.fits blankval.fits*

  *\[struct stat="OK", rangeCount=0, nanCount=1321\]*

## BUGS

*The drizzle algorithm has been implemented but has not been tested* *in this release.*

*If a header template contains carriage returns (i.e., created/modified* *on a Windows machine), the cfitsio library will be unable to read it* *properly, resulting in the error: \[struct stat="ERROR", status=207,* *msg="illegal character in keyword"\]*

*It is best for the background correction algorithms if the area* *described in the header template completely encloses all of the input* *images in their entirety. If parts of input images are "chopped off"* *by the header template, the background correction will be affected. We* *recommend you use an expanded header for the reprojection and* *background modeling steps, returning to the originally desired header* *size for the final coaddition. The default background matching assumes* *that there are no non-linear background variations in the individual* *images (and therefore in the overlap differences). If there is any* *uncertainty in this regard, it is safer to turn on the "level only"* *background matching (the "-l" flag in mBgModel.*

## COPYRIGHT

*2001-2015 California Institute of Technology, Pasadena, California*

*If your research uses Montage, please include the following* *acknowledgement: "This research made use of Montage. It is funded by* *the National Science Foundation under Grant Number ACI-1440620, and* *was previously funded by the National Aeronautics and Space* *Administration's Earth Science Technology Office, Computation* *Technologies Project, under Cooperative Agreement Number NCC5-626* *between NASA and the California Institute of Technology."*

*The Montage distribution includes an adaptation of the MOPEX algorithm* *developed at the Spitzer Science Center.*
