The FPOSS Software

What is FPOSS ?

The Fibre Positioner Observation Support Software (FPOSS) is the fibre configuration program for the preparation of FLAMES observations. It takes as input a file containing a list of target objects and generates a configuration in which as many fibres as possible are allocated to targets according to the selected fibre allocation algorithm, allowing for the various instrumental constraints and specified target priorities. It produces an output file containing a list of allocations of fibres to targets, the so-called target setup file. Such file(s) must be attached to FLAMES Observation Blocks (OBs) created with p2 (except for ARGUS-fast acquisition mode). An example FPOSS setup file (which can be useful for simulations in p2 for Phase 1 proposal preparation) is provided below.

Current Version: FPOSS-P101 [INS.OSS.VER=revision=290518]

This version is identical to the previous version used in Period 99 (P99/290518) except it has been packaged for "modern" package management systems (RPMs, DEBs & MacPorts). The P99/290518 version is essentially identical to the previous releases (P98/284998) except it has been modified for full 64-bit native Linux compatibility.

Compared to the version prior to that (version 1.42) these newer versions implement the updated Guide and Acquisition Camera brightness limits applicable since P77, and handle the proper motion correctly.

You may continue to use the P99 version if you prefer not to upgrade, but if you have the P98 version you must upgrade.

In general, we recommend that you upgrade to the latest version.

Supported Platforms

The current version of the FPOSS has been validated for use on various Linux distributions (including Scientific Linux, Fedora, openSuse and Ubuntu), including BOTH 32-bit AND 64-bit systems and for macOS (versions 10.7 – 10.13).

ESO Mac & Linux software repositories

FPOSS is now available via the ESO Software repositories for macOS, Fedora 20+, Scientific Linux 7,  (if you have already installed ESO pipelines via RPM or Macports, you already have these repositories enabled). We are also supporting on an experimental (meaning best-effort-support) basis CentOS 7, Redhat Enterprise 7 and Ubuntu LTS plus 17 repositories.

To install the relevant repository, please follow the relevant instructions at ESO Mac & Linux software repositories, in the final instruction for each OS/distribution replace the generic <package_name> with eso-flames-fposs. i.e. one of the following, as appropriate for your OS/distribution:

sudo port install eso-flames-fposs
sudo dnf install eso-flames-fposs
sudo yum install eso-flames-fposs
sudo apt-get install eso-flames-fposs


Important note for macOS users: In case you already installed FPOSS via MacPorts for P99 or P100, please remove that version first BEFORE installing this new version, see instructions here. Upgrade from the P99/P100 version is not necessary, but it is recommended.

To test/verify your installation, click to the instructions here.

In case your OS/distribution is not supported by the ESO repositories, then installation via the binary tarball is still supported for Linux systems. Click here to jump to the 64bit Linux instructions. Click here to jump to the 32bit Linux instructions.

Tarball installation on 64-bit systems

The Linux FPOSS binary distribution also depends on TCL/TK libraries, version 8.5 for the 64-bit version and version 8.4 for the 32-bit version. Most modern distributions however no longer support either of these versions, e.g. for Fedora 21 and newer, the default version of TCL/TK either always was (Fedora 22 and above) or has since become 8.6. The Linux instructions below thus include "installation" of the TCL/TK libraries included in the binary distribution tarballs.

Please follow the instructions below to insure that the relevant software packages are installed on your computer before trying to install FPOSS.

RPM based distributions (e.g. Fedora, Redhat, Scientific Linux)

You no longer need to install 32-bit compatibility libraries as required for previous versions. You will need make sure the other required libraries and X11 fonts are already installed. 

Assuming you have administrator privileges, then in a terminal execute the following command:

sudo yum install glibc libX11 xorg-x11-fonts-100dpi.noarch xorg-x11-fonts-75dpi.noarch libXScrnSaver

Package names and installer commands may vary depending on the distribution, for example on OpenSuse, use:

sudo zypper install glibc libX11-6 libxss1 xorg-x11-fonts

Debian-Pkg based distributions (e.g. Debian, Ubuntu)

You no longer need to install 32-bit compatibility libraries as required for previous versions. You will need make sure the other required libraries and X11 fonts are already installed.

Assuming you have administrator privileges, then in a terminal execute the following command:

sudo apt-get install libc6 libx11-6 xfonts-100dpi xfonts-75dpi

Expert Users: Ubuntu distributions (even the latest (at the time of writing) 16.04.1) do support TCL/TK 8.5 as well as 8.6, so you can install the system TCL/TK 8.5 and FPOSS will use it though you have to take care with tclsh to make sure that FPOSS sees the 8.5 version and not the 8.6 version.

FPOSS Installation Procedure

To install FPOSS for Linux, you will need to retrieve the tarball for your operating system, unpack and install it. If you needed to install any of the X11 packages as described above, then you probably need to logout and log back in before trying to run FPOSS, so you may as well do that now.

