Wednesday, October 8, 2014

VULCAN-CFD tutorial 1 - Installation

Intro

The purpose of this tutorial is to document the steps for setting up VULCAN-CFD on Ubuntu or Ubuntu inside of Windows Virtual Box.  I personally have only a limited about of Linux and CFD experience, and there is practically no support for Vulcan online.  I'm posting here both for my record and for those who come after me.  Good luck.

For the following Virtual Box install, I'm using Ubuntu 12.04, Vulcan 6.3.0, openmpi 1.8.3, Virtualbox 4.3, and Windows 7.

For the following Ubuntu stand-alone install, I'm using I'm using Ubuntu 12.04, Vulcan 6.3.0, openmpi 1.8.4.

If you're wanting to install Vulcan in Windows, this tutorial does a fantastic job walking you through the process of setting up Ubuntu in Virtual Box.  Make sure you download the correct Ubuntu build (32/64 bit and version number).  To my knowledge, Ubuntu 12 is the last version that works with Vulcan.

If you're wishing to install Vulcan on a stand-alone Ubuntu install, worry not.  These directions will work for you as well.  Make sure you're using Ubuntu 12 instead of 14.  I don't believe Vulcan-CFD is compatible with Ubuntu 14 yet.

Initial Ubuntu Setup

The video below will walk you through the process.

Below here, I list all of the steps shown above in the video.
  • Update apt-get
sudo apt-get update
  • Install the following packages.  Make sure you're using the latest builds particularly with tcl8.5 and tk8.5.  
sudo apt-get install gfortran build-essential m4 flex g++ tcsh tcl8.5 tk8.5
  • Download and install openmpi, a program that allows for parallel processing.  Go to the Open-Mpi website (http://www.open-mpi.org/), and download the latest build.  Extract the files, and navigate and change the directory in terminal to the openmpi directory (e.g. cd ~/openmpi-1.8.4/ or whatever your directory is).  Execute the following two commands to install:
./configure F77=gfortran FC=gfortran
sudo make all install
  • Create the folder ~/Vulcan and extract your current version into that folder.  The full path to this directory should be ~Vulcan/Ver_6.3.0 or whatever the latest build is.  
  • Create/open the .tcshrc file (a customization file for tcsh) with the following command, copy and paste the following lines in (with any updates to the directories if necessary, and save.  
sudo gedit ~/.tcshrc

setenv LD_LIBRARY_PATH /usr/local/lib
source ~/Vulcan/Ver_6.3.0/Scripts/vulcan_config
source ~/Vulcan/Ver_6.3.0/Scripts/vulcan_config_gui
setenv TCLGRIDGPATH /
setenv TCLTECPLPATH /
setenv TCLPOSTPPATH /
set history=1000
  • Edit the vulcan config file:  ~/Vulcan/Ver_6.3.0/Scripts/vulcan_config, uncomment the following lines, and save.  This link has more details on this step.
Step 1:  setenv PLATf Linux_AMD_GFC_64
Step 2:  setenv VULCAN_comp_prec double_prec
Step 3:  setenv VULCAN_run_mode parallel_openmpi
Step 4:  setenv VULCAN_rmt_protocol ssh
Step 5:  (skip)
Step 6:  setenv VULCAN_METIS disable (this may be wrong)
Step 7:  (skip)
Step 8:   set mpi_cmnd = 'mpiexec -machinefile $vulcan_mpi_hst -n $num_cpus $vulcan_cmnd'
  • Edit the vulcan config gui file:  ~/Vulcan/Ver_6.3.0/Scripts/vulcan_config_gui, uncomment the following lines, and save.  This file sets up some of the vulcan front end and gui programs, but I've found these to be very buggy.  I also don't understand all of the inputs below.  I do the best I can, but I have no doubt that these aren't 100% correct.  I do, however, believe that whatever you put in here doesn't have a big influence on Vulcan's performance.  
Step 1:  setenv WHICHWISH /usr/bin/wish
Step 2:  (skip)
Step 3:  (skip)
Step 4:  (skip)
Step 5:  setenv TCLBROWSER /usr/bin/firefox
Step 6:  setenv TCLEDITOR  /usr/bin/gedit
Step 7:  (see below)
Step 7 here confuses me, and I'm not sure what to put in for each of these inputs.  I do my best, but I know I'm not doing this right.  
setenv VULCAN_sc_nodes_1 1  #(no. of sub-cluster nodes)
setenv VULCAN_sc_cores_1 4  #(no. of processing cores per node)
  • Install Vulcan.  Type the following commands:
tcsh
source ~/.tcshrc
cd  ~/Vulcan/Ver_6.3.0/Scripts/
./install_vulcan new

  • Finally, run a few examples cases to make sure it works.  

Thanks to:

Jonathan French for providing my first introduction to Vulcan as well and help with installation on several occassions.  
Josh Batterson for helping with installation.
Robert Baurle for maintaining Vulcan-CFD and by giving me permission to post this material on the web)