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.