PARADISCYL:How-To-Install
Manual 01 for ParaDiS Cylinder Codes
How to install
Keonwook Kang and Wei Cai
Overview
TBD
We recommend that you read the manual of public ParaDiS codes beforehand.
Prerequisite
For serial mode, GNU scientific libraries (libgsl and libgslcblas) and DFT library (libfftw3) are sufficient to run ParaDiS in general linux PC. You will additionally need intel compilers to compile with icc instead of gcc. You can download free evaluation verion of intel compilers from Intel Software Network Site.
libgsl and libgslcblas
GNU Scientific library can be downloaded at http://www.gnu.org/software/gsl/. Install gsl library by the following procedures.
# mv ./gsl-1.9.tar.gz /usr/local/src/ # cd /usr/local/src # tar -zxvf gsl-1.9.tar.gz # cd gsl-1.9 # ./configure # make # make install
The libraries will be installed at /usr/local/lib/.
libfftw3
C subroutine library for computing the discrete Fourier transform (DFT). Download from FFTW home page. To install the library, run the following commands.
# mv ./fftw-3.1.2.tar.gz /usr/local/src/ # cd /usr/local/src # tar -zxvf fftw-3.1.2.tar.gz # cd fftw-3.1.2 # ./configure # make # make install
libfftw3.a and libfftw3.la will be installed at /usr/local/lib/.
Download
Download the latest ParaDiS codes from micro repository site using subversion checkout command.
$ mkdir ParaDiS $ svn co https://micro.stanford.edu/svn/ParaDiS ./ParaDiS
Note that this version of ParaDiS has branched out from the public ParaDiS codes v.2.2 downloadable from the official site. You see there are extra subdirectories such as aniso, cylinder, halfspace, matlab, thinfilm and fem in this version of ParaDiS codes. Each subdirectory contains additional source codes for its own purpose. For example, source codes in cylinder directory enable to run ParaDiS simulation of dislocations inside cylindrical geometry taking account of the image stress and Yoffe stress.
MAKE
Move into cylinder subdirectory.
$ cd ParaDiS/cylinder
There is a make description file, makefile, at the top of which, it includes ../makefile.sys and ../makefile.setup from the upper directory.
makefile.sys defines system-dependent compilers and compiling options for different systems such as linux, aix, etc. The pre-defined system types and their descriptions are listed in the head of makefile.sys file.
In makefile.setup file, you can select various 'make' settings and switches, some of which are explained below.
- SYS
- select system type. ex. SYS = linux
- MODE
- set serial or parallel mode. ex. MODE = SERIAL
- XLIB_MODE
- enable or disable xwindow plotting capability. ex. XLIB_MODE = ON
- OPT
- define optimization level. ex. OPT = -O3
In makefile, there is important macro DEFS. The cylinder codes behave differently depending on how DEFS is defined.
- DEFS += -D_CYL
- Needs to be included for cylinder codes.
- DEFS += -D_NOBEMSTRESS
- No boundary image stress will be considered.
- DEFS += -D_NOYOFFESTRESS
- No Yoffe stress will be considered.
- DEFS += -D_NULLCYLSTRESS
- Ignore all image stress. (BEM, Yoffe, Virtual seg.(??))
- DEFS += -D_NOVIRTUALSEG
- No force contribution from virtual segments.(??)
- DEFS += -D_CYLMETHOD1
- If defined, grid stress is used for image stress calculation. If not, Green stress is used.[1]
- DEFS += -D_WRITENODEFORCE
- Will write nodal force data in force.out file. Each line of the file contains nodal position x, y, z and nodal force fx, fy and fz.
- DEFS += -D_PRINTCYLSTRESS
- Will write nodal force in force.out and stress in stress.out files. Each line of stress.out contains grid position r, θ, z and stress components σ11, σ22, σ33, σ23, σ31, σ12. (??)
Depending on your need, you can selectively define DEFS macro.
You can make the executible file, paradiscyl by simply typing
$ make
and you will see paradiscyl in the directory ../bin/.
Notes
- ↑ For details of each method, refer C. R. Weinberger and Wei Cai, Computing Image Stress in an Elastic Cylinder, Journal of the Mechanics and Physics of Solids,55 (2007) 2027--2054