Usage instructions

There are two main ways to use fcmaker. You can either execute the module as a script using the following entry point:


or you can import the module and execute it within a script, i.e.:

>>> import fcmaker
>>> fcmaker.make_fc( ... ) # or fcmaker.make_fc_local ( ... )

When running fcmaker as a script, any argument you feed it is pretty much sent to the underlying functions make_fc() and make_fc_local(). For simplicity, this page only discusses how to run the entire module as a script, which ought to be slightly more friendly to users not (yet!) familiar with Python. Still, the hope is that after reading this page, the use of the functions make_fc() and make_fc_local() shouldn’t be too mysterious. Also, don’t forget the built-in help:

>>> import fcmaker
>>> help(fcmaker.make_fc)

1: creation of a finding chart for a single OB on p2

In its most basic mode, fcmaker connects to p2 and creates the finding chart for a given OB Id. To do so, simply type in a terminal:


You will be prompted for your p2 username, password, and the ID of the observing block to process. fcmaker will create two folders fcm_data and fcm_plots at your current location, where it will store the background image and the finding chart. Once the finding chart has been generated, it will either be attached to the OB directly (if the OB contains no pre-existing chart), or you will be asked to select an upload slot (occupied, or not). Note that an OB cannot contain two finding charts with the same name!

If you get fed up with typing your p2 username and/or the OB id repeatedly, you can specify them directly when calling fcmaker:

fcmaker --p2uid jdoe --obid 12345678

2: creation of a finding chart for a single OB on p2demo

If you simply want to experiment with p2 and/or fcmaker, you can use the p2demo server to create mock OBs. In that case, simply use the --demo flag to tell fcmaker that you want to connect to the tutorial account on the demo server:

fcmaker --demo

You will only be prompted for the ID of the observing block to process.

3: creation of finding charts for many OBs on p2 (with upload)

If you have a lot of finding charts to create, fcmaker allows for batch processing. First, create a text file p2_2_fcm.params.txt (the actual filename is flexible) with the following structure:

p2uid:                       # p2 username (will ask at prompt if left blank)
pswd:                        # p2 password (will ask at prompt if left blank)
obids:     [1234567,7654321] # List of Ob IDs to chart
bk_images: [SDSSr, None]     # SkyView survey, None for default, Gaia, or local FITS filename
bk_lams:   [None,None]       # Lambda of the chart (SkyView will override), None for default
data_loc:  fcm_data          # Relative path to the background images (local FITS file or SkyView images) 
plot_loc:  fcm_plots         # Relative path to store the finding charts 

Then, feed it to fcmaker with the -f flag:

fcmaker -f p2_2_fcm.params.txt

In doing so, fcmaker will connect to p2 and process all the OBs listed. Note that for each finding chart, you will still need to manually specify whether you want to upload it to p2 (or not) if the OB already contains at least 1 finding chart.

4: creation of finding charts for many OBs on p2 (no upload)

You can fully automate the creation of many finding charts if you include the --no-upload flag. In that case, fcmaker will never attempt to upload anything to p2, and only save the image files locally:

fcmaker --no-upload -f p2_2_fcm.params.txt

6: specifying observing dates and times

For targets with large proper motions, one can provide the expected year, (month, day, …!) of the observation to create an accurate finding chart, using the --obsdate flag. This also works for OBs that have Ephemeris files. For example:

fcmaker -f --obsdate 2018
fcmaker -f --obsdate 2018-05
fcmaker -f --obsdate 2018-05-17 14:34:57 UTC

Finding charts for moving targets get automatically tagged with the symbol \(\leadsto\).

7: creation of finding charts locally (without p2)

fcmaker can also create finding charts locally, without the need to have an OB present on p2 first (fcmaker will still require an internet connection, though!). To do so, one first needs to specify the basic OB parameters in a text file (in essence, a stripped-down version of a full OBX file). Here are templates for all supported instruments:

The file is then fed to fcmaker with the -f flag, together with the --local flag to indicate that it is a local run:

fcmaker --local -f local_2_fcm.muse.txt
fcmaker --local -f local_2_fcm.hawki.txt
fcmaker --local -f local_2_fcm.xshooter.txt
fcmaker --local -f local_2_fcm.espresso.txt

fcmaker will create the associated finding chart, store it where specified, and exit.

8: the background images