The FPOSS installation will by default install the software into several subdirectories of your home directory, but since there is no uninstall script, removing it at a later date can be non-trivial. We therefore recommend the following installation procedure (which will facilitate removal/upgrading at a later date):

/bin/bash
mkdir -pv $HOME/FPOSS/P99
cd $HOME/FPOSS/P99
wget ftp://ftp.eso.org/pub/usg/fposs/P99/fpossLIN64_P99.tar.gz
export HOME=$(pwd)
tar -zxvf fpossLIN64_P99.tar.gz
./fposs_install.sh -r
cd bin
pwd

Prepend the path reported by the final command above to your shell PATH variable.

If you don't have wget installed (and don't want to install it) then download the 64bit tarball from here fpossLIN64_P99.tar.gz [5.4 Mbytes compressed] and save it in the $HOME/FPOSS/P99 as above.

Expert Users: If you have a Linux distribution which does support TCL/TK 8.5 (or happen to have TCL/TK 8.5 installed on your system and want FPOSS to use that version), then remove the '-r' command line option from the installation command above, i.e.

./fposs_install.sh

Once you have successfully started FPOSS as described above, then you should (in the same window as you performed the above commands) do the following to double check that everything is correctly installed:

exit
$HOME/FPOSS/P99/bin/fposs.sh

If this also works then you should perhaps update your login configuration file (.bashrc for bash, .tcshrc or .cshrc for tcsh, etc) to append or prepend ${HOME}/FPOSS/P99/bin to your PATH environment variable (and possibly remove the PATH to an older version), e.g. for bash the line to add would be something like:

export PATH=${PATH}:${HOME}/FPOSS/P99/bin

Once you have done this you can then start FPOSS as follows:

fposs.sh

 
See the section below incase you wish to remove FPOSS.
 
Important: Avoid saving any input or output files into the $HOME/FPOSS/P99/bin directory or subdirectories there-of, as you may delete this directory completely at some future point in time if/when FPOSS is updated.

Tarball installation on 32-bit systems

The Linux FPOSS binary distribution also depends on TCL/TK libraries, version 8.5 for the 64-bit version and version 8.4 for the 32-bit version. Most modern distributions however no longer support either of these versions, e.g. for fedora 21 and newer, the default version of TCL/TK either always was (fedora 22 and above) or has since become 8.6. The Linux instructions below thus include "installation" of the TCL/TK libraries included in the binary distribution tarballs.

Please follow the relevant instructions below to insure that the relevant software packages are installed on your computer before trying to install FPOSS.

RPM based distributions (e.g. Fedora, Redhat, Scientific Linux)

You will need make sure the required libraries and X11 fonts are already installed. Assuming you have administrator privileges, then in a terminal execute the following command:

sudo yum install glibc libX11 xorg-x11-fonts-100dpi.noarch xorg-x11-fonts-75dpi.noarch libXScrnSaver

Debian-Pkg based distributions (e.g. Debian, Ubuntu)

You will need make sure the required libraries and X11 fonts are already installed. Assuming you have administrator privileges, then in a terminal execute the following command:

sudo apt-get install libc6-i386 libx11-6 libxss1 xfonts-100dpi xfonts-75dpi

Installation Procedure

To install FPOSS, you will need to retrieve the tarball for your operating system, unpack and install it. If you needed to install any of the X11 packages as described above, then you probably need to logout and log back in before trying to run FPOSS, so you may as well do that now.

The FPOSS installation will by default install the software into several subdirectories of your home directory, but since there is no uninstall script, removing it at a later date can be non-trivial. We therefore recommend the following installation procedure:

/bin/bash
mkdir -pv $HOME/FPOSS/P99
cd $HOME/FPOSS/P99
wget ftp://ftp.eso.org/pub/usg/fposs/P99/fpossLIN64_P99.tar.gz
export HOME=$(pwd)
tar -zxvf fpossLIN32_P99.tar.gz
./fposs_install.sh
bin/fposs.sh -f fpossLIN32/test/M67.fld -ut '2017 01 01.5'

FPOSS should start up and load up the example FLD file for M67 after the last command above and the following text should be displayed in the terminal window:

+------------------------------------------------------------------------------+
|  W E L C O M E     T O     F P O S S                                         |
| ------------------------------------                                         |
|                                                                              |
|  revision     :     290518                                                   |
|  last checkin : 2016-11-24 GD 15:14:57 UT                                    |
|  now is       : 2016-12-15 GD 11:30:00 UT                                    |
+------------------------------------------------------------------------------+

(though of course the "now is" date should be different). If FPOSS doesn't startup, or if the revision number is not the one shown above please double check you followed all the steps described above exactly, and once you have done that and if it is still failing, please contact ESO User Support. This is best done by clicking on the link “Ask for help” within the User Portal (in the Help card), or sending an e-mail to usd-help@eso.org.

