Installing SCIFYsim

Prerequisites

Managing your environments through conda is highly recommended.

Currently, the develop branch is tested for python 3.12, with numpy 2.0 and scipy 1.14.0.

If you are still on numpy < 2.0, use the master branch.

Quick install

The quickest way to install SCIFY

conda install git pip
pip install git+https://github.com/rlaugier/kernuller
pip install git+https://github.com/fmartinache/xaosim
pip install git+https://github.com/rlaugier/SCIFYsim@develop

Note that the installation of xaosim cand pose problems on windows, and will not have all functionality. However it should still be sufficient to run SCIFYsim.

For more control you can install from a local clone of the repo using the classical approach described in the following section:

Kernuller

You can obtain kernuller from its github page.

git clone https://github.com/rlaugier/kernuller
cd kernuller
python setup.py install

XAOSIM

You can obtain xaosim from its github page

git clone https://github.com/fmartinache/xaosim
cd xaosim
python setup.py install

Warning

The xaosim fails to install on windows, but the part that is problematic is not used in SCIFYsim. If you encounter a problem here, open the setup.py file, remove the line that stars with data_files and try again.

Installing SCIFYsim

Installation procedure is similar:

git clone https://github.com/rlaugier/scifysim
cd SCIFYsim
python setup.py install

Setting up a workspace

Recommended workspace setup:

└── working_directory
          ├── local_config
          │   ├── default_R200.ini
          │   └── vega_R200.ini
          ├── log
          └── my_work.ipynb

Log directory

SCIFYsim uses a automated logging system. It will require a log directory in your working directory.

Config files

SCIFYsim uses config files. You can get started by copying one of the default config files in SCIFYsim/scifysim/config into your working directory. You will have to refer to it explicitly in your source code.

Config files are standard .ini files but use comments with #. They have sections marked by [] and the parameters use keys. The different organs of the simulator often keep in self.config the reference to the parsed config file that was used to create them. You can access their content by

  • self.config.get("section", "key") for strings

  • self.config.getint("section", "key") for integers

  • self.config.get_array("section", "key") for arrays

  • self.config.getboolean("section", "key") for booleans

Photometry reference

SCIFYsim uses references to Vega to compute photometry in a relevant manner. Therefore you need a to maintain a vega config file up to date that uses the same instrumental configuration.