Installation
Installation within the PROTEUS framework
If used within PROTEUS, SOCRATES is installed alongside other modules following the PROTEUS installation guide. It can also be installed within the atmosphere models AGNI or JANUS, as outlined in Installing via other frameworks. Use the instructions below if you would like a standalone version of SOCRATES on your system.
Supported platforms
- Linux (x86_64 / AMD64): Ubuntu, Fedora, RedHat, CentOS, Arch, Debian
- macOS (ARM64 / Apple Silicon)
Older Intel-based Mac systems and Linux running on ARM64 architectures are not currently supported.
Software requirements
The following tools must be available on your system before installing SOCRATES:
- gfortran
- netCDF
- netCDF-Fortran
- make
- cmake
- wget
- curl
- unzip
Standalone install
- Clone SOCRATES from GitHub:
git clone https://github.com/FormingWorlds/SOCRATES.git - Change into the new directory:
cd SOCRATES - Configure the installation:
./configure - Compile the code:
./build_code
Setting RAD_DIR
SOCRATES needs the location of its root directory, referred to as RAD_DIR, available as
an environment variable. Run the following commands from inside the SOCRATES directory.
To set this temporarily, for the current terminal session only:
export RAD_DIR=$(pwd)
To set this permanently:
echo "export RAD_DIR=$(pwd)" >> ~/.bashrc
source ~/.bashrc
echo "export RAD_DIR=$(pwd)" >> ~/.zshrc
source ~/.zshrc
Setting FWL_DATA (optional)
FWL_DATA is the directory where PROTEUS shared data files, including spectral files, are
stored. Choose a location with sufficient disk space.
To set this temporarily:
export FWL_DATA=/path/to/fwl_data
To set this permanently:
echo 'export FWL_DATA=/path/to/fwl_data' >> ~/.bashrc
source ~/.bashrc
echo 'export FWL_DATA=/path/to/fwl_data' >> ~/.zshrc
source ~/.zshrc
Spectral files will be downloaded into $FWL_DATA/spectral_files/.
Set up a Python environment (optional)
An easy way to work with SOCRATES is by accessing it via Python, which requires a Python installation with additional dependencies. If you have Conda installed, create a clean environment and install the required dependencies:
conda create -n socrates python=3.12 -y
conda activate socrates
pip install -r python/requirements.txt
Installing via other frameworks
This SOCRATES fork is most commonly used as a component of a larger framework rather than installed standalone. Installation instructions for these are available in their respective documentation:
- PROTEUS framework: see installing SOCRATES within PROTEUS
- AGNI atmosphere model, which provides a
get_socrates.shscript to automate this installation process - JANUS atmosphere model: see installing SOCRATES within JANUS