How to install deal.II: Difference between revisions
No edit summary |
No edit summary |
||
| (22 intermediate revisions by the same user not shown) | |||
| Line 7: | Line 7: | ||
<BR><HR> |
<BR><HR> |
||
Deal.II is an open Finite Element Method (FEM) code. website http://www.dealii.org/. Here we explain how to install it on the Sherlock cluster |
Deal.II is an open Finite Element Method (FEM) code. For detailed description of the code and tutorials, you can refer to their offical website http://www.dealii.org/. Here we explain how to install it on the [http://sherlock.stanford.edu/mediawiki/index.php/Main_Page Sherlock cluster]. |
||
==System Requirements== |
|||
The installation of Deal.II requires cmake 3.2 and up, openmpi/1.10.2/gcc and gcc/4.8.1. They have been pre-installed as modules on the cluster, to load them, you can type the following commands on your terminal. |
|||
module load cmake/3.2.2 |
|||
module load gcc/4.8.1 |
|||
module load openmpi/1.10.2/gcc |
|||
Or you can paste the above three lines into your ~/.bashrc file, and type |
|||
source ~/.bashrc |
|||
| ⚫ | |||
| ⚫ | |||
The below webpages would be useful when you are new to using the clusters. |
|||
Assuming you want to install the package in the home directory of group's shared space, you can firstly go to the folder by typing |
|||
cd /shared/PI/caiwei |
|||
https://www.stanford.edu/group/hpcc/cgi-bin/mediawiki/index.php/Main_Page |
|||
From there, you can directly clone the package from Github. |
|||
https://www.stanford.edu/group/hpcc/cgi-bin/mediawiki/index.php/I%27m_new_%26_don%27t_know_what_to_do |
|||
git clone https://github.com/dealii/candi |
|||
Now you should have a folder called '''candi'''. The next step is to go into the folder and update the following two configuration files [[Media:candi.cfg.txt|candi.cfg]] and [[Media:dealii.package.txt|dealii.package]]. |
|||
https://www.stanford.edu/group/hpcc/cgi-bin/mediawiki/index.php/New_to_Cluster_Computing |
|||
cd /shared/PI/caiwei/candi |
|||
wget -O candi.cfg http://micro.stanford.edu/mediawiki/images/1/1e/Candi.cfg.txt |
|||
cd /shared/PI/caiwei/candi/deal.II-toolchain/packages |
|||
wget -O dealii.package http://micro.stanford.edu/mediawiki/images/a/aa/Dealii.package.txt |
|||
Notice in '''candi.cfg''', there is one line that specifies the installation path, |
|||
PREFIX_PATH=/share/PI/caiwei/dealii/ |
|||
This needs to be modified if you intend to install the package in other places. |
|||
== Installation == |
|||
The installation is straight forward, but it may take up to 3 hours. To make sure it is not killed by the scheduler, you may submit a device allocation request for a relatively long time. |
|||
sdev -t 4:00:00 -p mc |
|||
When you get the node, the following automated script can guide you through the installation process. |
|||
cd /shared/PI/caiwei/candi |
|||
./candi.sh --platform=deal.II-toolchain/platforms/supported/centos7.platform |
|||
The program starts with a couple of checks, where you only need to press the '''Enter''' button to continue. Then, the [https://trilinos.org/ trilinos] library will be installed, which the Deal.II package depends on (Another choice is to use PETSc, but its installation is not demoed in this instruction). |
|||
If everything is installed successfully, at the end of the process, the following message will be popped up, which also contains the commands to load the Deall.II libraries. |
|||
dealii.git has now been installed in |
|||
/share/PI/caiwei/dealii/deal.II-v8.4.0 |
|||
To update your environment variables, use the created modulefile: |
|||
/share/PI/caiwei/dealii/configuration/modulefiles/default |
|||
If you are not using modules, execute the following command instead: |
|||
source /share/PI/caiwei/dealii/configuration/deal.II-v8.4.0 |
|||
To export environment variables for all installed libraries execute: |
|||
source /share/PI/caiwei/dealii/configuration/enable.sh |
|||
Build finished in 6377 seconds. |
|||
== Test == |
|||
A simple example can be used to test if the package is successfully installed. Type the following commands to compile and run the example. |
|||
cd /share/PI/caiwei/dealii/deal.II-v8.4.0/examples/step-1 |
|||
cmake . |
|||
make |
|||
make run |
|||
Once the program is finished, it generates the figures of two grids in .eps format. They look like |
|||
[[File:grid-1.jpg| grid-1.eps]] |
|||
[[File:grid-2.jpg| grid-2.eps]] |
|||
A comprehensive tutorial of Deal.II can be found on |
|||
https://www.dealii.org/8.4.0/doxygen/deal.II/Tutorial.html . |
|||
== Acknowledgement == |
|||
We appreciate the great help from Xiaoxuan Zhang, who is a Ph.D. student in Prof. Christian Linder's group at Stanford University. |
|||
Latest revision as of 20:21, 30 May 2017
How to install deal.II
Yanming Wang
May, 2017
Deal.II is an open Finite Element Method (FEM) code. For detailed description of the code and tutorials, you can refer to their offical website http://www.dealii.org/. Here we explain how to install it on the Sherlock cluster.
System Requirements
The installation of Deal.II requires cmake 3.2 and up, openmpi/1.10.2/gcc and gcc/4.8.1. They have been pre-installed as modules on the cluster, to load them, you can type the following commands on your terminal.
module load cmake/3.2.2 module load gcc/4.8.1 module load openmpi/1.10.2/gcc
Or you can paste the above three lines into your ~/.bashrc file, and type
source ~/.bashrc
Setup
Assuming you want to install the package in the home directory of group's shared space, you can firstly go to the folder by typing
cd /shared/PI/caiwei
From there, you can directly clone the package from Github.
git clone https://github.com/dealii/candi
Now you should have a folder called candi. The next step is to go into the folder and update the following two configuration files candi.cfg and dealii.package.
cd /shared/PI/caiwei/candi wget -O candi.cfg http://micro.stanford.edu/mediawiki/images/1/1e/Candi.cfg.txt cd /shared/PI/caiwei/candi/deal.II-toolchain/packages wget -O dealii.package http://micro.stanford.edu/mediawiki/images/a/aa/Dealii.package.txt
Notice in candi.cfg, there is one line that specifies the installation path,
PREFIX_PATH=/share/PI/caiwei/dealii/
This needs to be modified if you intend to install the package in other places.
Installation
The installation is straight forward, but it may take up to 3 hours. To make sure it is not killed by the scheduler, you may submit a device allocation request for a relatively long time.
sdev -t 4:00:00 -p mc
When you get the node, the following automated script can guide you through the installation process.
cd /shared/PI/caiwei/candi ./candi.sh --platform=deal.II-toolchain/platforms/supported/centos7.platform
The program starts with a couple of checks, where you only need to press the Enter button to continue. Then, the trilinos library will be installed, which the Deal.II package depends on (Another choice is to use PETSc, but its installation is not demoed in this instruction).
If everything is installed successfully, at the end of the process, the following message will be popped up, which also contains the commands to load the Deall.II libraries.
dealii.git has now been installed in /share/PI/caiwei/dealii/deal.II-v8.4.0 To update your environment variables, use the created modulefile: /share/PI/caiwei/dealii/configuration/modulefiles/default If you are not using modules, execute the following command instead: source /share/PI/caiwei/dealii/configuration/deal.II-v8.4.0 To export environment variables for all installed libraries execute: source /share/PI/caiwei/dealii/configuration/enable.sh Build finished in 6377 seconds.
Test
A simple example can be used to test if the package is successfully installed. Type the following commands to compile and run the example.
cd /share/PI/caiwei/dealii/deal.II-v8.4.0/examples/step-1 cmake . make make run
Once the program is finished, it generates the figures of two grids in .eps format. They look like
A comprehensive tutorial of Deal.II can be found on https://www.dealii.org/8.4.0/doxygen/deal.II/Tutorial.html .
Acknowledgement
We appreciate the great help from Xiaoxuan Zhang, who is a Ph.D. student in Prof. Christian Linder's group at Stanford University.