With the exception of MUSE NFM and ESPRESSO finding charts (see Mock Gaia images for MUSE NFM), fcmaker relies on astroquery.skyview to download background images for the finding charts (unless a local FITS file is provided by the user, see Using local FITS files). To display the full list of surveys available, type in a Python shell:

from astroquery.skyview import SkyView

The default background survey images for the instruments supported by fcmaker are as follows:

  • MUSE WFM: DSS2 Red

  • HAWKI: 2MASS-J, 2MASS-H and 2MASS-K for filters J, H, K, and 2MASS-H for all other filters



From an operational perspective, when using Skyview images, I would strongly recommend to only use DSS2 Red or SDSSr for optical instruments, and 2MASS-J, 2MASS-H or 2MASS-K for IR instruments.

Using local FITS files

Users interested in providing their own background image can do so (for the left-hand-side plot) via the --bk-image and --bk-lam parameters. The former specifies the filename, assuming that the FITS file is placed in the --data-loc directory (default: ./fcm_data/). The latter allows the user to specify the text to be displayed on the chart. To meet ESO’s requirements, this text should specify the wavelength of the image:

fcmaker --p2uid joe --obid 12345678 --bk-image my-file.fits --bk-lam 450-550nm (HST)

See the Gallery (MUSE NFM) for an illustration of this approach.

Mock Gaia images for MUSE NFM

DSS2 Red background images are not well suited for MUSE NFM finding charts, given the small field-of-view of 7.5x7.5 square arcsec of this mode, or for ESPRESSO finding charts, given the brightness of the targets. To circumvent this issue, fcmaker can create pseudo sky images from the Gaia catalogue, via the fcmaker_plots.make_gaia_image() function. By default, the image is created with a pixel size of 25 mas for MUSE NFM (the pixel size) and 50 mas for ESPRESSO. Each star is plotted as a 2D gaussian with a FWHM of 80 mas for MUSE NFM (typical to the image quality achieved in normal operations) or 0.6 arcsec for ESPRESSO (typical V-band seeing), and scaled in intensity as a function of its Gaia flux. The proper motion of each star is propagated up to the OB observing date (requested by the user with the --obsdate parameter; default = chart creation time). The resulting image is saved as a fully-fledged FITS file at the --data-loc location (default: ./fcm_data/).

See the Gallery (MUSE NFM) for an illustration of the benefit of these mock Gaia images.

The fcmaker flags

Here are all the flags that allow to fine-tune the way fcmaker works. They are:

  • --help,-h : prints the basic help

  • --version : prints the fcmaker version

  • --p2uid username: p2 user ID

  • --obid 12345678: Observing Block ID on p2

  • --demo: Connects to the p2demo site rather than the production site. Overrides p2uid and pswd.

  • -f filename: specify a parameter filename

  • --obsdate YYYY-MM-DD hh:mm:ss TZ : allows to specify the observing date (and time, and time zone), in case of large proper motions or moving target. Assuming UTC by default.

  • --bk-image filename.fits: a FITS filename for the background image. Must be stored in --data-loc.

  • --bk-lam some text: specifies the wavelength of the background image.

  • --do-pdf : tells fcmaker to save a .pdf version of the finding chart (in addition to the jpg one).

  • --do-png : tells fcmaker to save a .png version of the finding chart (in addition to the jpg one).

  • --do-parang: forces the drawing of the instrument field-of-view when a parallactic angle is set. This will be accurate, but very time-dependant!

  • --data-loc path/to/folder: relative path to store the downloaded data (default: ./fcm_data)

  • --plot-loc path/to/folder: relative path to store the finding charts (default: ./fcm_plots)

  • --no-upload : tells fcmaker never to try to upload the finding chart(s) to p2.

  • -l or --local: flags the parameter file as a local OB definition

  • --montage : will use Montage, to force the finding charts to be rotated North (soon to be retired).

  • --systemtex : will use the system-wide LaTeX, rather than the matplotlib one. Finding charts will be prettier. [encouraged!]

  • --clear-SkyView-cache : does as it says. Note that the SkyView cache is not the same as the fcm_data folder in which fcmaker stores the downloaded FITS files.

For example, if you want to boost the aesthetic appeal of your finding charts with the exquisite Computer Modern Bright sans-serif font (why wouldn’t you?), try:

fcmaker --systemtex