If you don't have wget installed (and don't want to install it) then download the 64bit tarball from here fpossLIN32_P99.tar.gz [5.9 Mbytes compressed] and save it in the $HOME/FPOSS/P99 as above.

Expert Users: If you have a Linux distribution which does support TCL/TK 8.4 (or happen to have TCL/TK 8.4 installed on your system and want FPOSS to use that version), then remove the '-r' command line option from the installation command above, i.e.

./fposs_install.sh

Once you have successfully started FPOSS as described above, then you should (in the same window as you performed the above commands) do the following to double check that everything is correctly installed:

exit
$HOME/FPOSS/P99/bin/fposs.sh

If this also works then you should perhaps update your login configuration file (.bashrc for bash, .tcshrc or .cshrc for tcsh, etc) to append or prepend ${HOME}/FPOSS/P99/bin to your PATH environment variable, e.g. for bash the line to add would be something like:

export PATH=${PATH}:${HOME}/FPOSS/P99/bin

Once you have done this you can then start FPOSS as follows:

fposs.sh

See the section below incase you wish to remove this version of FPOSS (or an older version).

Important: Avoid saving any input or output files into the $HOME/FPOSS/P99/bin directory or subdirectories there-of, as you may delete this directory completely at some future point in time if/when FPOSS is updated.

Removing the Tarball version of FPOSS

If you no longer need FPOSS, the software can then be removed by simply by deleting the FPOSS directory and all sub-directories, for example, assuming you followed the instructions above:

rm -fr ${HOME}/FPOSS/P99

To remove an older version (e.g. P99) installed according simliar instructions:

rm -fr ${HOME}/FPOSS/P98

if you wish to completely remove all trace of FPOSS:

rm -fr ${HOME}/FPOSS

Test/Verify

To test/verifiy your installation, execute:

fposs.sh -f /opt/local/share/fposs/test/M67.fld -ut '2017 01 01.5'

FPOSS should start up and load up the example FLD file for M67 after the last command above and the following text should be displayed in the terminal window:

+------------------------------------------------------------------------------+
|  W E L C O M E     T O     F P O S S                                         |
| ------------------------------------                                         |
|                                                                              |
|  revision     :     290518                                                   |
|  last checkin : 2016-11-24 GD 15:14:57 UT                                    |
|  now is       : 2016-12-15 GD 11:30:00 UT                                    |
+------------------------------------------------------------------------------+

(though of course the "now is" date should be different). If FPOSS doesn't startup, or if the revision number is not the one shown above please double check you followed all the steps described above exactly, and once you have done that and if it is still failing, please contact ESO User Support. This is best done by clicking on the link “Ask for help” within the User Portal (in the Help card), or sending an e-mail to usd-help@eso.org.

Removing FPOSS

If you no longer need FPOSS, the software can then be removed with a simple MacPort/DNF/YUM/APT command, i.e. one of the following, as appropriate for your OS/distribution:

sudo port uninstall eso-flames-fposs
sudo dnf remove eso-flames-fposs
sudo yum remove eso-flames-fposs
sudo apt-get remove eso-flames-fposs 

Previous version(s) of FPOSS already installed via MacPorts

If you already have a previous version(s) of FPOSS installed the above installation procedure will install the new version, deactivate the previous version and activate the new version.

To see all versions installed, do:

sudo port installed | grep flames-fposs

To activate an older version, e.g. the P98 version, do:

sudo port activate flames-fposs @98.0_1+x11

To remove a specific version, e.g. the P98 version, do:

sudo port uninstall flames-fposs @98.0_1+x11

Note that if you install the P99 version on top of the P98 version, then activate the P98 version, then delete the P98 version, you will then need to activate the P99 version before you will be able to use FPOSS again.


FPOSS Users' Manual

  • FPOSS User Manual (on the FLAMES documentation web page) The User Manual includes a step-by-step demonstration of using the software.

Please also check further the FPOSS Requirements and Recommendations

FPOSS Example setup file

As part of preparing a proposal, you may want to use p2 to get an accurate idea of the execution time for different OB configurations. In order to calculate the execution time, p2 must have an FPOSS setup file attached to the acquisition template, but you may not want go through the (non-trivial) process of installing the FPOSS software and creating an FPOSS setup, just to prepare the proposal. In that case download the FPOSS setup file below and attach that to your OBs for the purposes of experimenting with OB execution times. It doesn't matter that the setup below is probably not the instrument mode you wish to use, the execution time calculated by p2pp is independent on the details of the setup (except when you use the argfast template, but then you don't need an FPOSS setup file in order to be able to compute the OB execution time).
 
 

Instrument selector

This page is specific to FLAMES