Download Cactus
License
The Cactus Code is (C) Copyrighted by the individual Authors and distributed under the GNU Lesser General Public License. Most of the computational packages that come with it follow this license, but the authors of any thorn are free to follow any licensing they deem appropriate as long as they state it explicitly in their thorn distribution.
Getting the Code
Cactus is maintained using CVS (Concurrent Versions System). The preferred method is to use the GetCactus script along with a thornlist as described below. We maintain a page of basic thornlists, or you can use your own customized thornlist.
Save the checkout script with the name GetCactus.
To checkout the flesh only (compiling the flesh alone will not allow
you to run any applications), type the below and follow the
instructions:
chmod a+x GetCactus
./GetCactus
To checkout an application version of Cactus, choose and save
a ThornList, or provide one to
your own needs, and issue the command:
./GetCactus <thornlist-name>
To add more Thorns to your Cactus, either use
the GetCactus script with a new Thorn List, or use the
below make target from within the Cactus distribution.
(Using GetCactus is preferred).
gmake checkout
CVS Repositories
Instead of using the GetCactus script, you can also check out Cactus using cvs commands. The main Cactus CVS Server (cvs.cactuscode.org) hosts several different repositories (explained CactusRepositories-HOWTO), including different repositories for the stable and development versions of Cactus.
To checkout flesh and Thorns for the stable release, move to the directory where the Cactus installation should be made. (For the latest development version of Cactus, use /cactusdevcvs instead of /cactus everywhere below).
Login to the CVS server, the <user name>
is cvs_anon and the password is anon (unless
you have a CVS account on our server in which case you can
alternatively use your own username and password).
cvs -d :pserver:<user name>@cvs.cactuscode.org:/cactus login
Check out the Cactus flesh:
cvs -d :pserver:<user name>@cvs.cactuscode.org:/cactus checkout Cactus
Move to the arrangements directory of the Cactus installation and
install the required arrangements and thorns:
cd Cactus/arrangements
If you are using thorns other than those in the standard Cactus
distributions you will need to know the details for downloading or
checking them out. Here we just describe checking out from the
Cactus distribution.
To checkout complete arrangements (e.g. see our standard
ThornLists):
cvs -d :pserver:<user name>@cvs.cactuscode.org:/cactus checkout <arrangement>
To checkout individual thorns (e.g. see our
standard ThornLists):
cvs -d :pserver:<user name>@cvs.cactuscode.org:/cactus checkout <arrangement>/<thorn>
Requirements
The Cactus Code is very portable. The requirements section of the User's guide contains a list of the specific requirements, but basically, the code needs some freely available utilities (gmake, Perl) and an ANSI C/C++ compiler for building the flesh infrastructure. The core computational toolkit thorns are mainly written in C (with a couple of exceptions in C++). Some application or example thorns also require a Fortran 90 compiler although you only need F77 to run the tutorial. The drivers shipped in the current release use the Message Passing Interface (MPI) for parallelization of the code across multiple processors or machines. Both native and freely available (e.g. MPICH, LAM) implementations are supported.
