First, you will need to install julia (see below for instructions).
Create a folder to hold your julia
ACE project, and
cd into the fodler. This folder will track the packages and versions which the
ACE1pack code requires. For example:
mkdir ~/ACE1project cd ~/ACE1project
From within this folder type
julia to enter the Julia REPL. Then run
using Pkg; Pkg.activate("."); pkg"registry add https://github.com/JuliaRegistries/General"; pkg"registry add https://github.com/JuliaMolSim/MolSim.git"; pkg"add ACE1pack, ACE1, JuLIP, IPFitting, ASE"
Before working on an ACE1 project in the
ACE1project folder you will need to activate the Julia environment you just created in that folder. This can be done by starting julia with
julia --project=pathtoproject, or from the package manager, or by exporting the environment variable
JULIA_PROJECT set to the path to this folder. For example,
export JULIA_PROJECT=~/ACE1project. <!– You can add this to your
.bash_profile and not touch it again. –>
We use a wrapper called
pyjulip to call julia and evaluate ACE potentials. In a terminal, with the correct julia project and python environment selected, run the following code:
python -m pip install julia python -c "import julia; julia.install()"
Make sure to use the correct python and pip, e.g. the ones that are in the correct Conda environment. Then, to set up
git clone https://github.com/casv2/pyjulip.git cd pyjulip pip install .
If you have any difficulties with the following setup process, please file an issue. We highly recommend familiarizing oneself with the Julia package manager and how Project management is best done in Julia (there is also a summary in this section of these docs). In particular all projects should manage their own
Project.toml file with appropriate version bounds, and where appropriate the
Manifest.toml file can be tracked in order to guarantee reproducibility of results.
Download and unpack Julia. We recommend v1.6 or upwards. Add the
julia executable to your path with something like
Start the Julia REPL (type
julia followed by Enter), switch to package manager by typing
], then install the General registry and the
registry add https://github.com/JuliaRegistries/General registry add https://github.com/JuliaMolSim/MolSim.git
Press Backspace or
Ctrl-c to exit the package manager. Use
exit() followed by Enter, to close the Julia REPL.
Create a folder for your new project and change to it. Start the Julia REPL and activate a new project by switching to the package manager with
], and then running
Now you can install
ACE1pack. Remaining in the package manager, use
you will also need to add the following packages:
ACE1, JuLIP, IPFitting, ASE.
When returning to a project, there are several methods for reactivating it. One is to simply
activate . in the package manager, as above. Alternatively set the
JULIA_PROJECT environment variable to the directory with
Project.toml before starting julia, or call julia as
julia --project=<dir>. Special syntax like
julia --project=@. searches the current directory and its parents for a
- On some systems
ASE.jl(a dependency of
IPFitting.jl) is unable to automatically install python dependencies. We found that installing Anaconda and then pointing
PyCall.jlto the Anaconda installation (cf PyCall Readme) resolves this. After installing Anaconda, it should then be sufficient to build
- If you cannot use Anaconda python, or if the last point failed, then you can try to install the python dependencies manually before trying to build
ASE.jlagain. Specifically, it should be sufficient to just install the ase package. Please follow the installation instructions on their website.