<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://micro.stanford.edu/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Iryu</id>
	<title>Micro and Nano Mechanics Group - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://micro.stanford.edu/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Iryu"/>
	<link rel="alternate" type="text/html" href="http://micro.stanford.edu/wiki/Special:Contributions/Iryu"/>
	<updated>2026-07-05T16:29:24Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=Parallel_Cluster_Guides&amp;diff=5799</id>
		<title>Parallel Cluster Guides</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=Parallel_Cluster_Guides&amp;diff=5799"/>
		<updated>2012-05-01T23:12:18Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Run several single-cpu jobs in MC2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
=su-ahpcrc=&lt;br /&gt;
The default settings for MPI will cause the code to use GCC rather than the Intel compilers. To change this:&lt;br /&gt;
*EXTREMELY IMPORTANT: Ensure that nothing related to Intel has been added to your path in .bashrc and .bash_profile&lt;br /&gt;
*Run:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mpi-selector --query&lt;br /&gt;
default:mvapich2_intel-1.2&lt;br /&gt;
level:user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*If your result is something other than the above (version number may differ), execute:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mpi-selector --set mvapich2_intel-1.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*Log out and reconnect to the cluster&lt;br /&gt;
*If everything is correct, asking &amp;lt;tt&amp;gt;which mpicc&amp;lt;/tt&amp;gt; should yield:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ which mpicc&lt;br /&gt;
/usr/mpi/intel/mvapich2-1.2/bin/mpicc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*Add the following to makefile.sys, if not present:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 550px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
########################################################&lt;br /&gt;
#&lt;br /&gt;
#    System type:  su-ahpcrc&lt;br /&gt;
#    &lt;br /&gt;
#    Stanford ME linux system using intel compilers&lt;br /&gt;
#&lt;br /&gt;
########################################################&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
#    Define parallel and serial compilers and compiler flags&lt;br /&gt;
#    and set the default compiler based on the execution mode&lt;br /&gt;
#    (defined by user in makefile)&lt;br /&gt;
#&lt;br /&gt;
CC_PARALLEL.su-ahpcrc       = mpicc&lt;br /&gt;
CPP_PARALLEL.su-ahpcrc      = mpicxx&lt;br /&gt;
CCFLAG_PARALLEL.su-ahpcrc   = -longdouble -DLONGDOUBLE -DPARALLEL=1 &lt;br /&gt;
CPPFLAG_PARALLEL.su-ahpcrc  = &lt;br /&gt;
&lt;br /&gt;
CC_SERIAL.su-ahpcrc         = icc&lt;br /&gt;
CPP_SERIAL.su-ahpcrc        = icpc&lt;br /&gt;
CCFLAG_SERIAL.su-ahpcrc     = -DLONGDOUBLE&lt;br /&gt;
CPPFLAG_SERIAL.su-ahpcrc    = &lt;br /&gt;
&lt;br /&gt;
F90.su-ahpcrc               = ifort&lt;br /&gt;
F90_OPTS.su-ahpcrc          = &lt;br /&gt;
F90_LIB.su-ahpcrc           = -L/opt/intel/fce/10.1.015/lib -lifcore&lt;br /&gt;
&lt;br /&gt;
CC.su-ahpcrc                = $(CC_$(MODE).su-ahpcrc)&lt;br /&gt;
CPP.su-ahpcrc               = $(CPP_$(MODE).su-ahpcrc)&lt;br /&gt;
CCFLAG.su-ahpcrc            = $(CCFLAG_$(MODE).su-ahpcrc)&lt;br /&gt;
CPPFLAG.su-ahpcrc           = $(CPPFLAG_$(MODE).su-ahpcrc)&lt;br /&gt;
&lt;br /&gt;
XLIB_LIBDIR.su-ahpcrc       = /usr/X11R6/lib64&lt;br /&gt;
XLIB_LIB.su-ahpcrc          = -L$(XLIB_LIBDIR.su-ahpcrc) -lX11 -lpthread&lt;br /&gt;
XLIB_INCS.su-ahpcrc         =&lt;br /&gt;
&lt;br /&gt;
MPI_LIBDIR.su-ahpcrc        = -L/export/apps/mvapich/intel/lib&lt;br /&gt;
MPI_LIB.su-ahpcrc           = -lmpich&lt;br /&gt;
MPI_INCS.su-ahpcrc          = &lt;br /&gt;
&lt;br /&gt;
OPENMP_FLAG.su-ahpcrc       = -openmp&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
#    Identify any additional libraries and paths needed for compilation&lt;br /&gt;
#    on this system type&lt;br /&gt;
#&lt;br /&gt;
LIB_PARALLEL.su-ahpcrc      =&lt;br /&gt;
INCS_PARALLEL.su-ahpcrc     =&lt;br /&gt;
&lt;br /&gt;
LIB_SERIAL.su-ahpcrc        =-L../lib&lt;br /&gt;
INCS_SERIAL.su-ahpcrc       =&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*When compiling the code, seeing &amp;lt;tt&amp;gt;icc&amp;lt;/tt&amp;gt; and comments about vectorizing loops such as &amp;quot;&amp;lt;tt&amp;gt;StressTableGen.c(357): (col. 37) remark: LOOP WAS VECTORIZED.&amp;lt;/tt&amp;gt;&amp;quot; are signs that the Intel compilers were used.&lt;br /&gt;
*Use a PBS script similar to the following (&amp;lt;tt&amp;gt;/opt/mpiexec/bin/mpiexec --comm=pmi&amp;lt;/tt&amp;gt; is the only important difference):&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 600px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#PBS -N ParaDiS&lt;br /&gt;
#PBS -j oe&lt;br /&gt;
#PBS -l nodes=1:ppn=8,walltime=24:00:00&lt;br /&gt;
#PBS -V&lt;br /&gt;
&lt;br /&gt;
### ---------------------------------------&lt;br /&gt;
### BEGINNING OF EXECUTION&lt;br /&gt;
### ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
echo The master node of this job is `hostname`&lt;br /&gt;
echo The working directory is `echo $PBS_O_WORKDIR`&lt;br /&gt;
echo This job runs on the following nodes:&lt;br /&gt;
echo `cat $PBS_NODEFILE`&lt;br /&gt;
&lt;br /&gt;
ncpu=`cat $PBS_NODEFILE | wc -w`&lt;br /&gt;
echo &amp;quot;Number of processors = $ncpu &amp;quot;&lt;br /&gt;
&lt;br /&gt;
### end of information preamble&lt;br /&gt;
&lt;br /&gt;
cd $PBS_O_WORKDIR&lt;br /&gt;
&lt;br /&gt;
echo $PWD&lt;br /&gt;
&lt;br /&gt;
PARADIS_O_DIR=&amp;quot;tests/fmm_8cpu_results&amp;quot;&lt;br /&gt;
mkdir -p $PARADIS_O_DIR&lt;br /&gt;
cmd=&amp;quot;/opt/mpiexec/bin/mpiexec --comm=pmi -np $ncpu bin/paradis tests/fmm_8cpu.ctrl&amp;quot;&lt;br /&gt;
$cmd &amp;gt;&amp;amp; $PARADIS_O_DIR/paradis.log&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*Submit the job using a command similar to:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ qsub paradis.pbs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=mc2=&lt;br /&gt;
By default, you will not have access to Intel compilers or MPI. They need to be added with the module command.&lt;br /&gt;
*EXTREMELY IMPORTANT: Ensure that nothing related to Intel has been added to your path in .bashrc and .bash_profile&lt;br /&gt;
*To see the list of available modules use: &amp;lt;tt&amp;gt;module avial&amp;lt;/tt&amp;gt;&lt;br /&gt;
*To temporarily add the modules for your current session you can use &amp;lt;tt&amp;gt;module add&amp;lt;/tt&amp;gt;&lt;br /&gt;
*To permanently add modules issue a command similar to this:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 500px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ module purge&lt;br /&gt;
$ module initrm intel/intel-11 mvapich/1.2rc1-intel-11-dell-gen2&lt;br /&gt;
$ module initadd intel/intel-12 mvapich2/1.7rc1-intel-12&lt;br /&gt;
$ module load intel/intel-12 mvapich2/1.7rc1-intel-12&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=run ParaDiS in MC2=&lt;br /&gt;
&lt;br /&gt;
To run a ParaDiS input in mc2, we need to edit the following file(&amp;quot;paradis.serial.run&amp;quot;) and submit it.&lt;br /&gt;
&lt;br /&gt;
=== In paradis.serial.run ===&lt;br /&gt;
First of all, we can specify the JOB NAME in &amp;quot;[[#paradis.serial.run|paradis.serial.run]]&amp;quot;, as follows &lt;br /&gt;
        &lt;br /&gt;
 ### Job id&lt;br /&gt;
 #PBS -N CYL_T4_MC2.3&lt;br /&gt;
&lt;br /&gt;
,where JOB NAME is CYL_T4_MC2.3 which is used when you check if the input file is running well.&lt;br /&gt;
&lt;br /&gt;
Next, we need to specify the input file and the location of the log file will be written, as follows. &lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_test/CYL_T5_MC2/CYL_T4_MC2_3.ctrl &amp;gt;&amp;amp; tests/CYL_test/CYL_T4_MC2/CYL_T4_MC2_3.log &lt;br /&gt;
&lt;br /&gt;
We can see that the first part (&amp;quot;bin/paradiscyl tests/CYL_test/CYL_T5_MC2/CYL_T4_MC2_3.ctrl&amp;quot;) is exactly same as the command you use when you run a input file in your computer.After this simbol(&amp;quot; &amp;gt;&amp;amp;&amp;quot;), the name of log file is specified(&amp;quot;tests/CYL_test/CYL_T4_MC2/CYL_T4_MC2_3.log&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Then, we need to turn off the x-window in &amp;quot;winDefaultsFile&amp;quot; which is specified in the ctrl file. &lt;br /&gt;
For example, if it is &amp;quot;inputs/paradis.xdefaults&amp;quot;, modify this file as follows.If you don&#039;t have X-server in your computer, you need to do the same thing to run the simulation. &lt;br /&gt;
 enable_window = 0    # Toggle enabling/disabling simulation X-window.&lt;br /&gt;
&lt;br /&gt;
=== submit paradis.serial.run ===&lt;br /&gt;
Finally, submit this file(&amp;quot;paradis.serial.run&amp;quot;) in MC2, as follows. &lt;br /&gt;
&lt;br /&gt;
 $ qsub paradis.serial.run &lt;br /&gt;
 6006.mc2.stanford.edu&lt;br /&gt;
&lt;br /&gt;
Job id(&amp;quot;6006.mc2&amp;quot;) will be shown in the screen. &lt;br /&gt;
&lt;br /&gt;
After that, we can check if the input file in running using &amp;quot;qstat&amp;quot; or &amp;quot;showq&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 $ qstat&lt;br /&gt;
 Job id                    Name             User            Time Use S Queue&lt;br /&gt;
 ------------------------- ---------------- --------------- -------- - -----&lt;br /&gt;
 5976.mc2                  YSZ_CC5          inmyway         597:13:0 R default        &lt;br /&gt;
 5977.mc2                  YSZ_CC6          inmyway         597:11:2 R default        &lt;br /&gt;
 5978.mc2                  YSZ_CC7          inmyway         597:05:2 R default        &lt;br /&gt;
 5979.mc2                  YSZ_CC8          inmyway         597:08:0 R default        &lt;br /&gt;
 5980.mc2                  YSZ_CC9          inmyway         597:08:5 R default        &lt;br /&gt;
 5981.mc2                  YSZ_CC10         inmyway         597:07:1 R default        &lt;br /&gt;
 5982.mc2                  YSZ_CC11         inmyway         398:06:0 R default        &lt;br /&gt;
 5999.mc2                  ...mmps_Test-hcp yanmingw        147:57:1 R default        &lt;br /&gt;
 6000.mc2                  AuSi_Lammps_Test yanmingw        147:48:1 R default        &lt;br /&gt;
 6005.mc2                  YSZ_S2_NEB       inmyway         15:46:24 R default &lt;br /&gt;
 &amp;lt;u&amp;gt;6006.mc2                  CYL_T4_MC2.3       iryu          00:00:00 R default&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Moreover, you can see the progress in the log file, as follows. &lt;br /&gt;
 $ cd tests/CYL_test/&lt;br /&gt;
 $ vi CYL_T4_MC2_3.log&lt;br /&gt;
&lt;br /&gt;
=== check compilers ===&lt;br /&gt;
We can check which compilers are used, as follows. &lt;br /&gt;
&lt;br /&gt;
 $ ldd bin/paradiscyl&lt;br /&gt;
        libm.so.6 =&amp;gt; /lib64/libm.so.6 (0x00000038dba00000)&lt;br /&gt;
        libX11.so.6 =&amp;gt; /usr/lib64/libX11.so.6 (0x00000038de200000)&lt;br /&gt;
        libpthread.so.0 =&amp;gt; /lib64/libpthread.so.0 (0x00000038dc200000)&lt;br /&gt;
        libfftw3.so.3 =&amp;gt; /usr/lib64/libfftw3.so.3 (0x0000003440200000)&lt;br /&gt;
        libgsl.so.0 =&amp;gt; /home/iryu/usr/lib/libgsl.so.0 (0x00002b38ee018000)&lt;br /&gt;
        libgslcblas.so.0 =&amp;gt; /home/iryu/usr/lib/libgslcblas.so.0 (0x00002b38ee545000)&lt;br /&gt;
        libstdc++.so.6 =&amp;gt; /usr/lib64/libstdc++.so.6 (0x00000038ee000000)&lt;br /&gt;
        libgcc_s.so.1 =&amp;gt; /lib64/libgcc_s.so.1 (0x00000038ebc00000)&lt;br /&gt;
        libc.so.6 =&amp;gt; /lib64/libc.so.6 (0x00000038db600000)&lt;br /&gt;
        libdl.so.2 =&amp;gt; /lib64/libdl.so.2 (0x00000038dbe00000)&lt;br /&gt;
        libXau.so.6 =&amp;gt; /usr/lib64/libXau.so.6 (0x00000038dd600000)&lt;br /&gt;
        libXdmcp.so.6 =&amp;gt; /usr/lib64/libXdmcp.so.6 (0x00000038dde00000)&lt;br /&gt;
        /lib64/ld-linux-x86-64.so.2 (0x00000038db200000)&lt;br /&gt;
        libimf.so =&amp;gt; /share/apps/intel/lib/intel64/libimf.so (0x00002b38ee7af000)&lt;br /&gt;
        libsvml.so =&amp;gt; /share/apps/intel/lib/intel64/libsvml.so (0x00002b38eeb92000)&lt;br /&gt;
        libintlc.so.5 =&amp;gt; /share/apps/intel/lib/intel64/libintlc.so.5 (0x00002b38ef23a000)&lt;br /&gt;
&lt;br /&gt;
If you have some problem to find proper compiler, we need to add it in your user bash_profile. &lt;br /&gt;
To do that, check your bash_profile, as follows. &lt;br /&gt;
&lt;br /&gt;
 $ cd ~&lt;br /&gt;
 $ vi ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;bash_profile&amp;quot;, we need to specify path for &amp;quot;LD_LIBRARY_PATH&amp;quot;, as follows. &lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/iryu/Codes/fftw3_lib&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/home/iryu/usr/lib&lt;br /&gt;
 export TARGET=mc2&lt;br /&gt;
&lt;br /&gt;
After that, copy proper files to the path which is specified in bash_profile. &lt;br /&gt;
For example, if &amp;quot;libfftw3.so.3&amp;quot; is missing, &lt;br /&gt;
 $ cp libfftw3.so.3 usr/lib/&lt;br /&gt;
&lt;br /&gt;
=== kill the job ===&lt;br /&gt;
If you want to stop the calculation, we can do it using &amp;quot;qdel&amp;quot; &lt;br /&gt;
 $ qdel 6005&lt;br /&gt;
, where 6005 is JOB ID which you can see through &amp;quot;qstat&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== paradis.serial.run ===&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 750px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
&lt;br /&gt;
 ### Job id&lt;br /&gt;
 #PBS -N CYL_T4_MC2.3&lt;br /&gt;
 ### #PBS -N fmm.8cpu&lt;br /&gt;
&lt;br /&gt;
 #PBS -j oe&lt;br /&gt;
&lt;br /&gt;
 ### ppn : # of cpus / walltime = running time&lt;br /&gt;
 #PBS -l nodes=1:ppn=1,walltime=48:00:00&lt;br /&gt;
 #PBS -V&lt;br /&gt;
&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
 ### BEGINNING OF EXECUTION&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
 echo The master node of this job is `hostname`&lt;br /&gt;
 echo The working directory is `echo $PBS_O_WORKDIR`&lt;br /&gt;
 echo This job runs on the following nodes:&lt;br /&gt;
 echo `cat $PBS_NODEFILE`&lt;br /&gt;
&lt;br /&gt;
 ncpu=`cat $PBS_NODEFILE | wc -w`&lt;br /&gt;
 echo &amp;quot;Number of processors = $ncpu &amp;quot;&lt;br /&gt;
&lt;br /&gt;
 ### end of information preamble&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR &lt;br /&gt;
&lt;br /&gt;
 echo $PWD&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR&lt;br /&gt;
&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/iryu/Codes/fftw3_lib&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/home/iryu/usr/lib&lt;br /&gt;
&lt;br /&gt;
 ### To see which compiler is being used.(You can see it from Job_id.oJOBNAME) &lt;br /&gt;
 ###ldd bin/paradiscyl&lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_test/CYL_T5_MC2/CYL_T4_MC2_3.ctrl &amp;gt;&amp;amp; tests/CYL_test/CYL_T4_MC2/CYL_T4_MC2_3.log&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Run several single-cpu jobs in MC2 ===&lt;br /&gt;
&lt;br /&gt;
If you want to run many jobs which all use just one cpu, we can use the following stop the calculation, we can do it by submitting the following file. &lt;br /&gt;
For example, if you want to run two jobs whose command are&lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST1.ctrl &amp;gt;&amp;amp; tests/CYL_TEST1.log&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST2.ctrl &amp;gt;&amp;amp; tests/CYL_TEST2.log&lt;br /&gt;
&lt;br /&gt;
, you can use the following file. &lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 750px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
&lt;br /&gt;
 ### Job id&lt;br /&gt;
 #PBS -N CYL_TEST&lt;br /&gt;
 ### #PBS -N fmm.8cpu&lt;br /&gt;
&lt;br /&gt;
 #PBS -j oe&lt;br /&gt;
&lt;br /&gt;
 ### ppn : # of cpus / walltime = running time&lt;br /&gt;
 #PBS -l nodes=1:ppn=1,walltime=48:00:00&lt;br /&gt;
 #PBS -V&lt;br /&gt;
&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
 ### BEGINNING OF EXECUTION&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
 echo The master node of this job is `hostname`&lt;br /&gt;
 echo The working directory is `echo $PBS_O_WORKDIR`&lt;br /&gt;
 echo This job runs on the following nodes:&lt;br /&gt;
 echo `cat $PBS_NODEFILE`&lt;br /&gt;
&lt;br /&gt;
 ncpu=`cat $PBS_NODEFILE | wc -w`&lt;br /&gt;
 echo &amp;quot;Number of processors = $ncpu &amp;quot;&lt;br /&gt;
&lt;br /&gt;
 ### end of information preamble&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR &lt;br /&gt;
&lt;br /&gt;
 echo $PWD&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR&lt;br /&gt;
&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/iryu/Codes/fftw3_lib&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/home/iryu/usr/lib&lt;br /&gt;
&lt;br /&gt;
 ### To see which compiler is being used.(You can see it from Job_id.oJOBNAME) &lt;br /&gt;
 ###ldd bin/paradiscyl&lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST1.ctrl &amp;gt;&amp;amp; tests/CYL_TEST1.log &amp;amp;&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST2.ctrl &amp;gt;&amp;amp; tests/CYL_TEST2.log &amp;amp;&lt;br /&gt;
&lt;br /&gt;
 wait&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The only difference is to put ampersand sign(&amp;amp;) in the end of the command line.&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=Parallel_Cluster_Guides&amp;diff=5798</id>
		<title>Parallel Cluster Guides</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=Parallel_Cluster_Guides&amp;diff=5798"/>
		<updated>2012-05-01T23:11:41Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* run ParaDiS in MC2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
=su-ahpcrc=&lt;br /&gt;
The default settings for MPI will cause the code to use GCC rather than the Intel compilers. To change this:&lt;br /&gt;
*EXTREMELY IMPORTANT: Ensure that nothing related to Intel has been added to your path in .bashrc and .bash_profile&lt;br /&gt;
*Run:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mpi-selector --query&lt;br /&gt;
default:mvapich2_intel-1.2&lt;br /&gt;
level:user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*If your result is something other than the above (version number may differ), execute:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mpi-selector --set mvapich2_intel-1.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*Log out and reconnect to the cluster&lt;br /&gt;
*If everything is correct, asking &amp;lt;tt&amp;gt;which mpicc&amp;lt;/tt&amp;gt; should yield:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ which mpicc&lt;br /&gt;
/usr/mpi/intel/mvapich2-1.2/bin/mpicc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*Add the following to makefile.sys, if not present:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 550px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
########################################################&lt;br /&gt;
#&lt;br /&gt;
#    System type:  su-ahpcrc&lt;br /&gt;
#    &lt;br /&gt;
#    Stanford ME linux system using intel compilers&lt;br /&gt;
#&lt;br /&gt;
########################################################&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
#    Define parallel and serial compilers and compiler flags&lt;br /&gt;
#    and set the default compiler based on the execution mode&lt;br /&gt;
#    (defined by user in makefile)&lt;br /&gt;
#&lt;br /&gt;
CC_PARALLEL.su-ahpcrc       = mpicc&lt;br /&gt;
CPP_PARALLEL.su-ahpcrc      = mpicxx&lt;br /&gt;
CCFLAG_PARALLEL.su-ahpcrc   = -longdouble -DLONGDOUBLE -DPARALLEL=1 &lt;br /&gt;
CPPFLAG_PARALLEL.su-ahpcrc  = &lt;br /&gt;
&lt;br /&gt;
CC_SERIAL.su-ahpcrc         = icc&lt;br /&gt;
CPP_SERIAL.su-ahpcrc        = icpc&lt;br /&gt;
CCFLAG_SERIAL.su-ahpcrc     = -DLONGDOUBLE&lt;br /&gt;
CPPFLAG_SERIAL.su-ahpcrc    = &lt;br /&gt;
&lt;br /&gt;
F90.su-ahpcrc               = ifort&lt;br /&gt;
F90_OPTS.su-ahpcrc          = &lt;br /&gt;
F90_LIB.su-ahpcrc           = -L/opt/intel/fce/10.1.015/lib -lifcore&lt;br /&gt;
&lt;br /&gt;
CC.su-ahpcrc                = $(CC_$(MODE).su-ahpcrc)&lt;br /&gt;
CPP.su-ahpcrc               = $(CPP_$(MODE).su-ahpcrc)&lt;br /&gt;
CCFLAG.su-ahpcrc            = $(CCFLAG_$(MODE).su-ahpcrc)&lt;br /&gt;
CPPFLAG.su-ahpcrc           = $(CPPFLAG_$(MODE).su-ahpcrc)&lt;br /&gt;
&lt;br /&gt;
XLIB_LIBDIR.su-ahpcrc       = /usr/X11R6/lib64&lt;br /&gt;
XLIB_LIB.su-ahpcrc          = -L$(XLIB_LIBDIR.su-ahpcrc) -lX11 -lpthread&lt;br /&gt;
XLIB_INCS.su-ahpcrc         =&lt;br /&gt;
&lt;br /&gt;
MPI_LIBDIR.su-ahpcrc        = -L/export/apps/mvapich/intel/lib&lt;br /&gt;
MPI_LIB.su-ahpcrc           = -lmpich&lt;br /&gt;
MPI_INCS.su-ahpcrc          = &lt;br /&gt;
&lt;br /&gt;
OPENMP_FLAG.su-ahpcrc       = -openmp&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
#    Identify any additional libraries and paths needed for compilation&lt;br /&gt;
#    on this system type&lt;br /&gt;
#&lt;br /&gt;
LIB_PARALLEL.su-ahpcrc      =&lt;br /&gt;
INCS_PARALLEL.su-ahpcrc     =&lt;br /&gt;
&lt;br /&gt;
LIB_SERIAL.su-ahpcrc        =-L../lib&lt;br /&gt;
INCS_SERIAL.su-ahpcrc       =&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*When compiling the code, seeing &amp;lt;tt&amp;gt;icc&amp;lt;/tt&amp;gt; and comments about vectorizing loops such as &amp;quot;&amp;lt;tt&amp;gt;StressTableGen.c(357): (col. 37) remark: LOOP WAS VECTORIZED.&amp;lt;/tt&amp;gt;&amp;quot; are signs that the Intel compilers were used.&lt;br /&gt;
*Use a PBS script similar to the following (&amp;lt;tt&amp;gt;/opt/mpiexec/bin/mpiexec --comm=pmi&amp;lt;/tt&amp;gt; is the only important difference):&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 600px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#PBS -N ParaDiS&lt;br /&gt;
#PBS -j oe&lt;br /&gt;
#PBS -l nodes=1:ppn=8,walltime=24:00:00&lt;br /&gt;
#PBS -V&lt;br /&gt;
&lt;br /&gt;
### ---------------------------------------&lt;br /&gt;
### BEGINNING OF EXECUTION&lt;br /&gt;
### ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
echo The master node of this job is `hostname`&lt;br /&gt;
echo The working directory is `echo $PBS_O_WORKDIR`&lt;br /&gt;
echo This job runs on the following nodes:&lt;br /&gt;
echo `cat $PBS_NODEFILE`&lt;br /&gt;
&lt;br /&gt;
ncpu=`cat $PBS_NODEFILE | wc -w`&lt;br /&gt;
echo &amp;quot;Number of processors = $ncpu &amp;quot;&lt;br /&gt;
&lt;br /&gt;
### end of information preamble&lt;br /&gt;
&lt;br /&gt;
cd $PBS_O_WORKDIR&lt;br /&gt;
&lt;br /&gt;
echo $PWD&lt;br /&gt;
&lt;br /&gt;
PARADIS_O_DIR=&amp;quot;tests/fmm_8cpu_results&amp;quot;&lt;br /&gt;
mkdir -p $PARADIS_O_DIR&lt;br /&gt;
cmd=&amp;quot;/opt/mpiexec/bin/mpiexec --comm=pmi -np $ncpu bin/paradis tests/fmm_8cpu.ctrl&amp;quot;&lt;br /&gt;
$cmd &amp;gt;&amp;amp; $PARADIS_O_DIR/paradis.log&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
*Submit the job using a command similar to:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 400px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ qsub paradis.pbs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=mc2=&lt;br /&gt;
By default, you will not have access to Intel compilers or MPI. They need to be added with the module command.&lt;br /&gt;
*EXTREMELY IMPORTANT: Ensure that nothing related to Intel has been added to your path in .bashrc and .bash_profile&lt;br /&gt;
*To see the list of available modules use: &amp;lt;tt&amp;gt;module avial&amp;lt;/tt&amp;gt;&lt;br /&gt;
*To temporarily add the modules for your current session you can use &amp;lt;tt&amp;gt;module add&amp;lt;/tt&amp;gt;&lt;br /&gt;
*To permanently add modules issue a command similar to this:&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 500px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ module purge&lt;br /&gt;
$ module initrm intel/intel-11 mvapich/1.2rc1-intel-11-dell-gen2&lt;br /&gt;
$ module initadd intel/intel-12 mvapich2/1.7rc1-intel-12&lt;br /&gt;
$ module load intel/intel-12 mvapich2/1.7rc1-intel-12&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=run ParaDiS in MC2=&lt;br /&gt;
&lt;br /&gt;
To run a ParaDiS input in mc2, we need to edit the following file(&amp;quot;paradis.serial.run&amp;quot;) and submit it.&lt;br /&gt;
&lt;br /&gt;
=== In paradis.serial.run ===&lt;br /&gt;
First of all, we can specify the JOB NAME in &amp;quot;[[#paradis.serial.run|paradis.serial.run]]&amp;quot;, as follows &lt;br /&gt;
        &lt;br /&gt;
 ### Job id&lt;br /&gt;
 #PBS -N CYL_T4_MC2.3&lt;br /&gt;
&lt;br /&gt;
,where JOB NAME is CYL_T4_MC2.3 which is used when you check if the input file is running well.&lt;br /&gt;
&lt;br /&gt;
Next, we need to specify the input file and the location of the log file will be written, as follows. &lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_test/CYL_T5_MC2/CYL_T4_MC2_3.ctrl &amp;gt;&amp;amp; tests/CYL_test/CYL_T4_MC2/CYL_T4_MC2_3.log &lt;br /&gt;
&lt;br /&gt;
We can see that the first part (&amp;quot;bin/paradiscyl tests/CYL_test/CYL_T5_MC2/CYL_T4_MC2_3.ctrl&amp;quot;) is exactly same as the command you use when you run a input file in your computer.After this simbol(&amp;quot; &amp;gt;&amp;amp;&amp;quot;), the name of log file is specified(&amp;quot;tests/CYL_test/CYL_T4_MC2/CYL_T4_MC2_3.log&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Then, we need to turn off the x-window in &amp;quot;winDefaultsFile&amp;quot; which is specified in the ctrl file. &lt;br /&gt;
For example, if it is &amp;quot;inputs/paradis.xdefaults&amp;quot;, modify this file as follows.If you don&#039;t have X-server in your computer, you need to do the same thing to run the simulation. &lt;br /&gt;
 enable_window = 0    # Toggle enabling/disabling simulation X-window.&lt;br /&gt;
&lt;br /&gt;
=== submit paradis.serial.run ===&lt;br /&gt;
Finally, submit this file(&amp;quot;paradis.serial.run&amp;quot;) in MC2, as follows. &lt;br /&gt;
&lt;br /&gt;
 $ qsub paradis.serial.run &lt;br /&gt;
 6006.mc2.stanford.edu&lt;br /&gt;
&lt;br /&gt;
Job id(&amp;quot;6006.mc2&amp;quot;) will be shown in the screen. &lt;br /&gt;
&lt;br /&gt;
After that, we can check if the input file in running using &amp;quot;qstat&amp;quot; or &amp;quot;showq&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 $ qstat&lt;br /&gt;
 Job id                    Name             User            Time Use S Queue&lt;br /&gt;
 ------------------------- ---------------- --------------- -------- - -----&lt;br /&gt;
 5976.mc2                  YSZ_CC5          inmyway         597:13:0 R default        &lt;br /&gt;
 5977.mc2                  YSZ_CC6          inmyway         597:11:2 R default        &lt;br /&gt;
 5978.mc2                  YSZ_CC7          inmyway         597:05:2 R default        &lt;br /&gt;
 5979.mc2                  YSZ_CC8          inmyway         597:08:0 R default        &lt;br /&gt;
 5980.mc2                  YSZ_CC9          inmyway         597:08:5 R default        &lt;br /&gt;
 5981.mc2                  YSZ_CC10         inmyway         597:07:1 R default        &lt;br /&gt;
 5982.mc2                  YSZ_CC11         inmyway         398:06:0 R default        &lt;br /&gt;
 5999.mc2                  ...mmps_Test-hcp yanmingw        147:57:1 R default        &lt;br /&gt;
 6000.mc2                  AuSi_Lammps_Test yanmingw        147:48:1 R default        &lt;br /&gt;
 6005.mc2                  YSZ_S2_NEB       inmyway         15:46:24 R default &lt;br /&gt;
 &amp;lt;u&amp;gt;6006.mc2                  CYL_T4_MC2.3       iryu          00:00:00 R default&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Moreover, you can see the progress in the log file, as follows. &lt;br /&gt;
 $ cd tests/CYL_test/&lt;br /&gt;
 $ vi CYL_T4_MC2_3.log&lt;br /&gt;
&lt;br /&gt;
=== check compilers ===&lt;br /&gt;
We can check which compilers are used, as follows. &lt;br /&gt;
&lt;br /&gt;
 $ ldd bin/paradiscyl&lt;br /&gt;
        libm.so.6 =&amp;gt; /lib64/libm.so.6 (0x00000038dba00000)&lt;br /&gt;
        libX11.so.6 =&amp;gt; /usr/lib64/libX11.so.6 (0x00000038de200000)&lt;br /&gt;
        libpthread.so.0 =&amp;gt; /lib64/libpthread.so.0 (0x00000038dc200000)&lt;br /&gt;
        libfftw3.so.3 =&amp;gt; /usr/lib64/libfftw3.so.3 (0x0000003440200000)&lt;br /&gt;
        libgsl.so.0 =&amp;gt; /home/iryu/usr/lib/libgsl.so.0 (0x00002b38ee018000)&lt;br /&gt;
        libgslcblas.so.0 =&amp;gt; /home/iryu/usr/lib/libgslcblas.so.0 (0x00002b38ee545000)&lt;br /&gt;
        libstdc++.so.6 =&amp;gt; /usr/lib64/libstdc++.so.6 (0x00000038ee000000)&lt;br /&gt;
        libgcc_s.so.1 =&amp;gt; /lib64/libgcc_s.so.1 (0x00000038ebc00000)&lt;br /&gt;
        libc.so.6 =&amp;gt; /lib64/libc.so.6 (0x00000038db600000)&lt;br /&gt;
        libdl.so.2 =&amp;gt; /lib64/libdl.so.2 (0x00000038dbe00000)&lt;br /&gt;
        libXau.so.6 =&amp;gt; /usr/lib64/libXau.so.6 (0x00000038dd600000)&lt;br /&gt;
        libXdmcp.so.6 =&amp;gt; /usr/lib64/libXdmcp.so.6 (0x00000038dde00000)&lt;br /&gt;
        /lib64/ld-linux-x86-64.so.2 (0x00000038db200000)&lt;br /&gt;
        libimf.so =&amp;gt; /share/apps/intel/lib/intel64/libimf.so (0x00002b38ee7af000)&lt;br /&gt;
        libsvml.so =&amp;gt; /share/apps/intel/lib/intel64/libsvml.so (0x00002b38eeb92000)&lt;br /&gt;
        libintlc.so.5 =&amp;gt; /share/apps/intel/lib/intel64/libintlc.so.5 (0x00002b38ef23a000)&lt;br /&gt;
&lt;br /&gt;
If you have some problem to find proper compiler, we need to add it in your user bash_profile. &lt;br /&gt;
To do that, check your bash_profile, as follows. &lt;br /&gt;
&lt;br /&gt;
 $ cd ~&lt;br /&gt;
 $ vi ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;bash_profile&amp;quot;, we need to specify path for &amp;quot;LD_LIBRARY_PATH&amp;quot;, as follows. &lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/iryu/Codes/fftw3_lib&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/home/iryu/usr/lib&lt;br /&gt;
 export TARGET=mc2&lt;br /&gt;
&lt;br /&gt;
After that, copy proper files to the path which is specified in bash_profile. &lt;br /&gt;
For example, if &amp;quot;libfftw3.so.3&amp;quot; is missing, &lt;br /&gt;
 $ cp libfftw3.so.3 usr/lib/&lt;br /&gt;
&lt;br /&gt;
=== kill the job ===&lt;br /&gt;
If you want to stop the calculation, we can do it using &amp;quot;qdel&amp;quot; &lt;br /&gt;
 $ qdel 6005&lt;br /&gt;
, where 6005 is JOB ID which you can see through &amp;quot;qstat&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== paradis.serial.run ===&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 750px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
&lt;br /&gt;
 ### Job id&lt;br /&gt;
 #PBS -N CYL_T4_MC2.3&lt;br /&gt;
 ### #PBS -N fmm.8cpu&lt;br /&gt;
&lt;br /&gt;
 #PBS -j oe&lt;br /&gt;
&lt;br /&gt;
 ### ppn : # of cpus / walltime = running time&lt;br /&gt;
 #PBS -l nodes=1:ppn=1,walltime=48:00:00&lt;br /&gt;
 #PBS -V&lt;br /&gt;
&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
 ### BEGINNING OF EXECUTION&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
 echo The master node of this job is `hostname`&lt;br /&gt;
 echo The working directory is `echo $PBS_O_WORKDIR`&lt;br /&gt;
 echo This job runs on the following nodes:&lt;br /&gt;
 echo `cat $PBS_NODEFILE`&lt;br /&gt;
&lt;br /&gt;
 ncpu=`cat $PBS_NODEFILE | wc -w`&lt;br /&gt;
 echo &amp;quot;Number of processors = $ncpu &amp;quot;&lt;br /&gt;
&lt;br /&gt;
 ### end of information preamble&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR &lt;br /&gt;
&lt;br /&gt;
 echo $PWD&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR&lt;br /&gt;
&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/iryu/Codes/fftw3_lib&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/home/iryu/usr/lib&lt;br /&gt;
&lt;br /&gt;
 ### To see which compiler is being used.(You can see it from Job_id.oJOBNAME) &lt;br /&gt;
 ###ldd bin/paradiscyl&lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_test/CYL_T5_MC2/CYL_T4_MC2_3.ctrl &amp;gt;&amp;amp; tests/CYL_test/CYL_T4_MC2/CYL_T4_MC2_3.log&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Run several single-cpu jobs in MC2 ===&lt;br /&gt;
&lt;br /&gt;
If you want to run many jobs which all use just one cpu, we can use the following stop the calculation, we can do it by submitting the following file. &lt;br /&gt;
For example, if you want to run two jobs whose command are&lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST1.ctrl &amp;gt;&amp;amp; tests/CYL_TEST1.log&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST2.ctrl &amp;gt;&amp;amp; tests/CYL_TEST2.log&lt;br /&gt;
&lt;br /&gt;
, you can use the following file. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 0; padding: 1em; width: 750px;&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
&lt;br /&gt;
 ### Job id&lt;br /&gt;
 #PBS -N CYL_TEST&lt;br /&gt;
 ### #PBS -N fmm.8cpu&lt;br /&gt;
&lt;br /&gt;
 #PBS -j oe&lt;br /&gt;
&lt;br /&gt;
 ### ppn : # of cpus / walltime = running time&lt;br /&gt;
 #PBS -l nodes=1:ppn=1,walltime=48:00:00&lt;br /&gt;
 #PBS -V&lt;br /&gt;
&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
 ### BEGINNING OF EXECUTION&lt;br /&gt;
 ### ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
 echo The master node of this job is `hostname`&lt;br /&gt;
 echo The working directory is `echo $PBS_O_WORKDIR`&lt;br /&gt;
 echo This job runs on the following nodes:&lt;br /&gt;
 echo `cat $PBS_NODEFILE`&lt;br /&gt;
&lt;br /&gt;
 ncpu=`cat $PBS_NODEFILE | wc -w`&lt;br /&gt;
 echo &amp;quot;Number of processors = $ncpu &amp;quot;&lt;br /&gt;
&lt;br /&gt;
 ### end of information preamble&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR &lt;br /&gt;
&lt;br /&gt;
 echo $PWD&lt;br /&gt;
&lt;br /&gt;
 cd $PBS_O_WORKDIR&lt;br /&gt;
&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/iryu/Codes/fftw3_lib&lt;br /&gt;
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/home/iryu/usr/lib&lt;br /&gt;
&lt;br /&gt;
 ### To see which compiler is being used.(You can see it from Job_id.oJOBNAME) &lt;br /&gt;
 ###ldd bin/paradiscyl&lt;br /&gt;
&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST1.ctrl &amp;gt;&amp;amp; tests/CYL_TEST1.log &amp;amp;&lt;br /&gt;
 bin/paradiscyl tests/CYL_TEST2.ctrl &amp;gt;&amp;amp; tests/CYL_TEST2.log &amp;amp;&lt;br /&gt;
&lt;br /&gt;
 wait&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The only difference is to put ampersand sign(&amp;amp;) in the end of the command line.&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5660</id>
		<title>PARADISCYL:Cylinder-Project surface node</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5660"/>
		<updated>2011-12-08T09:43:58Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Project surface nodes &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the cylinder code, surface nodes need to stay on the surface of the cylinder. If they move outside the cylinder, it can be handled by Cylinder_Remesh(). However, if they move inside cylinder surface, it make a bug. In this Wiki page describe how to project the surface nodes when they moves inside the cylinder surface.&lt;br /&gt;
&lt;br /&gt;
When the surface nodes move outside of the cylinder, Cylinder_Remesh() makes new surface node with flag&#039;&#039;6&#039;&#039; (See figure 1.(c)). In the cylinder code, when two surface nodes are linked to each other, this segment is removed.(See figure 1.(d)).&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Project_out.jpg‎ |frameless|800px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a)Schematic diagram when the surface node moves outwards &lt;br /&gt;
&lt;br /&gt;
However, if the surface nodes move inside of the cylinder, this node is projected on the surface.To do that, the center point of the same slip plane is computed. From the center point, this node is projected along this line. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Project_in.jpg‎ |frameless|800px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.2 (a)Schematic diagram when the surface node moves inwards .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5659</id>
		<title>PARADISCYL:Cylinder-Project surface node</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5659"/>
		<updated>2011-12-08T09:30:44Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Project surface nodes &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the cylinder code, surface nodes need to stay on the surface of the cylinder. If they move outside the cylinder, it can be handled by Cylinder_Remesh(). However, if they move inside cylinder surface, it make a bug. In this Wiki page describe how to project the surface nodes when they moves inside the cylinder surface.&lt;br /&gt;
&lt;br /&gt;
When the surface nodes move outside of the cylinder, cylinder code makes a new surface node with flag of &#039;6&#039; (See figure 1.(c)).In cylinder code, if two surface nodes are linked to each other, it is removed in Cylinder_Remesh(), as shown in figure 1. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Project_out.jpg‎ |frameless|800px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a)Schematic diagram when the surface node moves outwards &lt;br /&gt;
&lt;br /&gt;
In the cylinder code, surface nodes need to stay on the surface of the cylinder. If they move outside the cylinder, it can be handled by Cylinder_Remesh(). However, if they move inside cylinder surface, it make a bug. In this Wiki page describe how to project the surface nodes when they moves inside the cylinder surface.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Project_in.jpg‎ |frameless|800px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.2 (a)Schematic diagram when the surface node moves inwards .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5658</id>
		<title>PARADISCYL:Cylinder-Project surface node</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5658"/>
		<updated>2011-12-08T09:16:58Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Project surface nodes &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the cylinder code, surface nodes need to stay on the surface of the cylinder. If they move outside the cylinder, it can be handled by Cylinder_Remesh(). However, if they move inside cylinder surface, it make a bug. In this Wiki page describe how to project the surface nodes when they moves inside the cylinder surface.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Project_out.jpg‎ |frameless|800px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a)Schematic diagram.&lt;br /&gt;
&lt;br /&gt;
 Searching for the surface node(node in Figure 1.(a))&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if &#039;&#039;seglength&#039;&#039; is less than &#039;&#039;minSeg&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Count the number of independent slip planes of inside arms. 		&lt;br /&gt;
	&lt;br /&gt;
   &#039;&#039;Case I&#039;&#039;:if nbr1 has a independent slip plane and nbr1 has 3, 2 of which are linked to surface&lt;br /&gt;
   -&amp;gt; Project nbr1 to the surface along the line(See figure 1.(b))&lt;br /&gt;
&lt;br /&gt;
   &#039;&#039;Case II&#039;&#039;:if nbr1 has 2 independent slip planes&lt;br /&gt;
    Project nbr1 to surface along the intersection of two slip planes(See figure 1.(c))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5657</id>
		<title>File:Project in.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5657"/>
		<updated>2011-12-08T09:16:32Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Project in.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5656</id>
		<title>File:Project in.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5656"/>
		<updated>2011-12-08T09:16:11Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Project in.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5655</id>
		<title>File:Project in.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5655"/>
		<updated>2011-12-08T09:15:57Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Project in.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_out.jpg&amp;diff=5654</id>
		<title>File:Project out.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_out.jpg&amp;diff=5654"/>
		<updated>2011-12-08T09:15:08Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Project out.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_out.jpg&amp;diff=5653</id>
		<title>File:Project out.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_out.jpg&amp;diff=5653"/>
		<updated>2011-12-08T09:14:00Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Project out.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5652</id>
		<title>File:Project in.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_in.jpg&amp;diff=5652"/>
		<updated>2011-12-08T09:01:18Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Project_out.jpg&amp;diff=5651</id>
		<title>File:Project out.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Project_out.jpg&amp;diff=5651"/>
		<updated>2011-12-08T09:01:06Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5650</id>
		<title>PARADISCYL:Cylinder-Remove surface debris</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5650"/>
		<updated>2011-12-08T08:14:00Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Remove surface debris &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is remaining issue realted to the time step due to the small dislocation segments.This tutorial describes how to remove tiny dislocation segment in cylinder code.&lt;br /&gt;
&lt;br /&gt;
When two dislocations meet near the surface and form a junction, it would generate very tiny segments, which occur rapid drop in time step. To overcome this issue,we remove these small dislocation segment according to the following algorithm.   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if &#039;&#039;seglength&#039;&#039; is less than &#039;&#039;minSeg&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Count the number of independent slip planes of inside arms. 		&lt;br /&gt;
	&lt;br /&gt;
   &#039;&#039;Case I&#039;&#039;:if nbr1 has a independent slip plane and nbr1 has 3, 2 of which are linked to surface&lt;br /&gt;
   -&amp;gt; Project nbr1 to the surface along the line(See figure 1.(b))&lt;br /&gt;
&lt;br /&gt;
   &#039;&#039;Case II&#039;&#039;:if nbr1 has 2 independent slip planes&lt;br /&gt;
    Project nbr1 to surface along the intersection of two slip planes(See figure 1.(c))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Remove_surface_debris1.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|[[Image:Remove_surface_debris2.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|[[Image:Remove_surface_debris3.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(c)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a)Schematic diagram (b) Case &#039;&#039;I&#039;&#039;  (c) Case &#039;&#039;II&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5649</id>
		<title>PARADISCYL:Cylinder-Remove surface debris</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5649"/>
		<updated>2011-12-08T08:09:33Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Remove surface debris &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is remaining issue realted to the time step due to the small dislocation segments.This tutorial describes how to remove tiny dislocation segment in cylinder code.&lt;br /&gt;
&lt;br /&gt;
When two dislocations meet near the surface and form a junction, it would generate very tiny segments, which occur rapid drop in time step. To overcome this issue,  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if &#039;&#039;seglength&#039;&#039; is less than &#039;&#039;minSeg&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Count the number of independent slip planes of inside arms. 		&lt;br /&gt;
	&lt;br /&gt;
   &#039;&#039;Case I&#039;&#039;:if nbr1 has a independent slip plane and nbr1 has 3, 2 of which are linked to surface&lt;br /&gt;
   -&amp;gt; Project nbr1 to the surface along the line(See figure 1.(b))&lt;br /&gt;
&lt;br /&gt;
   &#039;&#039;Case II&#039;&#039;:if nbr1 has 2 independent slip planes&lt;br /&gt;
    Project nbr1 to surface along the intersection of two slip planes(See figure 1.(c))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Remove_surface_debris1.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|[[Image:Remove_surface_debris2.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|[[Image:Remove_surface_debris3.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(c)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a)Schematic diagram (b) Case &#039;&#039;I&#039;&#039;  (c) Case &#039;&#039;II&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5648</id>
		<title>PARADISCYL:Cylinder-Remove surface debris</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5648"/>
		<updated>2011-12-08T07:54:05Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Remove surface debris &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is remaining issue realted to the time step due to the small dislocation segments.This tutorial describes how to remove tiny dislocation segment in cylinder code.&lt;br /&gt;
&lt;br /&gt;
When two dislocations meet near the surface and form a junction, it would generate very tiny segments, which occur rapid drop in time step. To overcome this issue,  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 1.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if &#039;&#039;seglength&#039;&#039; is less than &#039;&#039;minSeg&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Count number of independent slip plane of inside arms. 		&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Remove_surface_debris1.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|[[Image:Remove_surface_debris2.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|[[Image:Remove_surface_debris3.jpg‎ |frameless|200px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(c)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a)Schematic diagram (b) Case &#039;&#039;I&#039;&#039;  (c) Case &#039;&#039;II&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris1.jpg&amp;diff=5647</id>
		<title>File:Remove surface debris1.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris1.jpg&amp;diff=5647"/>
		<updated>2011-12-08T07:47:45Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Remove surface debris1.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris2.jpg&amp;diff=5646</id>
		<title>File:Remove surface debris2.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris2.jpg&amp;diff=5646"/>
		<updated>2011-12-08T07:47:28Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Remove surface debris2.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris3.jpg&amp;diff=5645</id>
		<title>File:Remove surface debris3.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris3.jpg&amp;diff=5645"/>
		<updated>2011-12-08T07:47:10Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Remove surface debris3.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris3.jpg&amp;diff=5644</id>
		<title>File:Remove surface debris3.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris3.jpg&amp;diff=5644"/>
		<updated>2011-12-08T07:40:21Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris2.jpg&amp;diff=5643</id>
		<title>File:Remove surface debris2.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris2.jpg&amp;diff=5643"/>
		<updated>2011-12-08T07:40:11Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris1.jpg&amp;diff=5642</id>
		<title>File:Remove surface debris1.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Remove_surface_debris1.jpg&amp;diff=5642"/>
		<updated>2011-12-08T07:39:58Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5641</id>
		<title>PARADISCYL:Cylinder-Remove surface debris</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Remove_surface_debris&amp;diff=5641"/>
		<updated>2011-12-08T07:27:52Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Remove surface debris &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is remaining issue realted to the time step due to the small dislocation segments.This tutorial describes how to remove tiny dislocation segment in cylinder code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
4. Given burgers vector, there are three possible slip planes. For example, if &amp;lt;math&amp;gt;\mathbf{b} = a[111]&amp;lt;/math&amp;gt;, then possible slip planes are &amp;lt;math&amp;gt;\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;(See figure 2(b))&lt;br /&gt;
&lt;br /&gt;
5. Compute projected forces on each plane. &lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{F}_{i} = \mathbf{F}_{total}-(\mathbf{F}_{total} \cdot \mathbf{n}_i)\mathbf{n}_i&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. Based on the magnitudes of &amp;lt;math&amp;gt;\mathbf{F}_{i}&amp;lt;/math&amp;gt;, choose slip plane of the surface dislocation segment.&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.2 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5640</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5640"/>
		<updated>2011-12-08T01:01:34Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocations in the direction along which the length of dislocation would be shortened.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which projected total force has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
4. Given burgers vector, there are three possible slip planes. For example, if &amp;lt;math&amp;gt;\mathbf{b} = a[111]&amp;lt;/math&amp;gt;, then possible slip planes are &amp;lt;math&amp;gt;\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;(See figure 2(b))&lt;br /&gt;
&lt;br /&gt;
5. Compute projected forces on each plane. &lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{F}_{i} = \mathbf{F}_{total}-(\mathbf{F}_{total} \cdot \mathbf{n}_i)\mathbf{n}_i&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. Based on the magnitudes of &amp;lt;math&amp;gt;\mathbf{F}_{i}&amp;lt;/math&amp;gt;, choose slip plane of the surface dislocation segment.&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.2 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5639</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5639"/>
		<updated>2011-12-08T01:00:50Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* How to select slip plane of the surface segments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocations in the direction along which the length of dislocation would be shortened.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which projected total force has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
4. Given burgers vector, there are three possible slip planes. For example, if &amp;lt;math&amp;gt;\mathbf{b} = a[111]&amp;lt;/math&amp;gt;, then possible slip planes are &amp;lt;math&amp;gt;\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;(See figure 2(b))&lt;br /&gt;
&lt;br /&gt;
5. Compute projected forces on each plane. &lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{F}_{i} = \mathbf{F}_{total}-(\mathbf{F}_{total} \cdot \mathbf{n}_i)\mathbf{n}_i&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. Based on the magnitudes of &amp;lt;math&amp;gt;\mathbf{F}_{i}&amp;lt;/math&amp;gt;, choose slip plane of the surface dislocation segment.&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5638</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5638"/>
		<updated>2011-12-08T00:57:50Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* How to select slip plane of the surface segments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocations in the direction along which the length of dislocation shortens their length.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
4. Given burgers vector, there are three possible slip planes. For example, if &amp;lt;math&amp;gt;\mathbf{b} = a[111]&amp;lt;/math&amp;gt;, then possible slip planes are &amp;lt;math&amp;gt;\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;(See figure 2(b))&lt;br /&gt;
&lt;br /&gt;
5. Compute projected forces on each plane. &lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{F}_{i} = \mathbf{F}_{total}-(\mathbf{F}_{total} \cdot \mathbf{n}_i)\mathbf{n}_i&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. Based on the magnitudes of &amp;lt;math&amp;gt;\mathbf{F}_{i}&amp;lt;/math&amp;gt;, choose slip plane of the surface dislocation segment.&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5637</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5637"/>
		<updated>2011-12-08T00:56:21Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
4. Given burgers vector, there are three possible slip planes. For example, if &amp;lt;math&amp;gt;\mathbf{b} = a[111]&amp;lt;/math&amp;gt;, then possible slip planes are &amp;lt;math&amp;gt;\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;(See figure 2(b))&lt;br /&gt;
&lt;br /&gt;
5. Compute projected forces on each plane. &lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{F}_{i} = \mathbf{F}_{total}-(\mathbf{F}_{total} \cdot \mathbf{n}_i)\mathbf{n}_i&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. Based on the magnitudes of &amp;lt;math&amp;gt;\mathbf{F}_{i}&amp;lt;/math&amp;gt;, choose slip plane of the surface dislocation segment.&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5636</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5636"/>
		<updated>2011-12-08T00:54:58Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
4. Given burgers vector, there are three possible slip planes. For example, if &amp;lt;math&amp;gt;\mathbf{b} = a[111]&amp;lt;/math&amp;gt;, then possible slip planes are &amp;lt;math&amp;gt;\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;(See figure 2(b))&lt;br /&gt;
&lt;br /&gt;
5. Compute projected forces on each plane. &lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{F}_{i} = \mathbf{F}_{total}-(\mathbf{F}_{total} \cdot \mathbf{n}_i)\mathbf{n}_i&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the second test case,  we consider a circular prismatic dislocation loop concentric with the cylindrical axis, discretized with 12 equally spaced nodes connected by straight segments, as shown in Fig. 3, where the dislocation loop radius is 0.8 times to the cylinder radius. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5635</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5635"/>
		<updated>2011-12-08T00:47:56Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   &amp;lt;math&amp;gt; 1.0-\mathbf{b} \cdot \mathbf{ \xi}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; &lt;br /&gt;
, where &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt; is a tolerance.&lt;br /&gt;
&lt;br /&gt;
In the second test case,  we consider a circular prismatic dislocation loop concentric with the cylindrical axis, discretized with 12 equally spaced nodes connected by straight segments, as shown in Fig. 3, where the dislocation loop radius is 0.8 times to the cylinder radius. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5634</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5634"/>
		<updated>2011-12-08T00:43:11Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
&lt;br /&gt;
3. Check if the character of surface segment is similar to screw&lt;br /&gt;
   1.0-&amp;lt;math&amp;gt;T_{ij}&amp;lt;=  \epsilon&amp;lt;/math&amp;gt; }&lt;br /&gt;
&lt;br /&gt;
In the second test case,  we consider a circular prismatic dislocation loop concentric with the cylindrical axis, discretized with 12 equally spaced nodes connected by straight segments, as shown in Fig. 3, where the dislocation loop radius is 0.8 times to the cylinder radius. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
For simplicity, cell is not used for the force calculatoin. To do this, modify &#039;&#039;&#039;makefile&#039;&#039;&#039; in ParaDiS/cylinder directory so that the following line is active.&lt;br /&gt;
 DEFS += -D_CYL_TEST23&lt;br /&gt;
&lt;br /&gt;
[[Image:T2_relative_error.jpg|frameless|400px|right|Fig.4. ]]&lt;br /&gt;
Due to the symmetry of this problem, the image forces on all nodes point to the radial direction and&lt;br /&gt;
have the same magnitude. An estimate of their relative error is plotted as a function of number of grid in the circumferential direction(&amp;lt;math&amp;gt;\mathbf{n}_\theta&amp;lt;/math&amp;gt;) in the following figure. Because this problem does not have an analytic solution, the reference value is taken to be the value obtained using Method I (Bessel) with &amp;lt;math&amp;gt;\mathbf{n}_\theta=181&amp;lt;/math&amp;gt;. As expected, the relative error in radial image force decreases with increasing number of grids.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5633</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5633"/>
		<updated>2011-12-08T00:37:14Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
1. Searching for the surface node(node in Figure 2.(a))&lt;br /&gt;
2. Find the neighbor node(nbr1 in Figure 2.(a))&lt;br /&gt;
In the second test case,  we consider a circular prismatic dislocation loop concentric with the cylindrical axis, discretized with 12 equally spaced nodes connected by straight segments, as shown in Fig. 3, where the dislocation loop radius is 0.8 times to the cylinder radius. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:cylinder_fig.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|[[Image:slip_system.jpg‎ |frameless|300px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a)Schematic (b)  Slip system &amp;lt;math&amp;gt;\mathbf{b} = a[111],\mathbf{n}_1 = [1\bar{1}1],\mathbf{n}_2 = [0\bar{1}1],\mathbf{n}_3 = [\bar{1}01]&amp;lt;/math&amp;gt;.&lt;br /&gt;
For simplicity, cell is not used for the force calculatoin. To do this, modify &#039;&#039;&#039;makefile&#039;&#039;&#039; in ParaDiS/cylinder directory so that the following line is active.&lt;br /&gt;
 DEFS += -D_CYL_TEST23&lt;br /&gt;
&lt;br /&gt;
[[Image:T2_relative_error.jpg|frameless|400px|right|Fig.4. ]]&lt;br /&gt;
Due to the symmetry of this problem, the image forces on all nodes point to the radial direction and&lt;br /&gt;
have the same magnitude. An estimate of their relative error is plotted as a function of number of grid in the circumferential direction(&amp;lt;math&amp;gt;\mathbf{n}_\theta&amp;lt;/math&amp;gt;) in the following figure. Because this problem does not have an analytic solution, the reference value is taken to be the value obtained using Method I (Bessel) with &amp;lt;math&amp;gt;\mathbf{n}_\theta=181&amp;lt;/math&amp;gt;. As expected, the relative error in radial image force decreases with increasing number of grids.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Slip_system.jpg&amp;diff=5632</id>
		<title>File:Slip system.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Slip_system.jpg&amp;diff=5632"/>
		<updated>2011-12-08T00:29:09Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Cylinder_fig.jpg&amp;diff=5631</id>
		<title>File:Cylinder fig.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Cylinder_fig.jpg&amp;diff=5631"/>
		<updated>2011-12-08T00:28:58Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5630</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5630"/>
		<updated>2011-12-07T23:11:46Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one on which the summation of forces has maximum value. &lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane for the front node, while red plane is selected for the back node)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
In this mechanism, straight edge dislocation has two different slip planes(See Figure 1-(a)). &lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
==Algorithm==&lt;br /&gt;
&lt;br /&gt;
In the second test case,  we consider a circular prismatic dislocation loop concentric with the cylindrical axis, discretized with 12 equally spaced nodes connected by straight segments, as shown in Fig. 3, where the dislocation loop radius is 0.8 times to the cylinder radius. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:T2_flat_loop_Isoview.jpg‎ |frameless|400px|caption]]&lt;br /&gt;
|[[Image:T2_flat_loop_topview.jpg‎ |frameless|400px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.3 (a) Isoview (b) Topview.The Bergurs vector is &amp;lt;math&amp;gt;\mathbf{b} = a[001]&amp;lt;/math&amp;gt;.&lt;br /&gt;
For simplicity, cell is not used for the force calculatoin. To do this, modify &#039;&#039;&#039;makefile&#039;&#039;&#039; in ParaDiS/cylinder directory so that the following line is active.&lt;br /&gt;
 DEFS += -D_CYL_TEST23&lt;br /&gt;
&lt;br /&gt;
[[Image:T2_relative_error.jpg|frameless|400px|right|Fig.4. ]]&lt;br /&gt;
Due to the symmetry of this problem, the image forces on all nodes point to the radial direction and&lt;br /&gt;
have the same magnitude. An estimate of their relative error is plotted as a function of number of grid in the circumferential direction(&amp;lt;math&amp;gt;\mathbf{n}_\theta&amp;lt;/math&amp;gt;) in the following figure. Because this problem does not have an analytic solution, the reference value is taken to be the value obtained using Method I (Bessel) with &amp;lt;math&amp;gt;\mathbf{n}_\theta=181&amp;lt;/math&amp;gt;. As expected, the relative error in radial image force decreases with increasing number of grids.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5629</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5629"/>
		<updated>2011-12-07T23:03:39Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation, we knew the image stress generate the force to move dislocation in the direction along which the length of dislocation shortens.Therefore, image force points downward for the front node, while it points upward for the back node(Figure 1). However, P-K force points in same direction both front node and back node. Taking the summation of these forces into account, the slip plane is selected as the one&lt;br /&gt;
&lt;br /&gt;
For simplicity, we In the first test case, image stress of a straight edge dislocation is considered, as shown in the &#039;&#039;Figure 1&#039;&#039;, where dislocation is offset(&amp;lt;math&amp;gt;x0&amp;lt;/math&amp;gt;) from the center of the cylinder. We have two cases of &amp;lt;math&amp;gt;x0&amp;lt;/math&amp;gt;=0.5&amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt; and 0.9&amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt;.Here, &amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt; is the radius of the cylinder. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
Since the image stress field of this configuration had been solved analytically[Eshelby, J.D., 1979],we compare the image force between the simulation result and analytic solution.The number of grids in circumferential direction is same as the one along the cylinder axis.To consider periodic images along the cylinder axis under PBC, analytical stress field of edge dislocation is implemented in the function of &amp;quot;AllSegmentStress_no_cell_test1&amp;quot;.To use this function, modify &#039;&#039;&#039;makefile&#039;&#039;&#039; in ParaDiS/cylinder directory so that the following line is active.&lt;br /&gt;
 DEFS +=  -D_CYL_TEST1&lt;br /&gt;
&lt;br /&gt;
[[Image:Relative error plot.jpg|frameless|400px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
Using Method I,the relative error in the image force is computed from the image stress calcualtion. Right plot clearly show exponential decay of the relative error with increasing number of grids. The convergence is slower when the location of the edge dislocation is close to the surface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum2.jpg&amp;diff=5628</id>
		<title>File:Force sum2.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum2.jpg&amp;diff=5628"/>
		<updated>2011-12-07T22:55:37Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Force sum2.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum1.jpg&amp;diff=5627</id>
		<title>File:Force sum1.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum1.jpg&amp;diff=5627"/>
		<updated>2011-12-07T22:55:25Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Force sum1.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum2.jpg&amp;diff=5626</id>
		<title>File:Force sum2.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum2.jpg&amp;diff=5626"/>
		<updated>2011-12-07T22:47:34Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Force sum2.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum1.jpg&amp;diff=5625</id>
		<title>File:Force sum1.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum1.jpg&amp;diff=5625"/>
		<updated>2011-12-07T22:47:04Z</updated>

		<summary type="html">&lt;p&gt;Iryu: uploaded a new version of &amp;quot;File:Force sum1.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5624</id>
		<title>PARADISCYL:Cylinder-Surface cross slip</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Surface_cross_slip&amp;diff=5624"/>
		<updated>2011-12-07T22:40:44Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Surface cross slip &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial describes how to implement cross slip mechanism from the cylinder surface.  The theoretical background is published in Computing Image Stress in an Elastic Cylinder(&#039;&#039;Proceedings of the National Academy of Sciences&#039;&#039;, &#039;&#039;&#039;105&#039;&#039;&#039;, 14304 (2008)http://micro.stanford.edu/~caiwei/papers/Weinberger08PNAS-bccpillar.pdf (PDF)])&lt;br /&gt;
&lt;br /&gt;
== How to select slip plane of the surface segments==&lt;br /&gt;
&lt;br /&gt;
To implement surface cross slip in cylinder code, we change the slip plane of the surface nodes with respect to the magnitude of the force on the surface nodes.To do that,dislocation character of the surface nodes should be screw-like. &lt;br /&gt;
[[Image:Schematic_view.jpg|frameless|300px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
If there is a screw dislocation in the BCC crystal in left figure, we can see that there are three possible slip planes(red, blue green planes in the figure). From the MD calculation we know the image stress Using Method I,the relative error in the image force is computed from the image stress calcualtion. Right plot clearly show exponential decay of the relative error with increasing number of grids. The convergence is slower when the location of the edge dislocation is close to the surface.&lt;br /&gt;
&lt;br /&gt;
For simplicity, we In the first test case, image stress of a straight edge dislocation is considered, as shown in the &#039;&#039;Figure 1&#039;&#039;, where dislocation is offset(&amp;lt;math&amp;gt;x0&amp;lt;/math&amp;gt;) from the center of the cylinder. We have two cases of &amp;lt;math&amp;gt;x0&amp;lt;/math&amp;gt;=0.5&amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt; and 0.9&amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt;.Here, &amp;lt;math&amp;gt;R&amp;lt;/math&amp;gt; is the radius of the cylinder. &lt;br /&gt;
{|border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Image:Force_sum1.jpg|frameless|350px|caption]]&lt;br /&gt;
|[[Image:Force_sum2.jpg|frameless|350px|caption]]&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(a)&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|(b)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot; | Fig.1 (a) When the P-K force is dominant(blue plane is taken as a slip plane)(b) When the image force is dominant(green plane is taken as a slip plane)&lt;br /&gt;
&lt;br /&gt;
Since the image stress field of this configuration had been solved analytically[Eshelby, J.D., 1979],we compare the image force between the simulation result and analytic solution.The number of grids in circumferential direction is same as the one along the cylinder axis.To consider periodic images along the cylinder axis under PBC, analytical stress field of edge dislocation is implemented in the function of &amp;quot;AllSegmentStress_no_cell_test1&amp;quot;.To use this function, modify &#039;&#039;&#039;makefile&#039;&#039;&#039; in ParaDiS/cylinder directory so that the following line is active.&lt;br /&gt;
 DEFS +=  -D_CYL_TEST1&lt;br /&gt;
&lt;br /&gt;
[[Image:Relative error plot.jpg|frameless|400px|right|Fig.2. ]]&lt;br /&gt;
&lt;br /&gt;
Using Method I,the relative error in the image force is computed from the image stress calcualtion. Right plot clearly show exponential decay of the relative error with increasing number of grids. The convergence is slower when the location of the edge dislocation is close to the surface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum2.jpg&amp;diff=5623</id>
		<title>File:Force sum2.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum2.jpg&amp;diff=5623"/>
		<updated>2011-12-07T22:37:25Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum1.jpg&amp;diff=5622</id>
		<title>File:Force sum1.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Force_sum1.jpg&amp;diff=5622"/>
		<updated>2011-12-07T22:37:12Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=File:Schematic_view.jpg&amp;diff=5621</id>
		<title>File:Schematic view.jpg</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=File:Schematic_view.jpg&amp;diff=5621"/>
		<updated>2011-12-07T22:31:54Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5620</id>
		<title>Overview of ParaDiS 2.2</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5620"/>
		<updated>2011-12-05T04:52:13Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Simulation time and timestepping controls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is taken from ParaDiSInfo.txt in ParaDiS.v2.2 distribution.  Written by Gregg Hommes, LLNL.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
The Parallel Dislocation Simulator (ParaDiS) was written&lt;br /&gt;
and developed at LLNL by a team of physicists and computer&lt;br /&gt;
scientists.  ParaDiS is a code for doing Dislocation Dynamics&lt;br /&gt;
simulations and was specifically written to perform well on&lt;br /&gt;
massively parallel computers.  The computational approach to&lt;br /&gt;
Dislocation Dynamics used in ParaDiS is fairly simple.  In&lt;br /&gt;
it, one introduces dislocation lines into the computational&lt;br /&gt;
volume and lets them interact and move in response to the&lt;br /&gt;
forces imposed by external stress and inter-dislocation&lt;br /&gt;
interactions. &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Building ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
=== Directory Structure ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS release consists of a file which, when unzipped&lt;br /&gt;
and untarred creates a primary directory and a structure&lt;br /&gt;
of subdirectories.  For convenience, this primary directory&lt;br /&gt;
will hereafter be referred to as &amp;lt;ParadisDir&amp;gt;.  The directory&lt;br /&gt;
structure of the release will look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains primary &#039;make&#039; files for controlling build of all executables&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;This directory will be created during the &#039;make&#039; process. All executables will be placed in this directory during compilation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/docs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains any additional documentation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/include/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains all C and C++ header files&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/inputs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;FMM and non-FMM correction tables, X-display defaults file, gnuplot command file, etc.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/materials/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Sample files containing material specific tables and constants&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/src/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;All C and C++ source code modules related to the paradis executable&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/tools/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Miscellaneous support scripts&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/utilities/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Source code modules pertaining to the various support tools&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling ===&lt;br /&gt;
&lt;br /&gt;
The current ParaDiS &#039;make&#039; files support compilation for&lt;br /&gt;
a number of pre-defined system types that are defined in&lt;br /&gt;
the file &#039;makefile.sys&#039;. In order to compile the code on&lt;br /&gt;
one of these pre-defined system types, simply edit&lt;br /&gt;
&#039;makefile.setup&#039; and set the &amp;quot;SYS=...&amp;quot; value to the&lt;br /&gt;
desired system type.  For other system types, add a new&lt;br /&gt;
system type into &#039;makefile.sys&#039; following the format used&lt;br /&gt;
for the existing systems and, as above, set the &amp;quot;SYS=...&amp;quot;&lt;br /&gt;
value in &#039;makefile.setup&#039;.&lt;br /&gt;
&lt;br /&gt;
Executing &#039;gmake&#039; with no options in &amp;lt;ParadisDir&amp;gt; will&lt;br /&gt;
build the following executables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradis&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Main parallel application&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisgen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating initial dislocation configurations (See [[#Utilities|Utilities]] section for  details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisrepart&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for generating a new domain decomposition for an existing dislocation configuration (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisconvert&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for converting older format ParaDiS control parameter files to the current format (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating image correction tables needed when FMM code is enabled.  (See  [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegenp&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Parallel version of the ctablegen utility. See above.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/stresstablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating tables used in calculating far-field stress if the FMM code is not enabled.  (See [[#Utilities|Utilities]] section for details)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Make files ===&lt;br /&gt;
&lt;br /&gt;
Compilation of the code is done via &#039;gmake&#039; and depends&lt;br /&gt;
on the following &#039;make&#039; files located in the &amp;lt;ParadisDir&amp;gt;&lt;br /&gt;
directory.  (See the individual make files for details)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This is the primary make file controlling the build of the parallel executable and associated utilities.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.sys&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This file contains, for each supported system type, a set of &#039;make&#039; macros, definitions,  compiler selection, library and include file paths, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.setup&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Contains numerous &#039;make&#039; settings and flags that are not system specific, including settings for system type, optimization level, debugging flags, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;         &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Executing ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
===  Command line ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS command line format is:&lt;br /&gt;
&lt;br /&gt;
 paradis [-r &amp;lt;numCycles&amp;gt;] [-d dataFile] &amp;lt;controlFile&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ctrlFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the ParaDiS control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-d &amp;lt;dataFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the base name of the file(s) containing the nodal data for the run. If this file name is not supplied, the code looks for a data file named the same as the control file with the file name suffix (if any) replaced with &amp;quot;.data&amp;quot;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-r &amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;numCycles&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Causes the code to execute a series of &amp;lt;numCycles&amp;gt; cycles during which no force calculations or dislocation movement will occur. These cycles will be used strictly for load-balancing purposes and will be done before the normal cycles. This can be useful when a simulation is started with a uniform domain decomposition  and needs time to converge on an optimal decomposition as would occur when restarting a simulation on a different number of cpus&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
For example, the following are all valid execution lines with the&lt;br /&gt;
first two being equivalent, the third version using the same control&lt;br /&gt;
file as the first two, but explicitly selecting a different nodal&lt;br /&gt;
data file.&lt;br /&gt;
&lt;br /&gt;
For example, assuming you had a the control parameter file&lt;br /&gt;
&#039;testrun.ctrl&#039; and the two different nodal data files &#039;testrun.data&#039;&lt;br /&gt;
and &#039;testrun2.data&#039;, all of the following command lines formats&lt;br /&gt;
are valid.  The first two commands are equivalent, the third&lt;br /&gt;
uses the same control parameter file as the first two, but&lt;br /&gt;
explicitly selects a different nodal data file.&lt;br /&gt;
           &lt;br /&gt;
 mpirun -np 8 bin/paradis testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun.data testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun2.data testrun.ctrl&lt;br /&gt;
&lt;br /&gt;
NOTE: The number of processors specified to mpirun (or other&lt;br /&gt;
parallel job initiator applicable to the execting system)&lt;br /&gt;
must match the number of domains specified in the control&lt;br /&gt;
file (i.e. np = numXdoms * numYdoms * numZdoms).&lt;br /&gt;
&lt;br /&gt;
Several small example problems are included with the&lt;br /&gt;
ParaDiS release.  The control and data files for these&lt;br /&gt;
examples are:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.data&lt;br /&gt;
&lt;br /&gt;
NOTE: These tests require the following tables used&lt;br /&gt;
for calculating the far-field stresses from distant&lt;br /&gt;
cells and periodic images of the problem.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
These file *may* have been provided with the source&lt;br /&gt;
code release.  If not, see the README file in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tests directory for instructions on&lt;br /&gt;
generating these files.&lt;br /&gt;
&lt;br /&gt;
The &#039;form_binaryjunc*&#039; files contain a small configuration that&lt;br /&gt;
will demonstrate the formation of a binary junction from two&lt;br /&gt;
dislocation lines, while the &#039;frank_read_src*&#039; files contain a&lt;br /&gt;
configuration that demonstrates the behaviour of a frank-read&lt;br /&gt;
source.  Both these examples are single cpu examples.  To run&lt;br /&gt;
these tests, from the main &amp;lt;ParadisDir&amp;gt; directory execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/form_binaryjunc.ctrl&lt;br /&gt;
or&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/frank_read_src.ctrl&lt;br /&gt;
          &lt;br /&gt;
The &#039;fmm_8cpu*&#039; files are just a general demonstration of the&lt;br /&gt;
behavior of a small number of screw dislocations.  This is&lt;br /&gt;
an 8 processor simulation using the Fast Multipole Method&lt;br /&gt;
(FMM) for calculating stress from far-field interactions.&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 ./bin/paradis ./tests/fmm_8cpu.ctrl&lt;br /&gt;
&lt;br /&gt;
Any output from these runs will be placed into corresponding&lt;br /&gt;
subdirectories under the &amp;quot;tests&amp;quot; directory.&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Inputs ==&lt;br /&gt;
&lt;br /&gt;
=== Input Files ===&lt;br /&gt;
&lt;br /&gt;
A ParaDiS simulation may be started from scratch, or &lt;br /&gt;
terminated and then later restarted if the user requested&lt;br /&gt;
periodic dumps of restart files.  In either case, the initial&lt;br /&gt;
or restart data data consists of two files, a control&lt;br /&gt;
parameter file and a nodal data file.  (See section on&lt;br /&gt;
[[#Output|Output]] for details on restart files)&lt;br /&gt;
&lt;br /&gt;
=== Control Parameter File ===&lt;br /&gt;
&lt;br /&gt;
The control parameter file consists of data of the form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = value&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&lt;br /&gt;
 identifier = [value_list]&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;or&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = string&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
where&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;identifier&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is the name of a control parameter&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a numeric value associated with the parameter specified by &amp;lt;identifier&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value_list&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a list of numeric values to be associated with the array specified by &amp;lt;identifier&amp;gt;. This values in this list must be delimited by white-space or line-feeds.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;string&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;a character string enclosed within either single or double quotes.  The string may not contain a line-feed character.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
        &lt;br /&gt;
The identifier names are case-insensitive and may be specified&lt;br /&gt;
as any mixture of upper and lower case.  If the code encounters&lt;br /&gt;
an identifier it does not recognize, the identifier and associated&lt;br /&gt;
value(s) will be ignore and a warning message displayed.&lt;br /&gt;
&lt;br /&gt;
Any blank lines in the control parameter file will will be&lt;br /&gt;
ignored and additionally, any &#039;#&#039; not contained within quotes&lt;br /&gt;
is treated as the beginning of a comment and causes the remainder&lt;br /&gt;
of the current line to be ignored.&lt;br /&gt;
&lt;br /&gt;
See the [[#Appendix 1. Control Parameters|Appendix]] for a complete list of the recognized control&lt;br /&gt;
parameters as well as a brief description of each.&lt;br /&gt;
&lt;br /&gt;
===  Nodal Data File ===&lt;br /&gt;
&lt;br /&gt;
==== Data File Format ====&lt;br /&gt;
&lt;br /&gt;
The nodal data will be contained in 1 or more file&lt;br /&gt;
segments, with the information being broken into&lt;br /&gt;
three sections (described below). The first section&lt;br /&gt;
is the data file parameters, the second section the&lt;br /&gt;
domain decomposition, and the third section the nodal&lt;br /&gt;
data.  The first two sections will be included only&lt;br /&gt;
in the first file segment.&lt;br /&gt;
&lt;br /&gt;
==== Data File Segments ====&lt;br /&gt;
&lt;br /&gt;
Given a control parameter file &#039;restart.cn&#039;, the&lt;br /&gt;
associated nodal data file(s) would be named:&lt;br /&gt;
&lt;br /&gt;
 restart.data[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where  &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when the nodal data was written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter was greater than 1). &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;      &lt;br /&gt;
    &lt;br /&gt;
For example, suppose the &amp;lt;numIOGroups&amp;gt; control parameter&lt;br /&gt;
was set to 4 during a simulation executed on 16 processors.&lt;br /&gt;
If the simulation created a restart file set at termination,&lt;br /&gt;
the following files would be generated and could be used&lt;br /&gt;
as input to continue the simulation at a later time:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.cn&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.0&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.1&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.2&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.3&lt;br /&gt;
&lt;br /&gt;
==== Data File Parameters ====&lt;br /&gt;
&lt;br /&gt;
The data file parameters make up the first section of&lt;br /&gt;
the nodal data file and are parsed in the same manner&lt;br /&gt;
as specified above for the control file parameters.&lt;br /&gt;
These parameters must preceed the other two types of&lt;br /&gt;
information in the nodal data file.  NOTE: The values&lt;br /&gt;
of these parameters are updated within the ParaDiS&lt;br /&gt;
code as necessary and should not be changed by the user.&lt;br /&gt;
&lt;br /&gt;
The recognized data file parameters are:&lt;br /&gt;
&lt;br /&gt;
:                     dataFileVersion&lt;br /&gt;
:                     numFileSegments&lt;br /&gt;
:                     minCoordinates&lt;br /&gt;
:                     maxCoordinates&lt;br /&gt;
:                     nodeCount&lt;br /&gt;
:                     dataDecompType&lt;br /&gt;
:                     dataDecompGeometry&lt;br /&gt;
&lt;br /&gt;
==== Domain Decomposition ====&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
==== Nodal Data ====&lt;br /&gt;
The raw nodal data comprises the third section&lt;br /&gt;
of the nodal data file.  For each node, there will&lt;br /&gt;
be a single line of node specific data followed by&lt;br /&gt;
several lines of segment specific data for each&lt;br /&gt;
segment associated with the node.  The nodal data&lt;br /&gt;
consists of:&lt;br /&gt;
&lt;br /&gt;
: node_tag x_coord y_coord z_coord num_arms constraint&lt;br /&gt;
&lt;br /&gt;
The segment specific data consists of:&lt;br /&gt;
&lt;br /&gt;
: nbr_tag burg_x burg_y, burg_z&lt;br /&gt;
: norm_x norm_y norm_z&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;*_tag&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a comma delimited pair of numbers uniquely identifying a node.  The first number is the ID of the domain owning the node, the second is the index number of the node within the owning domain.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;bottom&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;x_coord, y_coord, z_coord&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;coordinates of the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;num_arms&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Number of segments associated with the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;constraint&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Integer value indicating any constraints placed on the node (i.e.  a constraint of 7 implies a node fixed in place and unmovable)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Cell and Domain Structure ==&lt;br /&gt;
&lt;br /&gt;
The ParaDiS code is used to simulate cubic systems which&lt;br /&gt;
are simultaneously partitioned into a uniform mesh of&lt;br /&gt;
cubic &#039;cells&#039; and spatially decomposed into &#039;domains&#039;.&lt;br /&gt;
&lt;br /&gt;
The cellular structure is defined by the &amp;lt;nXcells&amp;gt;, &amp;lt;nYcells&amp;gt;&lt;br /&gt;
and &amp;lt;nZcells&amp;gt; control parameters, and is used to determine&lt;br /&gt;
the cut-off distance between direct segment to segment&lt;br /&gt;
dislocation interactions and remote (or far-field) interactions.&lt;br /&gt;
In particular, for a given dislocation segment, the interaction&lt;br /&gt;
between the segment and any other segments in the same cell&lt;br /&gt;
or any of the immediately neighboring 26 cells are calculated&lt;br /&gt;
directly.  Interactions with all segments outside that range&lt;br /&gt;
are calculated via a hierarchical Fast Multipole Method or&lt;br /&gt;
by lumping all segments in the remote cell into a&lt;br /&gt;
&#039;super-dislocation&#039; where the group of remote dislocations&lt;br /&gt;
are represented as an expansion of dislocation multipoles.&lt;br /&gt;
(See [[#Far-Field Dislocation Interactions|section on Far-Field Forces]] for details)&lt;br /&gt;
&lt;br /&gt;
The type of spatial decomposition used for the simulation is&lt;br /&gt;
selected by the &amp;lt;decompType&amp;gt; control parameter, along with&lt;br /&gt;
the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt; and &amp;lt;nZdoms&amp;gt; parameters defining&lt;br /&gt;
the number of spatial domains in each dimension.  Each &#039;domain&#039;&lt;br /&gt;
is assigned to a single task (processor) within the simulation.&lt;br /&gt;
(See [[#Domain Decomposition 2|section on Domain Decomposition]] for details on the &lt;br /&gt;
supported types of spatial decomposition)&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Domain Decomposition ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Domain Decomposition Method ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS simulations are spatially decomposed into a number of&lt;br /&gt;
domains equal to the number of processors on which the simulation&lt;br /&gt;
is being executed.  The code curently supports two types of&lt;br /&gt;
domain decomposition and is selected via the &amp;lt;decompType&amp;gt;&lt;br /&gt;
control parameter.  The type 1 decomposition is a Recursive&lt;br /&gt;
Sectioning decomposition which is the default if no decomposition&lt;br /&gt;
type is explicitly requested.  The type 2 is a Recursive&lt;br /&gt;
Bisection decomposition.  (See descriptions of decomposition&lt;br /&gt;
algorithms below.)&lt;br /&gt;
&lt;br /&gt;
Since the ParaDiS simulations tend to grow in size and are&lt;br /&gt;
spatially heterogeneous, it is preferable to dynamically&lt;br /&gt;
recalculate the domain decomposition at intervals during the&lt;br /&gt;
simulation in order to rebalance the workload more efficiently.&lt;br /&gt;
The frequency with which the domain decomposition will be&lt;br /&gt;
recomputed is specified by the &amp;lt;DLBfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
The domain decomposition will be included in the restart files.&lt;br /&gt;
If the simulation is restarted and the &amp;lt;decompType&amp;gt; control&lt;br /&gt;
parameter selects a decomposition type *other* than the&lt;br /&gt;
decomposition that was used to generate the restart file, the&lt;br /&gt;
old domain decomposition from the restart file will be ignored&lt;br /&gt;
and a new domain decomposition of the selected type will be used.&lt;br /&gt;
&lt;br /&gt;
Additionally, if a simulation is restarted with a different number&lt;br /&gt;
of domains or a different domain geometry that that which was used&lt;br /&gt;
to create the restart file, the domain decomposition from the&lt;br /&gt;
restart file will be ignored and a new decomposition will be&lt;br /&gt;
generated.  &lt;br /&gt;
&lt;br /&gt;
Note: When restarting a large simulation (i.e. thousands&lt;br /&gt;
of processors) in such a way that the old domain decomposition must&lt;br /&gt;
be discarded, it may take some time for the simulation to converge&lt;br /&gt;
on an optimal domain decomposition. (The type 1 decomposition is&lt;br /&gt;
particularly susceptible to this.)  There are two ways to mitigate&lt;br /&gt;
this effect.  The first is to use the &#039;paradisrepart&#039; utility, the&lt;br /&gt;
second through the use of the &amp;quot;-r&amp;quot; command line option to ParaDiS.&lt;br /&gt;
See comments in other sections pertaining to these capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Sectioning ===&lt;br /&gt;
&lt;br /&gt;
The Recursive Sectioning algorithm performs a domain&lt;br /&gt;
decomposition over a 3-timestep period.  During the&lt;br /&gt;
first timestep, the entire problem space will be&lt;br /&gt;
sectioned along the X dimension into &amp;lt;nXdoms&amp;gt; slabs&lt;br /&gt;
such that the computational cost of each slab is roughly&lt;br /&gt;
equivalent.  The next timestep, each slab will be&lt;br /&gt;
sectioned alng the Y axis into &amp;lt;nYdoms&amp;gt; columns&lt;br /&gt;
such that the computational cost of each column in a&lt;br /&gt;
slab is roughly equivalent.  On the thrid timestep,&lt;br /&gt;
every column will be sectioned along the Z axis&lt;br /&gt;
into &amp;lt;nZdoms&amp;gt; chunks such that the computational&lt;br /&gt;
cost of each chunk in a column is roughy equivalent.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
third timestep.&lt;br /&gt;
&lt;br /&gt;
NOTE: Due to the fact that this algorithm requires 3&lt;br /&gt;
timesteps to complete a new decomposition, the&lt;br /&gt;
&amp;lt;DLBfreq&amp;gt; value must be no less than 3.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Bisection ===&lt;br /&gt;
&lt;br /&gt;
WARNING: The implementation of this algorithm requires the&lt;br /&gt;
number of domains in each dimension (as specified&lt;br /&gt;
by the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt;, and &amp;lt;nZdoms&amp;gt; control&lt;br /&gt;
parameters) must be a power of 2.&lt;br /&gt;
&lt;br /&gt;
The Recursive Bisectioning algorithm begins with the entire&lt;br /&gt;
cubic problem space and bisects the space in the X, Y and/or&lt;br /&gt;
Z dimensions into octants quarters or halves (depending on&lt;br /&gt;
the number of domains specified per dimension) such that &lt;br /&gt;
computational cost of each subpartition is roughly the same.&lt;br /&gt;
The decomposition is then recursively applied to each of the&lt;br /&gt;
subpartitions until no further decomposition is necesssary.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Dislocation Mobility ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Mobility Module ===&lt;br /&gt;
&lt;br /&gt;
One of the crucial aspects of a ParaDiS simulation is the&lt;br /&gt;
selection of the set of rules governing the material specific&lt;br /&gt;
physics such as glide climb, and cross-slip with respect to&lt;br /&gt;
crystallographic constraints.  ParaDiS provides multiple sets&lt;br /&gt;
of rules or &amp;quot;mobility laws&amp;quot;, each implemented in a separate&lt;br /&gt;
module, that may be selected via the &amp;lt;mobilityLaw&amp;gt; control&lt;br /&gt;
file parameter.  The currently support modules are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;BCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;BCC_0b&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There are additional modules for dealing with FCC type materials&lt;br /&gt;
however these are neither fully developed nor supported at this&lt;br /&gt;
point.  These FCC mobility functions are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;FCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;FCC_2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
For a list of the control parameters related to the mobility&lt;br /&gt;
of dislocations, see the [[#Material and mobility parameters:|&amp;quot;Material and Mobility Parameters&amp;quot; section]] of the Appendix detailing the control file parameters.&lt;br /&gt;
Currently the default values of all mobility related parameters&lt;br /&gt;
correspond to tantalum at a temperature of 600 K and a&lt;br /&gt;
pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
=== BCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
In BCC metals, screw dislocations do not dissociate into partial&lt;br /&gt;
dislocations the same way they do in FCC metals, therefore, for&lt;br /&gt;
BCC crystals we do not assign glide plane normals to screw&lt;br /&gt;
dislocations.  Instead, screw dislocations are given the same&lt;br /&gt;
mobility in all directions perpendicular to the line.  This&lt;br /&gt;
isotropic mobility for screws mimics the &amp;quot;pencil-glide&amp;quot; behavior&lt;br /&gt;
of dislocations observed in BCC metals at elevated temperatures.&lt;br /&gt;
At the same time, the drag coefficient for non-screw segments&lt;br /&gt;
will remain anisotropic with respect to glide and climb.&lt;br /&gt;
&lt;br /&gt;
For details on this mobility module, refer to the paper:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/Docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== BCC_0b Mobility: ===&lt;br /&gt;
&lt;br /&gt;
The BCC_0b mobility module is nearly a duplicate of BCC_0 with&lt;br /&gt;
the exception that the movement of discretization nodes along&lt;br /&gt;
the dislocation lines has been dampened.&lt;br /&gt;
&lt;br /&gt;
=== TBD ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
This module attempts to simulate easy glide in FCC systems.  The&lt;br /&gt;
glide plane is limited to one of the [111] planes, and cross-slip&lt;br /&gt;
is not permitted.  Also, no crystallographic information is&lt;br /&gt;
used in the dislocation core reactions and hence junction formation&lt;br /&gt;
can take place even slightly off the zone axis.&lt;br /&gt;
&lt;br /&gt;
Reminder:  This mobility module is not fully developed or supported.&lt;br /&gt;
&lt;br /&gt;
=== FCC_2 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Material Properties ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Specifying Material Properties ===&lt;br /&gt;
&lt;br /&gt;
All material specific properties are set via the control&lt;br /&gt;
file parameters.  If not specified, defaults will correspond&lt;br /&gt;
to tantalum at a temperatue of 300 K and pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
See the [[#Material and mobility parameters:|&amp;quot;Material and mobility parameters&amp;quot; section]] of &lt;br /&gt;
Appendix 1 for a list of the material related parameters.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Far-Field Dislocation Interactions ==&lt;br /&gt;
&lt;br /&gt;
=== Fast Multipole for Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The FMM algorithm is enabled within the code via the &amp;lt;fmEnabled&amp;gt;&lt;br /&gt;
toggle in the control file.  The order of the multipole and&lt;br /&gt;
Taylor expansions used by the FMM algorithm are set via the&lt;br /&gt;
&amp;lt;fmMPOrder&amp;gt; and &amp;lt;fmTaylorOrder&amp;gt; control parameters respectively.&lt;br /&gt;
As a general rule, the taylor expansion order should be around&lt;br /&gt;
twice that of the multipole expansion order.  One additional&lt;br /&gt;
control parameter [[#FMM controls|&amp;lt;fmCorrectionTbl&amp;gt;]] specifies the name of the&lt;br /&gt;
file containing the table used by the FMM code to adjust the&lt;br /&gt;
stress calculated by the FMM for multiple periodic images.&lt;br /&gt;
&lt;br /&gt;
It is important to note that the file indicated by &amp;lt;fmCorrectionTbl&amp;gt;&lt;br /&gt;
must be built with the same multipole order, Taylor expansion order,&lt;br /&gt;
and Poisson value (&amp;lt;pois&amp;gt; control parameter) specified for a&lt;br /&gt;
simulation.  An appropriate correction table may be generated&lt;br /&gt;
via the &#039;ctablegen&#039; utility (See the section on Utilities for&lt;br /&gt;
details on the use of &#039;ctablegen&#039;), although a correction table&lt;br /&gt;
matching the code&#039;s default control parameter settings *may* have&lt;br /&gt;
been provided in the code release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600k.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The use of a Fast Multipole Method (FMM) for calculating the&lt;br /&gt;
far-field forces is based on formulae for generating and evaluating&lt;br /&gt;
multipole expansions and a few translation theorems.  A very&lt;br /&gt;
general description can be found below, but for details refer&lt;br /&gt;
to the following paper included with the source release.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The general FMM algorithm consists of the following steps:&lt;br /&gt;
&lt;br /&gt;
# Construct multipole moments: &lt;br /&gt;
#: Each domain (CPU) calculates the contributions of its dislocation segments to the  multipole moments of the FMM subcells to which those segments belong, and communicates those contributions to the domain that owns the FMM subcell. Each domain that owns an FMM subcell sums all the contributions for that subcell together. &amp;lt;bf&amp;gt;&lt;br /&gt;
# Upward pass: &lt;br /&gt;
#: Starting at the lowest layer of the FMM hierarchy, each domain collects and sums the contributions to the multipole moments for each of the FMM subcells it owns from the eight child cells and the calculates the upward pass translation of its multipole moments and communicates the result to the domain owing the subcell&#039;s parent, until the top of the hierarchy is reached.&lt;br /&gt;
# Transverse translations:&lt;br /&gt;
#: The multipole moments from 189 cells that are outside the nearest neighbor distance of the target cell but inside the nearest neaighbor distance of its parent are collected by the domain owning the target cell and their contributions to the Taylor series expansion of the stress filed in target is calculated.&lt;br /&gt;
# PBC correction: &lt;br /&gt;
#: The domain that owns the FMM cell at the highest level of the FMM hierarchy calculates the Taylor                series expansion of the stress state due to periodic images of the system (using [[#FMM controls|table]] specified in the &amp;lt;fmCorrectionTbl&amp;gt; parameter).&lt;br /&gt;
# Downward pass: &lt;br /&gt;
#: Starting with the highest level of the FMM hierarchy, each domain that owns an FMM subcell sums the               contributions from its parent to its Taylor series expansion of the stress from step 3 and then calculates the downward pass translation of the stress for each one of its child cells and sends the results to the domain owning the child subcells until the bottom of the hierarchy is reached.&lt;br /&gt;
# Each domain that owns a subcell at the lowest level of the FMM hierarchy communicates the Taylor series expansions of the stress field to the domains intersecting the subcell.&lt;br /&gt;
&lt;br /&gt;
=== Non-FMM Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The use of the FMM in ParaDiS can be disable by setting the control&lt;br /&gt;
parameter &amp;lt;fmEnabled&amp;gt; to 0.  When FMM is disabled, ParaDiS requires&lt;br /&gt;
additional tables used to factor in the far-field stresses from&lt;br /&gt;
distant cells and periodic images of the system.  The names of the&lt;br /&gt;
files containing the tables are specified via the &amp;lt;Rijmfile&amp;gt; and&lt;br /&gt;
&amp;lt;RijmPBCfile&amp;gt; control parameters.  These tables can be generated&lt;br /&gt;
using the &#039;stresstablegen&#039; utility (see [[#Creating Far-Field Stress Tables with &#039;stresstablegen&#039;|Utilities section]] for&lt;br /&gt;
details), although copies *may* have been provided in the code&lt;br /&gt;
release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
This method essentially lumps all dislocations in a cell into a &lt;br /&gt;
&#039;super-dislocation&#039; where the cell&#039;s dislocations are represented&lt;br /&gt;
as an expansion of the dislocation multipoles.  The remote stress&lt;br /&gt;
for a segment in a given cell is then calculated from two&lt;br /&gt;
components.  The first is the sum of the stresses resulting from&lt;br /&gt;
expansions from all remote cells (i.e. neither the current cell&lt;br /&gt;
nor any of its 26 immediate neighbors) and the stress from all&lt;br /&gt;
periodic images of those remote cells.  The second component&lt;br /&gt;
consists of the stress from only the periodic images of the local&lt;br /&gt;
cells (i.e. the current cell and its immediate neighbors).&lt;br /&gt;
&lt;br /&gt;
This method is can be faster for smaller simulations but unlike&lt;br /&gt;
the FMM, its performance does not scale well as the size of&lt;br /&gt;
a simulation increases in both dislocation density and number&lt;br /&gt;
of cells.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Discretization (Remesh) ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Discretization Method ===&lt;br /&gt;
&lt;br /&gt;
The nature of DD simulations is such that the total length&lt;br /&gt;
of dislocation lines can increase several orders of magnitude.&lt;br /&gt;
Hence, rediscretization of the dislocations is an absolutely necessary&lt;br /&gt;
components of ParaDiS simulations.  The goal of the rediscretization&lt;br /&gt;
is to optimize the numerical description of the continuous dsilocation&lt;br /&gt;
line geometry so that a given level of accuracy is achieved with the&lt;br /&gt;
fewest degrees of freedom.  For regions of high curvature, an optimal&lt;br /&gt;
distribution of nodes will place nodes more closely together than&lt;br /&gt;
in regions of lower curvature.&lt;br /&gt;
&lt;br /&gt;
The level of accuracy is tied to the control parameters &amp;lt;maxSeg&amp;gt;&lt;br /&gt;
and &amp;lt;minSeg&amp;gt; which define the maximum and minimum segment lengths (in&lt;br /&gt;
units of b) respectively.  The smaller the maximum segment length, the&lt;br /&gt;
higher the accuracy.&lt;br /&gt;
&lt;br /&gt;
A number of rediscretization version have been developed and&lt;br /&gt;
tested, although only versions 2 and 3 are currently supported.&lt;br /&gt;
The rediscretization version to use can be selected through&lt;br /&gt;
the control parameter &amp;lt;remeshRule&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 2 ===&lt;br /&gt;
&lt;br /&gt;
This method achieves rediscrtization through two types of&lt;br /&gt;
operations; mesh coarsening and mesh refinement (removing and&lt;br /&gt;
adding discretization nodes respectively).&lt;br /&gt;
&lt;br /&gt;
This involved defining both minimum and maximum discretization areas&lt;br /&gt;
(A_min and A_max) based on the simulation minimum and maximum&lt;br /&gt;
segment lengths &amp;lt;minSeg&amp;gt; and &amp;lt;maxSeg&amp;gt;.  Then for each discretization&lt;br /&gt;
node (i.e. a node with no more than two associated segments) a&lt;br /&gt;
discretization area (A_node) is calculated.  This area is defined&lt;br /&gt;
as the triangle with vertices at the node and its two neighbors.&lt;br /&gt;
When the discretization area associated with a node A_node &amp;lt; A_min&lt;br /&gt;
the node is removed (coarsened out).  Conversely, if the area&lt;br /&gt;
A_node &amp;gt; A_max, the local discretization is refined by bisecting&lt;br /&gt;
both segments attached to the node.&lt;br /&gt;
&lt;br /&gt;
For additional information, refer to the following paper included&lt;br /&gt;
with the ParaDiS source release:&lt;br /&gt;
 &lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 3 ===&lt;br /&gt;
&lt;br /&gt;
This rediscretization method is identical to type 2 with&lt;br /&gt;
the exception that during mesh refinement the inserted&lt;br /&gt;
nodes are not placed at the exact center of the segment&lt;br /&gt;
being bisected.  Instead, the algorithm treats the three&lt;br /&gt;
initial nodes as if they were on an arc and places the&lt;br /&gt;
new nodes at the center of the segments of the arc.&lt;br /&gt;
&lt;br /&gt;
The rationale behind this is that in simulations using&lt;br /&gt;
long segments and/or high stress, a new node added at the&lt;br /&gt;
center of a segment in a region of high curvature will&lt;br /&gt;
not be optimally placed.  This new node may immediately&lt;br /&gt;
accelerate quickly toward its optimal position then&lt;br /&gt;
decelerate as it nears that position.  This behavior&lt;br /&gt;
can severly impact the simulatuion timesteps.  By placing&lt;br /&gt;
the new nodes on an arc, the initial stress on the new&lt;br /&gt;
nodes will not be as high, keeping the motion of the node&lt;br /&gt;
similar to that of the surrounding nodes.  Hence, no&lt;br /&gt;
detrimental effects on the timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Simulation Timestepping ==&lt;br /&gt;
&lt;br /&gt;
=== Timestep Controls ===&lt;br /&gt;
&lt;br /&gt;
Two timestepping algorithms are provided in the ParaDiS code.&lt;br /&gt;
The &amp;lt;timestepIntegrator&amp;gt; control parameter is used to select&lt;br /&gt;
the desired algorithm.  The currently supported algorithms&lt;br /&gt;
are:&lt;br /&gt;
&lt;br /&gt;
:              &amp;quot;trapezoid&amp;quot;&lt;br /&gt;
:              &amp;quot;forward-euler&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The default timestep integrator is the &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
There are several general control parameters used in conjunction&lt;br /&gt;
with any selected timestep intergrator, and several that are unique&lt;br /&gt;
to specific integrators.  The general control parameters are&lt;br /&gt;
&amp;lt;deltaTT&amp;gt; which specifies the duration of the previous timestep,&lt;br /&gt;
&amp;lt;nextDT&amp;gt; which indicates the desired timestep to attempt the next&lt;br /&gt;
timestep, and &amp;lt;maxDT&amp;gt; which specifies the maximum timestep duration&lt;br /&gt;
permitted.&lt;br /&gt;
&lt;br /&gt;
=== Timestep Integrators ===&lt;br /&gt;
&lt;br /&gt;
==== Trapezoid ====&lt;br /&gt;
&lt;br /&gt;
This implicit integrator is a mix of the Euler-Forward and&lt;br /&gt;
Euler-Backward methods.  This method is unconditionally&lt;br /&gt;
stable, but requires an iterative process that may involve&lt;br /&gt;
multiple nodal force and velocity calculations.  The&lt;br /&gt;
additional expense of the multiple calculations, however,&lt;br /&gt;
is usually offset by the gains from the larger timesteps&lt;br /&gt;
compared to explicit methods such as the forward euler&lt;br /&gt;
integrator.&lt;br /&gt;
&lt;br /&gt;
The algorithm uses the current nodal velocities to reposition&lt;br /&gt;
each node, then recalculates forces and velocities for the&lt;br /&gt;
nodes at their new positions.  A positioning &#039;error&#039; is&lt;br /&gt;
calculated for each node based on the current and previous&lt;br /&gt;
nodal position and velocity.  If the positioning error of&lt;br /&gt;
any node is greater than the maximum permitted positioning&lt;br /&gt;
error as defined by the &amp;lt;rTol&amp;gt; control parameter, the&lt;br /&gt;
timestep will be decremented by a factor specified in the&lt;br /&gt;
&amp;lt;dtDecrementFact&amp;gt; control parameter and the process starts&lt;br /&gt;
again.  On the otehr hand, if the positioning error of all&lt;br /&gt;
nodes is within the tolerance, the timestep is accepted&lt;br /&gt;
and the current timestep is multipled by the factor in the&lt;br /&gt;
&amp;lt;dtIncrementFactor&amp;gt; to be used as the initial timestep to&lt;br /&gt;
attempt the next cycle.&lt;br /&gt;
&lt;br /&gt;
==== Forward Euler ====&lt;br /&gt;
&lt;br /&gt;
The forward euler timestep integrator is relatively simple&lt;br /&gt;
and inexpensive in that it requires only a single calculation&lt;br /&gt;
of nodal force and velocities per timestep.  Unfortunately,&lt;br /&gt;
the algorithm is subject to the Courant condition for&lt;br /&gt;
numerical stability and is limited to relatively small&lt;br /&gt;
timesteps.  The size of the timestep is controlled by the&lt;br /&gt;
ratio between the length of the shortest segment and the&lt;br /&gt;
velocity of the fastest moving node.  Additionally, the&lt;br /&gt;
&amp;lt;rmax&amp;gt; control parameter defines the maximum distance&lt;br /&gt;
any node is permitted to move in a single timestep, which&lt;br /&gt;
further limits the timestep duration.  This &#039;rmax&#039; distance&lt;br /&gt;
should be set such that no dislocation segment crosses&lt;br /&gt;
multiple simulation cells in a single timestep.&lt;br /&gt;
&lt;br /&gt;
Note: This timestep integrator is NOT recommended.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
=== X-window display ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ParaDiS provides a simple X-window display capability for&lt;br /&gt;
visualization and debugging of small scale simulations as well&lt;br /&gt;
as obtaining certain types of nodal data via the display window.&lt;br /&gt;
&lt;br /&gt;
Unlike some of the other visualization capabilities, this one &lt;br /&gt;
must be enabled/disabled via the compile time flag &amp;quot;XLIB_MODE&amp;quot;&lt;br /&gt;
in the file &amp;lt;ParadisDir&amp;gt;/makefile.setup.  The X-window support&lt;br /&gt;
is enabled by setting:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = ON&lt;br /&gt;
&lt;br /&gt;
and disabled by:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = OFF&lt;br /&gt;
&lt;br /&gt;
The default behavior is to have the X-window support enabled.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;winDefaultsFile&amp;gt; control parameter can be used to specify default&lt;br /&gt;
visualization options and attributes such as view perspective, colors&lt;br /&gt;
and so on.  Unless otherwise specified, this control parameter will&lt;br /&gt;
point to the following defaults file provided with the source release:&lt;br /&gt;
&lt;br /&gt;
:             &amp;lt;ParadisDir&amp;gt;/inputs/paradis.xdefaults&lt;br /&gt;
&lt;br /&gt;
Once the X-window display is initiated, the view can be controlled&lt;br /&gt;
through the following single-key commands:&lt;br /&gt;
&lt;br /&gt;
          Key            Command Description&lt;br /&gt;
          ---            -------------------&lt;br /&gt;
          &amp;lt;Home&amp;gt;         Restores image to default view&lt;br /&gt;
          &amp;lt;Esc&amp;gt;          Terminates X-window display without terminating&lt;br /&gt;
                         the simulation&lt;br /&gt;
          a              Enable/disable aspect ratio changes.  When enabled,&lt;br /&gt;
                         the Arrow keys alter the aspect ratio&lt;br /&gt;
          c              Enable/disable slice view of image.  When enabled,&lt;br /&gt;
                         Up/Down Arrows control slice position, Left/Right&lt;br /&gt;
                         Arrows control slice thickness.&lt;br /&gt;
          f              Turn display frame on/off&lt;br /&gt;
          p              Pause/restart simulation&lt;br /&gt;
          r              Enable image rotation.  When enabled, rotation can&lt;br /&gt;
                         be controlled via the mouse or Arrow keys.&lt;br /&gt;
          s              Enable display scaling.  When enabled, the Arrow&lt;br /&gt;
                         keys control scaling size.&lt;br /&gt;
          t              Enable image translation.  When enable,&lt;br /&gt;
                         the Arrow keys control translation direction.&lt;br /&gt;
          &amp;lt;F10&amp;gt;          Generate a postscript image of the display window.&lt;br /&gt;
                         File will be called &amp;lt;outputDir&amp;gt;/YshotNNNN where&lt;br /&gt;
                        &#039;NNNN&#039; is a sequence number incremented each time&lt;br /&gt;
                         a dump of the display window is generated and&lt;br /&gt;
                         &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
                         &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Additionally, clicking the mouse on a nodal point in the X-window&lt;br /&gt;
image will cause the following information to be written to the&lt;br /&gt;
terminal device (not the X-window display):&lt;br /&gt;
&lt;br /&gt;
* relative position (x,y) on the X-window display&lt;br /&gt;
* node ID (domainID,nodeindex)&lt;br /&gt;
* number of segments (arms) associated with the node&lt;br /&gt;
* simulation coordinates (x,y,z) of the node&lt;br /&gt;
&lt;br /&gt;
=== Gnuplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the gnuplot visualization package.  This capability is&lt;br /&gt;
enabled via the &amp;lt;gnuplot&amp;gt; toggle in the control parameter file.&lt;br /&gt;
The frequency with which gnuplot files will be generated is&lt;br /&gt;
controlled by the settings of the &amp;lt;gnuplotfreq&amp;gt; and &amp;lt;gnuplotdt&amp;gt;&lt;br /&gt;
parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of gnuplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/gnuplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/box.in&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/0tNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a gnuplot file set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when gnuplot files are being written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of gnuplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/gnuplot.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The &#039;box.in&#039; data file will contain data for plotting the boundaries&lt;br /&gt;
of the simulation space, while the &#039;0t*&#039; files contain the coordinate&lt;br /&gt;
pairs defining each unique dislocation segment.&lt;br /&gt;
&lt;br /&gt;
NOTE: When gnuplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  These file segments&lt;br /&gt;
can be combined into a single file for display in gnuplot&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of&lt;br /&gt;
[[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
To aid in visualizing the dislocation configuration, a file&lt;br /&gt;
containing commands to set some useful gnuplot options has&lt;br /&gt;
been provided;  This file is located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.cmds&lt;br /&gt;
&lt;br /&gt;
For example, to view the dislocation structure contained in the&lt;br /&gt;
gnuplot data file 0t0001 you could start gnuplot interactively&lt;br /&gt;
and execute the commands:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.defaults&#039;&lt;br /&gt;
 gnuplot&amp;gt; splot &#039;box.in&#039; with lines, &#039;0t0001&#039; w lines&lt;br /&gt;
&lt;br /&gt;
A second gnuplot command file has been provided as an example&lt;br /&gt;
of displaying a sequence of gnuplot files.  This file is&lt;br /&gt;
located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&lt;br /&gt;
&lt;br /&gt;
This file has the neccesary commands to plot the sequence&lt;br /&gt;
of files beginning with 0t0001 and ending with 0t1000.  After&lt;br /&gt;
starting gnuplot, simply load this file with:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&#039;&lt;br /&gt;
&lt;br /&gt;
This will initiate the plot of the first file, and thereafter,&lt;br /&gt;
simply hitting return will cause gnuplot to move to the next&lt;br /&gt;
file in the sequence.&lt;br /&gt;
&lt;br /&gt;
For details on using gnuplot, refer to the gnuplot manual or&lt;br /&gt;
enter &#039;help&#039; from the gnuplot interactive prompt.&lt;br /&gt;
&lt;br /&gt;
=== Tecplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the commercial visualization package Tecplot.  This&lt;br /&gt;
capability is enabled via the &amp;lt;tecplot&amp;gt; toggle in the control&lt;br /&gt;
parameter file.  The frequency with which tecplot files will&lt;br /&gt;
be generated is controlled by the settings of the &amp;lt;tecplotfreq&amp;gt;&lt;br /&gt;
and &amp;lt;tecplotdt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of tecplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/tecplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdataNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a tecplot file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when tecplot files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                   &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of tecplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdata.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The generated tecplot output has specific headers to assign the&lt;br /&gt;
variables and time frames (zones) and should look something like&lt;br /&gt;
this:&lt;br /&gt;
&lt;br /&gt;
          ...&lt;br /&gt;
          variables = X,Y,Z,V1,V2,V3,V4,V5,V6,V7,V8&lt;br /&gt;
          zone i = 54  F=POINT&lt;br /&gt;
          -4000.0  500.0  6000.0  133.1  612.4 -612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          -3866.9 1112.4  5387.7 -133.1 -612.4  612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          471.0  -5132.6 11632.3 -1712.7 -48.8  48.9  0.0090 -0.0918 0.0918 2 3&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
The first line defines the variables to reconstruct the dislocation&lt;br /&gt;
configuration.  X Y and Z specify the nodal coordinates,  V1 V2 and&lt;br /&gt;
V3 define arm vectors to the neighboring nodes.  These 6 variable&lt;br /&gt;
are used to represent dislocation segments as combinations of points&lt;br /&gt;
and vectors in tecplot.  The V4 V5 and V6 represent the nodal velocity&lt;br /&gt;
vector, V7 indicates the number of segments associated with the node&lt;br /&gt;
and V8 indicates a burgers vector type.&lt;br /&gt;
&lt;br /&gt;
NOTE: When tecplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the headers will only be&lt;br /&gt;
included in the first file segment with the remainder of the data&lt;br /&gt;
spread over the file segments.  These file segments can be combined&lt;br /&gt;
into a single file for display in tecplot via the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of [[#stitch|&#039;stitch&#039;]]&lt;br /&gt;
tool for details.)&lt;br /&gt;
&lt;br /&gt;
For details on using tecplot, refer to the tecplot manual or select&lt;br /&gt;
the &#039;Help&#039; menu in tecplot.&lt;br /&gt;
&lt;br /&gt;
=== Povray ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;povray&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate files containing&lt;br /&gt;
dislocation segment data formatted for use with the POVRAY&lt;br /&gt;
(Persistence of Vision(tm) Ray Tracer) tool.  The frequency&lt;br /&gt;
with which these files will be generated is controlled by&lt;br /&gt;
the settings of the &amp;lt;povrayfreq&amp;gt; and &amp;lt;povraydt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
Note:  These files contain the main data to be processed by&lt;br /&gt;
povray, but must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools)&lt;br /&gt;
which will create the final povray input file&lt;br /&gt;
containing the segment data embedded within a &lt;br /&gt;
proper framework of povray settings and commands.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of files in the directory &amp;lt;outputDir&amp;gt;/povray&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.  The naming convention used for&lt;br /&gt;
these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povframeNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a povray frame file                          set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when povray files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of povray&lt;br /&gt;
frame files will be created.  This set will be generated&lt;br /&gt;
regardless of the specified dump frequency in order to provide&lt;br /&gt;
an image of the final configuration. This set will be named&lt;br /&gt;
with the slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povray.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When povray data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  If desired, these file&lt;br /&gt;
segments may be combined into a single file for post-processing&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description&lt;br /&gt;
of [[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
As stated above, these files must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools) which will&lt;br /&gt;
create the final povray input file containing the segment&lt;br /&gt;
data embedded within a proper framework of povray settings&lt;br /&gt;
and commands.  This tool is capable of dealing with single&lt;br /&gt;
or segmented &#039;povframe*&#039; files.&lt;br /&gt;
&lt;br /&gt;
For details on using povray, refer to the povray manual.&lt;br /&gt;
&lt;br /&gt;
=== Terascale Browser ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Postscript ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;psfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a postscript file&lt;br /&gt;
containing an image of the current state of the system.&lt;br /&gt;
The frequency with which the postscript files are&lt;br /&gt;
written is determined by the settings of the&lt;br /&gt;
&amp;lt;psfilefreq&amp;gt; and &amp;lt;psfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/YshotNNNN.ps&lt;br /&gt;
&lt;br /&gt;
where NNNN is a sequence number beginning with zero and incremented&lt;br /&gt;
each time another postscript file is written.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Output ==&lt;br /&gt;
&lt;br /&gt;
=== Restart files ===&lt;br /&gt;
&lt;br /&gt;
Periodic creation of ParaDiS restart files is enabled via&lt;br /&gt;
the &amp;lt;savecn&amp;gt; toggle in the control file.  The frequency with&lt;br /&gt;
which restart files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;savecnfreq&amp;gt; and &amp;lt;savecndt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When enabled, the code will periodically generate restart&lt;br /&gt;
file which will be located in the directory &amp;lt;outputDir&amp;gt;/restart&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.&lt;br /&gt;
           &lt;br /&gt;
The naming convention used for these restart files is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN.data[.SEQ]&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# nodal data file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a restart file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when restart files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Each time a restart file set is written, the name of the&lt;br /&gt;
control parameter file will also be written into the file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/latest_restart&lt;br /&gt;
&lt;br /&gt;
Additionally, when creation of restart files is enabled, an&lt;br /&gt;
additional restart file pair named &#039;restart.cn&#039; and restart.data&#039;&lt;br /&gt;
will be written at program termination even if the cycle is not&lt;br /&gt;
a multiple of the &amp;lt;savecnfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
=== Property Outputs ===&lt;br /&gt;
&lt;br /&gt;
==== Enabling Properties Output ====&lt;br /&gt;
&lt;br /&gt;
The code has the capability to produce files containing&lt;br /&gt;
various dislocation properties.  This capability is enabled&lt;br /&gt;
via the &amp;lt;saveprop&amp;gt; toggle in the control file.  The&lt;br /&gt;
frequency with which the property data is written is&lt;br /&gt;
determined by the settings of the &amp;lt;savepropfreq&amp;gt; and&lt;br /&gt;
&amp;lt;savepropdt&amp;gt; control file parameters. &lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will generate &lt;br /&gt;
and periodically append the properties data to one or more of&lt;br /&gt;
the following files which will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/properties, where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
==== Property Files ====&lt;br /&gt;
&lt;br /&gt;
===== density =====&lt;br /&gt;
&lt;br /&gt;
Note: burgVolFactor converts from length in units of B, to density&lt;br /&gt;
in units of meters&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This file contains the following columns of data:&lt;br /&gt;
&lt;br /&gt;
#   plastic strain&lt;br /&gt;
#   strain&lt;br /&gt;
#   dislocation density&lt;br /&gt;
#   deleted dislocation density &lt;br /&gt;
#: (lost through annihilation, junction formation, etc) &lt;br /&gt;
#: (density lost since last dump of data)&lt;br /&gt;
#   average dislocation velocity&amp;amp;#8225;&lt;br /&gt;
#   std. deviation of dislocation velocities&amp;amp;#8225;&lt;br /&gt;
#   density file version number&lt;br /&gt;
#   dislocation density for segments of specific groupings of burgers vectors (see below)*&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; These items will be calculated only if&lt;br /&gt;
the &amp;quot;VEL_STATISTICS&amp;quot; pre-processor macro was&lt;br /&gt;
defined during compilation.  Otherwise these&lt;br /&gt;
values will be zeroes.&lt;br /&gt;
&lt;br /&gt;
For BCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 1] [-1-1-1]&lt;br /&gt;
                          9         [-1 1 1] [ 1-1-1]&lt;br /&gt;
                          10        [ 1-1 1] [-1 1-1]&lt;br /&gt;
                          11        [ 1 1-1] [-1-1 1]&lt;br /&gt;
                          12        [ 1 0 0] [-1 0 0] [ 0 1 0]&lt;br /&gt;
                                    [ 0-1 0] [ 0 0 1] [ 0 0-1]&lt;br /&gt;
&lt;br /&gt;
For FCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 0] [-1-1 0]&lt;br /&gt;
                          9         [-1 1 0] [ 1-1 0]&lt;br /&gt;
                          10        [ 1 0 1] [-1 0-1]&lt;br /&gt;
                          11        [-1 0 1] [ 1 0-1]&lt;br /&gt;
                          12        [ 0 1 1] [ 0-1-1]&lt;br /&gt;
                          13        [ 0-1 1] [ 0 1-1]&lt;br /&gt;
                          14        all others&lt;br /&gt;
&lt;br /&gt;
===== time_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following two columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain&lt;br /&gt;
&lt;br /&gt;
===== stress_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  The file contains the following two columns&lt;br /&gt;
of data:&lt;br /&gt;
&lt;br /&gt;
# plastic strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
===== stress_Total_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  If the user specified a constant strain&lt;br /&gt;
rate, this file contains:&lt;br /&gt;
&lt;br /&gt;
# strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
If the user specified cyclic loading, this file contains:&lt;br /&gt;
&lt;br /&gt;
#  net accumulated strain&lt;br /&gt;
#  stress&lt;br /&gt;
#  elapsed simulation time&lt;br /&gt;
#  number of loading cycles&lt;br /&gt;
&lt;br /&gt;
===== alleps =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||simulation timestep number&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||elapsed simulation time&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3-8.||plastic strain components&amp;amp;#8225;&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  9.||dislocation density&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;amp;#8225; from plastic strain tensor matrix, elements [0][0], [1][1], [2][2], [1][2], [0][1], and [0][2]&lt;br /&gt;
&lt;br /&gt;
===== epsdot =====&lt;br /&gt;
&lt;br /&gt;
This file contains the 2 columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain rate&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS has the capability to produce files containing&lt;br /&gt;
flux decomposition information for the simulation.&lt;br /&gt;
This capability is enabled via the &amp;lt;fluxfile&amp;gt; control&lt;br /&gt;
file toggle.  The frequency with which the flux&lt;br /&gt;
data is written is determined by the settings of&lt;br /&gt;
the &amp;lt;fluxfreq&amp;gt; and &amp;lt;fluxdt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled the code will generate&lt;br /&gt;
and periodically append the flux data to two sets of&lt;br /&gt;
files that will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/fluxdata where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Each set contains four files, one file per burgers vector.&lt;br /&gt;
Files *b1, *b2, *b3, and *b4 contain statistics for burgers&lt;br /&gt;
vector types [111], [-111], [1-11], and [11-1] respectively.&lt;br /&gt;
&lt;br /&gt;
The first set of files (Ltot_b1, Ltot_b2, Ltot_b3 and&lt;br /&gt;
Ltot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
# Plastic strain&lt;br /&gt;
# Strain,&lt;br /&gt;
# Screw density&lt;br /&gt;
# Edgedensity1&lt;br /&gt;
# Edgedensity2&lt;br /&gt;
# Edgedensity3&lt;br /&gt;
# Sum of edge Densities (4+5+6)&lt;br /&gt;
# Total system EdgeDensity from all Ltot files&lt;br /&gt;
# Total system screw density from all Ltot files&lt;br /&gt;
&lt;br /&gt;
The second set of files (fluxtot_b1, fluxtot_b2, fluxtot_b3 and&lt;br /&gt;
fluxtot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||Plastic Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3.||Flux due to climb motion&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Flux created by edge components on three planes (See below.)&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7-9.||Flux created by screw dislocation on three planes (See below.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For b1 = 1/2[1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b2 = 1/2[-1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b3 = 1/2[1 -1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b4 = 1/2[1 1 -1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pole figures ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Velocity files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;velfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
velocity information about each unique dislocation node &lt;br /&gt;
in the system.  The frequency with which the velocity&lt;br /&gt;
data is written is determined by the settings of the&lt;br /&gt;
&amp;lt;velfilefreq&amp;gt; and &amp;lt;velfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/velocity&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/velNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;velfilecounter&amp;gt; control parameter and is incremented each  time another velocity file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when velocity data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
In addition, at program termination, an extra set of velocity&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/vel.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When velocity data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the velocity files consist of 4 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Velocity components (x,y,z)&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| align=right |  4.|| +1 if contributing to strain rate &amp;lt;br&amp;gt; -1 if moving in opposite direction&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Segment files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;armfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
information about each unique dislocation segment &lt;br /&gt;
in the system.  The frequency with which the segment&lt;br /&gt;
(or arm) files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;armfilefreq&amp;gt; and &amp;lt;armfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/armdata&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/armNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;armfilecounter&amp;gt; control parameter and is incremented each time another arm file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when arm data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
  &lt;br /&gt;
In addition, at program termination, an extra set of arm&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/arm.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When arm data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the arm files consist of 10 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Burgers vector components&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Line direction vector&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7.||Segment length&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  8-10.||Coordinates of node &#039;owning&#039; the segment&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Density Field file ===&lt;br /&gt;
&lt;br /&gt;
If all components of the &amp;lt;savedensityspec&amp;gt; control parameter&lt;br /&gt;
are set to positive values in the control file, ParaDiS&lt;br /&gt;
will (at program termination) create a file containing a&lt;br /&gt;
3D dislocation density field formatted for use with the&lt;br /&gt;
VASP Data Viewer (vaspview).  The three components of&lt;br /&gt;
the &amp;lt;savedensityspec&amp;gt; parameter specify the granularity&lt;br /&gt;
of the density field in the X, Y and Z dimensions&lt;br /&gt;
respectively.   The density field will be written to the&lt;br /&gt;
file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/densityfield.out&lt;br /&gt;
&lt;br /&gt;
Warning: This will overwrite any existing density field&lt;br /&gt;
file of the same name!&lt;br /&gt;
&lt;br /&gt;
The VASP Data Viewer is publicly available on the web&lt;br /&gt;
for non-commercial use.  For details on the product,&lt;br /&gt;
download the VASP Data Viewer from the web and refer&lt;br /&gt;
to the accompanying documentation.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Utilities ==&lt;br /&gt;
&lt;br /&gt;
=== Creating Initial Dislocations with &#039;paradisgen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisgen utility is capable of generating initial&lt;br /&gt;
dislocations suitable for a paradis simulation.  The command&lt;br /&gt;
line options for paradisgen control the type of dislocations,&lt;br /&gt;
number of dislocations, size of the simulation box, and so&lt;br /&gt;
on.  See &amp;quot;Examples&amp;quot; below for sample executions of this utility.&lt;br /&gt;
&lt;br /&gt;
The command line format for paradisgen is:&lt;br /&gt;
&lt;br /&gt;
              paradisgen [-cubel &amp;lt;cubelength&amp;gt;] [-help] [-hexsize &amp;lt;size&amp;gt;]  \&lt;br /&gt;
                         [-maxseg &amp;lt;maxseglen] [-nchains &amp;lt;numchains&amp;gt;]      \&lt;br /&gt;
                         [-nloops &amp;lt;numloops&amp;gt;] [-outfile &amp;lt;filename&amp;gt;        \&lt;br /&gt;
                         [-radius &amp;lt;radius&amp;gt;] [-seed &amp;lt;seedval&amp;gt;]             \&lt;br /&gt;
                         [-type &amp;lt;configtype&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
All command line options may be abbreviated to the shortest&lt;br /&gt;
non-ambiguous abbreviation of the option.  Descriptions of&lt;br /&gt;
the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
            -cubel &amp;lt;cubelength&amp;gt;  Defines the size of the simulation cube&lt;br /&gt;
                                 in units of b.  Minimum and maximum problem&lt;br /&gt;
                                 space coordinates will be 0.5*cubel and&lt;br /&gt;
                                 -0.5*cubel respectively.  If not specified&lt;br /&gt;
                                 this will default to 35000b (approx.&lt;br /&gt;
                                 10 micron).&lt;br /&gt;
&lt;br /&gt;
            -help                Causes the utility to display the command line&lt;br /&gt;
                                 format and option descriptions then terminate.&lt;br /&gt;
&lt;br /&gt;
            -hexsize &amp;lt;size&amp;gt;      Defines the radius (in units of b) for the&lt;br /&gt;
                                 hexagonal interstitial loops.  This option is&lt;br /&gt;
                                 used only when the selected dislocation type&lt;br /&gt;
                                 is &#039;fcc-irrad&#039;.&lt;br /&gt;
&lt;br /&gt;
            -looptype &amp;lt;ltype&amp;gt;    Specifies the types of prismatic loops to&lt;br /&gt;
                                 generate.  If not specified, this value&lt;br /&gt;
                                 will default to zero.  Valid values are:&lt;br /&gt;
&lt;br /&gt;
                                   0 == mixture of [1 1 1] and [1 0 0] types&lt;br /&gt;
                                   1 == all [1 1 1] type loops&lt;br /&gt;
                                   2 == all [1 0 0] type loops&lt;br /&gt;
&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.&lt;br /&gt;
&lt;br /&gt;
            -maxseg &amp;lt;length&amp;gt;     Defines the maximum desired segment length&lt;br /&gt;
                                 in units of b.  Initial dislocations will&lt;br /&gt;
                                 be discretized so no segment is longer than&lt;br /&gt;
                                 this value.  If not specified this value&lt;br /&gt;
                                 defaults to 500.&lt;br /&gt;
&lt;br /&gt;
            -nchains &amp;lt;numchain&amp;gt;  Indicates the number of dislocation lines&lt;br /&gt;
                                 to create.  This value is ignored when the&lt;br /&gt;
                                 selected dislocation type is &#039;prismatic-loop&#039;,&lt;br /&gt;
                                 and when the type is &#039;fcc-perfect-loop&#039;,&lt;br /&gt;
                                 this value must be a multiple of 12.  If&lt;br /&gt;
                                 not specified, this value defaults to 2.&lt;br /&gt;
&lt;br /&gt;
            -nloops &amp;lt;numloops&amp;gt;   Specifies the number of loops to create when&lt;br /&gt;
                                 the selected dislocation type is&lt;br /&gt;
                                 &#039;prismatic-loop&#039; or &#039;fcc-irrad&#039;.  If not&lt;br /&gt;
                                 specified, this value defaults to 1000.&lt;br /&gt;
&lt;br /&gt;
            -nsegs &amp;lt;numsegs&amp;gt;     Specifies the number of segments into which&lt;br /&gt;
                                 a prismatic loop will be discretized.  This&lt;br /&gt;
                                 option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to&lt;br /&gt;
                                 (2*PI*radius)/(maxseg/2).&lt;br /&gt;
&lt;br /&gt;
            -outfile &amp;lt;filename&amp;gt;  Name of the ParaDiS data file to be created.&lt;br /&gt;
                                 If not specified, data will be written&lt;br /&gt;
                                 into a file called &#039;paradis.data&#039;.&lt;br /&gt;
&lt;br /&gt;
            -radius &amp;lt;radius&amp;gt;     Radius (in units of b) of prismatic loops.&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to maxseg/2.&lt;br /&gt;
&lt;br /&gt;
            -seed &amp;lt;seed&amp;gt;         Specifies a value to seed the random number&lt;br /&gt;
                                 generator.  Using the same seed value for&lt;br /&gt;
                                 multiple executions of paradis (for which&lt;br /&gt;
                                 all other options are identical) insures&lt;br /&gt;
                                 creation of an identical configuration.  &lt;br /&gt;
&lt;br /&gt;
            -type &amp;lt;type&amp;gt;         Specifies the type of dislocations to create.&lt;br /&gt;
                                 This type can be a name or the integer value&lt;br /&gt;
                                 corresponding to the name.  Valid types are:&lt;br /&gt;
&lt;br /&gt;
                                 0 or &#039;screw&#039;        BCC screw dislocations.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 1 or &#039;finite-mixed&#039; A mixture of BCC screw and&lt;br /&gt;
                                                     edge dislocations&lt;br /&gt;
                                                     terminating at the edges&lt;br /&gt;
                                                     of the cubic problem&lt;br /&gt;
                                                     space.  This should not&lt;br /&gt;
                                                     be used with periodic&lt;br /&gt;
                                                     boundary conditions.&lt;br /&gt;
                                 2 or &#039;prismatic-loop&#039;   BCC prismatic loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 3 or &#039;fcc&#039;          FCC dislocations. Assumes&lt;br /&gt;
                                                     periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 4 or &#039;fcc-irrad&#039;    Mixture of FCC&lt;br /&gt;
                                                     dislocations and hexagonal&lt;br /&gt;
                                                     interstitial loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 5 or &#039;fcc-perfect-loop&#039; Not fully implemented.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&lt;br /&gt;
              TBD&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recomputing Domain Boundaries with &#039;paradisrepart&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisrepart utility provides a mechanism by which to&lt;br /&gt;
replace the domain decomposition/partitioning in an&lt;br /&gt;
existing nodal data file with a new domain decomposition.&lt;br /&gt;
The utility will read the current nodal data, and use the&lt;br /&gt;
specified domain/cell geometries to attempt to partition&lt;br /&gt;
the domains such that the computational cost for each domain&lt;br /&gt;
will be roughly equivalent.&lt;br /&gt;
&lt;br /&gt;
This utility is primarily used when it is necessary alter&lt;br /&gt;
the domain geometry or domain count for a simulation in&lt;br /&gt;
order to continue.  In such a situation, the existing&lt;br /&gt;
domain decomposition would be thrown away and the ParaDiS&lt;br /&gt;
code would generate an initial uniform decomposition&lt;br /&gt;
and then over time converge on a more optimal decomposition.&lt;br /&gt;
Using this utility instead to generate a new decomposition&lt;br /&gt;
provides a much more reasonable starting point from allowing&lt;br /&gt;
the ParaDiS simulation to converge on an optimal decomposition&lt;br /&gt;
much more quickly.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisrepart utility is:&lt;br /&gt;
&lt;br /&gt;
              paradisrepart -infile &amp;lt;inputFile&amp;gt;                           \&lt;br /&gt;
                            -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;               \&lt;br /&gt;
                            -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt;                \&lt;br /&gt;
                            [-outfile &amp;lt;outputFile&amp;gt;]  [-decompType &amp;lt;type&amp;gt;] \&lt;br /&gt;
                            [-help]&lt;br /&gt;
    &lt;br /&gt;
All command line arguments and options may be abbreviated to the&lt;br /&gt;
shortest non-ambiguous abbreviation of the option.  Descriptions&lt;br /&gt;
of the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
              -infile &amp;lt;inputFile&amp;gt;    Specifies the name of the nodal data file.&lt;br /&gt;
                                     On success, the first nodal data file&lt;br /&gt;
                                     segment will be copied to &amp;lt;inputFile&amp;gt;.bkup.&lt;br /&gt;
                                     This command line argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;  Specifies the number of&lt;br /&gt;
                                     cells in each dimension.  If the&lt;br /&gt;
                                     number of cells in the Y and Z dimensions&lt;br /&gt;
                                     are not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xcells&amp;gt;. This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt; Specifies the number of domains&lt;br /&gt;
                                     in each dimension.  If the number of&lt;br /&gt;
                                     domains in the Y and Z dimensions are&lt;br /&gt;
                                     not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xdoms&amp;gt;.  This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -decompType &amp;lt;type&amp;gt;     Specifies type of domain decomposition:&lt;br /&gt;
                                     If not specified, defaults to 1.  Valid&lt;br /&gt;
                                     types are:&lt;br /&gt;
&lt;br /&gt;
                                       1 == Recursive Sectioning&lt;br /&gt;
                                       2 == Recursive Bisectioning&lt;br /&gt;
&lt;br /&gt;
              -help                  Causes the utility to display the command&lt;br /&gt;
                                     line format and option descriptions then&lt;br /&gt;
                                     terminate.&lt;br /&gt;
&lt;br /&gt;
              -outfile &amp;lt;outputFile&amp;gt;  Specifies the name of the file into which&lt;br /&gt;
                                     to write the new domain decomposition.  If&lt;br /&gt;
                                     not specified, new domain decomposition&lt;br /&gt;
                                     will be written into the file specified&lt;br /&gt;
                                     by &amp;lt;inputFile&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Converting Control and Data File with &#039;paradisconvert&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisconvert utility provides a mechanism by which&lt;br /&gt;
older format ParaDiS control and data files (and restart&lt;br /&gt;
files) may be converted to the current file formats.&lt;br /&gt;
This utility does recognize and handle segmented data files.&lt;br /&gt;
&lt;br /&gt;
In most cases this utility will not be required since&lt;br /&gt;
ParaDiS is still able to recognize and handle *most* of &lt;br /&gt;
the older file formats.  The only format the ParaDiS code&lt;br /&gt;
no longer recognizes is the truly ancient format associated&lt;br /&gt;
with the earliest incarnations of the code in which the&lt;br /&gt;
control file parameters and nodal data were included in&lt;br /&gt;
a single file.  For these control files, the paradisconvert&lt;br /&gt;
utility will be needed.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisconvert utility is:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert  &amp;lt;controlFile&amp;gt; [dataFile]&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;controlFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the control parameter file to be updated to the current format.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;dataFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;If the specified control file is the original ancient format including control parameters and                             nodal data in the single file, this argument is ignored.  Otherwise, this specifies the base name                             of the nodal data file(s) to be converted.  If not this argument is not provided, it will default to                             the same name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and the &#039;.data&#039; suffix added.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
On success, the utility will rename the original files by appending&lt;br /&gt;
a &#039;.bkup&#039; suffix to the names, and create new control and data files&lt;br /&gt;
with the specified names.  Note: for control parameter files which&lt;br /&gt;
include nodal data, a new data file will be generated under the&lt;br /&gt;
the name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and&lt;br /&gt;
a &#039;.data&#039; suffix added.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Examples:&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To convert the original format file &#039;restart.cn&#039; containing&lt;br /&gt;
both control parameters and nodal data, execute:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert restart.cn&lt;br /&gt;
&lt;br /&gt;
The utility will generate the following files:&lt;br /&gt;
&lt;br /&gt;
:              restart.cn.bkup&lt;br /&gt;
:              restart.cn&lt;br /&gt;
:              restart.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control parameter and data file pair with&lt;br /&gt;
the names &#039;rs0100&#039; and &#039;rs0100.data&#039; respective, execute either&lt;br /&gt;
of the following equivalent command lines:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
&lt;br /&gt;
In both cases, the utility would generate the files:&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control file &amp;lt;rs0100&amp;gt; and a set of segmented&lt;br /&gt;
data files with the names &amp;lt;rs0100.data.0&amp;gt;, &amp;lt;rs0100.data.1&amp;gt;, ...&lt;br /&gt;
&amp;lt;rs0100.data.7&amp;gt;, execute any of the following equivalent commands:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
 paradisconvert rs0100 rs0100.data.0&lt;br /&gt;
&lt;br /&gt;
In all of the above cases, the utility would generate the files&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.0.bkup&lt;br /&gt;
:              rs0100.data.1.bkup&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data.0&lt;br /&gt;
:              rs0100.data.1&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7&lt;br /&gt;
&lt;br /&gt;
=== Creating the FMM Image Correction Table with &#039;ctablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;ctablegen&#039; utility is used to create an image correction&lt;br /&gt;
table needed when the FMM (Fast Multipole Method) has been enabled&lt;br /&gt;
by setting the &amp;lt;fmEnabled&amp;gt; toggle on in the control file.  Since&lt;br /&gt;
the data in this file is dependent on the poisson ratio, shear&lt;br /&gt;
modulus, and orders of the multipole and taylor expansions, the&lt;br /&gt;
file must be created for the particular values of these items&lt;br /&gt;
used in the simulation.&lt;br /&gt;
&lt;br /&gt;
Given the current defaults used by ParaDiS (as set in Param.c):&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ||align=&amp;quot;left&amp;quot;| poisson ratio:          ||align=&amp;quot;center&amp;quot;|      3.327533e-01       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| shear modulus:          ||align=&amp;quot;center&amp;quot;|      6.488424e+10       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| multipole order:        ||align=&amp;quot;center&amp;quot;|      2       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| taylor expansion order: ||align=&amp;quot;center&amp;quot;|      5       &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To create the FMM image correction table, you could execute&lt;br /&gt;
ctablegen from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command line:&lt;br /&gt;
&lt;br /&gt;
 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \&lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
NOTE:  The generation of this table can take a significant&lt;br /&gt;
amount of time, therefore, a parallel version of the utility&lt;br /&gt;
(called ctablegenp) has also been provided.  To execute the&lt;br /&gt;
table generation in parallel on 8 processors using mpirun as&lt;br /&gt;
a parallel program initiator, one could execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \ &lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
The locations of this file is specified in the control&lt;br /&gt;
parameter file via the &amp;lt;fmCorrectionTbl&amp;gt; parameter.&lt;br /&gt;
&lt;br /&gt;
=== Creating Far-Field Stress Tables with &#039;stresstablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;stresstablegen&#039; utility is used to create tables needed&lt;br /&gt;
for calculating stress from distant cells and periodic images&lt;br /&gt;
of the system when FMM is disabled (i.e. &amp;lt;fmEnabled&amp;gt; is set &lt;br /&gt;
to zero).  There are two required tables, one which factors&lt;br /&gt;
in stress from periodic images only and the other which factors&lt;br /&gt;
in stress from both the primary and period images.&lt;br /&gt;
&lt;br /&gt;
To create the needed stress tables, execute the stesstablegen&lt;br /&gt;
utility twice from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command lines:&lt;br /&gt;
&lt;br /&gt;
 bin/stresstablegen -nopbc -outfile inputs/Rijm.cube.out&lt;br /&gt;
and&lt;br /&gt;
 bin/stresstablegen -pbc -outfile inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
The locations of these files are specified in the control&lt;br /&gt;
parameter file via the &amp;lt;Rijmfile&amp;gt; and &amp;lt;RijmPBCfile&amp;gt; parameters&lt;br /&gt;
respectively.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== genPovrayFrames ===&lt;br /&gt;
&lt;br /&gt;
The genPovrayFrames tool is provided to post-process the&lt;br /&gt;
povray data files generated by ParaDiS when the &amp;lt;povray&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
create an &#039;*.pov&#039; file containing the ParaDiS generated&lt;br /&gt;
data embedded in a proper framework of povray settings &lt;br /&gt;
and commands.  The tool is located in the &amp;lt;ParadisDir&amp;gt;/tools&lt;br /&gt;
directory.  For details on the use of this tool, see&lt;br /&gt;
the comments at the beginning of the script or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/genPovrayFrames -help&lt;br /&gt;
&lt;br /&gt;
=== gnuplot2povray ===&lt;br /&gt;
         &lt;br /&gt;
The gnuplot2povray tool is provided to post-process the&lt;br /&gt;
gnuplot data files generated by ParaDiS when the &amp;lt;gnuplot&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
convert the data in the gnuplot files into a format&lt;br /&gt;
suitable for povray, and create an &#039;*.pov&#039; file containing&lt;br /&gt;
the converted data embedded in a proper framework of povray&lt;br /&gt;
settings and commands.  The tool is located in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools directory.  For details on the use of&lt;br /&gt;
this tool, see the comments at the beginning of the script&lt;br /&gt;
or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/gnuplot2povray -help&lt;br /&gt;
&lt;br /&gt;
=== stitch ===&lt;br /&gt;
&lt;br /&gt;
When ParaDiS is configured to enable parallel I/O&lt;br /&gt;
(i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater&lt;br /&gt;
than 1), each of the following types of output &lt;br /&gt;
will be generated as a set of files rather than a&lt;br /&gt;
single output file.  &lt;br /&gt;
&lt;br /&gt;
:              gnuplot files&lt;br /&gt;
:              tecplot files&lt;br /&gt;
:              segment/arm data&lt;br /&gt;
:              povray files&lt;br /&gt;
:              velocity data&lt;br /&gt;
:              terascale browser files&lt;br /&gt;
:              pole figures&lt;br /&gt;
&lt;br /&gt;
Each file &#039;segment&#039; will contain a portion of the full&lt;br /&gt;
data and will have a sequence number appended to the file&lt;br /&gt;
name.  &lt;br /&gt;
&lt;br /&gt;
Most utilities for processing these types of output, however,&lt;br /&gt;
expect the data in a single file, so the &#039;stitch&#039; tool&lt;br /&gt;
has been provided in order to recombine these data file&lt;br /&gt;
segments into a single usable file as a post-processing&lt;br /&gt;
step.  The tool can be found in the source release as:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/tools/stitch&lt;br /&gt;
&lt;br /&gt;
The command line for &#039;stitch is as follows:&lt;br /&gt;
&lt;br /&gt;
 stitch [-h] [-d dir | -f file]&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
              -h          prints the usage information to stdout&lt;br /&gt;
&lt;br /&gt;
              -d &amp;lt;dir&amp;gt;    specifies a directory the utility will&lt;br /&gt;
                          scan for any segmented output files that&lt;br /&gt;
                          need to be stitched together.&lt;br /&gt;
&lt;br /&gt;
              -f &amp;lt;file&amp;gt;   specifies a base file name and the utility will&lt;br /&gt;
                          scan for the corresponding file segments (files&lt;br /&gt;
                          named &amp;lt;file&amp;gt;.N where N ranges from zero on up)&lt;br /&gt;
                          and stitch the segments into the single specified&lt;br /&gt;
                          base file name.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: If neither a directory nor file name was provided&lt;br /&gt;
on the command line, the tool will behave as though&lt;br /&gt;
the caller specified the current directory on the command&lt;br /&gt;
line and perform as stated above.&lt;br /&gt;
&lt;br /&gt;
==  Appendix 1. Control Parameters ==&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of the valid control&lt;br /&gt;
file parameters.  Also see the example control files contained&lt;br /&gt;
within the &amp;lt;ParadisDir&amp;gt;/tests directory.&lt;br /&gt;
&lt;br /&gt;
The parameters have been grouped into the following categories, and&lt;br /&gt;
unless otherwise specified, units are in SI, and lengths are&lt;br /&gt;
normalized by burgers vector magnitude:&lt;br /&gt;
&lt;br /&gt;
* Simulation cell and processor setup&lt;br /&gt;
* Simulation time and timestepping controls&lt;br /&gt;
* Discretization controls&lt;br /&gt;
* FMM controls&lt;br /&gt;
* Tables for non-FMM far-field forces&lt;br /&gt;
* Loading condition parameters&lt;br /&gt;
* Material and mobility parameters&lt;br /&gt;
* Velocity statistics and controls&lt;br /&gt;
* I/O controls and parameters&lt;br /&gt;
* Miscellaneous parameters&lt;br /&gt;
&lt;br /&gt;
=== Simulation cell and processor setup: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A1. Control parameters for simulation setup&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXdoms, numYdoms, numZdoms ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of computational domains into which the problem space is                                      partitioned in the corresponding dimensions.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXcells, numYcells, numZcells ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of cells in the corresponding dimension of the problem                                      space.  Cells are independent of the domain geometry and are used to                                      determine boundaries at which far-field forces are computed rather than direct                                      segment to segment forces.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundType, yBoundType, zBoundType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of problem space boundaries in the corresponding                                      dimension.  Currently supported types are 0, and 1 for periodic and free                                      surfaces respectively.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMax, yBoundMax, zBoundMax ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the upper limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;lt;= the respective maximum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMin, yBoundMin, zBoundMin ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the lower limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;gt;= the respective minimum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  decompType ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the type of domain decomposition to be used for a run. A value of one selects the old Recursive                                      Sectioning (RS) algorithm, a value of 2 selects the Recursive Bisectioning (RB)                                      decomposition algorithm.  The default is currently the RS decomposition.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  DLBfreq ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the frequency (in cycles) at which Dynamic Load-Balancing is to be                                      attempted.  A value of zero indicates no load-balancing is to be done.                                     Default is 3.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Simulation time and timestepping controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A2. Time Control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cycleStart ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Starting cycle number for the simulation.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxstep ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the number of timesteps to execute before terminating.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeNow ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Current simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeStart ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Initial simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timestepIntegrator ||align=&amp;quot;center&amp;quot;|     string      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Selects a timestep integration method. Valid methods are &amp;quot;trapezoid&amp;quot; and                                      &amp;quot;forward-euler&amp;quot;.  The default value is &amp;quot;trapezoid&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  deltaTT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the duration of the previous timestep in units of seconds.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the maximum timestep permitted. Default is 1.0e-07.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  nextDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the timestep duration to attempt on the next cycle.  The timestep                                      integrator will adjust this value dynamically.  Default is &amp;lt;maxDT&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtDecrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor by which &amp;lt;delatTT&amp;gt; is mutiplied when cutting the timestep duration down.                                      Must be between 0.0 and 1.0.  Currently only used with the &amp;quot;trapezoid&amp;quot;                                     integrator.  Default is 0.5.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtExponent ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Exponent used in calculation of timestep increment when &amp;lt;dtVariableAdjustment&amp;gt;                                      toggle is enabled.  Currently used only with &amp;quot;trapezoid&amp;quot; timestep integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtIncrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum factor by which &amp;lt;deltaTT&amp;gt; is multiplied when incrementing the                                      timestep.  Must be at least 1.0.  Default is 1.2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtVariableAdjustment ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles ability to vary the increment by which the timestep is adjusted when the                                      current timestep is determined to be too small.  This will permit the timestep to                                      be adjusted to a value between 1.0 and &amp;lt;dtIncrementFact&amp;gt; * &amp;lt;deltaTT&amp;gt;.  Toggle                                      is zero (off) by default.  Used only with &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rTol ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum position error (in units of b) tolerated in the timestep integration.                                      Only applies to the &amp;quot;trapezoid&amp;quot; integrator.  Default is 0.25 * &amp;lt;rc&amp;gt;. The annihilation&lt;br /&gt;
distance is related to rTol(By default, it is set to 2* &amp;lt;rTol&amp;gt; = 0.5 * &amp;lt;rc&amp;gt;.)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rmax ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum distance (in units of b) a node is permitted to move in a single                                      timestep.  Not used if &amp;quot;trapezoid&amp;quot; timestep integrator used.  Default is                                      0.5 * &amp;lt;minSeg&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Discretization controls: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A3. Discretization control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the maximum permitted length (in units of b) of a dislocation segment.                                      Primarily used for determining when segments are to be rediscretized during                                      remesh operations.  This value must be less than 9/10 the size of a cell.                                      There is no default value, and must be specified in the control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  minSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the minimum desired length (in units of b) of a dislocation segment.                                      Primarily used for determining when nodes are to be removed during remesh                                      operations.  Default is: sqrt(remeshAreaMin*(4/sqrt(3))) where remeshAreaMin = 2*rTol*maxSeg&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  remeshRule ||align=&amp;quot;center&amp;quot;|     integer        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by number the set of rules governing rediscretization of                                      dislocations.  Currently the only supported remesh modules are versions 2 and 3.  Default is 2.  (See section                                      on Rediscretization for details on remesh versions.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FMM controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A4. FMM control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmEnabled    ||align=&amp;quot;center&amp;quot;|      integer      ||align=&amp;quot;left&amp;quot;|       &lt;br /&gt;
Toggle controlling use of a Fast Multipole Method (FMM) for computing force contributions from remote                                      dislocation segments.  A value of zero disables the use of FMM, any other value                                       enables FMM.  Default value is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fmCorrectionTbl ||align=&amp;quot;center&amp;quot;|      string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of the image correction table used by the FMM.  This correction table must                                      correspond to the specified &amp;lt;fmMPOrder&amp;gt;, &amp;lt;fmTaylorOrder&amp;gt; and &amp;lt;shearModulus&amp;gt;(?)                                      control parameters.  See the [[#Creating the FMM Image Correction Table with &#039;ctablegen&#039;|&#039;ctablegen&#039; utility]] for information on creating these tables.  This value is ignored if &amp;lt;fmEnabled&amp;gt; is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmMPOrder    ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the multipole expansion order used by the FMM.  This value is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fmTaylorOrder  ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the order of taylor expansions used by the FMM.  This values is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 4.&lt;br /&gt;
|}&lt;br /&gt;
                                          &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A5. Table for non-FMM far-field forces&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Rijmfile  ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                     calculations.  This parameter is ignored if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero.  Default is                                      &amp;quot;inputs/Rijm.cube.out&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  RijmPBCfile ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                      calculations with periodic boundary conditions.  This parameter is ignored                                      if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero. Default is &amp;quot;inputs/RijmPBC.cube.out&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Loading condition parameters: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A6. Loading condition parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  loadType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
&amp;lt;ol start=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Creep test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Constant strain rate test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Displacement-controlled test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Load-controlled, load vs. time curve &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Cyclic loading condition &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  appliedStress ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
External stress specified in units of Pa as [sigma11, sigma22, sigma33, sigma23,                                      sigma31, sigma12] when &amp;lt;loadType&amp;gt; == 0. Default is [0.0, 0.0, 0.0, 0.0, 0.0, 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eRate ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate.  Applicable only when &amp;lt;loadType&amp;gt; == 1.  Default is 1.0/sec.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  indxErate ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Index to indicate normal or shear deformation.  Used only when &amp;lt;loadType&amp;gt; == 1.                                      Valid values are:&lt;br /&gt;
#                                      normal&lt;br /&gt;
#                                      shear&lt;br /&gt;
If not specified, defaults to 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  edotdir ||align=&amp;quot;center&amp;quot;|     double[3]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Uniaxial loading direction accompanying &amp;lt;eRate&amp;gt;.  Default is [1.0 0.0 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cTimeOld ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Timestep related to cyclic loading. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Incremental strain under cyclic load. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  netCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Net accumulated strain under cyclic load.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numLoadCycle ||align=&amp;quot;center&amp;quot;|    integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Number of cyclic cycles.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eAmp ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain amplitude.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Material and mobility parameters: ===&lt;br /&gt;
&lt;br /&gt;
Note: Default values for all material and mobility related&lt;br /&gt;
parameters correspond to Tantalum at a temperature of &lt;br /&gt;
600 degress K and pressure of 0 GPa.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A7. Table for material and mobility parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  mobilityLaw ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by name the set of rules governing dislocation motion for the simulation conditions. Default                                      is &amp;quot;BCC_0&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  shearModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Shear modulus in units of Pa.  Default is 6.488424e+10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  pois ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Poisson ratio.  Default is 3.327533e-01&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  burgMag ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Magnitude of the burgers vector (b) in units of meters.  Default is 2.875401e-10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  YoungModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Young&#039;s modulus (in units of Pa). calculated from E = 2G(1+pois). Default is 200.0e+09.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rc ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core radius (in units of b) for self-force calculations.  No default value;                                      must be specified in control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ecore ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core energy used for self-force calculation.  Default is                                      (&amp;lt;shearModulus&amp;gt;/(4*PI)) * log(&amp;lt;rc&amp;gt;/0.1)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobScrew ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of screw dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobEdge ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of edge dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobClimb ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Climb mobility of dislocations in units of 1/(Pa*sec).  Default is 1.0e-02.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessileburgspec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of burgers vectors to be considered sessile.  First element of the                                      array contains the number of burgers vectors specified, the remaining elements                                      specify the X, Y, then Z components of each sessile burgers vector.  Maximum                                      sessile burgers vectors allowed is 9.  No burgers vectors are sessile by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessilelinespec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of line directions related to sessileburgspec.  First element is                                      ignored, remaining elements specify the X, Y, then Z components of each sessile                                      line.  The number of lines is assumed to be the same as the number of sessile                                      burgers vectors.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A8. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpSpn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic strain tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpStn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic spin tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totstraintensor ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate tensor with respect to global coordinate system.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ltot ||align=&amp;quot;center&amp;quot;|     double[4][4]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Decomposed density per burgers vector for screw and three edges (for BCC                                        slip systems only).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fluxtot  ||align=&amp;quot;center&amp;quot;|     double[4][7]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For each burgers vector (for BCC slip systems only), contains:&lt;br /&gt;
&amp;lt;table border = &amp;quot;0&amp;quot; cellpadding = &amp;quot;0&amp;quot; cellspacing = &amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  1.   &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to climb &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  2-4. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to edge components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  5-7. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to screw components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Velocity statistics: ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: these statistics will only be used if the VEL_STATISTICS pre-processor macro has been defined during compilation.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A9. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vAverage ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Average dislocation velocity.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vStDev ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Standard deviation of dislocation velocities.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== I/O controls and parameters ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: A number of the supported output forms are controlled by&lt;br /&gt;
very similar control parameters.  The general descriptions below&lt;br /&gt;
apply to all I/O control parameters of like names:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     *freq    Sets the frequency (in cycles) at which the associated data&lt;br /&gt;
              will be written to disk.  If the corresponding &amp;lt;*dt&amp;gt; parameter&lt;br /&gt;
              is greater than 0, this parameter will be ignored. &lt;br /&gt;
              Default for all such values is 100.&lt;br /&gt;
&lt;br /&gt;
     *dt      The *dt variables specify the simulation delta time that will&lt;br /&gt;
              control the frequency at which the associated output will be&lt;br /&gt;
              written to disk. A positive value is interpreted as a delta&lt;br /&gt;
              time and will take precedence over any frequency specified by&lt;br /&gt;
              the corresponding &amp;lt;*freq&amp;gt; value.  A value &amp;lt;= zero indicates&lt;br /&gt;
              write frequency will not be determined by delta times.&lt;br /&gt;
              Default value is -1.0.&lt;br /&gt;
&lt;br /&gt;
     *time    Specifies the simulation time at which the associated data&lt;br /&gt;
              was last written to disk.  This value will be automatically&lt;br /&gt;
              updated during the simulation.  If the corresponding &amp;lt;*dt&amp;gt;&lt;br /&gt;
              parameter is &amp;lt;= 0.0 this parameter will be ignored.&lt;br /&gt;
&lt;br /&gt;
     *counter Sequence number of the previously written file of the&lt;br /&gt;
              corresponding type.  Default is 0.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A10. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| dirname ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Base output directory name.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| skipIO ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle for disabling generation of all output types other than timing files.                                      Overrides output-specific toggles if set. Default is 0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| numIOGroups ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the number of groups into which the domains will be separated for doing                                      parallel IO.  All files generated in parallel will be created with this                                      number of segments.  This value must be at least one and no more than the total number of domains used.                                      default is 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files identifying each unique dislocation                                      segment.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilecounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiledt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilefreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiletime ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of flux decomposition files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxcounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxdt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|fluxtime ||align=&amp;quot;center&amp;quot;|   double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplot  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files formatted for use with gnuplot.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotcounter  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotfreq  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplottime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of &amp;lt;111&amp;gt; type burgers vector pole figures.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefilecounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigdt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigtime ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povray ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files with nodal data and domain                                      boundaries for use with povray.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraycounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraydt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povrayfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraytime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of postscript files containing nodal                                      data and domain boundaries.   Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiledt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfilefreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiletime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecn ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of restart files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecncounter ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecndt ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecnfreq ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecntime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveprop  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of various properties files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveproptime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimers  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of timing data files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerscounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerstime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savedensityspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the granularity of the 3D density field written to the density field file in X, Y and Z                                      dimensions.  If any element of this array is zero, this capability is                                      disabled.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplot  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      tecplot.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotcounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplottime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfile  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      the TeraScale Browser.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| writetsbspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilecounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiledt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfile  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files containing velocity data                                      for all nodes in the simulation.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilecounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiledt  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| winDefaultsFile  ||align=&amp;quot;center&amp;quot;|   string   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing default options and attributes for the X-window                                      display.  This is ignore if the X display support was not enabled at compile time.  Defaults to                                      &amp;quot;./inputs/paradis.xdefaults&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous parameters ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A11. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  elasticinteraction ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles between explicit calculation of elastic interaction and simple line                                      tension calculations.  Toggle is one (on) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TensionFactor ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor used for simple line tension force calculations when the                                      &amp;lt;elasticinteraction&amp;gt; parameter is zero. Default is 1.0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Under development ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A12. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TempK ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Simulation temperature (in Kelvin).  For use in FCC cross-slip.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| enforceGlidePlanes ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If non-zero, forces remesh, collision handling, etc. to use glide-plane                                      constraints.  Default is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| springConst ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For use with FCC_0 mobility&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_compute_escaig ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_cross_slip ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5619</id>
		<title>Overview of ParaDiS 2.2</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5619"/>
		<updated>2011-12-05T04:51:42Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Simulation time and timestepping controls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is taken from ParaDiSInfo.txt in ParaDiS.v2.2 distribution.  Written by Gregg Hommes, LLNL.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
The Parallel Dislocation Simulator (ParaDiS) was written&lt;br /&gt;
and developed at LLNL by a team of physicists and computer&lt;br /&gt;
scientists.  ParaDiS is a code for doing Dislocation Dynamics&lt;br /&gt;
simulations and was specifically written to perform well on&lt;br /&gt;
massively parallel computers.  The computational approach to&lt;br /&gt;
Dislocation Dynamics used in ParaDiS is fairly simple.  In&lt;br /&gt;
it, one introduces dislocation lines into the computational&lt;br /&gt;
volume and lets them interact and move in response to the&lt;br /&gt;
forces imposed by external stress and inter-dislocation&lt;br /&gt;
interactions. &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Building ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
=== Directory Structure ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS release consists of a file which, when unzipped&lt;br /&gt;
and untarred creates a primary directory and a structure&lt;br /&gt;
of subdirectories.  For convenience, this primary directory&lt;br /&gt;
will hereafter be referred to as &amp;lt;ParadisDir&amp;gt;.  The directory&lt;br /&gt;
structure of the release will look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains primary &#039;make&#039; files for controlling build of all executables&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;This directory will be created during the &#039;make&#039; process. All executables will be placed in this directory during compilation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/docs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains any additional documentation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/include/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains all C and C++ header files&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/inputs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;FMM and non-FMM correction tables, X-display defaults file, gnuplot command file, etc.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/materials/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Sample files containing material specific tables and constants&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/src/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;All C and C++ source code modules related to the paradis executable&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/tools/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Miscellaneous support scripts&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/utilities/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Source code modules pertaining to the various support tools&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling ===&lt;br /&gt;
&lt;br /&gt;
The current ParaDiS &#039;make&#039; files support compilation for&lt;br /&gt;
a number of pre-defined system types that are defined in&lt;br /&gt;
the file &#039;makefile.sys&#039;. In order to compile the code on&lt;br /&gt;
one of these pre-defined system types, simply edit&lt;br /&gt;
&#039;makefile.setup&#039; and set the &amp;quot;SYS=...&amp;quot; value to the&lt;br /&gt;
desired system type.  For other system types, add a new&lt;br /&gt;
system type into &#039;makefile.sys&#039; following the format used&lt;br /&gt;
for the existing systems and, as above, set the &amp;quot;SYS=...&amp;quot;&lt;br /&gt;
value in &#039;makefile.setup&#039;.&lt;br /&gt;
&lt;br /&gt;
Executing &#039;gmake&#039; with no options in &amp;lt;ParadisDir&amp;gt; will&lt;br /&gt;
build the following executables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradis&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Main parallel application&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisgen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating initial dislocation configurations (See [[#Utilities|Utilities]] section for  details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisrepart&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for generating a new domain decomposition for an existing dislocation configuration (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisconvert&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for converting older format ParaDiS control parameter files to the current format (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating image correction tables needed when FMM code is enabled.  (See  [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegenp&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Parallel version of the ctablegen utility. See above.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/stresstablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating tables used in calculating far-field stress if the FMM code is not enabled.  (See [[#Utilities|Utilities]] section for details)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Make files ===&lt;br /&gt;
&lt;br /&gt;
Compilation of the code is done via &#039;gmake&#039; and depends&lt;br /&gt;
on the following &#039;make&#039; files located in the &amp;lt;ParadisDir&amp;gt;&lt;br /&gt;
directory.  (See the individual make files for details)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This is the primary make file controlling the build of the parallel executable and associated utilities.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.sys&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This file contains, for each supported system type, a set of &#039;make&#039; macros, definitions,  compiler selection, library and include file paths, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.setup&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Contains numerous &#039;make&#039; settings and flags that are not system specific, including settings for system type, optimization level, debugging flags, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;         &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Executing ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
===  Command line ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS command line format is:&lt;br /&gt;
&lt;br /&gt;
 paradis [-r &amp;lt;numCycles&amp;gt;] [-d dataFile] &amp;lt;controlFile&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ctrlFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the ParaDiS control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-d &amp;lt;dataFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the base name of the file(s) containing the nodal data for the run. If this file name is not supplied, the code looks for a data file named the same as the control file with the file name suffix (if any) replaced with &amp;quot;.data&amp;quot;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-r &amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;numCycles&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Causes the code to execute a series of &amp;lt;numCycles&amp;gt; cycles during which no force calculations or dislocation movement will occur. These cycles will be used strictly for load-balancing purposes and will be done before the normal cycles. This can be useful when a simulation is started with a uniform domain decomposition  and needs time to converge on an optimal decomposition as would occur when restarting a simulation on a different number of cpus&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
For example, the following are all valid execution lines with the&lt;br /&gt;
first two being equivalent, the third version using the same control&lt;br /&gt;
file as the first two, but explicitly selecting a different nodal&lt;br /&gt;
data file.&lt;br /&gt;
&lt;br /&gt;
For example, assuming you had a the control parameter file&lt;br /&gt;
&#039;testrun.ctrl&#039; and the two different nodal data files &#039;testrun.data&#039;&lt;br /&gt;
and &#039;testrun2.data&#039;, all of the following command lines formats&lt;br /&gt;
are valid.  The first two commands are equivalent, the third&lt;br /&gt;
uses the same control parameter file as the first two, but&lt;br /&gt;
explicitly selects a different nodal data file.&lt;br /&gt;
           &lt;br /&gt;
 mpirun -np 8 bin/paradis testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun.data testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun2.data testrun.ctrl&lt;br /&gt;
&lt;br /&gt;
NOTE: The number of processors specified to mpirun (or other&lt;br /&gt;
parallel job initiator applicable to the execting system)&lt;br /&gt;
must match the number of domains specified in the control&lt;br /&gt;
file (i.e. np = numXdoms * numYdoms * numZdoms).&lt;br /&gt;
&lt;br /&gt;
Several small example problems are included with the&lt;br /&gt;
ParaDiS release.  The control and data files for these&lt;br /&gt;
examples are:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.data&lt;br /&gt;
&lt;br /&gt;
NOTE: These tests require the following tables used&lt;br /&gt;
for calculating the far-field stresses from distant&lt;br /&gt;
cells and periodic images of the problem.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
These file *may* have been provided with the source&lt;br /&gt;
code release.  If not, see the README file in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tests directory for instructions on&lt;br /&gt;
generating these files.&lt;br /&gt;
&lt;br /&gt;
The &#039;form_binaryjunc*&#039; files contain a small configuration that&lt;br /&gt;
will demonstrate the formation of a binary junction from two&lt;br /&gt;
dislocation lines, while the &#039;frank_read_src*&#039; files contain a&lt;br /&gt;
configuration that demonstrates the behaviour of a frank-read&lt;br /&gt;
source.  Both these examples are single cpu examples.  To run&lt;br /&gt;
these tests, from the main &amp;lt;ParadisDir&amp;gt; directory execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/form_binaryjunc.ctrl&lt;br /&gt;
or&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/frank_read_src.ctrl&lt;br /&gt;
          &lt;br /&gt;
The &#039;fmm_8cpu*&#039; files are just a general demonstration of the&lt;br /&gt;
behavior of a small number of screw dislocations.  This is&lt;br /&gt;
an 8 processor simulation using the Fast Multipole Method&lt;br /&gt;
(FMM) for calculating stress from far-field interactions.&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 ./bin/paradis ./tests/fmm_8cpu.ctrl&lt;br /&gt;
&lt;br /&gt;
Any output from these runs will be placed into corresponding&lt;br /&gt;
subdirectories under the &amp;quot;tests&amp;quot; directory.&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Inputs ==&lt;br /&gt;
&lt;br /&gt;
=== Input Files ===&lt;br /&gt;
&lt;br /&gt;
A ParaDiS simulation may be started from scratch, or &lt;br /&gt;
terminated and then later restarted if the user requested&lt;br /&gt;
periodic dumps of restart files.  In either case, the initial&lt;br /&gt;
or restart data data consists of two files, a control&lt;br /&gt;
parameter file and a nodal data file.  (See section on&lt;br /&gt;
[[#Output|Output]] for details on restart files)&lt;br /&gt;
&lt;br /&gt;
=== Control Parameter File ===&lt;br /&gt;
&lt;br /&gt;
The control parameter file consists of data of the form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = value&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&lt;br /&gt;
 identifier = [value_list]&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;or&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = string&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
where&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;identifier&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is the name of a control parameter&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a numeric value associated with the parameter specified by &amp;lt;identifier&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value_list&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a list of numeric values to be associated with the array specified by &amp;lt;identifier&amp;gt;. This values in this list must be delimited by white-space or line-feeds.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;string&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;a character string enclosed within either single or double quotes.  The string may not contain a line-feed character.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
        &lt;br /&gt;
The identifier names are case-insensitive and may be specified&lt;br /&gt;
as any mixture of upper and lower case.  If the code encounters&lt;br /&gt;
an identifier it does not recognize, the identifier and associated&lt;br /&gt;
value(s) will be ignore and a warning message displayed.&lt;br /&gt;
&lt;br /&gt;
Any blank lines in the control parameter file will will be&lt;br /&gt;
ignored and additionally, any &#039;#&#039; not contained within quotes&lt;br /&gt;
is treated as the beginning of a comment and causes the remainder&lt;br /&gt;
of the current line to be ignored.&lt;br /&gt;
&lt;br /&gt;
See the [[#Appendix 1. Control Parameters|Appendix]] for a complete list of the recognized control&lt;br /&gt;
parameters as well as a brief description of each.&lt;br /&gt;
&lt;br /&gt;
===  Nodal Data File ===&lt;br /&gt;
&lt;br /&gt;
==== Data File Format ====&lt;br /&gt;
&lt;br /&gt;
The nodal data will be contained in 1 or more file&lt;br /&gt;
segments, with the information being broken into&lt;br /&gt;
three sections (described below). The first section&lt;br /&gt;
is the data file parameters, the second section the&lt;br /&gt;
domain decomposition, and the third section the nodal&lt;br /&gt;
data.  The first two sections will be included only&lt;br /&gt;
in the first file segment.&lt;br /&gt;
&lt;br /&gt;
==== Data File Segments ====&lt;br /&gt;
&lt;br /&gt;
Given a control parameter file &#039;restart.cn&#039;, the&lt;br /&gt;
associated nodal data file(s) would be named:&lt;br /&gt;
&lt;br /&gt;
 restart.data[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where  &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when the nodal data was written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter was greater than 1). &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;      &lt;br /&gt;
    &lt;br /&gt;
For example, suppose the &amp;lt;numIOGroups&amp;gt; control parameter&lt;br /&gt;
was set to 4 during a simulation executed on 16 processors.&lt;br /&gt;
If the simulation created a restart file set at termination,&lt;br /&gt;
the following files would be generated and could be used&lt;br /&gt;
as input to continue the simulation at a later time:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.cn&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.0&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.1&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.2&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.3&lt;br /&gt;
&lt;br /&gt;
==== Data File Parameters ====&lt;br /&gt;
&lt;br /&gt;
The data file parameters make up the first section of&lt;br /&gt;
the nodal data file and are parsed in the same manner&lt;br /&gt;
as specified above for the control file parameters.&lt;br /&gt;
These parameters must preceed the other two types of&lt;br /&gt;
information in the nodal data file.  NOTE: The values&lt;br /&gt;
of these parameters are updated within the ParaDiS&lt;br /&gt;
code as necessary and should not be changed by the user.&lt;br /&gt;
&lt;br /&gt;
The recognized data file parameters are:&lt;br /&gt;
&lt;br /&gt;
:                     dataFileVersion&lt;br /&gt;
:                     numFileSegments&lt;br /&gt;
:                     minCoordinates&lt;br /&gt;
:                     maxCoordinates&lt;br /&gt;
:                     nodeCount&lt;br /&gt;
:                     dataDecompType&lt;br /&gt;
:                     dataDecompGeometry&lt;br /&gt;
&lt;br /&gt;
==== Domain Decomposition ====&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
==== Nodal Data ====&lt;br /&gt;
The raw nodal data comprises the third section&lt;br /&gt;
of the nodal data file.  For each node, there will&lt;br /&gt;
be a single line of node specific data followed by&lt;br /&gt;
several lines of segment specific data for each&lt;br /&gt;
segment associated with the node.  The nodal data&lt;br /&gt;
consists of:&lt;br /&gt;
&lt;br /&gt;
: node_tag x_coord y_coord z_coord num_arms constraint&lt;br /&gt;
&lt;br /&gt;
The segment specific data consists of:&lt;br /&gt;
&lt;br /&gt;
: nbr_tag burg_x burg_y, burg_z&lt;br /&gt;
: norm_x norm_y norm_z&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;*_tag&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a comma delimited pair of numbers uniquely identifying a node.  The first number is the ID of the domain owning the node, the second is the index number of the node within the owning domain.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;bottom&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;x_coord, y_coord, z_coord&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;coordinates of the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;num_arms&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Number of segments associated with the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;constraint&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Integer value indicating any constraints placed on the node (i.e.  a constraint of 7 implies a node fixed in place and unmovable)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Cell and Domain Structure ==&lt;br /&gt;
&lt;br /&gt;
The ParaDiS code is used to simulate cubic systems which&lt;br /&gt;
are simultaneously partitioned into a uniform mesh of&lt;br /&gt;
cubic &#039;cells&#039; and spatially decomposed into &#039;domains&#039;.&lt;br /&gt;
&lt;br /&gt;
The cellular structure is defined by the &amp;lt;nXcells&amp;gt;, &amp;lt;nYcells&amp;gt;&lt;br /&gt;
and &amp;lt;nZcells&amp;gt; control parameters, and is used to determine&lt;br /&gt;
the cut-off distance between direct segment to segment&lt;br /&gt;
dislocation interactions and remote (or far-field) interactions.&lt;br /&gt;
In particular, for a given dislocation segment, the interaction&lt;br /&gt;
between the segment and any other segments in the same cell&lt;br /&gt;
or any of the immediately neighboring 26 cells are calculated&lt;br /&gt;
directly.  Interactions with all segments outside that range&lt;br /&gt;
are calculated via a hierarchical Fast Multipole Method or&lt;br /&gt;
by lumping all segments in the remote cell into a&lt;br /&gt;
&#039;super-dislocation&#039; where the group of remote dislocations&lt;br /&gt;
are represented as an expansion of dislocation multipoles.&lt;br /&gt;
(See [[#Far-Field Dislocation Interactions|section on Far-Field Forces]] for details)&lt;br /&gt;
&lt;br /&gt;
The type of spatial decomposition used for the simulation is&lt;br /&gt;
selected by the &amp;lt;decompType&amp;gt; control parameter, along with&lt;br /&gt;
the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt; and &amp;lt;nZdoms&amp;gt; parameters defining&lt;br /&gt;
the number of spatial domains in each dimension.  Each &#039;domain&#039;&lt;br /&gt;
is assigned to a single task (processor) within the simulation.&lt;br /&gt;
(See [[#Domain Decomposition 2|section on Domain Decomposition]] for details on the &lt;br /&gt;
supported types of spatial decomposition)&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Domain Decomposition ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Domain Decomposition Method ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS simulations are spatially decomposed into a number of&lt;br /&gt;
domains equal to the number of processors on which the simulation&lt;br /&gt;
is being executed.  The code curently supports two types of&lt;br /&gt;
domain decomposition and is selected via the &amp;lt;decompType&amp;gt;&lt;br /&gt;
control parameter.  The type 1 decomposition is a Recursive&lt;br /&gt;
Sectioning decomposition which is the default if no decomposition&lt;br /&gt;
type is explicitly requested.  The type 2 is a Recursive&lt;br /&gt;
Bisection decomposition.  (See descriptions of decomposition&lt;br /&gt;
algorithms below.)&lt;br /&gt;
&lt;br /&gt;
Since the ParaDiS simulations tend to grow in size and are&lt;br /&gt;
spatially heterogeneous, it is preferable to dynamically&lt;br /&gt;
recalculate the domain decomposition at intervals during the&lt;br /&gt;
simulation in order to rebalance the workload more efficiently.&lt;br /&gt;
The frequency with which the domain decomposition will be&lt;br /&gt;
recomputed is specified by the &amp;lt;DLBfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
The domain decomposition will be included in the restart files.&lt;br /&gt;
If the simulation is restarted and the &amp;lt;decompType&amp;gt; control&lt;br /&gt;
parameter selects a decomposition type *other* than the&lt;br /&gt;
decomposition that was used to generate the restart file, the&lt;br /&gt;
old domain decomposition from the restart file will be ignored&lt;br /&gt;
and a new domain decomposition of the selected type will be used.&lt;br /&gt;
&lt;br /&gt;
Additionally, if a simulation is restarted with a different number&lt;br /&gt;
of domains or a different domain geometry that that which was used&lt;br /&gt;
to create the restart file, the domain decomposition from the&lt;br /&gt;
restart file will be ignored and a new decomposition will be&lt;br /&gt;
generated.  &lt;br /&gt;
&lt;br /&gt;
Note: When restarting a large simulation (i.e. thousands&lt;br /&gt;
of processors) in such a way that the old domain decomposition must&lt;br /&gt;
be discarded, it may take some time for the simulation to converge&lt;br /&gt;
on an optimal domain decomposition. (The type 1 decomposition is&lt;br /&gt;
particularly susceptible to this.)  There are two ways to mitigate&lt;br /&gt;
this effect.  The first is to use the &#039;paradisrepart&#039; utility, the&lt;br /&gt;
second through the use of the &amp;quot;-r&amp;quot; command line option to ParaDiS.&lt;br /&gt;
See comments in other sections pertaining to these capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Sectioning ===&lt;br /&gt;
&lt;br /&gt;
The Recursive Sectioning algorithm performs a domain&lt;br /&gt;
decomposition over a 3-timestep period.  During the&lt;br /&gt;
first timestep, the entire problem space will be&lt;br /&gt;
sectioned along the X dimension into &amp;lt;nXdoms&amp;gt; slabs&lt;br /&gt;
such that the computational cost of each slab is roughly&lt;br /&gt;
equivalent.  The next timestep, each slab will be&lt;br /&gt;
sectioned alng the Y axis into &amp;lt;nYdoms&amp;gt; columns&lt;br /&gt;
such that the computational cost of each column in a&lt;br /&gt;
slab is roughly equivalent.  On the thrid timestep,&lt;br /&gt;
every column will be sectioned along the Z axis&lt;br /&gt;
into &amp;lt;nZdoms&amp;gt; chunks such that the computational&lt;br /&gt;
cost of each chunk in a column is roughy equivalent.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
third timestep.&lt;br /&gt;
&lt;br /&gt;
NOTE: Due to the fact that this algorithm requires 3&lt;br /&gt;
timesteps to complete a new decomposition, the&lt;br /&gt;
&amp;lt;DLBfreq&amp;gt; value must be no less than 3.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Bisection ===&lt;br /&gt;
&lt;br /&gt;
WARNING: The implementation of this algorithm requires the&lt;br /&gt;
number of domains in each dimension (as specified&lt;br /&gt;
by the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt;, and &amp;lt;nZdoms&amp;gt; control&lt;br /&gt;
parameters) must be a power of 2.&lt;br /&gt;
&lt;br /&gt;
The Recursive Bisectioning algorithm begins with the entire&lt;br /&gt;
cubic problem space and bisects the space in the X, Y and/or&lt;br /&gt;
Z dimensions into octants quarters or halves (depending on&lt;br /&gt;
the number of domains specified per dimension) such that &lt;br /&gt;
computational cost of each subpartition is roughly the same.&lt;br /&gt;
The decomposition is then recursively applied to each of the&lt;br /&gt;
subpartitions until no further decomposition is necesssary.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Dislocation Mobility ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Mobility Module ===&lt;br /&gt;
&lt;br /&gt;
One of the crucial aspects of a ParaDiS simulation is the&lt;br /&gt;
selection of the set of rules governing the material specific&lt;br /&gt;
physics such as glide climb, and cross-slip with respect to&lt;br /&gt;
crystallographic constraints.  ParaDiS provides multiple sets&lt;br /&gt;
of rules or &amp;quot;mobility laws&amp;quot;, each implemented in a separate&lt;br /&gt;
module, that may be selected via the &amp;lt;mobilityLaw&amp;gt; control&lt;br /&gt;
file parameter.  The currently support modules are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;BCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;BCC_0b&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There are additional modules for dealing with FCC type materials&lt;br /&gt;
however these are neither fully developed nor supported at this&lt;br /&gt;
point.  These FCC mobility functions are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;FCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;FCC_2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
For a list of the control parameters related to the mobility&lt;br /&gt;
of dislocations, see the [[#Material and mobility parameters:|&amp;quot;Material and Mobility Parameters&amp;quot; section]] of the Appendix detailing the control file parameters.&lt;br /&gt;
Currently the default values of all mobility related parameters&lt;br /&gt;
correspond to tantalum at a temperature of 600 K and a&lt;br /&gt;
pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
=== BCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
In BCC metals, screw dislocations do not dissociate into partial&lt;br /&gt;
dislocations the same way they do in FCC metals, therefore, for&lt;br /&gt;
BCC crystals we do not assign glide plane normals to screw&lt;br /&gt;
dislocations.  Instead, screw dislocations are given the same&lt;br /&gt;
mobility in all directions perpendicular to the line.  This&lt;br /&gt;
isotropic mobility for screws mimics the &amp;quot;pencil-glide&amp;quot; behavior&lt;br /&gt;
of dislocations observed in BCC metals at elevated temperatures.&lt;br /&gt;
At the same time, the drag coefficient for non-screw segments&lt;br /&gt;
will remain anisotropic with respect to glide and climb.&lt;br /&gt;
&lt;br /&gt;
For details on this mobility module, refer to the paper:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/Docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== BCC_0b Mobility: ===&lt;br /&gt;
&lt;br /&gt;
The BCC_0b mobility module is nearly a duplicate of BCC_0 with&lt;br /&gt;
the exception that the movement of discretization nodes along&lt;br /&gt;
the dislocation lines has been dampened.&lt;br /&gt;
&lt;br /&gt;
=== TBD ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
This module attempts to simulate easy glide in FCC systems.  The&lt;br /&gt;
glide plane is limited to one of the [111] planes, and cross-slip&lt;br /&gt;
is not permitted.  Also, no crystallographic information is&lt;br /&gt;
used in the dislocation core reactions and hence junction formation&lt;br /&gt;
can take place even slightly off the zone axis.&lt;br /&gt;
&lt;br /&gt;
Reminder:  This mobility module is not fully developed or supported.&lt;br /&gt;
&lt;br /&gt;
=== FCC_2 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Material Properties ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Specifying Material Properties ===&lt;br /&gt;
&lt;br /&gt;
All material specific properties are set via the control&lt;br /&gt;
file parameters.  If not specified, defaults will correspond&lt;br /&gt;
to tantalum at a temperatue of 300 K and pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
See the [[#Material and mobility parameters:|&amp;quot;Material and mobility parameters&amp;quot; section]] of &lt;br /&gt;
Appendix 1 for a list of the material related parameters.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Far-Field Dislocation Interactions ==&lt;br /&gt;
&lt;br /&gt;
=== Fast Multipole for Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The FMM algorithm is enabled within the code via the &amp;lt;fmEnabled&amp;gt;&lt;br /&gt;
toggle in the control file.  The order of the multipole and&lt;br /&gt;
Taylor expansions used by the FMM algorithm are set via the&lt;br /&gt;
&amp;lt;fmMPOrder&amp;gt; and &amp;lt;fmTaylorOrder&amp;gt; control parameters respectively.&lt;br /&gt;
As a general rule, the taylor expansion order should be around&lt;br /&gt;
twice that of the multipole expansion order.  One additional&lt;br /&gt;
control parameter [[#FMM controls|&amp;lt;fmCorrectionTbl&amp;gt;]] specifies the name of the&lt;br /&gt;
file containing the table used by the FMM code to adjust the&lt;br /&gt;
stress calculated by the FMM for multiple periodic images.&lt;br /&gt;
&lt;br /&gt;
It is important to note that the file indicated by &amp;lt;fmCorrectionTbl&amp;gt;&lt;br /&gt;
must be built with the same multipole order, Taylor expansion order,&lt;br /&gt;
and Poisson value (&amp;lt;pois&amp;gt; control parameter) specified for a&lt;br /&gt;
simulation.  An appropriate correction table may be generated&lt;br /&gt;
via the &#039;ctablegen&#039; utility (See the section on Utilities for&lt;br /&gt;
details on the use of &#039;ctablegen&#039;), although a correction table&lt;br /&gt;
matching the code&#039;s default control parameter settings *may* have&lt;br /&gt;
been provided in the code release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600k.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The use of a Fast Multipole Method (FMM) for calculating the&lt;br /&gt;
far-field forces is based on formulae for generating and evaluating&lt;br /&gt;
multipole expansions and a few translation theorems.  A very&lt;br /&gt;
general description can be found below, but for details refer&lt;br /&gt;
to the following paper included with the source release.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The general FMM algorithm consists of the following steps:&lt;br /&gt;
&lt;br /&gt;
# Construct multipole moments: &lt;br /&gt;
#: Each domain (CPU) calculates the contributions of its dislocation segments to the  multipole moments of the FMM subcells to which those segments belong, and communicates those contributions to the domain that owns the FMM subcell. Each domain that owns an FMM subcell sums all the contributions for that subcell together. &amp;lt;bf&amp;gt;&lt;br /&gt;
# Upward pass: &lt;br /&gt;
#: Starting at the lowest layer of the FMM hierarchy, each domain collects and sums the contributions to the multipole moments for each of the FMM subcells it owns from the eight child cells and the calculates the upward pass translation of its multipole moments and communicates the result to the domain owing the subcell&#039;s parent, until the top of the hierarchy is reached.&lt;br /&gt;
# Transverse translations:&lt;br /&gt;
#: The multipole moments from 189 cells that are outside the nearest neighbor distance of the target cell but inside the nearest neaighbor distance of its parent are collected by the domain owning the target cell and their contributions to the Taylor series expansion of the stress filed in target is calculated.&lt;br /&gt;
# PBC correction: &lt;br /&gt;
#: The domain that owns the FMM cell at the highest level of the FMM hierarchy calculates the Taylor                series expansion of the stress state due to periodic images of the system (using [[#FMM controls|table]] specified in the &amp;lt;fmCorrectionTbl&amp;gt; parameter).&lt;br /&gt;
# Downward pass: &lt;br /&gt;
#: Starting with the highest level of the FMM hierarchy, each domain that owns an FMM subcell sums the               contributions from its parent to its Taylor series expansion of the stress from step 3 and then calculates the downward pass translation of the stress for each one of its child cells and sends the results to the domain owning the child subcells until the bottom of the hierarchy is reached.&lt;br /&gt;
# Each domain that owns a subcell at the lowest level of the FMM hierarchy communicates the Taylor series expansions of the stress field to the domains intersecting the subcell.&lt;br /&gt;
&lt;br /&gt;
=== Non-FMM Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The use of the FMM in ParaDiS can be disable by setting the control&lt;br /&gt;
parameter &amp;lt;fmEnabled&amp;gt; to 0.  When FMM is disabled, ParaDiS requires&lt;br /&gt;
additional tables used to factor in the far-field stresses from&lt;br /&gt;
distant cells and periodic images of the system.  The names of the&lt;br /&gt;
files containing the tables are specified via the &amp;lt;Rijmfile&amp;gt; and&lt;br /&gt;
&amp;lt;RijmPBCfile&amp;gt; control parameters.  These tables can be generated&lt;br /&gt;
using the &#039;stresstablegen&#039; utility (see [[#Creating Far-Field Stress Tables with &#039;stresstablegen&#039;|Utilities section]] for&lt;br /&gt;
details), although copies *may* have been provided in the code&lt;br /&gt;
release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
This method essentially lumps all dislocations in a cell into a &lt;br /&gt;
&#039;super-dislocation&#039; where the cell&#039;s dislocations are represented&lt;br /&gt;
as an expansion of the dislocation multipoles.  The remote stress&lt;br /&gt;
for a segment in a given cell is then calculated from two&lt;br /&gt;
components.  The first is the sum of the stresses resulting from&lt;br /&gt;
expansions from all remote cells (i.e. neither the current cell&lt;br /&gt;
nor any of its 26 immediate neighbors) and the stress from all&lt;br /&gt;
periodic images of those remote cells.  The second component&lt;br /&gt;
consists of the stress from only the periodic images of the local&lt;br /&gt;
cells (i.e. the current cell and its immediate neighbors).&lt;br /&gt;
&lt;br /&gt;
This method is can be faster for smaller simulations but unlike&lt;br /&gt;
the FMM, its performance does not scale well as the size of&lt;br /&gt;
a simulation increases in both dislocation density and number&lt;br /&gt;
of cells.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Discretization (Remesh) ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Discretization Method ===&lt;br /&gt;
&lt;br /&gt;
The nature of DD simulations is such that the total length&lt;br /&gt;
of dislocation lines can increase several orders of magnitude.&lt;br /&gt;
Hence, rediscretization of the dislocations is an absolutely necessary&lt;br /&gt;
components of ParaDiS simulations.  The goal of the rediscretization&lt;br /&gt;
is to optimize the numerical description of the continuous dsilocation&lt;br /&gt;
line geometry so that a given level of accuracy is achieved with the&lt;br /&gt;
fewest degrees of freedom.  For regions of high curvature, an optimal&lt;br /&gt;
distribution of nodes will place nodes more closely together than&lt;br /&gt;
in regions of lower curvature.&lt;br /&gt;
&lt;br /&gt;
The level of accuracy is tied to the control parameters &amp;lt;maxSeg&amp;gt;&lt;br /&gt;
and &amp;lt;minSeg&amp;gt; which define the maximum and minimum segment lengths (in&lt;br /&gt;
units of b) respectively.  The smaller the maximum segment length, the&lt;br /&gt;
higher the accuracy.&lt;br /&gt;
&lt;br /&gt;
A number of rediscretization version have been developed and&lt;br /&gt;
tested, although only versions 2 and 3 are currently supported.&lt;br /&gt;
The rediscretization version to use can be selected through&lt;br /&gt;
the control parameter &amp;lt;remeshRule&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 2 ===&lt;br /&gt;
&lt;br /&gt;
This method achieves rediscrtization through two types of&lt;br /&gt;
operations; mesh coarsening and mesh refinement (removing and&lt;br /&gt;
adding discretization nodes respectively).&lt;br /&gt;
&lt;br /&gt;
This involved defining both minimum and maximum discretization areas&lt;br /&gt;
(A_min and A_max) based on the simulation minimum and maximum&lt;br /&gt;
segment lengths &amp;lt;minSeg&amp;gt; and &amp;lt;maxSeg&amp;gt;.  Then for each discretization&lt;br /&gt;
node (i.e. a node with no more than two associated segments) a&lt;br /&gt;
discretization area (A_node) is calculated.  This area is defined&lt;br /&gt;
as the triangle with vertices at the node and its two neighbors.&lt;br /&gt;
When the discretization area associated with a node A_node &amp;lt; A_min&lt;br /&gt;
the node is removed (coarsened out).  Conversely, if the area&lt;br /&gt;
A_node &amp;gt; A_max, the local discretization is refined by bisecting&lt;br /&gt;
both segments attached to the node.&lt;br /&gt;
&lt;br /&gt;
For additional information, refer to the following paper included&lt;br /&gt;
with the ParaDiS source release:&lt;br /&gt;
 &lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 3 ===&lt;br /&gt;
&lt;br /&gt;
This rediscretization method is identical to type 2 with&lt;br /&gt;
the exception that during mesh refinement the inserted&lt;br /&gt;
nodes are not placed at the exact center of the segment&lt;br /&gt;
being bisected.  Instead, the algorithm treats the three&lt;br /&gt;
initial nodes as if they were on an arc and places the&lt;br /&gt;
new nodes at the center of the segments of the arc.&lt;br /&gt;
&lt;br /&gt;
The rationale behind this is that in simulations using&lt;br /&gt;
long segments and/or high stress, a new node added at the&lt;br /&gt;
center of a segment in a region of high curvature will&lt;br /&gt;
not be optimally placed.  This new node may immediately&lt;br /&gt;
accelerate quickly toward its optimal position then&lt;br /&gt;
decelerate as it nears that position.  This behavior&lt;br /&gt;
can severly impact the simulatuion timesteps.  By placing&lt;br /&gt;
the new nodes on an arc, the initial stress on the new&lt;br /&gt;
nodes will not be as high, keeping the motion of the node&lt;br /&gt;
similar to that of the surrounding nodes.  Hence, no&lt;br /&gt;
detrimental effects on the timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Simulation Timestepping ==&lt;br /&gt;
&lt;br /&gt;
=== Timestep Controls ===&lt;br /&gt;
&lt;br /&gt;
Two timestepping algorithms are provided in the ParaDiS code.&lt;br /&gt;
The &amp;lt;timestepIntegrator&amp;gt; control parameter is used to select&lt;br /&gt;
the desired algorithm.  The currently supported algorithms&lt;br /&gt;
are:&lt;br /&gt;
&lt;br /&gt;
:              &amp;quot;trapezoid&amp;quot;&lt;br /&gt;
:              &amp;quot;forward-euler&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The default timestep integrator is the &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
There are several general control parameters used in conjunction&lt;br /&gt;
with any selected timestep intergrator, and several that are unique&lt;br /&gt;
to specific integrators.  The general control parameters are&lt;br /&gt;
&amp;lt;deltaTT&amp;gt; which specifies the duration of the previous timestep,&lt;br /&gt;
&amp;lt;nextDT&amp;gt; which indicates the desired timestep to attempt the next&lt;br /&gt;
timestep, and &amp;lt;maxDT&amp;gt; which specifies the maximum timestep duration&lt;br /&gt;
permitted.&lt;br /&gt;
&lt;br /&gt;
=== Timestep Integrators ===&lt;br /&gt;
&lt;br /&gt;
==== Trapezoid ====&lt;br /&gt;
&lt;br /&gt;
This implicit integrator is a mix of the Euler-Forward and&lt;br /&gt;
Euler-Backward methods.  This method is unconditionally&lt;br /&gt;
stable, but requires an iterative process that may involve&lt;br /&gt;
multiple nodal force and velocity calculations.  The&lt;br /&gt;
additional expense of the multiple calculations, however,&lt;br /&gt;
is usually offset by the gains from the larger timesteps&lt;br /&gt;
compared to explicit methods such as the forward euler&lt;br /&gt;
integrator.&lt;br /&gt;
&lt;br /&gt;
The algorithm uses the current nodal velocities to reposition&lt;br /&gt;
each node, then recalculates forces and velocities for the&lt;br /&gt;
nodes at their new positions.  A positioning &#039;error&#039; is&lt;br /&gt;
calculated for each node based on the current and previous&lt;br /&gt;
nodal position and velocity.  If the positioning error of&lt;br /&gt;
any node is greater than the maximum permitted positioning&lt;br /&gt;
error as defined by the &amp;lt;rTol&amp;gt; control parameter, the&lt;br /&gt;
timestep will be decremented by a factor specified in the&lt;br /&gt;
&amp;lt;dtDecrementFact&amp;gt; control parameter and the process starts&lt;br /&gt;
again.  On the otehr hand, if the positioning error of all&lt;br /&gt;
nodes is within the tolerance, the timestep is accepted&lt;br /&gt;
and the current timestep is multipled by the factor in the&lt;br /&gt;
&amp;lt;dtIncrementFactor&amp;gt; to be used as the initial timestep to&lt;br /&gt;
attempt the next cycle.&lt;br /&gt;
&lt;br /&gt;
==== Forward Euler ====&lt;br /&gt;
&lt;br /&gt;
The forward euler timestep integrator is relatively simple&lt;br /&gt;
and inexpensive in that it requires only a single calculation&lt;br /&gt;
of nodal force and velocities per timestep.  Unfortunately,&lt;br /&gt;
the algorithm is subject to the Courant condition for&lt;br /&gt;
numerical stability and is limited to relatively small&lt;br /&gt;
timesteps.  The size of the timestep is controlled by the&lt;br /&gt;
ratio between the length of the shortest segment and the&lt;br /&gt;
velocity of the fastest moving node.  Additionally, the&lt;br /&gt;
&amp;lt;rmax&amp;gt; control parameter defines the maximum distance&lt;br /&gt;
any node is permitted to move in a single timestep, which&lt;br /&gt;
further limits the timestep duration.  This &#039;rmax&#039; distance&lt;br /&gt;
should be set such that no dislocation segment crosses&lt;br /&gt;
multiple simulation cells in a single timestep.&lt;br /&gt;
&lt;br /&gt;
Note: This timestep integrator is NOT recommended.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
=== X-window display ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ParaDiS provides a simple X-window display capability for&lt;br /&gt;
visualization and debugging of small scale simulations as well&lt;br /&gt;
as obtaining certain types of nodal data via the display window.&lt;br /&gt;
&lt;br /&gt;
Unlike some of the other visualization capabilities, this one &lt;br /&gt;
must be enabled/disabled via the compile time flag &amp;quot;XLIB_MODE&amp;quot;&lt;br /&gt;
in the file &amp;lt;ParadisDir&amp;gt;/makefile.setup.  The X-window support&lt;br /&gt;
is enabled by setting:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = ON&lt;br /&gt;
&lt;br /&gt;
and disabled by:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = OFF&lt;br /&gt;
&lt;br /&gt;
The default behavior is to have the X-window support enabled.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;winDefaultsFile&amp;gt; control parameter can be used to specify default&lt;br /&gt;
visualization options and attributes such as view perspective, colors&lt;br /&gt;
and so on.  Unless otherwise specified, this control parameter will&lt;br /&gt;
point to the following defaults file provided with the source release:&lt;br /&gt;
&lt;br /&gt;
:             &amp;lt;ParadisDir&amp;gt;/inputs/paradis.xdefaults&lt;br /&gt;
&lt;br /&gt;
Once the X-window display is initiated, the view can be controlled&lt;br /&gt;
through the following single-key commands:&lt;br /&gt;
&lt;br /&gt;
          Key            Command Description&lt;br /&gt;
          ---            -------------------&lt;br /&gt;
          &amp;lt;Home&amp;gt;         Restores image to default view&lt;br /&gt;
          &amp;lt;Esc&amp;gt;          Terminates X-window display without terminating&lt;br /&gt;
                         the simulation&lt;br /&gt;
          a              Enable/disable aspect ratio changes.  When enabled,&lt;br /&gt;
                         the Arrow keys alter the aspect ratio&lt;br /&gt;
          c              Enable/disable slice view of image.  When enabled,&lt;br /&gt;
                         Up/Down Arrows control slice position, Left/Right&lt;br /&gt;
                         Arrows control slice thickness.&lt;br /&gt;
          f              Turn display frame on/off&lt;br /&gt;
          p              Pause/restart simulation&lt;br /&gt;
          r              Enable image rotation.  When enabled, rotation can&lt;br /&gt;
                         be controlled via the mouse or Arrow keys.&lt;br /&gt;
          s              Enable display scaling.  When enabled, the Arrow&lt;br /&gt;
                         keys control scaling size.&lt;br /&gt;
          t              Enable image translation.  When enable,&lt;br /&gt;
                         the Arrow keys control translation direction.&lt;br /&gt;
          &amp;lt;F10&amp;gt;          Generate a postscript image of the display window.&lt;br /&gt;
                         File will be called &amp;lt;outputDir&amp;gt;/YshotNNNN where&lt;br /&gt;
                        &#039;NNNN&#039; is a sequence number incremented each time&lt;br /&gt;
                         a dump of the display window is generated and&lt;br /&gt;
                         &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
                         &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Additionally, clicking the mouse on a nodal point in the X-window&lt;br /&gt;
image will cause the following information to be written to the&lt;br /&gt;
terminal device (not the X-window display):&lt;br /&gt;
&lt;br /&gt;
* relative position (x,y) on the X-window display&lt;br /&gt;
* node ID (domainID,nodeindex)&lt;br /&gt;
* number of segments (arms) associated with the node&lt;br /&gt;
* simulation coordinates (x,y,z) of the node&lt;br /&gt;
&lt;br /&gt;
=== Gnuplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the gnuplot visualization package.  This capability is&lt;br /&gt;
enabled via the &amp;lt;gnuplot&amp;gt; toggle in the control parameter file.&lt;br /&gt;
The frequency with which gnuplot files will be generated is&lt;br /&gt;
controlled by the settings of the &amp;lt;gnuplotfreq&amp;gt; and &amp;lt;gnuplotdt&amp;gt;&lt;br /&gt;
parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of gnuplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/gnuplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/box.in&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/0tNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a gnuplot file set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when gnuplot files are being written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of gnuplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/gnuplot.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The &#039;box.in&#039; data file will contain data for plotting the boundaries&lt;br /&gt;
of the simulation space, while the &#039;0t*&#039; files contain the coordinate&lt;br /&gt;
pairs defining each unique dislocation segment.&lt;br /&gt;
&lt;br /&gt;
NOTE: When gnuplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  These file segments&lt;br /&gt;
can be combined into a single file for display in gnuplot&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of&lt;br /&gt;
[[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
To aid in visualizing the dislocation configuration, a file&lt;br /&gt;
containing commands to set some useful gnuplot options has&lt;br /&gt;
been provided;  This file is located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.cmds&lt;br /&gt;
&lt;br /&gt;
For example, to view the dislocation structure contained in the&lt;br /&gt;
gnuplot data file 0t0001 you could start gnuplot interactively&lt;br /&gt;
and execute the commands:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.defaults&#039;&lt;br /&gt;
 gnuplot&amp;gt; splot &#039;box.in&#039; with lines, &#039;0t0001&#039; w lines&lt;br /&gt;
&lt;br /&gt;
A second gnuplot command file has been provided as an example&lt;br /&gt;
of displaying a sequence of gnuplot files.  This file is&lt;br /&gt;
located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&lt;br /&gt;
&lt;br /&gt;
This file has the neccesary commands to plot the sequence&lt;br /&gt;
of files beginning with 0t0001 and ending with 0t1000.  After&lt;br /&gt;
starting gnuplot, simply load this file with:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&#039;&lt;br /&gt;
&lt;br /&gt;
This will initiate the plot of the first file, and thereafter,&lt;br /&gt;
simply hitting return will cause gnuplot to move to the next&lt;br /&gt;
file in the sequence.&lt;br /&gt;
&lt;br /&gt;
For details on using gnuplot, refer to the gnuplot manual or&lt;br /&gt;
enter &#039;help&#039; from the gnuplot interactive prompt.&lt;br /&gt;
&lt;br /&gt;
=== Tecplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the commercial visualization package Tecplot.  This&lt;br /&gt;
capability is enabled via the &amp;lt;tecplot&amp;gt; toggle in the control&lt;br /&gt;
parameter file.  The frequency with which tecplot files will&lt;br /&gt;
be generated is controlled by the settings of the &amp;lt;tecplotfreq&amp;gt;&lt;br /&gt;
and &amp;lt;tecplotdt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of tecplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/tecplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdataNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a tecplot file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when tecplot files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                   &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of tecplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdata.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The generated tecplot output has specific headers to assign the&lt;br /&gt;
variables and time frames (zones) and should look something like&lt;br /&gt;
this:&lt;br /&gt;
&lt;br /&gt;
          ...&lt;br /&gt;
          variables = X,Y,Z,V1,V2,V3,V4,V5,V6,V7,V8&lt;br /&gt;
          zone i = 54  F=POINT&lt;br /&gt;
          -4000.0  500.0  6000.0  133.1  612.4 -612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          -3866.9 1112.4  5387.7 -133.1 -612.4  612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          471.0  -5132.6 11632.3 -1712.7 -48.8  48.9  0.0090 -0.0918 0.0918 2 3&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
The first line defines the variables to reconstruct the dislocation&lt;br /&gt;
configuration.  X Y and Z specify the nodal coordinates,  V1 V2 and&lt;br /&gt;
V3 define arm vectors to the neighboring nodes.  These 6 variable&lt;br /&gt;
are used to represent dislocation segments as combinations of points&lt;br /&gt;
and vectors in tecplot.  The V4 V5 and V6 represent the nodal velocity&lt;br /&gt;
vector, V7 indicates the number of segments associated with the node&lt;br /&gt;
and V8 indicates a burgers vector type.&lt;br /&gt;
&lt;br /&gt;
NOTE: When tecplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the headers will only be&lt;br /&gt;
included in the first file segment with the remainder of the data&lt;br /&gt;
spread over the file segments.  These file segments can be combined&lt;br /&gt;
into a single file for display in tecplot via the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of [[#stitch|&#039;stitch&#039;]]&lt;br /&gt;
tool for details.)&lt;br /&gt;
&lt;br /&gt;
For details on using tecplot, refer to the tecplot manual or select&lt;br /&gt;
the &#039;Help&#039; menu in tecplot.&lt;br /&gt;
&lt;br /&gt;
=== Povray ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;povray&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate files containing&lt;br /&gt;
dislocation segment data formatted for use with the POVRAY&lt;br /&gt;
(Persistence of Vision(tm) Ray Tracer) tool.  The frequency&lt;br /&gt;
with which these files will be generated is controlled by&lt;br /&gt;
the settings of the &amp;lt;povrayfreq&amp;gt; and &amp;lt;povraydt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
Note:  These files contain the main data to be processed by&lt;br /&gt;
povray, but must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools)&lt;br /&gt;
which will create the final povray input file&lt;br /&gt;
containing the segment data embedded within a &lt;br /&gt;
proper framework of povray settings and commands.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of files in the directory &amp;lt;outputDir&amp;gt;/povray&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.  The naming convention used for&lt;br /&gt;
these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povframeNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a povray frame file                          set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when povray files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of povray&lt;br /&gt;
frame files will be created.  This set will be generated&lt;br /&gt;
regardless of the specified dump frequency in order to provide&lt;br /&gt;
an image of the final configuration. This set will be named&lt;br /&gt;
with the slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povray.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When povray data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  If desired, these file&lt;br /&gt;
segments may be combined into a single file for post-processing&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description&lt;br /&gt;
of [[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
As stated above, these files must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools) which will&lt;br /&gt;
create the final povray input file containing the segment&lt;br /&gt;
data embedded within a proper framework of povray settings&lt;br /&gt;
and commands.  This tool is capable of dealing with single&lt;br /&gt;
or segmented &#039;povframe*&#039; files.&lt;br /&gt;
&lt;br /&gt;
For details on using povray, refer to the povray manual.&lt;br /&gt;
&lt;br /&gt;
=== Terascale Browser ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Postscript ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;psfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a postscript file&lt;br /&gt;
containing an image of the current state of the system.&lt;br /&gt;
The frequency with which the postscript files are&lt;br /&gt;
written is determined by the settings of the&lt;br /&gt;
&amp;lt;psfilefreq&amp;gt; and &amp;lt;psfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/YshotNNNN.ps&lt;br /&gt;
&lt;br /&gt;
where NNNN is a sequence number beginning with zero and incremented&lt;br /&gt;
each time another postscript file is written.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Output ==&lt;br /&gt;
&lt;br /&gt;
=== Restart files ===&lt;br /&gt;
&lt;br /&gt;
Periodic creation of ParaDiS restart files is enabled via&lt;br /&gt;
the &amp;lt;savecn&amp;gt; toggle in the control file.  The frequency with&lt;br /&gt;
which restart files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;savecnfreq&amp;gt; and &amp;lt;savecndt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When enabled, the code will periodically generate restart&lt;br /&gt;
file which will be located in the directory &amp;lt;outputDir&amp;gt;/restart&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.&lt;br /&gt;
           &lt;br /&gt;
The naming convention used for these restart files is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN.data[.SEQ]&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# nodal data file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a restart file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when restart files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Each time a restart file set is written, the name of the&lt;br /&gt;
control parameter file will also be written into the file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/latest_restart&lt;br /&gt;
&lt;br /&gt;
Additionally, when creation of restart files is enabled, an&lt;br /&gt;
additional restart file pair named &#039;restart.cn&#039; and restart.data&#039;&lt;br /&gt;
will be written at program termination even if the cycle is not&lt;br /&gt;
a multiple of the &amp;lt;savecnfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
=== Property Outputs ===&lt;br /&gt;
&lt;br /&gt;
==== Enabling Properties Output ====&lt;br /&gt;
&lt;br /&gt;
The code has the capability to produce files containing&lt;br /&gt;
various dislocation properties.  This capability is enabled&lt;br /&gt;
via the &amp;lt;saveprop&amp;gt; toggle in the control file.  The&lt;br /&gt;
frequency with which the property data is written is&lt;br /&gt;
determined by the settings of the &amp;lt;savepropfreq&amp;gt; and&lt;br /&gt;
&amp;lt;savepropdt&amp;gt; control file parameters. &lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will generate &lt;br /&gt;
and periodically append the properties data to one or more of&lt;br /&gt;
the following files which will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/properties, where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
==== Property Files ====&lt;br /&gt;
&lt;br /&gt;
===== density =====&lt;br /&gt;
&lt;br /&gt;
Note: burgVolFactor converts from length in units of B, to density&lt;br /&gt;
in units of meters&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This file contains the following columns of data:&lt;br /&gt;
&lt;br /&gt;
#   plastic strain&lt;br /&gt;
#   strain&lt;br /&gt;
#   dislocation density&lt;br /&gt;
#   deleted dislocation density &lt;br /&gt;
#: (lost through annihilation, junction formation, etc) &lt;br /&gt;
#: (density lost since last dump of data)&lt;br /&gt;
#   average dislocation velocity&amp;amp;#8225;&lt;br /&gt;
#   std. deviation of dislocation velocities&amp;amp;#8225;&lt;br /&gt;
#   density file version number&lt;br /&gt;
#   dislocation density for segments of specific groupings of burgers vectors (see below)*&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; These items will be calculated only if&lt;br /&gt;
the &amp;quot;VEL_STATISTICS&amp;quot; pre-processor macro was&lt;br /&gt;
defined during compilation.  Otherwise these&lt;br /&gt;
values will be zeroes.&lt;br /&gt;
&lt;br /&gt;
For BCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 1] [-1-1-1]&lt;br /&gt;
                          9         [-1 1 1] [ 1-1-1]&lt;br /&gt;
                          10        [ 1-1 1] [-1 1-1]&lt;br /&gt;
                          11        [ 1 1-1] [-1-1 1]&lt;br /&gt;
                          12        [ 1 0 0] [-1 0 0] [ 0 1 0]&lt;br /&gt;
                                    [ 0-1 0] [ 0 0 1] [ 0 0-1]&lt;br /&gt;
&lt;br /&gt;
For FCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 0] [-1-1 0]&lt;br /&gt;
                          9         [-1 1 0] [ 1-1 0]&lt;br /&gt;
                          10        [ 1 0 1] [-1 0-1]&lt;br /&gt;
                          11        [-1 0 1] [ 1 0-1]&lt;br /&gt;
                          12        [ 0 1 1] [ 0-1-1]&lt;br /&gt;
                          13        [ 0-1 1] [ 0 1-1]&lt;br /&gt;
                          14        all others&lt;br /&gt;
&lt;br /&gt;
===== time_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following two columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain&lt;br /&gt;
&lt;br /&gt;
===== stress_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  The file contains the following two columns&lt;br /&gt;
of data:&lt;br /&gt;
&lt;br /&gt;
# plastic strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
===== stress_Total_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  If the user specified a constant strain&lt;br /&gt;
rate, this file contains:&lt;br /&gt;
&lt;br /&gt;
# strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
If the user specified cyclic loading, this file contains:&lt;br /&gt;
&lt;br /&gt;
#  net accumulated strain&lt;br /&gt;
#  stress&lt;br /&gt;
#  elapsed simulation time&lt;br /&gt;
#  number of loading cycles&lt;br /&gt;
&lt;br /&gt;
===== alleps =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||simulation timestep number&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||elapsed simulation time&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3-8.||plastic strain components&amp;amp;#8225;&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  9.||dislocation density&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;amp;#8225; from plastic strain tensor matrix, elements [0][0], [1][1], [2][2], [1][2], [0][1], and [0][2]&lt;br /&gt;
&lt;br /&gt;
===== epsdot =====&lt;br /&gt;
&lt;br /&gt;
This file contains the 2 columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain rate&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS has the capability to produce files containing&lt;br /&gt;
flux decomposition information for the simulation.&lt;br /&gt;
This capability is enabled via the &amp;lt;fluxfile&amp;gt; control&lt;br /&gt;
file toggle.  The frequency with which the flux&lt;br /&gt;
data is written is determined by the settings of&lt;br /&gt;
the &amp;lt;fluxfreq&amp;gt; and &amp;lt;fluxdt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled the code will generate&lt;br /&gt;
and periodically append the flux data to two sets of&lt;br /&gt;
files that will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/fluxdata where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Each set contains four files, one file per burgers vector.&lt;br /&gt;
Files *b1, *b2, *b3, and *b4 contain statistics for burgers&lt;br /&gt;
vector types [111], [-111], [1-11], and [11-1] respectively.&lt;br /&gt;
&lt;br /&gt;
The first set of files (Ltot_b1, Ltot_b2, Ltot_b3 and&lt;br /&gt;
Ltot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
# Plastic strain&lt;br /&gt;
# Strain,&lt;br /&gt;
# Screw density&lt;br /&gt;
# Edgedensity1&lt;br /&gt;
# Edgedensity2&lt;br /&gt;
# Edgedensity3&lt;br /&gt;
# Sum of edge Densities (4+5+6)&lt;br /&gt;
# Total system EdgeDensity from all Ltot files&lt;br /&gt;
# Total system screw density from all Ltot files&lt;br /&gt;
&lt;br /&gt;
The second set of files (fluxtot_b1, fluxtot_b2, fluxtot_b3 and&lt;br /&gt;
fluxtot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||Plastic Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3.||Flux due to climb motion&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Flux created by edge components on three planes (See below.)&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7-9.||Flux created by screw dislocation on three planes (See below.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For b1 = 1/2[1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b2 = 1/2[-1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b3 = 1/2[1 -1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b4 = 1/2[1 1 -1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pole figures ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Velocity files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;velfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
velocity information about each unique dislocation node &lt;br /&gt;
in the system.  The frequency with which the velocity&lt;br /&gt;
data is written is determined by the settings of the&lt;br /&gt;
&amp;lt;velfilefreq&amp;gt; and &amp;lt;velfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/velocity&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/velNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;velfilecounter&amp;gt; control parameter and is incremented each  time another velocity file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when velocity data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
In addition, at program termination, an extra set of velocity&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/vel.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When velocity data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the velocity files consist of 4 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Velocity components (x,y,z)&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| align=right |  4.|| +1 if contributing to strain rate &amp;lt;br&amp;gt; -1 if moving in opposite direction&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Segment files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;armfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
information about each unique dislocation segment &lt;br /&gt;
in the system.  The frequency with which the segment&lt;br /&gt;
(or arm) files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;armfilefreq&amp;gt; and &amp;lt;armfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/armdata&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/armNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;armfilecounter&amp;gt; control parameter and is incremented each time another arm file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when arm data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
  &lt;br /&gt;
In addition, at program termination, an extra set of arm&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/arm.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When arm data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the arm files consist of 10 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Burgers vector components&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Line direction vector&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7.||Segment length&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  8-10.||Coordinates of node &#039;owning&#039; the segment&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Density Field file ===&lt;br /&gt;
&lt;br /&gt;
If all components of the &amp;lt;savedensityspec&amp;gt; control parameter&lt;br /&gt;
are set to positive values in the control file, ParaDiS&lt;br /&gt;
will (at program termination) create a file containing a&lt;br /&gt;
3D dislocation density field formatted for use with the&lt;br /&gt;
VASP Data Viewer (vaspview).  The three components of&lt;br /&gt;
the &amp;lt;savedensityspec&amp;gt; parameter specify the granularity&lt;br /&gt;
of the density field in the X, Y and Z dimensions&lt;br /&gt;
respectively.   The density field will be written to the&lt;br /&gt;
file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/densityfield.out&lt;br /&gt;
&lt;br /&gt;
Warning: This will overwrite any existing density field&lt;br /&gt;
file of the same name!&lt;br /&gt;
&lt;br /&gt;
The VASP Data Viewer is publicly available on the web&lt;br /&gt;
for non-commercial use.  For details on the product,&lt;br /&gt;
download the VASP Data Viewer from the web and refer&lt;br /&gt;
to the accompanying documentation.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Utilities ==&lt;br /&gt;
&lt;br /&gt;
=== Creating Initial Dislocations with &#039;paradisgen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisgen utility is capable of generating initial&lt;br /&gt;
dislocations suitable for a paradis simulation.  The command&lt;br /&gt;
line options for paradisgen control the type of dislocations,&lt;br /&gt;
number of dislocations, size of the simulation box, and so&lt;br /&gt;
on.  See &amp;quot;Examples&amp;quot; below for sample executions of this utility.&lt;br /&gt;
&lt;br /&gt;
The command line format for paradisgen is:&lt;br /&gt;
&lt;br /&gt;
              paradisgen [-cubel &amp;lt;cubelength&amp;gt;] [-help] [-hexsize &amp;lt;size&amp;gt;]  \&lt;br /&gt;
                         [-maxseg &amp;lt;maxseglen] [-nchains &amp;lt;numchains&amp;gt;]      \&lt;br /&gt;
                         [-nloops &amp;lt;numloops&amp;gt;] [-outfile &amp;lt;filename&amp;gt;        \&lt;br /&gt;
                         [-radius &amp;lt;radius&amp;gt;] [-seed &amp;lt;seedval&amp;gt;]             \&lt;br /&gt;
                         [-type &amp;lt;configtype&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
All command line options may be abbreviated to the shortest&lt;br /&gt;
non-ambiguous abbreviation of the option.  Descriptions of&lt;br /&gt;
the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
            -cubel &amp;lt;cubelength&amp;gt;  Defines the size of the simulation cube&lt;br /&gt;
                                 in units of b.  Minimum and maximum problem&lt;br /&gt;
                                 space coordinates will be 0.5*cubel and&lt;br /&gt;
                                 -0.5*cubel respectively.  If not specified&lt;br /&gt;
                                 this will default to 35000b (approx.&lt;br /&gt;
                                 10 micron).&lt;br /&gt;
&lt;br /&gt;
            -help                Causes the utility to display the command line&lt;br /&gt;
                                 format and option descriptions then terminate.&lt;br /&gt;
&lt;br /&gt;
            -hexsize &amp;lt;size&amp;gt;      Defines the radius (in units of b) for the&lt;br /&gt;
                                 hexagonal interstitial loops.  This option is&lt;br /&gt;
                                 used only when the selected dislocation type&lt;br /&gt;
                                 is &#039;fcc-irrad&#039;.&lt;br /&gt;
&lt;br /&gt;
            -looptype &amp;lt;ltype&amp;gt;    Specifies the types of prismatic loops to&lt;br /&gt;
                                 generate.  If not specified, this value&lt;br /&gt;
                                 will default to zero.  Valid values are:&lt;br /&gt;
&lt;br /&gt;
                                   0 == mixture of [1 1 1] and [1 0 0] types&lt;br /&gt;
                                   1 == all [1 1 1] type loops&lt;br /&gt;
                                   2 == all [1 0 0] type loops&lt;br /&gt;
&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.&lt;br /&gt;
&lt;br /&gt;
            -maxseg &amp;lt;length&amp;gt;     Defines the maximum desired segment length&lt;br /&gt;
                                 in units of b.  Initial dislocations will&lt;br /&gt;
                                 be discretized so no segment is longer than&lt;br /&gt;
                                 this value.  If not specified this value&lt;br /&gt;
                                 defaults to 500.&lt;br /&gt;
&lt;br /&gt;
            -nchains &amp;lt;numchain&amp;gt;  Indicates the number of dislocation lines&lt;br /&gt;
                                 to create.  This value is ignored when the&lt;br /&gt;
                                 selected dislocation type is &#039;prismatic-loop&#039;,&lt;br /&gt;
                                 and when the type is &#039;fcc-perfect-loop&#039;,&lt;br /&gt;
                                 this value must be a multiple of 12.  If&lt;br /&gt;
                                 not specified, this value defaults to 2.&lt;br /&gt;
&lt;br /&gt;
            -nloops &amp;lt;numloops&amp;gt;   Specifies the number of loops to create when&lt;br /&gt;
                                 the selected dislocation type is&lt;br /&gt;
                                 &#039;prismatic-loop&#039; or &#039;fcc-irrad&#039;.  If not&lt;br /&gt;
                                 specified, this value defaults to 1000.&lt;br /&gt;
&lt;br /&gt;
            -nsegs &amp;lt;numsegs&amp;gt;     Specifies the number of segments into which&lt;br /&gt;
                                 a prismatic loop will be discretized.  This&lt;br /&gt;
                                 option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to&lt;br /&gt;
                                 (2*PI*radius)/(maxseg/2).&lt;br /&gt;
&lt;br /&gt;
            -outfile &amp;lt;filename&amp;gt;  Name of the ParaDiS data file to be created.&lt;br /&gt;
                                 If not specified, data will be written&lt;br /&gt;
                                 into a file called &#039;paradis.data&#039;.&lt;br /&gt;
&lt;br /&gt;
            -radius &amp;lt;radius&amp;gt;     Radius (in units of b) of prismatic loops.&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to maxseg/2.&lt;br /&gt;
&lt;br /&gt;
            -seed &amp;lt;seed&amp;gt;         Specifies a value to seed the random number&lt;br /&gt;
                                 generator.  Using the same seed value for&lt;br /&gt;
                                 multiple executions of paradis (for which&lt;br /&gt;
                                 all other options are identical) insures&lt;br /&gt;
                                 creation of an identical configuration.  &lt;br /&gt;
&lt;br /&gt;
            -type &amp;lt;type&amp;gt;         Specifies the type of dislocations to create.&lt;br /&gt;
                                 This type can be a name or the integer value&lt;br /&gt;
                                 corresponding to the name.  Valid types are:&lt;br /&gt;
&lt;br /&gt;
                                 0 or &#039;screw&#039;        BCC screw dislocations.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 1 or &#039;finite-mixed&#039; A mixture of BCC screw and&lt;br /&gt;
                                                     edge dislocations&lt;br /&gt;
                                                     terminating at the edges&lt;br /&gt;
                                                     of the cubic problem&lt;br /&gt;
                                                     space.  This should not&lt;br /&gt;
                                                     be used with periodic&lt;br /&gt;
                                                     boundary conditions.&lt;br /&gt;
                                 2 or &#039;prismatic-loop&#039;   BCC prismatic loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 3 or &#039;fcc&#039;          FCC dislocations. Assumes&lt;br /&gt;
                                                     periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 4 or &#039;fcc-irrad&#039;    Mixture of FCC&lt;br /&gt;
                                                     dislocations and hexagonal&lt;br /&gt;
                                                     interstitial loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 5 or &#039;fcc-perfect-loop&#039; Not fully implemented.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&lt;br /&gt;
              TBD&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recomputing Domain Boundaries with &#039;paradisrepart&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisrepart utility provides a mechanism by which to&lt;br /&gt;
replace the domain decomposition/partitioning in an&lt;br /&gt;
existing nodal data file with a new domain decomposition.&lt;br /&gt;
The utility will read the current nodal data, and use the&lt;br /&gt;
specified domain/cell geometries to attempt to partition&lt;br /&gt;
the domains such that the computational cost for each domain&lt;br /&gt;
will be roughly equivalent.&lt;br /&gt;
&lt;br /&gt;
This utility is primarily used when it is necessary alter&lt;br /&gt;
the domain geometry or domain count for a simulation in&lt;br /&gt;
order to continue.  In such a situation, the existing&lt;br /&gt;
domain decomposition would be thrown away and the ParaDiS&lt;br /&gt;
code would generate an initial uniform decomposition&lt;br /&gt;
and then over time converge on a more optimal decomposition.&lt;br /&gt;
Using this utility instead to generate a new decomposition&lt;br /&gt;
provides a much more reasonable starting point from allowing&lt;br /&gt;
the ParaDiS simulation to converge on an optimal decomposition&lt;br /&gt;
much more quickly.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisrepart utility is:&lt;br /&gt;
&lt;br /&gt;
              paradisrepart -infile &amp;lt;inputFile&amp;gt;                           \&lt;br /&gt;
                            -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;               \&lt;br /&gt;
                            -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt;                \&lt;br /&gt;
                            [-outfile &amp;lt;outputFile&amp;gt;]  [-decompType &amp;lt;type&amp;gt;] \&lt;br /&gt;
                            [-help]&lt;br /&gt;
    &lt;br /&gt;
All command line arguments and options may be abbreviated to the&lt;br /&gt;
shortest non-ambiguous abbreviation of the option.  Descriptions&lt;br /&gt;
of the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
              -infile &amp;lt;inputFile&amp;gt;    Specifies the name of the nodal data file.&lt;br /&gt;
                                     On success, the first nodal data file&lt;br /&gt;
                                     segment will be copied to &amp;lt;inputFile&amp;gt;.bkup.&lt;br /&gt;
                                     This command line argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;  Specifies the number of&lt;br /&gt;
                                     cells in each dimension.  If the&lt;br /&gt;
                                     number of cells in the Y and Z dimensions&lt;br /&gt;
                                     are not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xcells&amp;gt;. This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt; Specifies the number of domains&lt;br /&gt;
                                     in each dimension.  If the number of&lt;br /&gt;
                                     domains in the Y and Z dimensions are&lt;br /&gt;
                                     not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xdoms&amp;gt;.  This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -decompType &amp;lt;type&amp;gt;     Specifies type of domain decomposition:&lt;br /&gt;
                                     If not specified, defaults to 1.  Valid&lt;br /&gt;
                                     types are:&lt;br /&gt;
&lt;br /&gt;
                                       1 == Recursive Sectioning&lt;br /&gt;
                                       2 == Recursive Bisectioning&lt;br /&gt;
&lt;br /&gt;
              -help                  Causes the utility to display the command&lt;br /&gt;
                                     line format and option descriptions then&lt;br /&gt;
                                     terminate.&lt;br /&gt;
&lt;br /&gt;
              -outfile &amp;lt;outputFile&amp;gt;  Specifies the name of the file into which&lt;br /&gt;
                                     to write the new domain decomposition.  If&lt;br /&gt;
                                     not specified, new domain decomposition&lt;br /&gt;
                                     will be written into the file specified&lt;br /&gt;
                                     by &amp;lt;inputFile&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Converting Control and Data File with &#039;paradisconvert&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisconvert utility provides a mechanism by which&lt;br /&gt;
older format ParaDiS control and data files (and restart&lt;br /&gt;
files) may be converted to the current file formats.&lt;br /&gt;
This utility does recognize and handle segmented data files.&lt;br /&gt;
&lt;br /&gt;
In most cases this utility will not be required since&lt;br /&gt;
ParaDiS is still able to recognize and handle *most* of &lt;br /&gt;
the older file formats.  The only format the ParaDiS code&lt;br /&gt;
no longer recognizes is the truly ancient format associated&lt;br /&gt;
with the earliest incarnations of the code in which the&lt;br /&gt;
control file parameters and nodal data were included in&lt;br /&gt;
a single file.  For these control files, the paradisconvert&lt;br /&gt;
utility will be needed.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisconvert utility is:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert  &amp;lt;controlFile&amp;gt; [dataFile]&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;controlFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the control parameter file to be updated to the current format.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;dataFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;If the specified control file is the original ancient format including control parameters and                             nodal data in the single file, this argument is ignored.  Otherwise, this specifies the base name                             of the nodal data file(s) to be converted.  If not this argument is not provided, it will default to                             the same name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and the &#039;.data&#039; suffix added.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
On success, the utility will rename the original files by appending&lt;br /&gt;
a &#039;.bkup&#039; suffix to the names, and create new control and data files&lt;br /&gt;
with the specified names.  Note: for control parameter files which&lt;br /&gt;
include nodal data, a new data file will be generated under the&lt;br /&gt;
the name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and&lt;br /&gt;
a &#039;.data&#039; suffix added.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Examples:&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To convert the original format file &#039;restart.cn&#039; containing&lt;br /&gt;
both control parameters and nodal data, execute:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert restart.cn&lt;br /&gt;
&lt;br /&gt;
The utility will generate the following files:&lt;br /&gt;
&lt;br /&gt;
:              restart.cn.bkup&lt;br /&gt;
:              restart.cn&lt;br /&gt;
:              restart.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control parameter and data file pair with&lt;br /&gt;
the names &#039;rs0100&#039; and &#039;rs0100.data&#039; respective, execute either&lt;br /&gt;
of the following equivalent command lines:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
&lt;br /&gt;
In both cases, the utility would generate the files:&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control file &amp;lt;rs0100&amp;gt; and a set of segmented&lt;br /&gt;
data files with the names &amp;lt;rs0100.data.0&amp;gt;, &amp;lt;rs0100.data.1&amp;gt;, ...&lt;br /&gt;
&amp;lt;rs0100.data.7&amp;gt;, execute any of the following equivalent commands:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
 paradisconvert rs0100 rs0100.data.0&lt;br /&gt;
&lt;br /&gt;
In all of the above cases, the utility would generate the files&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.0.bkup&lt;br /&gt;
:              rs0100.data.1.bkup&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data.0&lt;br /&gt;
:              rs0100.data.1&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7&lt;br /&gt;
&lt;br /&gt;
=== Creating the FMM Image Correction Table with &#039;ctablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;ctablegen&#039; utility is used to create an image correction&lt;br /&gt;
table needed when the FMM (Fast Multipole Method) has been enabled&lt;br /&gt;
by setting the &amp;lt;fmEnabled&amp;gt; toggle on in the control file.  Since&lt;br /&gt;
the data in this file is dependent on the poisson ratio, shear&lt;br /&gt;
modulus, and orders of the multipole and taylor expansions, the&lt;br /&gt;
file must be created for the particular values of these items&lt;br /&gt;
used in the simulation.&lt;br /&gt;
&lt;br /&gt;
Given the current defaults used by ParaDiS (as set in Param.c):&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ||align=&amp;quot;left&amp;quot;| poisson ratio:          ||align=&amp;quot;center&amp;quot;|      3.327533e-01       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| shear modulus:          ||align=&amp;quot;center&amp;quot;|      6.488424e+10       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| multipole order:        ||align=&amp;quot;center&amp;quot;|      2       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| taylor expansion order: ||align=&amp;quot;center&amp;quot;|      5       &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To create the FMM image correction table, you could execute&lt;br /&gt;
ctablegen from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command line:&lt;br /&gt;
&lt;br /&gt;
 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \&lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
NOTE:  The generation of this table can take a significant&lt;br /&gt;
amount of time, therefore, a parallel version of the utility&lt;br /&gt;
(called ctablegenp) has also been provided.  To execute the&lt;br /&gt;
table generation in parallel on 8 processors using mpirun as&lt;br /&gt;
a parallel program initiator, one could execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \ &lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
The locations of this file is specified in the control&lt;br /&gt;
parameter file via the &amp;lt;fmCorrectionTbl&amp;gt; parameter.&lt;br /&gt;
&lt;br /&gt;
=== Creating Far-Field Stress Tables with &#039;stresstablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;stresstablegen&#039; utility is used to create tables needed&lt;br /&gt;
for calculating stress from distant cells and periodic images&lt;br /&gt;
of the system when FMM is disabled (i.e. &amp;lt;fmEnabled&amp;gt; is set &lt;br /&gt;
to zero).  There are two required tables, one which factors&lt;br /&gt;
in stress from periodic images only and the other which factors&lt;br /&gt;
in stress from both the primary and period images.&lt;br /&gt;
&lt;br /&gt;
To create the needed stress tables, execute the stesstablegen&lt;br /&gt;
utility twice from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command lines:&lt;br /&gt;
&lt;br /&gt;
 bin/stresstablegen -nopbc -outfile inputs/Rijm.cube.out&lt;br /&gt;
and&lt;br /&gt;
 bin/stresstablegen -pbc -outfile inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
The locations of these files are specified in the control&lt;br /&gt;
parameter file via the &amp;lt;Rijmfile&amp;gt; and &amp;lt;RijmPBCfile&amp;gt; parameters&lt;br /&gt;
respectively.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== genPovrayFrames ===&lt;br /&gt;
&lt;br /&gt;
The genPovrayFrames tool is provided to post-process the&lt;br /&gt;
povray data files generated by ParaDiS when the &amp;lt;povray&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
create an &#039;*.pov&#039; file containing the ParaDiS generated&lt;br /&gt;
data embedded in a proper framework of povray settings &lt;br /&gt;
and commands.  The tool is located in the &amp;lt;ParadisDir&amp;gt;/tools&lt;br /&gt;
directory.  For details on the use of this tool, see&lt;br /&gt;
the comments at the beginning of the script or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/genPovrayFrames -help&lt;br /&gt;
&lt;br /&gt;
=== gnuplot2povray ===&lt;br /&gt;
         &lt;br /&gt;
The gnuplot2povray tool is provided to post-process the&lt;br /&gt;
gnuplot data files generated by ParaDiS when the &amp;lt;gnuplot&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
convert the data in the gnuplot files into a format&lt;br /&gt;
suitable for povray, and create an &#039;*.pov&#039; file containing&lt;br /&gt;
the converted data embedded in a proper framework of povray&lt;br /&gt;
settings and commands.  The tool is located in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools directory.  For details on the use of&lt;br /&gt;
this tool, see the comments at the beginning of the script&lt;br /&gt;
or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/gnuplot2povray -help&lt;br /&gt;
&lt;br /&gt;
=== stitch ===&lt;br /&gt;
&lt;br /&gt;
When ParaDiS is configured to enable parallel I/O&lt;br /&gt;
(i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater&lt;br /&gt;
than 1), each of the following types of output &lt;br /&gt;
will be generated as a set of files rather than a&lt;br /&gt;
single output file.  &lt;br /&gt;
&lt;br /&gt;
:              gnuplot files&lt;br /&gt;
:              tecplot files&lt;br /&gt;
:              segment/arm data&lt;br /&gt;
:              povray files&lt;br /&gt;
:              velocity data&lt;br /&gt;
:              terascale browser files&lt;br /&gt;
:              pole figures&lt;br /&gt;
&lt;br /&gt;
Each file &#039;segment&#039; will contain a portion of the full&lt;br /&gt;
data and will have a sequence number appended to the file&lt;br /&gt;
name.  &lt;br /&gt;
&lt;br /&gt;
Most utilities for processing these types of output, however,&lt;br /&gt;
expect the data in a single file, so the &#039;stitch&#039; tool&lt;br /&gt;
has been provided in order to recombine these data file&lt;br /&gt;
segments into a single usable file as a post-processing&lt;br /&gt;
step.  The tool can be found in the source release as:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/tools/stitch&lt;br /&gt;
&lt;br /&gt;
The command line for &#039;stitch is as follows:&lt;br /&gt;
&lt;br /&gt;
 stitch [-h] [-d dir | -f file]&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
              -h          prints the usage information to stdout&lt;br /&gt;
&lt;br /&gt;
              -d &amp;lt;dir&amp;gt;    specifies a directory the utility will&lt;br /&gt;
                          scan for any segmented output files that&lt;br /&gt;
                          need to be stitched together.&lt;br /&gt;
&lt;br /&gt;
              -f &amp;lt;file&amp;gt;   specifies a base file name and the utility will&lt;br /&gt;
                          scan for the corresponding file segments (files&lt;br /&gt;
                          named &amp;lt;file&amp;gt;.N where N ranges from zero on up)&lt;br /&gt;
                          and stitch the segments into the single specified&lt;br /&gt;
                          base file name.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: If neither a directory nor file name was provided&lt;br /&gt;
on the command line, the tool will behave as though&lt;br /&gt;
the caller specified the current directory on the command&lt;br /&gt;
line and perform as stated above.&lt;br /&gt;
&lt;br /&gt;
==  Appendix 1. Control Parameters ==&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of the valid control&lt;br /&gt;
file parameters.  Also see the example control files contained&lt;br /&gt;
within the &amp;lt;ParadisDir&amp;gt;/tests directory.&lt;br /&gt;
&lt;br /&gt;
The parameters have been grouped into the following categories, and&lt;br /&gt;
unless otherwise specified, units are in SI, and lengths are&lt;br /&gt;
normalized by burgers vector magnitude:&lt;br /&gt;
&lt;br /&gt;
* Simulation cell and processor setup&lt;br /&gt;
* Simulation time and timestepping controls&lt;br /&gt;
* Discretization controls&lt;br /&gt;
* FMM controls&lt;br /&gt;
* Tables for non-FMM far-field forces&lt;br /&gt;
* Loading condition parameters&lt;br /&gt;
* Material and mobility parameters&lt;br /&gt;
* Velocity statistics and controls&lt;br /&gt;
* I/O controls and parameters&lt;br /&gt;
* Miscellaneous parameters&lt;br /&gt;
&lt;br /&gt;
=== Simulation cell and processor setup: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A1. Control parameters for simulation setup&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXdoms, numYdoms, numZdoms ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of computational domains into which the problem space is                                      partitioned in the corresponding dimensions.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXcells, numYcells, numZcells ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of cells in the corresponding dimension of the problem                                      space.  Cells are independent of the domain geometry and are used to                                      determine boundaries at which far-field forces are computed rather than direct                                      segment to segment forces.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundType, yBoundType, zBoundType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of problem space boundaries in the corresponding                                      dimension.  Currently supported types are 0, and 1 for periodic and free                                      surfaces respectively.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMax, yBoundMax, zBoundMax ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the upper limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;lt;= the respective maximum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMin, yBoundMin, zBoundMin ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the lower limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;gt;= the respective minimum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  decompType ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the type of domain decomposition to be used for a run. A value of one selects the old Recursive                                      Sectioning (RS) algorithm, a value of 2 selects the Recursive Bisectioning (RB)                                      decomposition algorithm.  The default is currently the RS decomposition.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  DLBfreq ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the frequency (in cycles) at which Dynamic Load-Balancing is to be                                      attempted.  A value of zero indicates no load-balancing is to be done.                                     Default is 3.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Simulation time and timestepping controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A2. Time Control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cycleStart ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Starting cycle number for the simulation.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxstep ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the number of timesteps to execute before terminating.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeNow ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Current simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeStart ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Initial simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timestepIntegrator ||align=&amp;quot;center&amp;quot;|     string      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Selects a timestep integration method. Valid methods are &amp;quot;trapezoid&amp;quot; and                                      &amp;quot;forward-euler&amp;quot;.  The default value is &amp;quot;trapezoid&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  deltaTT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the duration of the previous timestep in units of seconds.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the maximum timestep permitted. Default is 1.0e-07.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  nextDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the timestep duration to attempt on the next cycle.  The timestep                                      integrator will adjust this value dynamically.  Default is &amp;lt;maxDT&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtDecrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor by which &amp;lt;delatTT&amp;gt; is mutiplied when cutting the timestep duration down.                                      Must be between 0.0 and 1.0.  Currently only used with the &amp;quot;trapezoid&amp;quot;                                     integrator.  Default is 0.5.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtExponent ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Exponent used in calculation of timestep increment when &amp;lt;dtVariableAdjustment&amp;gt;                                      toggle is enabled.  Currently used only with &amp;quot;trapezoid&amp;quot; timestep integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtIncrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum factor by which &amp;lt;deltaTT&amp;gt; is multiplied when incrementing the                                      timestep.  Must be at least 1.0.  Default is 1.2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtVariableAdjustment ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles ability to vary the increment by which the timestep is adjusted when the                                      current timestep is determined to be too small.  This will permit the timestep to                                      be adjusted to a value between 1.0 and &amp;lt;dtIncrementFact&amp;gt; * &amp;lt;deltaTT&amp;gt;.  Toggle                                      is zero (off) by default.  Used only with &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rTol ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum position error (in units of b) tolerated in the timestep integration.                                      Only applies to the &amp;quot;trapezoid&amp;quot; integrator.  Default is 0.25 * &amp;lt;rc&amp;gt;. The annihilation&lt;br /&gt;
distance is related to rTol(By default, it is set to 2*&amp;lt;rTol&amp;gt;= 0.5 * &amp;lt;rc&amp;gt;.)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rmax ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum distance (in units of b) a node is permitted to move in a single                                      timestep.  Not used if &amp;quot;trapezoid&amp;quot; timestep integrator used.  Default is                                      0.5 * &amp;lt;minSeg&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Discretization controls: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A3. Discretization control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the maximum permitted length (in units of b) of a dislocation segment.                                      Primarily used for determining when segments are to be rediscretized during                                      remesh operations.  This value must be less than 9/10 the size of a cell.                                      There is no default value, and must be specified in the control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  minSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the minimum desired length (in units of b) of a dislocation segment.                                      Primarily used for determining when nodes are to be removed during remesh                                      operations.  Default is: sqrt(remeshAreaMin*(4/sqrt(3))) where remeshAreaMin = 2*rTol*maxSeg&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  remeshRule ||align=&amp;quot;center&amp;quot;|     integer        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by number the set of rules governing rediscretization of                                      dislocations.  Currently the only supported remesh modules are versions 2 and 3.  Default is 2.  (See section                                      on Rediscretization for details on remesh versions.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FMM controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A4. FMM control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmEnabled    ||align=&amp;quot;center&amp;quot;|      integer      ||align=&amp;quot;left&amp;quot;|       &lt;br /&gt;
Toggle controlling use of a Fast Multipole Method (FMM) for computing force contributions from remote                                      dislocation segments.  A value of zero disables the use of FMM, any other value                                       enables FMM.  Default value is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fmCorrectionTbl ||align=&amp;quot;center&amp;quot;|      string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of the image correction table used by the FMM.  This correction table must                                      correspond to the specified &amp;lt;fmMPOrder&amp;gt;, &amp;lt;fmTaylorOrder&amp;gt; and &amp;lt;shearModulus&amp;gt;(?)                                      control parameters.  See the [[#Creating the FMM Image Correction Table with &#039;ctablegen&#039;|&#039;ctablegen&#039; utility]] for information on creating these tables.  This value is ignored if &amp;lt;fmEnabled&amp;gt; is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmMPOrder    ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the multipole expansion order used by the FMM.  This value is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fmTaylorOrder  ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the order of taylor expansions used by the FMM.  This values is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 4.&lt;br /&gt;
|}&lt;br /&gt;
                                          &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A5. Table for non-FMM far-field forces&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Rijmfile  ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                     calculations.  This parameter is ignored if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero.  Default is                                      &amp;quot;inputs/Rijm.cube.out&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  RijmPBCfile ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                      calculations with periodic boundary conditions.  This parameter is ignored                                      if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero. Default is &amp;quot;inputs/RijmPBC.cube.out&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Loading condition parameters: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A6. Loading condition parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  loadType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
&amp;lt;ol start=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Creep test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Constant strain rate test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Displacement-controlled test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Load-controlled, load vs. time curve &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Cyclic loading condition &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  appliedStress ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
External stress specified in units of Pa as [sigma11, sigma22, sigma33, sigma23,                                      sigma31, sigma12] when &amp;lt;loadType&amp;gt; == 0. Default is [0.0, 0.0, 0.0, 0.0, 0.0, 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eRate ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate.  Applicable only when &amp;lt;loadType&amp;gt; == 1.  Default is 1.0/sec.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  indxErate ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Index to indicate normal or shear deformation.  Used only when &amp;lt;loadType&amp;gt; == 1.                                      Valid values are:&lt;br /&gt;
#                                      normal&lt;br /&gt;
#                                      shear&lt;br /&gt;
If not specified, defaults to 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  edotdir ||align=&amp;quot;center&amp;quot;|     double[3]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Uniaxial loading direction accompanying &amp;lt;eRate&amp;gt;.  Default is [1.0 0.0 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cTimeOld ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Timestep related to cyclic loading. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Incremental strain under cyclic load. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  netCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Net accumulated strain under cyclic load.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numLoadCycle ||align=&amp;quot;center&amp;quot;|    integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Number of cyclic cycles.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eAmp ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain amplitude.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Material and mobility parameters: ===&lt;br /&gt;
&lt;br /&gt;
Note: Default values for all material and mobility related&lt;br /&gt;
parameters correspond to Tantalum at a temperature of &lt;br /&gt;
600 degress K and pressure of 0 GPa.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A7. Table for material and mobility parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  mobilityLaw ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by name the set of rules governing dislocation motion for the simulation conditions. Default                                      is &amp;quot;BCC_0&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  shearModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Shear modulus in units of Pa.  Default is 6.488424e+10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  pois ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Poisson ratio.  Default is 3.327533e-01&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  burgMag ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Magnitude of the burgers vector (b) in units of meters.  Default is 2.875401e-10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  YoungModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Young&#039;s modulus (in units of Pa). calculated from E = 2G(1+pois). Default is 200.0e+09.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rc ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core radius (in units of b) for self-force calculations.  No default value;                                      must be specified in control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ecore ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core energy used for self-force calculation.  Default is                                      (&amp;lt;shearModulus&amp;gt;/(4*PI)) * log(&amp;lt;rc&amp;gt;/0.1)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobScrew ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of screw dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobEdge ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of edge dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobClimb ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Climb mobility of dislocations in units of 1/(Pa*sec).  Default is 1.0e-02.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessileburgspec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of burgers vectors to be considered sessile.  First element of the                                      array contains the number of burgers vectors specified, the remaining elements                                      specify the X, Y, then Z components of each sessile burgers vector.  Maximum                                      sessile burgers vectors allowed is 9.  No burgers vectors are sessile by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessilelinespec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of line directions related to sessileburgspec.  First element is                                      ignored, remaining elements specify the X, Y, then Z components of each sessile                                      line.  The number of lines is assumed to be the same as the number of sessile                                      burgers vectors.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A8. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpSpn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic strain tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpStn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic spin tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totstraintensor ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate tensor with respect to global coordinate system.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ltot ||align=&amp;quot;center&amp;quot;|     double[4][4]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Decomposed density per burgers vector for screw and three edges (for BCC                                        slip systems only).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fluxtot  ||align=&amp;quot;center&amp;quot;|     double[4][7]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For each burgers vector (for BCC slip systems only), contains:&lt;br /&gt;
&amp;lt;table border = &amp;quot;0&amp;quot; cellpadding = &amp;quot;0&amp;quot; cellspacing = &amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  1.   &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to climb &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  2-4. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to edge components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  5-7. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to screw components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Velocity statistics: ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: these statistics will only be used if the VEL_STATISTICS pre-processor macro has been defined during compilation.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A9. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vAverage ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Average dislocation velocity.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vStDev ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Standard deviation of dislocation velocities.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== I/O controls and parameters ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: A number of the supported output forms are controlled by&lt;br /&gt;
very similar control parameters.  The general descriptions below&lt;br /&gt;
apply to all I/O control parameters of like names:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     *freq    Sets the frequency (in cycles) at which the associated data&lt;br /&gt;
              will be written to disk.  If the corresponding &amp;lt;*dt&amp;gt; parameter&lt;br /&gt;
              is greater than 0, this parameter will be ignored. &lt;br /&gt;
              Default for all such values is 100.&lt;br /&gt;
&lt;br /&gt;
     *dt      The *dt variables specify the simulation delta time that will&lt;br /&gt;
              control the frequency at which the associated output will be&lt;br /&gt;
              written to disk. A positive value is interpreted as a delta&lt;br /&gt;
              time and will take precedence over any frequency specified by&lt;br /&gt;
              the corresponding &amp;lt;*freq&amp;gt; value.  A value &amp;lt;= zero indicates&lt;br /&gt;
              write frequency will not be determined by delta times.&lt;br /&gt;
              Default value is -1.0.&lt;br /&gt;
&lt;br /&gt;
     *time    Specifies the simulation time at which the associated data&lt;br /&gt;
              was last written to disk.  This value will be automatically&lt;br /&gt;
              updated during the simulation.  If the corresponding &amp;lt;*dt&amp;gt;&lt;br /&gt;
              parameter is &amp;lt;= 0.0 this parameter will be ignored.&lt;br /&gt;
&lt;br /&gt;
     *counter Sequence number of the previously written file of the&lt;br /&gt;
              corresponding type.  Default is 0.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A10. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| dirname ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Base output directory name.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| skipIO ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle for disabling generation of all output types other than timing files.                                      Overrides output-specific toggles if set. Default is 0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| numIOGroups ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the number of groups into which the domains will be separated for doing                                      parallel IO.  All files generated in parallel will be created with this                                      number of segments.  This value must be at least one and no more than the total number of domains used.                                      default is 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files identifying each unique dislocation                                      segment.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilecounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiledt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilefreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiletime ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of flux decomposition files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxcounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxdt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|fluxtime ||align=&amp;quot;center&amp;quot;|   double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplot  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files formatted for use with gnuplot.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotcounter  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotfreq  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplottime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of &amp;lt;111&amp;gt; type burgers vector pole figures.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefilecounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigdt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigtime ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povray ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files with nodal data and domain                                      boundaries for use with povray.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraycounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraydt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povrayfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraytime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of postscript files containing nodal                                      data and domain boundaries.   Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiledt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfilefreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiletime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecn ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of restart files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecncounter ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecndt ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecnfreq ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecntime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveprop  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of various properties files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveproptime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimers  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of timing data files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerscounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerstime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savedensityspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the granularity of the 3D density field written to the density field file in X, Y and Z                                      dimensions.  If any element of this array is zero, this capability is                                      disabled.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplot  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      tecplot.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotcounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplottime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfile  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      the TeraScale Browser.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| writetsbspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilecounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiledt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfile  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files containing velocity data                                      for all nodes in the simulation.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilecounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiledt  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| winDefaultsFile  ||align=&amp;quot;center&amp;quot;|   string   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing default options and attributes for the X-window                                      display.  This is ignore if the X display support was not enabled at compile time.  Defaults to                                      &amp;quot;./inputs/paradis.xdefaults&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous parameters ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A11. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  elasticinteraction ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles between explicit calculation of elastic interaction and simple line                                      tension calculations.  Toggle is one (on) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TensionFactor ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor used for simple line tension force calculations when the                                      &amp;lt;elasticinteraction&amp;gt; parameter is zero. Default is 1.0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Under development ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A12. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TempK ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Simulation temperature (in Kelvin).  For use in FCC cross-slip.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| enforceGlidePlanes ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If non-zero, forces remesh, collision handling, etc. to use glide-plane                                      constraints.  Default is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| springConst ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For use with FCC_0 mobility&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_compute_escaig ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_cross_slip ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5618</id>
		<title>Overview of ParaDiS 2.2</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5618"/>
		<updated>2011-12-05T04:51:29Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Simulation time and timestepping controls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is taken from ParaDiSInfo.txt in ParaDiS.v2.2 distribution.  Written by Gregg Hommes, LLNL.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
The Parallel Dislocation Simulator (ParaDiS) was written&lt;br /&gt;
and developed at LLNL by a team of physicists and computer&lt;br /&gt;
scientists.  ParaDiS is a code for doing Dislocation Dynamics&lt;br /&gt;
simulations and was specifically written to perform well on&lt;br /&gt;
massively parallel computers.  The computational approach to&lt;br /&gt;
Dislocation Dynamics used in ParaDiS is fairly simple.  In&lt;br /&gt;
it, one introduces dislocation lines into the computational&lt;br /&gt;
volume and lets them interact and move in response to the&lt;br /&gt;
forces imposed by external stress and inter-dislocation&lt;br /&gt;
interactions. &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Building ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
=== Directory Structure ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS release consists of a file which, when unzipped&lt;br /&gt;
and untarred creates a primary directory and a structure&lt;br /&gt;
of subdirectories.  For convenience, this primary directory&lt;br /&gt;
will hereafter be referred to as &amp;lt;ParadisDir&amp;gt;.  The directory&lt;br /&gt;
structure of the release will look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains primary &#039;make&#039; files for controlling build of all executables&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;This directory will be created during the &#039;make&#039; process. All executables will be placed in this directory during compilation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/docs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains any additional documentation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/include/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains all C and C++ header files&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/inputs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;FMM and non-FMM correction tables, X-display defaults file, gnuplot command file, etc.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/materials/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Sample files containing material specific tables and constants&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/src/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;All C and C++ source code modules related to the paradis executable&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/tools/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Miscellaneous support scripts&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/utilities/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Source code modules pertaining to the various support tools&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling ===&lt;br /&gt;
&lt;br /&gt;
The current ParaDiS &#039;make&#039; files support compilation for&lt;br /&gt;
a number of pre-defined system types that are defined in&lt;br /&gt;
the file &#039;makefile.sys&#039;. In order to compile the code on&lt;br /&gt;
one of these pre-defined system types, simply edit&lt;br /&gt;
&#039;makefile.setup&#039; and set the &amp;quot;SYS=...&amp;quot; value to the&lt;br /&gt;
desired system type.  For other system types, add a new&lt;br /&gt;
system type into &#039;makefile.sys&#039; following the format used&lt;br /&gt;
for the existing systems and, as above, set the &amp;quot;SYS=...&amp;quot;&lt;br /&gt;
value in &#039;makefile.setup&#039;.&lt;br /&gt;
&lt;br /&gt;
Executing &#039;gmake&#039; with no options in &amp;lt;ParadisDir&amp;gt; will&lt;br /&gt;
build the following executables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradis&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Main parallel application&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisgen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating initial dislocation configurations (See [[#Utilities|Utilities]] section for  details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisrepart&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for generating a new domain decomposition for an existing dislocation configuration (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisconvert&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for converting older format ParaDiS control parameter files to the current format (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating image correction tables needed when FMM code is enabled.  (See  [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegenp&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Parallel version of the ctablegen utility. See above.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/stresstablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating tables used in calculating far-field stress if the FMM code is not enabled.  (See [[#Utilities|Utilities]] section for details)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Make files ===&lt;br /&gt;
&lt;br /&gt;
Compilation of the code is done via &#039;gmake&#039; and depends&lt;br /&gt;
on the following &#039;make&#039; files located in the &amp;lt;ParadisDir&amp;gt;&lt;br /&gt;
directory.  (See the individual make files for details)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This is the primary make file controlling the build of the parallel executable and associated utilities.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.sys&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This file contains, for each supported system type, a set of &#039;make&#039; macros, definitions,  compiler selection, library and include file paths, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.setup&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Contains numerous &#039;make&#039; settings and flags that are not system specific, including settings for system type, optimization level, debugging flags, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;         &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Executing ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
===  Command line ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS command line format is:&lt;br /&gt;
&lt;br /&gt;
 paradis [-r &amp;lt;numCycles&amp;gt;] [-d dataFile] &amp;lt;controlFile&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ctrlFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the ParaDiS control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-d &amp;lt;dataFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the base name of the file(s) containing the nodal data for the run. If this file name is not supplied, the code looks for a data file named the same as the control file with the file name suffix (if any) replaced with &amp;quot;.data&amp;quot;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-r &amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;numCycles&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Causes the code to execute a series of &amp;lt;numCycles&amp;gt; cycles during which no force calculations or dislocation movement will occur. These cycles will be used strictly for load-balancing purposes and will be done before the normal cycles. This can be useful when a simulation is started with a uniform domain decomposition  and needs time to converge on an optimal decomposition as would occur when restarting a simulation on a different number of cpus&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
For example, the following are all valid execution lines with the&lt;br /&gt;
first two being equivalent, the third version using the same control&lt;br /&gt;
file as the first two, but explicitly selecting a different nodal&lt;br /&gt;
data file.&lt;br /&gt;
&lt;br /&gt;
For example, assuming you had a the control parameter file&lt;br /&gt;
&#039;testrun.ctrl&#039; and the two different nodal data files &#039;testrun.data&#039;&lt;br /&gt;
and &#039;testrun2.data&#039;, all of the following command lines formats&lt;br /&gt;
are valid.  The first two commands are equivalent, the third&lt;br /&gt;
uses the same control parameter file as the first two, but&lt;br /&gt;
explicitly selects a different nodal data file.&lt;br /&gt;
           &lt;br /&gt;
 mpirun -np 8 bin/paradis testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun.data testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun2.data testrun.ctrl&lt;br /&gt;
&lt;br /&gt;
NOTE: The number of processors specified to mpirun (or other&lt;br /&gt;
parallel job initiator applicable to the execting system)&lt;br /&gt;
must match the number of domains specified in the control&lt;br /&gt;
file (i.e. np = numXdoms * numYdoms * numZdoms).&lt;br /&gt;
&lt;br /&gt;
Several small example problems are included with the&lt;br /&gt;
ParaDiS release.  The control and data files for these&lt;br /&gt;
examples are:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.data&lt;br /&gt;
&lt;br /&gt;
NOTE: These tests require the following tables used&lt;br /&gt;
for calculating the far-field stresses from distant&lt;br /&gt;
cells and periodic images of the problem.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
These file *may* have been provided with the source&lt;br /&gt;
code release.  If not, see the README file in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tests directory for instructions on&lt;br /&gt;
generating these files.&lt;br /&gt;
&lt;br /&gt;
The &#039;form_binaryjunc*&#039; files contain a small configuration that&lt;br /&gt;
will demonstrate the formation of a binary junction from two&lt;br /&gt;
dislocation lines, while the &#039;frank_read_src*&#039; files contain a&lt;br /&gt;
configuration that demonstrates the behaviour of a frank-read&lt;br /&gt;
source.  Both these examples are single cpu examples.  To run&lt;br /&gt;
these tests, from the main &amp;lt;ParadisDir&amp;gt; directory execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/form_binaryjunc.ctrl&lt;br /&gt;
or&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/frank_read_src.ctrl&lt;br /&gt;
          &lt;br /&gt;
The &#039;fmm_8cpu*&#039; files are just a general demonstration of the&lt;br /&gt;
behavior of a small number of screw dislocations.  This is&lt;br /&gt;
an 8 processor simulation using the Fast Multipole Method&lt;br /&gt;
(FMM) for calculating stress from far-field interactions.&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 ./bin/paradis ./tests/fmm_8cpu.ctrl&lt;br /&gt;
&lt;br /&gt;
Any output from these runs will be placed into corresponding&lt;br /&gt;
subdirectories under the &amp;quot;tests&amp;quot; directory.&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Inputs ==&lt;br /&gt;
&lt;br /&gt;
=== Input Files ===&lt;br /&gt;
&lt;br /&gt;
A ParaDiS simulation may be started from scratch, or &lt;br /&gt;
terminated and then later restarted if the user requested&lt;br /&gt;
periodic dumps of restart files.  In either case, the initial&lt;br /&gt;
or restart data data consists of two files, a control&lt;br /&gt;
parameter file and a nodal data file.  (See section on&lt;br /&gt;
[[#Output|Output]] for details on restart files)&lt;br /&gt;
&lt;br /&gt;
=== Control Parameter File ===&lt;br /&gt;
&lt;br /&gt;
The control parameter file consists of data of the form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = value&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&lt;br /&gt;
 identifier = [value_list]&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;or&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = string&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
where&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;identifier&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is the name of a control parameter&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a numeric value associated with the parameter specified by &amp;lt;identifier&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value_list&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a list of numeric values to be associated with the array specified by &amp;lt;identifier&amp;gt;. This values in this list must be delimited by white-space or line-feeds.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;string&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;a character string enclosed within either single or double quotes.  The string may not contain a line-feed character.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
        &lt;br /&gt;
The identifier names are case-insensitive and may be specified&lt;br /&gt;
as any mixture of upper and lower case.  If the code encounters&lt;br /&gt;
an identifier it does not recognize, the identifier and associated&lt;br /&gt;
value(s) will be ignore and a warning message displayed.&lt;br /&gt;
&lt;br /&gt;
Any blank lines in the control parameter file will will be&lt;br /&gt;
ignored and additionally, any &#039;#&#039; not contained within quotes&lt;br /&gt;
is treated as the beginning of a comment and causes the remainder&lt;br /&gt;
of the current line to be ignored.&lt;br /&gt;
&lt;br /&gt;
See the [[#Appendix 1. Control Parameters|Appendix]] for a complete list of the recognized control&lt;br /&gt;
parameters as well as a brief description of each.&lt;br /&gt;
&lt;br /&gt;
===  Nodal Data File ===&lt;br /&gt;
&lt;br /&gt;
==== Data File Format ====&lt;br /&gt;
&lt;br /&gt;
The nodal data will be contained in 1 or more file&lt;br /&gt;
segments, with the information being broken into&lt;br /&gt;
three sections (described below). The first section&lt;br /&gt;
is the data file parameters, the second section the&lt;br /&gt;
domain decomposition, and the third section the nodal&lt;br /&gt;
data.  The first two sections will be included only&lt;br /&gt;
in the first file segment.&lt;br /&gt;
&lt;br /&gt;
==== Data File Segments ====&lt;br /&gt;
&lt;br /&gt;
Given a control parameter file &#039;restart.cn&#039;, the&lt;br /&gt;
associated nodal data file(s) would be named:&lt;br /&gt;
&lt;br /&gt;
 restart.data[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where  &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when the nodal data was written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter was greater than 1). &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;      &lt;br /&gt;
    &lt;br /&gt;
For example, suppose the &amp;lt;numIOGroups&amp;gt; control parameter&lt;br /&gt;
was set to 4 during a simulation executed on 16 processors.&lt;br /&gt;
If the simulation created a restart file set at termination,&lt;br /&gt;
the following files would be generated and could be used&lt;br /&gt;
as input to continue the simulation at a later time:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.cn&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.0&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.1&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.2&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.3&lt;br /&gt;
&lt;br /&gt;
==== Data File Parameters ====&lt;br /&gt;
&lt;br /&gt;
The data file parameters make up the first section of&lt;br /&gt;
the nodal data file and are parsed in the same manner&lt;br /&gt;
as specified above for the control file parameters.&lt;br /&gt;
These parameters must preceed the other two types of&lt;br /&gt;
information in the nodal data file.  NOTE: The values&lt;br /&gt;
of these parameters are updated within the ParaDiS&lt;br /&gt;
code as necessary and should not be changed by the user.&lt;br /&gt;
&lt;br /&gt;
The recognized data file parameters are:&lt;br /&gt;
&lt;br /&gt;
:                     dataFileVersion&lt;br /&gt;
:                     numFileSegments&lt;br /&gt;
:                     minCoordinates&lt;br /&gt;
:                     maxCoordinates&lt;br /&gt;
:                     nodeCount&lt;br /&gt;
:                     dataDecompType&lt;br /&gt;
:                     dataDecompGeometry&lt;br /&gt;
&lt;br /&gt;
==== Domain Decomposition ====&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
==== Nodal Data ====&lt;br /&gt;
The raw nodal data comprises the third section&lt;br /&gt;
of the nodal data file.  For each node, there will&lt;br /&gt;
be a single line of node specific data followed by&lt;br /&gt;
several lines of segment specific data for each&lt;br /&gt;
segment associated with the node.  The nodal data&lt;br /&gt;
consists of:&lt;br /&gt;
&lt;br /&gt;
: node_tag x_coord y_coord z_coord num_arms constraint&lt;br /&gt;
&lt;br /&gt;
The segment specific data consists of:&lt;br /&gt;
&lt;br /&gt;
: nbr_tag burg_x burg_y, burg_z&lt;br /&gt;
: norm_x norm_y norm_z&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;*_tag&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a comma delimited pair of numbers uniquely identifying a node.  The first number is the ID of the domain owning the node, the second is the index number of the node within the owning domain.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;bottom&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;x_coord, y_coord, z_coord&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;coordinates of the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;num_arms&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Number of segments associated with the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;constraint&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Integer value indicating any constraints placed on the node (i.e.  a constraint of 7 implies a node fixed in place and unmovable)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Cell and Domain Structure ==&lt;br /&gt;
&lt;br /&gt;
The ParaDiS code is used to simulate cubic systems which&lt;br /&gt;
are simultaneously partitioned into a uniform mesh of&lt;br /&gt;
cubic &#039;cells&#039; and spatially decomposed into &#039;domains&#039;.&lt;br /&gt;
&lt;br /&gt;
The cellular structure is defined by the &amp;lt;nXcells&amp;gt;, &amp;lt;nYcells&amp;gt;&lt;br /&gt;
and &amp;lt;nZcells&amp;gt; control parameters, and is used to determine&lt;br /&gt;
the cut-off distance between direct segment to segment&lt;br /&gt;
dislocation interactions and remote (or far-field) interactions.&lt;br /&gt;
In particular, for a given dislocation segment, the interaction&lt;br /&gt;
between the segment and any other segments in the same cell&lt;br /&gt;
or any of the immediately neighboring 26 cells are calculated&lt;br /&gt;
directly.  Interactions with all segments outside that range&lt;br /&gt;
are calculated via a hierarchical Fast Multipole Method or&lt;br /&gt;
by lumping all segments in the remote cell into a&lt;br /&gt;
&#039;super-dislocation&#039; where the group of remote dislocations&lt;br /&gt;
are represented as an expansion of dislocation multipoles.&lt;br /&gt;
(See [[#Far-Field Dislocation Interactions|section on Far-Field Forces]] for details)&lt;br /&gt;
&lt;br /&gt;
The type of spatial decomposition used for the simulation is&lt;br /&gt;
selected by the &amp;lt;decompType&amp;gt; control parameter, along with&lt;br /&gt;
the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt; and &amp;lt;nZdoms&amp;gt; parameters defining&lt;br /&gt;
the number of spatial domains in each dimension.  Each &#039;domain&#039;&lt;br /&gt;
is assigned to a single task (processor) within the simulation.&lt;br /&gt;
(See [[#Domain Decomposition 2|section on Domain Decomposition]] for details on the &lt;br /&gt;
supported types of spatial decomposition)&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Domain Decomposition ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Domain Decomposition Method ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS simulations are spatially decomposed into a number of&lt;br /&gt;
domains equal to the number of processors on which the simulation&lt;br /&gt;
is being executed.  The code curently supports two types of&lt;br /&gt;
domain decomposition and is selected via the &amp;lt;decompType&amp;gt;&lt;br /&gt;
control parameter.  The type 1 decomposition is a Recursive&lt;br /&gt;
Sectioning decomposition which is the default if no decomposition&lt;br /&gt;
type is explicitly requested.  The type 2 is a Recursive&lt;br /&gt;
Bisection decomposition.  (See descriptions of decomposition&lt;br /&gt;
algorithms below.)&lt;br /&gt;
&lt;br /&gt;
Since the ParaDiS simulations tend to grow in size and are&lt;br /&gt;
spatially heterogeneous, it is preferable to dynamically&lt;br /&gt;
recalculate the domain decomposition at intervals during the&lt;br /&gt;
simulation in order to rebalance the workload more efficiently.&lt;br /&gt;
The frequency with which the domain decomposition will be&lt;br /&gt;
recomputed is specified by the &amp;lt;DLBfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
The domain decomposition will be included in the restart files.&lt;br /&gt;
If the simulation is restarted and the &amp;lt;decompType&amp;gt; control&lt;br /&gt;
parameter selects a decomposition type *other* than the&lt;br /&gt;
decomposition that was used to generate the restart file, the&lt;br /&gt;
old domain decomposition from the restart file will be ignored&lt;br /&gt;
and a new domain decomposition of the selected type will be used.&lt;br /&gt;
&lt;br /&gt;
Additionally, if a simulation is restarted with a different number&lt;br /&gt;
of domains or a different domain geometry that that which was used&lt;br /&gt;
to create the restart file, the domain decomposition from the&lt;br /&gt;
restart file will be ignored and a new decomposition will be&lt;br /&gt;
generated.  &lt;br /&gt;
&lt;br /&gt;
Note: When restarting a large simulation (i.e. thousands&lt;br /&gt;
of processors) in such a way that the old domain decomposition must&lt;br /&gt;
be discarded, it may take some time for the simulation to converge&lt;br /&gt;
on an optimal domain decomposition. (The type 1 decomposition is&lt;br /&gt;
particularly susceptible to this.)  There are two ways to mitigate&lt;br /&gt;
this effect.  The first is to use the &#039;paradisrepart&#039; utility, the&lt;br /&gt;
second through the use of the &amp;quot;-r&amp;quot; command line option to ParaDiS.&lt;br /&gt;
See comments in other sections pertaining to these capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Sectioning ===&lt;br /&gt;
&lt;br /&gt;
The Recursive Sectioning algorithm performs a domain&lt;br /&gt;
decomposition over a 3-timestep period.  During the&lt;br /&gt;
first timestep, the entire problem space will be&lt;br /&gt;
sectioned along the X dimension into &amp;lt;nXdoms&amp;gt; slabs&lt;br /&gt;
such that the computational cost of each slab is roughly&lt;br /&gt;
equivalent.  The next timestep, each slab will be&lt;br /&gt;
sectioned alng the Y axis into &amp;lt;nYdoms&amp;gt; columns&lt;br /&gt;
such that the computational cost of each column in a&lt;br /&gt;
slab is roughly equivalent.  On the thrid timestep,&lt;br /&gt;
every column will be sectioned along the Z axis&lt;br /&gt;
into &amp;lt;nZdoms&amp;gt; chunks such that the computational&lt;br /&gt;
cost of each chunk in a column is roughy equivalent.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
third timestep.&lt;br /&gt;
&lt;br /&gt;
NOTE: Due to the fact that this algorithm requires 3&lt;br /&gt;
timesteps to complete a new decomposition, the&lt;br /&gt;
&amp;lt;DLBfreq&amp;gt; value must be no less than 3.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Bisection ===&lt;br /&gt;
&lt;br /&gt;
WARNING: The implementation of this algorithm requires the&lt;br /&gt;
number of domains in each dimension (as specified&lt;br /&gt;
by the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt;, and &amp;lt;nZdoms&amp;gt; control&lt;br /&gt;
parameters) must be a power of 2.&lt;br /&gt;
&lt;br /&gt;
The Recursive Bisectioning algorithm begins with the entire&lt;br /&gt;
cubic problem space and bisects the space in the X, Y and/or&lt;br /&gt;
Z dimensions into octants quarters or halves (depending on&lt;br /&gt;
the number of domains specified per dimension) such that &lt;br /&gt;
computational cost of each subpartition is roughly the same.&lt;br /&gt;
The decomposition is then recursively applied to each of the&lt;br /&gt;
subpartitions until no further decomposition is necesssary.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Dislocation Mobility ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Mobility Module ===&lt;br /&gt;
&lt;br /&gt;
One of the crucial aspects of a ParaDiS simulation is the&lt;br /&gt;
selection of the set of rules governing the material specific&lt;br /&gt;
physics such as glide climb, and cross-slip with respect to&lt;br /&gt;
crystallographic constraints.  ParaDiS provides multiple sets&lt;br /&gt;
of rules or &amp;quot;mobility laws&amp;quot;, each implemented in a separate&lt;br /&gt;
module, that may be selected via the &amp;lt;mobilityLaw&amp;gt; control&lt;br /&gt;
file parameter.  The currently support modules are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;BCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;BCC_0b&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There are additional modules for dealing with FCC type materials&lt;br /&gt;
however these are neither fully developed nor supported at this&lt;br /&gt;
point.  These FCC mobility functions are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;FCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;FCC_2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
For a list of the control parameters related to the mobility&lt;br /&gt;
of dislocations, see the [[#Material and mobility parameters:|&amp;quot;Material and Mobility Parameters&amp;quot; section]] of the Appendix detailing the control file parameters.&lt;br /&gt;
Currently the default values of all mobility related parameters&lt;br /&gt;
correspond to tantalum at a temperature of 600 K and a&lt;br /&gt;
pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
=== BCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
In BCC metals, screw dislocations do not dissociate into partial&lt;br /&gt;
dislocations the same way they do in FCC metals, therefore, for&lt;br /&gt;
BCC crystals we do not assign glide plane normals to screw&lt;br /&gt;
dislocations.  Instead, screw dislocations are given the same&lt;br /&gt;
mobility in all directions perpendicular to the line.  This&lt;br /&gt;
isotropic mobility for screws mimics the &amp;quot;pencil-glide&amp;quot; behavior&lt;br /&gt;
of dislocations observed in BCC metals at elevated temperatures.&lt;br /&gt;
At the same time, the drag coefficient for non-screw segments&lt;br /&gt;
will remain anisotropic with respect to glide and climb.&lt;br /&gt;
&lt;br /&gt;
For details on this mobility module, refer to the paper:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/Docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== BCC_0b Mobility: ===&lt;br /&gt;
&lt;br /&gt;
The BCC_0b mobility module is nearly a duplicate of BCC_0 with&lt;br /&gt;
the exception that the movement of discretization nodes along&lt;br /&gt;
the dislocation lines has been dampened.&lt;br /&gt;
&lt;br /&gt;
=== TBD ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
This module attempts to simulate easy glide in FCC systems.  The&lt;br /&gt;
glide plane is limited to one of the [111] planes, and cross-slip&lt;br /&gt;
is not permitted.  Also, no crystallographic information is&lt;br /&gt;
used in the dislocation core reactions and hence junction formation&lt;br /&gt;
can take place even slightly off the zone axis.&lt;br /&gt;
&lt;br /&gt;
Reminder:  This mobility module is not fully developed or supported.&lt;br /&gt;
&lt;br /&gt;
=== FCC_2 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Material Properties ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Specifying Material Properties ===&lt;br /&gt;
&lt;br /&gt;
All material specific properties are set via the control&lt;br /&gt;
file parameters.  If not specified, defaults will correspond&lt;br /&gt;
to tantalum at a temperatue of 300 K and pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
See the [[#Material and mobility parameters:|&amp;quot;Material and mobility parameters&amp;quot; section]] of &lt;br /&gt;
Appendix 1 for a list of the material related parameters.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Far-Field Dislocation Interactions ==&lt;br /&gt;
&lt;br /&gt;
=== Fast Multipole for Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The FMM algorithm is enabled within the code via the &amp;lt;fmEnabled&amp;gt;&lt;br /&gt;
toggle in the control file.  The order of the multipole and&lt;br /&gt;
Taylor expansions used by the FMM algorithm are set via the&lt;br /&gt;
&amp;lt;fmMPOrder&amp;gt; and &amp;lt;fmTaylorOrder&amp;gt; control parameters respectively.&lt;br /&gt;
As a general rule, the taylor expansion order should be around&lt;br /&gt;
twice that of the multipole expansion order.  One additional&lt;br /&gt;
control parameter [[#FMM controls|&amp;lt;fmCorrectionTbl&amp;gt;]] specifies the name of the&lt;br /&gt;
file containing the table used by the FMM code to adjust the&lt;br /&gt;
stress calculated by the FMM for multiple periodic images.&lt;br /&gt;
&lt;br /&gt;
It is important to note that the file indicated by &amp;lt;fmCorrectionTbl&amp;gt;&lt;br /&gt;
must be built with the same multipole order, Taylor expansion order,&lt;br /&gt;
and Poisson value (&amp;lt;pois&amp;gt; control parameter) specified for a&lt;br /&gt;
simulation.  An appropriate correction table may be generated&lt;br /&gt;
via the &#039;ctablegen&#039; utility (See the section on Utilities for&lt;br /&gt;
details on the use of &#039;ctablegen&#039;), although a correction table&lt;br /&gt;
matching the code&#039;s default control parameter settings *may* have&lt;br /&gt;
been provided in the code release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600k.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The use of a Fast Multipole Method (FMM) for calculating the&lt;br /&gt;
far-field forces is based on formulae for generating and evaluating&lt;br /&gt;
multipole expansions and a few translation theorems.  A very&lt;br /&gt;
general description can be found below, but for details refer&lt;br /&gt;
to the following paper included with the source release.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The general FMM algorithm consists of the following steps:&lt;br /&gt;
&lt;br /&gt;
# Construct multipole moments: &lt;br /&gt;
#: Each domain (CPU) calculates the contributions of its dislocation segments to the  multipole moments of the FMM subcells to which those segments belong, and communicates those contributions to the domain that owns the FMM subcell. Each domain that owns an FMM subcell sums all the contributions for that subcell together. &amp;lt;bf&amp;gt;&lt;br /&gt;
# Upward pass: &lt;br /&gt;
#: Starting at the lowest layer of the FMM hierarchy, each domain collects and sums the contributions to the multipole moments for each of the FMM subcells it owns from the eight child cells and the calculates the upward pass translation of its multipole moments and communicates the result to the domain owing the subcell&#039;s parent, until the top of the hierarchy is reached.&lt;br /&gt;
# Transverse translations:&lt;br /&gt;
#: The multipole moments from 189 cells that are outside the nearest neighbor distance of the target cell but inside the nearest neaighbor distance of its parent are collected by the domain owning the target cell and their contributions to the Taylor series expansion of the stress filed in target is calculated.&lt;br /&gt;
# PBC correction: &lt;br /&gt;
#: The domain that owns the FMM cell at the highest level of the FMM hierarchy calculates the Taylor                series expansion of the stress state due to periodic images of the system (using [[#FMM controls|table]] specified in the &amp;lt;fmCorrectionTbl&amp;gt; parameter).&lt;br /&gt;
# Downward pass: &lt;br /&gt;
#: Starting with the highest level of the FMM hierarchy, each domain that owns an FMM subcell sums the               contributions from its parent to its Taylor series expansion of the stress from step 3 and then calculates the downward pass translation of the stress for each one of its child cells and sends the results to the domain owning the child subcells until the bottom of the hierarchy is reached.&lt;br /&gt;
# Each domain that owns a subcell at the lowest level of the FMM hierarchy communicates the Taylor series expansions of the stress field to the domains intersecting the subcell.&lt;br /&gt;
&lt;br /&gt;
=== Non-FMM Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The use of the FMM in ParaDiS can be disable by setting the control&lt;br /&gt;
parameter &amp;lt;fmEnabled&amp;gt; to 0.  When FMM is disabled, ParaDiS requires&lt;br /&gt;
additional tables used to factor in the far-field stresses from&lt;br /&gt;
distant cells and periodic images of the system.  The names of the&lt;br /&gt;
files containing the tables are specified via the &amp;lt;Rijmfile&amp;gt; and&lt;br /&gt;
&amp;lt;RijmPBCfile&amp;gt; control parameters.  These tables can be generated&lt;br /&gt;
using the &#039;stresstablegen&#039; utility (see [[#Creating Far-Field Stress Tables with &#039;stresstablegen&#039;|Utilities section]] for&lt;br /&gt;
details), although copies *may* have been provided in the code&lt;br /&gt;
release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
This method essentially lumps all dislocations in a cell into a &lt;br /&gt;
&#039;super-dislocation&#039; where the cell&#039;s dislocations are represented&lt;br /&gt;
as an expansion of the dislocation multipoles.  The remote stress&lt;br /&gt;
for a segment in a given cell is then calculated from two&lt;br /&gt;
components.  The first is the sum of the stresses resulting from&lt;br /&gt;
expansions from all remote cells (i.e. neither the current cell&lt;br /&gt;
nor any of its 26 immediate neighbors) and the stress from all&lt;br /&gt;
periodic images of those remote cells.  The second component&lt;br /&gt;
consists of the stress from only the periodic images of the local&lt;br /&gt;
cells (i.e. the current cell and its immediate neighbors).&lt;br /&gt;
&lt;br /&gt;
This method is can be faster for smaller simulations but unlike&lt;br /&gt;
the FMM, its performance does not scale well as the size of&lt;br /&gt;
a simulation increases in both dislocation density and number&lt;br /&gt;
of cells.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Discretization (Remesh) ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Discretization Method ===&lt;br /&gt;
&lt;br /&gt;
The nature of DD simulations is such that the total length&lt;br /&gt;
of dislocation lines can increase several orders of magnitude.&lt;br /&gt;
Hence, rediscretization of the dislocations is an absolutely necessary&lt;br /&gt;
components of ParaDiS simulations.  The goal of the rediscretization&lt;br /&gt;
is to optimize the numerical description of the continuous dsilocation&lt;br /&gt;
line geometry so that a given level of accuracy is achieved with the&lt;br /&gt;
fewest degrees of freedom.  For regions of high curvature, an optimal&lt;br /&gt;
distribution of nodes will place nodes more closely together than&lt;br /&gt;
in regions of lower curvature.&lt;br /&gt;
&lt;br /&gt;
The level of accuracy is tied to the control parameters &amp;lt;maxSeg&amp;gt;&lt;br /&gt;
and &amp;lt;minSeg&amp;gt; which define the maximum and minimum segment lengths (in&lt;br /&gt;
units of b) respectively.  The smaller the maximum segment length, the&lt;br /&gt;
higher the accuracy.&lt;br /&gt;
&lt;br /&gt;
A number of rediscretization version have been developed and&lt;br /&gt;
tested, although only versions 2 and 3 are currently supported.&lt;br /&gt;
The rediscretization version to use can be selected through&lt;br /&gt;
the control parameter &amp;lt;remeshRule&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 2 ===&lt;br /&gt;
&lt;br /&gt;
This method achieves rediscrtization through two types of&lt;br /&gt;
operations; mesh coarsening and mesh refinement (removing and&lt;br /&gt;
adding discretization nodes respectively).&lt;br /&gt;
&lt;br /&gt;
This involved defining both minimum and maximum discretization areas&lt;br /&gt;
(A_min and A_max) based on the simulation minimum and maximum&lt;br /&gt;
segment lengths &amp;lt;minSeg&amp;gt; and &amp;lt;maxSeg&amp;gt;.  Then for each discretization&lt;br /&gt;
node (i.e. a node with no more than two associated segments) a&lt;br /&gt;
discretization area (A_node) is calculated.  This area is defined&lt;br /&gt;
as the triangle with vertices at the node and its two neighbors.&lt;br /&gt;
When the discretization area associated with a node A_node &amp;lt; A_min&lt;br /&gt;
the node is removed (coarsened out).  Conversely, if the area&lt;br /&gt;
A_node &amp;gt; A_max, the local discretization is refined by bisecting&lt;br /&gt;
both segments attached to the node.&lt;br /&gt;
&lt;br /&gt;
For additional information, refer to the following paper included&lt;br /&gt;
with the ParaDiS source release:&lt;br /&gt;
 &lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 3 ===&lt;br /&gt;
&lt;br /&gt;
This rediscretization method is identical to type 2 with&lt;br /&gt;
the exception that during mesh refinement the inserted&lt;br /&gt;
nodes are not placed at the exact center of the segment&lt;br /&gt;
being bisected.  Instead, the algorithm treats the three&lt;br /&gt;
initial nodes as if they were on an arc and places the&lt;br /&gt;
new nodes at the center of the segments of the arc.&lt;br /&gt;
&lt;br /&gt;
The rationale behind this is that in simulations using&lt;br /&gt;
long segments and/or high stress, a new node added at the&lt;br /&gt;
center of a segment in a region of high curvature will&lt;br /&gt;
not be optimally placed.  This new node may immediately&lt;br /&gt;
accelerate quickly toward its optimal position then&lt;br /&gt;
decelerate as it nears that position.  This behavior&lt;br /&gt;
can severly impact the simulatuion timesteps.  By placing&lt;br /&gt;
the new nodes on an arc, the initial stress on the new&lt;br /&gt;
nodes will not be as high, keeping the motion of the node&lt;br /&gt;
similar to that of the surrounding nodes.  Hence, no&lt;br /&gt;
detrimental effects on the timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Simulation Timestepping ==&lt;br /&gt;
&lt;br /&gt;
=== Timestep Controls ===&lt;br /&gt;
&lt;br /&gt;
Two timestepping algorithms are provided in the ParaDiS code.&lt;br /&gt;
The &amp;lt;timestepIntegrator&amp;gt; control parameter is used to select&lt;br /&gt;
the desired algorithm.  The currently supported algorithms&lt;br /&gt;
are:&lt;br /&gt;
&lt;br /&gt;
:              &amp;quot;trapezoid&amp;quot;&lt;br /&gt;
:              &amp;quot;forward-euler&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The default timestep integrator is the &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
There are several general control parameters used in conjunction&lt;br /&gt;
with any selected timestep intergrator, and several that are unique&lt;br /&gt;
to specific integrators.  The general control parameters are&lt;br /&gt;
&amp;lt;deltaTT&amp;gt; which specifies the duration of the previous timestep,&lt;br /&gt;
&amp;lt;nextDT&amp;gt; which indicates the desired timestep to attempt the next&lt;br /&gt;
timestep, and &amp;lt;maxDT&amp;gt; which specifies the maximum timestep duration&lt;br /&gt;
permitted.&lt;br /&gt;
&lt;br /&gt;
=== Timestep Integrators ===&lt;br /&gt;
&lt;br /&gt;
==== Trapezoid ====&lt;br /&gt;
&lt;br /&gt;
This implicit integrator is a mix of the Euler-Forward and&lt;br /&gt;
Euler-Backward methods.  This method is unconditionally&lt;br /&gt;
stable, but requires an iterative process that may involve&lt;br /&gt;
multiple nodal force and velocity calculations.  The&lt;br /&gt;
additional expense of the multiple calculations, however,&lt;br /&gt;
is usually offset by the gains from the larger timesteps&lt;br /&gt;
compared to explicit methods such as the forward euler&lt;br /&gt;
integrator.&lt;br /&gt;
&lt;br /&gt;
The algorithm uses the current nodal velocities to reposition&lt;br /&gt;
each node, then recalculates forces and velocities for the&lt;br /&gt;
nodes at their new positions.  A positioning &#039;error&#039; is&lt;br /&gt;
calculated for each node based on the current and previous&lt;br /&gt;
nodal position and velocity.  If the positioning error of&lt;br /&gt;
any node is greater than the maximum permitted positioning&lt;br /&gt;
error as defined by the &amp;lt;rTol&amp;gt; control parameter, the&lt;br /&gt;
timestep will be decremented by a factor specified in the&lt;br /&gt;
&amp;lt;dtDecrementFact&amp;gt; control parameter and the process starts&lt;br /&gt;
again.  On the otehr hand, if the positioning error of all&lt;br /&gt;
nodes is within the tolerance, the timestep is accepted&lt;br /&gt;
and the current timestep is multipled by the factor in the&lt;br /&gt;
&amp;lt;dtIncrementFactor&amp;gt; to be used as the initial timestep to&lt;br /&gt;
attempt the next cycle.&lt;br /&gt;
&lt;br /&gt;
==== Forward Euler ====&lt;br /&gt;
&lt;br /&gt;
The forward euler timestep integrator is relatively simple&lt;br /&gt;
and inexpensive in that it requires only a single calculation&lt;br /&gt;
of nodal force and velocities per timestep.  Unfortunately,&lt;br /&gt;
the algorithm is subject to the Courant condition for&lt;br /&gt;
numerical stability and is limited to relatively small&lt;br /&gt;
timesteps.  The size of the timestep is controlled by the&lt;br /&gt;
ratio between the length of the shortest segment and the&lt;br /&gt;
velocity of the fastest moving node.  Additionally, the&lt;br /&gt;
&amp;lt;rmax&amp;gt; control parameter defines the maximum distance&lt;br /&gt;
any node is permitted to move in a single timestep, which&lt;br /&gt;
further limits the timestep duration.  This &#039;rmax&#039; distance&lt;br /&gt;
should be set such that no dislocation segment crosses&lt;br /&gt;
multiple simulation cells in a single timestep.&lt;br /&gt;
&lt;br /&gt;
Note: This timestep integrator is NOT recommended.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
=== X-window display ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ParaDiS provides a simple X-window display capability for&lt;br /&gt;
visualization and debugging of small scale simulations as well&lt;br /&gt;
as obtaining certain types of nodal data via the display window.&lt;br /&gt;
&lt;br /&gt;
Unlike some of the other visualization capabilities, this one &lt;br /&gt;
must be enabled/disabled via the compile time flag &amp;quot;XLIB_MODE&amp;quot;&lt;br /&gt;
in the file &amp;lt;ParadisDir&amp;gt;/makefile.setup.  The X-window support&lt;br /&gt;
is enabled by setting:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = ON&lt;br /&gt;
&lt;br /&gt;
and disabled by:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = OFF&lt;br /&gt;
&lt;br /&gt;
The default behavior is to have the X-window support enabled.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;winDefaultsFile&amp;gt; control parameter can be used to specify default&lt;br /&gt;
visualization options and attributes such as view perspective, colors&lt;br /&gt;
and so on.  Unless otherwise specified, this control parameter will&lt;br /&gt;
point to the following defaults file provided with the source release:&lt;br /&gt;
&lt;br /&gt;
:             &amp;lt;ParadisDir&amp;gt;/inputs/paradis.xdefaults&lt;br /&gt;
&lt;br /&gt;
Once the X-window display is initiated, the view can be controlled&lt;br /&gt;
through the following single-key commands:&lt;br /&gt;
&lt;br /&gt;
          Key            Command Description&lt;br /&gt;
          ---            -------------------&lt;br /&gt;
          &amp;lt;Home&amp;gt;         Restores image to default view&lt;br /&gt;
          &amp;lt;Esc&amp;gt;          Terminates X-window display without terminating&lt;br /&gt;
                         the simulation&lt;br /&gt;
          a              Enable/disable aspect ratio changes.  When enabled,&lt;br /&gt;
                         the Arrow keys alter the aspect ratio&lt;br /&gt;
          c              Enable/disable slice view of image.  When enabled,&lt;br /&gt;
                         Up/Down Arrows control slice position, Left/Right&lt;br /&gt;
                         Arrows control slice thickness.&lt;br /&gt;
          f              Turn display frame on/off&lt;br /&gt;
          p              Pause/restart simulation&lt;br /&gt;
          r              Enable image rotation.  When enabled, rotation can&lt;br /&gt;
                         be controlled via the mouse or Arrow keys.&lt;br /&gt;
          s              Enable display scaling.  When enabled, the Arrow&lt;br /&gt;
                         keys control scaling size.&lt;br /&gt;
          t              Enable image translation.  When enable,&lt;br /&gt;
                         the Arrow keys control translation direction.&lt;br /&gt;
          &amp;lt;F10&amp;gt;          Generate a postscript image of the display window.&lt;br /&gt;
                         File will be called &amp;lt;outputDir&amp;gt;/YshotNNNN where&lt;br /&gt;
                        &#039;NNNN&#039; is a sequence number incremented each time&lt;br /&gt;
                         a dump of the display window is generated and&lt;br /&gt;
                         &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
                         &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Additionally, clicking the mouse on a nodal point in the X-window&lt;br /&gt;
image will cause the following information to be written to the&lt;br /&gt;
terminal device (not the X-window display):&lt;br /&gt;
&lt;br /&gt;
* relative position (x,y) on the X-window display&lt;br /&gt;
* node ID (domainID,nodeindex)&lt;br /&gt;
* number of segments (arms) associated with the node&lt;br /&gt;
* simulation coordinates (x,y,z) of the node&lt;br /&gt;
&lt;br /&gt;
=== Gnuplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the gnuplot visualization package.  This capability is&lt;br /&gt;
enabled via the &amp;lt;gnuplot&amp;gt; toggle in the control parameter file.&lt;br /&gt;
The frequency with which gnuplot files will be generated is&lt;br /&gt;
controlled by the settings of the &amp;lt;gnuplotfreq&amp;gt; and &amp;lt;gnuplotdt&amp;gt;&lt;br /&gt;
parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of gnuplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/gnuplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/box.in&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/0tNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a gnuplot file set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when gnuplot files are being written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of gnuplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/gnuplot.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The &#039;box.in&#039; data file will contain data for plotting the boundaries&lt;br /&gt;
of the simulation space, while the &#039;0t*&#039; files contain the coordinate&lt;br /&gt;
pairs defining each unique dislocation segment.&lt;br /&gt;
&lt;br /&gt;
NOTE: When gnuplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  These file segments&lt;br /&gt;
can be combined into a single file for display in gnuplot&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of&lt;br /&gt;
[[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
To aid in visualizing the dislocation configuration, a file&lt;br /&gt;
containing commands to set some useful gnuplot options has&lt;br /&gt;
been provided;  This file is located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.cmds&lt;br /&gt;
&lt;br /&gt;
For example, to view the dislocation structure contained in the&lt;br /&gt;
gnuplot data file 0t0001 you could start gnuplot interactively&lt;br /&gt;
and execute the commands:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.defaults&#039;&lt;br /&gt;
 gnuplot&amp;gt; splot &#039;box.in&#039; with lines, &#039;0t0001&#039; w lines&lt;br /&gt;
&lt;br /&gt;
A second gnuplot command file has been provided as an example&lt;br /&gt;
of displaying a sequence of gnuplot files.  This file is&lt;br /&gt;
located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&lt;br /&gt;
&lt;br /&gt;
This file has the neccesary commands to plot the sequence&lt;br /&gt;
of files beginning with 0t0001 and ending with 0t1000.  After&lt;br /&gt;
starting gnuplot, simply load this file with:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&#039;&lt;br /&gt;
&lt;br /&gt;
This will initiate the plot of the first file, and thereafter,&lt;br /&gt;
simply hitting return will cause gnuplot to move to the next&lt;br /&gt;
file in the sequence.&lt;br /&gt;
&lt;br /&gt;
For details on using gnuplot, refer to the gnuplot manual or&lt;br /&gt;
enter &#039;help&#039; from the gnuplot interactive prompt.&lt;br /&gt;
&lt;br /&gt;
=== Tecplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the commercial visualization package Tecplot.  This&lt;br /&gt;
capability is enabled via the &amp;lt;tecplot&amp;gt; toggle in the control&lt;br /&gt;
parameter file.  The frequency with which tecplot files will&lt;br /&gt;
be generated is controlled by the settings of the &amp;lt;tecplotfreq&amp;gt;&lt;br /&gt;
and &amp;lt;tecplotdt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of tecplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/tecplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdataNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a tecplot file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when tecplot files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                   &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of tecplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdata.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The generated tecplot output has specific headers to assign the&lt;br /&gt;
variables and time frames (zones) and should look something like&lt;br /&gt;
this:&lt;br /&gt;
&lt;br /&gt;
          ...&lt;br /&gt;
          variables = X,Y,Z,V1,V2,V3,V4,V5,V6,V7,V8&lt;br /&gt;
          zone i = 54  F=POINT&lt;br /&gt;
          -4000.0  500.0  6000.0  133.1  612.4 -612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          -3866.9 1112.4  5387.7 -133.1 -612.4  612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          471.0  -5132.6 11632.3 -1712.7 -48.8  48.9  0.0090 -0.0918 0.0918 2 3&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
The first line defines the variables to reconstruct the dislocation&lt;br /&gt;
configuration.  X Y and Z specify the nodal coordinates,  V1 V2 and&lt;br /&gt;
V3 define arm vectors to the neighboring nodes.  These 6 variable&lt;br /&gt;
are used to represent dislocation segments as combinations of points&lt;br /&gt;
and vectors in tecplot.  The V4 V5 and V6 represent the nodal velocity&lt;br /&gt;
vector, V7 indicates the number of segments associated with the node&lt;br /&gt;
and V8 indicates a burgers vector type.&lt;br /&gt;
&lt;br /&gt;
NOTE: When tecplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the headers will only be&lt;br /&gt;
included in the first file segment with the remainder of the data&lt;br /&gt;
spread over the file segments.  These file segments can be combined&lt;br /&gt;
into a single file for display in tecplot via the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of [[#stitch|&#039;stitch&#039;]]&lt;br /&gt;
tool for details.)&lt;br /&gt;
&lt;br /&gt;
For details on using tecplot, refer to the tecplot manual or select&lt;br /&gt;
the &#039;Help&#039; menu in tecplot.&lt;br /&gt;
&lt;br /&gt;
=== Povray ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;povray&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate files containing&lt;br /&gt;
dislocation segment data formatted for use with the POVRAY&lt;br /&gt;
(Persistence of Vision(tm) Ray Tracer) tool.  The frequency&lt;br /&gt;
with which these files will be generated is controlled by&lt;br /&gt;
the settings of the &amp;lt;povrayfreq&amp;gt; and &amp;lt;povraydt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
Note:  These files contain the main data to be processed by&lt;br /&gt;
povray, but must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools)&lt;br /&gt;
which will create the final povray input file&lt;br /&gt;
containing the segment data embedded within a &lt;br /&gt;
proper framework of povray settings and commands.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of files in the directory &amp;lt;outputDir&amp;gt;/povray&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.  The naming convention used for&lt;br /&gt;
these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povframeNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a povray frame file                          set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when povray files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of povray&lt;br /&gt;
frame files will be created.  This set will be generated&lt;br /&gt;
regardless of the specified dump frequency in order to provide&lt;br /&gt;
an image of the final configuration. This set will be named&lt;br /&gt;
with the slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povray.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When povray data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  If desired, these file&lt;br /&gt;
segments may be combined into a single file for post-processing&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description&lt;br /&gt;
of [[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
As stated above, these files must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools) which will&lt;br /&gt;
create the final povray input file containing the segment&lt;br /&gt;
data embedded within a proper framework of povray settings&lt;br /&gt;
and commands.  This tool is capable of dealing with single&lt;br /&gt;
or segmented &#039;povframe*&#039; files.&lt;br /&gt;
&lt;br /&gt;
For details on using povray, refer to the povray manual.&lt;br /&gt;
&lt;br /&gt;
=== Terascale Browser ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Postscript ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;psfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a postscript file&lt;br /&gt;
containing an image of the current state of the system.&lt;br /&gt;
The frequency with which the postscript files are&lt;br /&gt;
written is determined by the settings of the&lt;br /&gt;
&amp;lt;psfilefreq&amp;gt; and &amp;lt;psfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/YshotNNNN.ps&lt;br /&gt;
&lt;br /&gt;
where NNNN is a sequence number beginning with zero and incremented&lt;br /&gt;
each time another postscript file is written.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Output ==&lt;br /&gt;
&lt;br /&gt;
=== Restart files ===&lt;br /&gt;
&lt;br /&gt;
Periodic creation of ParaDiS restart files is enabled via&lt;br /&gt;
the &amp;lt;savecn&amp;gt; toggle in the control file.  The frequency with&lt;br /&gt;
which restart files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;savecnfreq&amp;gt; and &amp;lt;savecndt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When enabled, the code will periodically generate restart&lt;br /&gt;
file which will be located in the directory &amp;lt;outputDir&amp;gt;/restart&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.&lt;br /&gt;
           &lt;br /&gt;
The naming convention used for these restart files is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN.data[.SEQ]&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# nodal data file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a restart file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when restart files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Each time a restart file set is written, the name of the&lt;br /&gt;
control parameter file will also be written into the file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/latest_restart&lt;br /&gt;
&lt;br /&gt;
Additionally, when creation of restart files is enabled, an&lt;br /&gt;
additional restart file pair named &#039;restart.cn&#039; and restart.data&#039;&lt;br /&gt;
will be written at program termination even if the cycle is not&lt;br /&gt;
a multiple of the &amp;lt;savecnfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
=== Property Outputs ===&lt;br /&gt;
&lt;br /&gt;
==== Enabling Properties Output ====&lt;br /&gt;
&lt;br /&gt;
The code has the capability to produce files containing&lt;br /&gt;
various dislocation properties.  This capability is enabled&lt;br /&gt;
via the &amp;lt;saveprop&amp;gt; toggle in the control file.  The&lt;br /&gt;
frequency with which the property data is written is&lt;br /&gt;
determined by the settings of the &amp;lt;savepropfreq&amp;gt; and&lt;br /&gt;
&amp;lt;savepropdt&amp;gt; control file parameters. &lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will generate &lt;br /&gt;
and periodically append the properties data to one or more of&lt;br /&gt;
the following files which will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/properties, where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
==== Property Files ====&lt;br /&gt;
&lt;br /&gt;
===== density =====&lt;br /&gt;
&lt;br /&gt;
Note: burgVolFactor converts from length in units of B, to density&lt;br /&gt;
in units of meters&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This file contains the following columns of data:&lt;br /&gt;
&lt;br /&gt;
#   plastic strain&lt;br /&gt;
#   strain&lt;br /&gt;
#   dislocation density&lt;br /&gt;
#   deleted dislocation density &lt;br /&gt;
#: (lost through annihilation, junction formation, etc) &lt;br /&gt;
#: (density lost since last dump of data)&lt;br /&gt;
#   average dislocation velocity&amp;amp;#8225;&lt;br /&gt;
#   std. deviation of dislocation velocities&amp;amp;#8225;&lt;br /&gt;
#   density file version number&lt;br /&gt;
#   dislocation density for segments of specific groupings of burgers vectors (see below)*&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; These items will be calculated only if&lt;br /&gt;
the &amp;quot;VEL_STATISTICS&amp;quot; pre-processor macro was&lt;br /&gt;
defined during compilation.  Otherwise these&lt;br /&gt;
values will be zeroes.&lt;br /&gt;
&lt;br /&gt;
For BCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 1] [-1-1-1]&lt;br /&gt;
                          9         [-1 1 1] [ 1-1-1]&lt;br /&gt;
                          10        [ 1-1 1] [-1 1-1]&lt;br /&gt;
                          11        [ 1 1-1] [-1-1 1]&lt;br /&gt;
                          12        [ 1 0 0] [-1 0 0] [ 0 1 0]&lt;br /&gt;
                                    [ 0-1 0] [ 0 0 1] [ 0 0-1]&lt;br /&gt;
&lt;br /&gt;
For FCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 0] [-1-1 0]&lt;br /&gt;
                          9         [-1 1 0] [ 1-1 0]&lt;br /&gt;
                          10        [ 1 0 1] [-1 0-1]&lt;br /&gt;
                          11        [-1 0 1] [ 1 0-1]&lt;br /&gt;
                          12        [ 0 1 1] [ 0-1-1]&lt;br /&gt;
                          13        [ 0-1 1] [ 0 1-1]&lt;br /&gt;
                          14        all others&lt;br /&gt;
&lt;br /&gt;
===== time_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following two columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain&lt;br /&gt;
&lt;br /&gt;
===== stress_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  The file contains the following two columns&lt;br /&gt;
of data:&lt;br /&gt;
&lt;br /&gt;
# plastic strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
===== stress_Total_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  If the user specified a constant strain&lt;br /&gt;
rate, this file contains:&lt;br /&gt;
&lt;br /&gt;
# strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
If the user specified cyclic loading, this file contains:&lt;br /&gt;
&lt;br /&gt;
#  net accumulated strain&lt;br /&gt;
#  stress&lt;br /&gt;
#  elapsed simulation time&lt;br /&gt;
#  number of loading cycles&lt;br /&gt;
&lt;br /&gt;
===== alleps =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||simulation timestep number&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||elapsed simulation time&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3-8.||plastic strain components&amp;amp;#8225;&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  9.||dislocation density&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;amp;#8225; from plastic strain tensor matrix, elements [0][0], [1][1], [2][2], [1][2], [0][1], and [0][2]&lt;br /&gt;
&lt;br /&gt;
===== epsdot =====&lt;br /&gt;
&lt;br /&gt;
This file contains the 2 columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain rate&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS has the capability to produce files containing&lt;br /&gt;
flux decomposition information for the simulation.&lt;br /&gt;
This capability is enabled via the &amp;lt;fluxfile&amp;gt; control&lt;br /&gt;
file toggle.  The frequency with which the flux&lt;br /&gt;
data is written is determined by the settings of&lt;br /&gt;
the &amp;lt;fluxfreq&amp;gt; and &amp;lt;fluxdt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled the code will generate&lt;br /&gt;
and periodically append the flux data to two sets of&lt;br /&gt;
files that will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/fluxdata where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Each set contains four files, one file per burgers vector.&lt;br /&gt;
Files *b1, *b2, *b3, and *b4 contain statistics for burgers&lt;br /&gt;
vector types [111], [-111], [1-11], and [11-1] respectively.&lt;br /&gt;
&lt;br /&gt;
The first set of files (Ltot_b1, Ltot_b2, Ltot_b3 and&lt;br /&gt;
Ltot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
# Plastic strain&lt;br /&gt;
# Strain,&lt;br /&gt;
# Screw density&lt;br /&gt;
# Edgedensity1&lt;br /&gt;
# Edgedensity2&lt;br /&gt;
# Edgedensity3&lt;br /&gt;
# Sum of edge Densities (4+5+6)&lt;br /&gt;
# Total system EdgeDensity from all Ltot files&lt;br /&gt;
# Total system screw density from all Ltot files&lt;br /&gt;
&lt;br /&gt;
The second set of files (fluxtot_b1, fluxtot_b2, fluxtot_b3 and&lt;br /&gt;
fluxtot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||Plastic Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3.||Flux due to climb motion&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Flux created by edge components on three planes (See below.)&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7-9.||Flux created by screw dislocation on three planes (See below.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For b1 = 1/2[1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b2 = 1/2[-1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b3 = 1/2[1 -1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b4 = 1/2[1 1 -1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pole figures ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Velocity files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;velfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
velocity information about each unique dislocation node &lt;br /&gt;
in the system.  The frequency with which the velocity&lt;br /&gt;
data is written is determined by the settings of the&lt;br /&gt;
&amp;lt;velfilefreq&amp;gt; and &amp;lt;velfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/velocity&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/velNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;velfilecounter&amp;gt; control parameter and is incremented each  time another velocity file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when velocity data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
In addition, at program termination, an extra set of velocity&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/vel.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When velocity data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the velocity files consist of 4 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Velocity components (x,y,z)&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| align=right |  4.|| +1 if contributing to strain rate &amp;lt;br&amp;gt; -1 if moving in opposite direction&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Segment files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;armfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
information about each unique dislocation segment &lt;br /&gt;
in the system.  The frequency with which the segment&lt;br /&gt;
(or arm) files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;armfilefreq&amp;gt; and &amp;lt;armfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/armdata&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/armNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;armfilecounter&amp;gt; control parameter and is incremented each time another arm file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when arm data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
  &lt;br /&gt;
In addition, at program termination, an extra set of arm&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/arm.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When arm data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the arm files consist of 10 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Burgers vector components&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Line direction vector&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7.||Segment length&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  8-10.||Coordinates of node &#039;owning&#039; the segment&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Density Field file ===&lt;br /&gt;
&lt;br /&gt;
If all components of the &amp;lt;savedensityspec&amp;gt; control parameter&lt;br /&gt;
are set to positive values in the control file, ParaDiS&lt;br /&gt;
will (at program termination) create a file containing a&lt;br /&gt;
3D dislocation density field formatted for use with the&lt;br /&gt;
VASP Data Viewer (vaspview).  The three components of&lt;br /&gt;
the &amp;lt;savedensityspec&amp;gt; parameter specify the granularity&lt;br /&gt;
of the density field in the X, Y and Z dimensions&lt;br /&gt;
respectively.   The density field will be written to the&lt;br /&gt;
file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/densityfield.out&lt;br /&gt;
&lt;br /&gt;
Warning: This will overwrite any existing density field&lt;br /&gt;
file of the same name!&lt;br /&gt;
&lt;br /&gt;
The VASP Data Viewer is publicly available on the web&lt;br /&gt;
for non-commercial use.  For details on the product,&lt;br /&gt;
download the VASP Data Viewer from the web and refer&lt;br /&gt;
to the accompanying documentation.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Utilities ==&lt;br /&gt;
&lt;br /&gt;
=== Creating Initial Dislocations with &#039;paradisgen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisgen utility is capable of generating initial&lt;br /&gt;
dislocations suitable for a paradis simulation.  The command&lt;br /&gt;
line options for paradisgen control the type of dislocations,&lt;br /&gt;
number of dislocations, size of the simulation box, and so&lt;br /&gt;
on.  See &amp;quot;Examples&amp;quot; below for sample executions of this utility.&lt;br /&gt;
&lt;br /&gt;
The command line format for paradisgen is:&lt;br /&gt;
&lt;br /&gt;
              paradisgen [-cubel &amp;lt;cubelength&amp;gt;] [-help] [-hexsize &amp;lt;size&amp;gt;]  \&lt;br /&gt;
                         [-maxseg &amp;lt;maxseglen] [-nchains &amp;lt;numchains&amp;gt;]      \&lt;br /&gt;
                         [-nloops &amp;lt;numloops&amp;gt;] [-outfile &amp;lt;filename&amp;gt;        \&lt;br /&gt;
                         [-radius &amp;lt;radius&amp;gt;] [-seed &amp;lt;seedval&amp;gt;]             \&lt;br /&gt;
                         [-type &amp;lt;configtype&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
All command line options may be abbreviated to the shortest&lt;br /&gt;
non-ambiguous abbreviation of the option.  Descriptions of&lt;br /&gt;
the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
            -cubel &amp;lt;cubelength&amp;gt;  Defines the size of the simulation cube&lt;br /&gt;
                                 in units of b.  Minimum and maximum problem&lt;br /&gt;
                                 space coordinates will be 0.5*cubel and&lt;br /&gt;
                                 -0.5*cubel respectively.  If not specified&lt;br /&gt;
                                 this will default to 35000b (approx.&lt;br /&gt;
                                 10 micron).&lt;br /&gt;
&lt;br /&gt;
            -help                Causes the utility to display the command line&lt;br /&gt;
                                 format and option descriptions then terminate.&lt;br /&gt;
&lt;br /&gt;
            -hexsize &amp;lt;size&amp;gt;      Defines the radius (in units of b) for the&lt;br /&gt;
                                 hexagonal interstitial loops.  This option is&lt;br /&gt;
                                 used only when the selected dislocation type&lt;br /&gt;
                                 is &#039;fcc-irrad&#039;.&lt;br /&gt;
&lt;br /&gt;
            -looptype &amp;lt;ltype&amp;gt;    Specifies the types of prismatic loops to&lt;br /&gt;
                                 generate.  If not specified, this value&lt;br /&gt;
                                 will default to zero.  Valid values are:&lt;br /&gt;
&lt;br /&gt;
                                   0 == mixture of [1 1 1] and [1 0 0] types&lt;br /&gt;
                                   1 == all [1 1 1] type loops&lt;br /&gt;
                                   2 == all [1 0 0] type loops&lt;br /&gt;
&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.&lt;br /&gt;
&lt;br /&gt;
            -maxseg &amp;lt;length&amp;gt;     Defines the maximum desired segment length&lt;br /&gt;
                                 in units of b.  Initial dislocations will&lt;br /&gt;
                                 be discretized so no segment is longer than&lt;br /&gt;
                                 this value.  If not specified this value&lt;br /&gt;
                                 defaults to 500.&lt;br /&gt;
&lt;br /&gt;
            -nchains &amp;lt;numchain&amp;gt;  Indicates the number of dislocation lines&lt;br /&gt;
                                 to create.  This value is ignored when the&lt;br /&gt;
                                 selected dislocation type is &#039;prismatic-loop&#039;,&lt;br /&gt;
                                 and when the type is &#039;fcc-perfect-loop&#039;,&lt;br /&gt;
                                 this value must be a multiple of 12.  If&lt;br /&gt;
                                 not specified, this value defaults to 2.&lt;br /&gt;
&lt;br /&gt;
            -nloops &amp;lt;numloops&amp;gt;   Specifies the number of loops to create when&lt;br /&gt;
                                 the selected dislocation type is&lt;br /&gt;
                                 &#039;prismatic-loop&#039; or &#039;fcc-irrad&#039;.  If not&lt;br /&gt;
                                 specified, this value defaults to 1000.&lt;br /&gt;
&lt;br /&gt;
            -nsegs &amp;lt;numsegs&amp;gt;     Specifies the number of segments into which&lt;br /&gt;
                                 a prismatic loop will be discretized.  This&lt;br /&gt;
                                 option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to&lt;br /&gt;
                                 (2*PI*radius)/(maxseg/2).&lt;br /&gt;
&lt;br /&gt;
            -outfile &amp;lt;filename&amp;gt;  Name of the ParaDiS data file to be created.&lt;br /&gt;
                                 If not specified, data will be written&lt;br /&gt;
                                 into a file called &#039;paradis.data&#039;.&lt;br /&gt;
&lt;br /&gt;
            -radius &amp;lt;radius&amp;gt;     Radius (in units of b) of prismatic loops.&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to maxseg/2.&lt;br /&gt;
&lt;br /&gt;
            -seed &amp;lt;seed&amp;gt;         Specifies a value to seed the random number&lt;br /&gt;
                                 generator.  Using the same seed value for&lt;br /&gt;
                                 multiple executions of paradis (for which&lt;br /&gt;
                                 all other options are identical) insures&lt;br /&gt;
                                 creation of an identical configuration.  &lt;br /&gt;
&lt;br /&gt;
            -type &amp;lt;type&amp;gt;         Specifies the type of dislocations to create.&lt;br /&gt;
                                 This type can be a name or the integer value&lt;br /&gt;
                                 corresponding to the name.  Valid types are:&lt;br /&gt;
&lt;br /&gt;
                                 0 or &#039;screw&#039;        BCC screw dislocations.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 1 or &#039;finite-mixed&#039; A mixture of BCC screw and&lt;br /&gt;
                                                     edge dislocations&lt;br /&gt;
                                                     terminating at the edges&lt;br /&gt;
                                                     of the cubic problem&lt;br /&gt;
                                                     space.  This should not&lt;br /&gt;
                                                     be used with periodic&lt;br /&gt;
                                                     boundary conditions.&lt;br /&gt;
                                 2 or &#039;prismatic-loop&#039;   BCC prismatic loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 3 or &#039;fcc&#039;          FCC dislocations. Assumes&lt;br /&gt;
                                                     periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 4 or &#039;fcc-irrad&#039;    Mixture of FCC&lt;br /&gt;
                                                     dislocations and hexagonal&lt;br /&gt;
                                                     interstitial loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 5 or &#039;fcc-perfect-loop&#039; Not fully implemented.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&lt;br /&gt;
              TBD&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recomputing Domain Boundaries with &#039;paradisrepart&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisrepart utility provides a mechanism by which to&lt;br /&gt;
replace the domain decomposition/partitioning in an&lt;br /&gt;
existing nodal data file with a new domain decomposition.&lt;br /&gt;
The utility will read the current nodal data, and use the&lt;br /&gt;
specified domain/cell geometries to attempt to partition&lt;br /&gt;
the domains such that the computational cost for each domain&lt;br /&gt;
will be roughly equivalent.&lt;br /&gt;
&lt;br /&gt;
This utility is primarily used when it is necessary alter&lt;br /&gt;
the domain geometry or domain count for a simulation in&lt;br /&gt;
order to continue.  In such a situation, the existing&lt;br /&gt;
domain decomposition would be thrown away and the ParaDiS&lt;br /&gt;
code would generate an initial uniform decomposition&lt;br /&gt;
and then over time converge on a more optimal decomposition.&lt;br /&gt;
Using this utility instead to generate a new decomposition&lt;br /&gt;
provides a much more reasonable starting point from allowing&lt;br /&gt;
the ParaDiS simulation to converge on an optimal decomposition&lt;br /&gt;
much more quickly.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisrepart utility is:&lt;br /&gt;
&lt;br /&gt;
              paradisrepart -infile &amp;lt;inputFile&amp;gt;                           \&lt;br /&gt;
                            -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;               \&lt;br /&gt;
                            -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt;                \&lt;br /&gt;
                            [-outfile &amp;lt;outputFile&amp;gt;]  [-decompType &amp;lt;type&amp;gt;] \&lt;br /&gt;
                            [-help]&lt;br /&gt;
    &lt;br /&gt;
All command line arguments and options may be abbreviated to the&lt;br /&gt;
shortest non-ambiguous abbreviation of the option.  Descriptions&lt;br /&gt;
of the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
              -infile &amp;lt;inputFile&amp;gt;    Specifies the name of the nodal data file.&lt;br /&gt;
                                     On success, the first nodal data file&lt;br /&gt;
                                     segment will be copied to &amp;lt;inputFile&amp;gt;.bkup.&lt;br /&gt;
                                     This command line argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;  Specifies the number of&lt;br /&gt;
                                     cells in each dimension.  If the&lt;br /&gt;
                                     number of cells in the Y and Z dimensions&lt;br /&gt;
                                     are not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xcells&amp;gt;. This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt; Specifies the number of domains&lt;br /&gt;
                                     in each dimension.  If the number of&lt;br /&gt;
                                     domains in the Y and Z dimensions are&lt;br /&gt;
                                     not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xdoms&amp;gt;.  This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -decompType &amp;lt;type&amp;gt;     Specifies type of domain decomposition:&lt;br /&gt;
                                     If not specified, defaults to 1.  Valid&lt;br /&gt;
                                     types are:&lt;br /&gt;
&lt;br /&gt;
                                       1 == Recursive Sectioning&lt;br /&gt;
                                       2 == Recursive Bisectioning&lt;br /&gt;
&lt;br /&gt;
              -help                  Causes the utility to display the command&lt;br /&gt;
                                     line format and option descriptions then&lt;br /&gt;
                                     terminate.&lt;br /&gt;
&lt;br /&gt;
              -outfile &amp;lt;outputFile&amp;gt;  Specifies the name of the file into which&lt;br /&gt;
                                     to write the new domain decomposition.  If&lt;br /&gt;
                                     not specified, new domain decomposition&lt;br /&gt;
                                     will be written into the file specified&lt;br /&gt;
                                     by &amp;lt;inputFile&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Converting Control and Data File with &#039;paradisconvert&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisconvert utility provides a mechanism by which&lt;br /&gt;
older format ParaDiS control and data files (and restart&lt;br /&gt;
files) may be converted to the current file formats.&lt;br /&gt;
This utility does recognize and handle segmented data files.&lt;br /&gt;
&lt;br /&gt;
In most cases this utility will not be required since&lt;br /&gt;
ParaDiS is still able to recognize and handle *most* of &lt;br /&gt;
the older file formats.  The only format the ParaDiS code&lt;br /&gt;
no longer recognizes is the truly ancient format associated&lt;br /&gt;
with the earliest incarnations of the code in which the&lt;br /&gt;
control file parameters and nodal data were included in&lt;br /&gt;
a single file.  For these control files, the paradisconvert&lt;br /&gt;
utility will be needed.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisconvert utility is:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert  &amp;lt;controlFile&amp;gt; [dataFile]&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;controlFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the control parameter file to be updated to the current format.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;dataFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;If the specified control file is the original ancient format including control parameters and                             nodal data in the single file, this argument is ignored.  Otherwise, this specifies the base name                             of the nodal data file(s) to be converted.  If not this argument is not provided, it will default to                             the same name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and the &#039;.data&#039; suffix added.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
On success, the utility will rename the original files by appending&lt;br /&gt;
a &#039;.bkup&#039; suffix to the names, and create new control and data files&lt;br /&gt;
with the specified names.  Note: for control parameter files which&lt;br /&gt;
include nodal data, a new data file will be generated under the&lt;br /&gt;
the name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and&lt;br /&gt;
a &#039;.data&#039; suffix added.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Examples:&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To convert the original format file &#039;restart.cn&#039; containing&lt;br /&gt;
both control parameters and nodal data, execute:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert restart.cn&lt;br /&gt;
&lt;br /&gt;
The utility will generate the following files:&lt;br /&gt;
&lt;br /&gt;
:              restart.cn.bkup&lt;br /&gt;
:              restart.cn&lt;br /&gt;
:              restart.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control parameter and data file pair with&lt;br /&gt;
the names &#039;rs0100&#039; and &#039;rs0100.data&#039; respective, execute either&lt;br /&gt;
of the following equivalent command lines:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
&lt;br /&gt;
In both cases, the utility would generate the files:&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control file &amp;lt;rs0100&amp;gt; and a set of segmented&lt;br /&gt;
data files with the names &amp;lt;rs0100.data.0&amp;gt;, &amp;lt;rs0100.data.1&amp;gt;, ...&lt;br /&gt;
&amp;lt;rs0100.data.7&amp;gt;, execute any of the following equivalent commands:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
 paradisconvert rs0100 rs0100.data.0&lt;br /&gt;
&lt;br /&gt;
In all of the above cases, the utility would generate the files&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.0.bkup&lt;br /&gt;
:              rs0100.data.1.bkup&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data.0&lt;br /&gt;
:              rs0100.data.1&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7&lt;br /&gt;
&lt;br /&gt;
=== Creating the FMM Image Correction Table with &#039;ctablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;ctablegen&#039; utility is used to create an image correction&lt;br /&gt;
table needed when the FMM (Fast Multipole Method) has been enabled&lt;br /&gt;
by setting the &amp;lt;fmEnabled&amp;gt; toggle on in the control file.  Since&lt;br /&gt;
the data in this file is dependent on the poisson ratio, shear&lt;br /&gt;
modulus, and orders of the multipole and taylor expansions, the&lt;br /&gt;
file must be created for the particular values of these items&lt;br /&gt;
used in the simulation.&lt;br /&gt;
&lt;br /&gt;
Given the current defaults used by ParaDiS (as set in Param.c):&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ||align=&amp;quot;left&amp;quot;| poisson ratio:          ||align=&amp;quot;center&amp;quot;|      3.327533e-01       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| shear modulus:          ||align=&amp;quot;center&amp;quot;|      6.488424e+10       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| multipole order:        ||align=&amp;quot;center&amp;quot;|      2       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| taylor expansion order: ||align=&amp;quot;center&amp;quot;|      5       &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To create the FMM image correction table, you could execute&lt;br /&gt;
ctablegen from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command line:&lt;br /&gt;
&lt;br /&gt;
 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \&lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
NOTE:  The generation of this table can take a significant&lt;br /&gt;
amount of time, therefore, a parallel version of the utility&lt;br /&gt;
(called ctablegenp) has also been provided.  To execute the&lt;br /&gt;
table generation in parallel on 8 processors using mpirun as&lt;br /&gt;
a parallel program initiator, one could execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \ &lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
The locations of this file is specified in the control&lt;br /&gt;
parameter file via the &amp;lt;fmCorrectionTbl&amp;gt; parameter.&lt;br /&gt;
&lt;br /&gt;
=== Creating Far-Field Stress Tables with &#039;stresstablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;stresstablegen&#039; utility is used to create tables needed&lt;br /&gt;
for calculating stress from distant cells and periodic images&lt;br /&gt;
of the system when FMM is disabled (i.e. &amp;lt;fmEnabled&amp;gt; is set &lt;br /&gt;
to zero).  There are two required tables, one which factors&lt;br /&gt;
in stress from periodic images only and the other which factors&lt;br /&gt;
in stress from both the primary and period images.&lt;br /&gt;
&lt;br /&gt;
To create the needed stress tables, execute the stesstablegen&lt;br /&gt;
utility twice from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command lines:&lt;br /&gt;
&lt;br /&gt;
 bin/stresstablegen -nopbc -outfile inputs/Rijm.cube.out&lt;br /&gt;
and&lt;br /&gt;
 bin/stresstablegen -pbc -outfile inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
The locations of these files are specified in the control&lt;br /&gt;
parameter file via the &amp;lt;Rijmfile&amp;gt; and &amp;lt;RijmPBCfile&amp;gt; parameters&lt;br /&gt;
respectively.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== genPovrayFrames ===&lt;br /&gt;
&lt;br /&gt;
The genPovrayFrames tool is provided to post-process the&lt;br /&gt;
povray data files generated by ParaDiS when the &amp;lt;povray&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
create an &#039;*.pov&#039; file containing the ParaDiS generated&lt;br /&gt;
data embedded in a proper framework of povray settings &lt;br /&gt;
and commands.  The tool is located in the &amp;lt;ParadisDir&amp;gt;/tools&lt;br /&gt;
directory.  For details on the use of this tool, see&lt;br /&gt;
the comments at the beginning of the script or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/genPovrayFrames -help&lt;br /&gt;
&lt;br /&gt;
=== gnuplot2povray ===&lt;br /&gt;
         &lt;br /&gt;
The gnuplot2povray tool is provided to post-process the&lt;br /&gt;
gnuplot data files generated by ParaDiS when the &amp;lt;gnuplot&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
convert the data in the gnuplot files into a format&lt;br /&gt;
suitable for povray, and create an &#039;*.pov&#039; file containing&lt;br /&gt;
the converted data embedded in a proper framework of povray&lt;br /&gt;
settings and commands.  The tool is located in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools directory.  For details on the use of&lt;br /&gt;
this tool, see the comments at the beginning of the script&lt;br /&gt;
or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/gnuplot2povray -help&lt;br /&gt;
&lt;br /&gt;
=== stitch ===&lt;br /&gt;
&lt;br /&gt;
When ParaDiS is configured to enable parallel I/O&lt;br /&gt;
(i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater&lt;br /&gt;
than 1), each of the following types of output &lt;br /&gt;
will be generated as a set of files rather than a&lt;br /&gt;
single output file.  &lt;br /&gt;
&lt;br /&gt;
:              gnuplot files&lt;br /&gt;
:              tecplot files&lt;br /&gt;
:              segment/arm data&lt;br /&gt;
:              povray files&lt;br /&gt;
:              velocity data&lt;br /&gt;
:              terascale browser files&lt;br /&gt;
:              pole figures&lt;br /&gt;
&lt;br /&gt;
Each file &#039;segment&#039; will contain a portion of the full&lt;br /&gt;
data and will have a sequence number appended to the file&lt;br /&gt;
name.  &lt;br /&gt;
&lt;br /&gt;
Most utilities for processing these types of output, however,&lt;br /&gt;
expect the data in a single file, so the &#039;stitch&#039; tool&lt;br /&gt;
has been provided in order to recombine these data file&lt;br /&gt;
segments into a single usable file as a post-processing&lt;br /&gt;
step.  The tool can be found in the source release as:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/tools/stitch&lt;br /&gt;
&lt;br /&gt;
The command line for &#039;stitch is as follows:&lt;br /&gt;
&lt;br /&gt;
 stitch [-h] [-d dir | -f file]&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
              -h          prints the usage information to stdout&lt;br /&gt;
&lt;br /&gt;
              -d &amp;lt;dir&amp;gt;    specifies a directory the utility will&lt;br /&gt;
                          scan for any segmented output files that&lt;br /&gt;
                          need to be stitched together.&lt;br /&gt;
&lt;br /&gt;
              -f &amp;lt;file&amp;gt;   specifies a base file name and the utility will&lt;br /&gt;
                          scan for the corresponding file segments (files&lt;br /&gt;
                          named &amp;lt;file&amp;gt;.N where N ranges from zero on up)&lt;br /&gt;
                          and stitch the segments into the single specified&lt;br /&gt;
                          base file name.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: If neither a directory nor file name was provided&lt;br /&gt;
on the command line, the tool will behave as though&lt;br /&gt;
the caller specified the current directory on the command&lt;br /&gt;
line and perform as stated above.&lt;br /&gt;
&lt;br /&gt;
==  Appendix 1. Control Parameters ==&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of the valid control&lt;br /&gt;
file parameters.  Also see the example control files contained&lt;br /&gt;
within the &amp;lt;ParadisDir&amp;gt;/tests directory.&lt;br /&gt;
&lt;br /&gt;
The parameters have been grouped into the following categories, and&lt;br /&gt;
unless otherwise specified, units are in SI, and lengths are&lt;br /&gt;
normalized by burgers vector magnitude:&lt;br /&gt;
&lt;br /&gt;
* Simulation cell and processor setup&lt;br /&gt;
* Simulation time and timestepping controls&lt;br /&gt;
* Discretization controls&lt;br /&gt;
* FMM controls&lt;br /&gt;
* Tables for non-FMM far-field forces&lt;br /&gt;
* Loading condition parameters&lt;br /&gt;
* Material and mobility parameters&lt;br /&gt;
* Velocity statistics and controls&lt;br /&gt;
* I/O controls and parameters&lt;br /&gt;
* Miscellaneous parameters&lt;br /&gt;
&lt;br /&gt;
=== Simulation cell and processor setup: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A1. Control parameters for simulation setup&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXdoms, numYdoms, numZdoms ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of computational domains into which the problem space is                                      partitioned in the corresponding dimensions.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXcells, numYcells, numZcells ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of cells in the corresponding dimension of the problem                                      space.  Cells are independent of the domain geometry and are used to                                      determine boundaries at which far-field forces are computed rather than direct                                      segment to segment forces.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundType, yBoundType, zBoundType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of problem space boundaries in the corresponding                                      dimension.  Currently supported types are 0, and 1 for periodic and free                                      surfaces respectively.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMax, yBoundMax, zBoundMax ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the upper limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;lt;= the respective maximum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMin, yBoundMin, zBoundMin ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the lower limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;gt;= the respective minimum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  decompType ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the type of domain decomposition to be used for a run. A value of one selects the old Recursive                                      Sectioning (RS) algorithm, a value of 2 selects the Recursive Bisectioning (RB)                                      decomposition algorithm.  The default is currently the RS decomposition.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  DLBfreq ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the frequency (in cycles) at which Dynamic Load-Balancing is to be                                      attempted.  A value of zero indicates no load-balancing is to be done.                                     Default is 3.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Simulation time and timestepping controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A2. Time Control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cycleStart ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Starting cycle number for the simulation.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxstep ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the number of timesteps to execute before terminating.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeNow ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Current simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeStart ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Initial simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timestepIntegrator ||align=&amp;quot;center&amp;quot;|     string      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Selects a timestep integration method. Valid methods are &amp;quot;trapezoid&amp;quot; and                                      &amp;quot;forward-euler&amp;quot;.  The default value is &amp;quot;trapezoid&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  deltaTT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the duration of the previous timestep in units of seconds.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the maximum timestep permitted. Default is 1.0e-07.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  nextDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the timestep duration to attempt on the next cycle.  The timestep                                      integrator will adjust this value dynamically.  Default is &amp;lt;maxDT&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtDecrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor by which &amp;lt;delatTT&amp;gt; is mutiplied when cutting the timestep duration down.                                      Must be between 0.0 and 1.0.  Currently only used with the &amp;quot;trapezoid&amp;quot;                                     integrator.  Default is 0.5.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtExponent ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Exponent used in calculation of timestep increment when &amp;lt;dtVariableAdjustment&amp;gt;                                      toggle is enabled.  Currently used only with &amp;quot;trapezoid&amp;quot; timestep integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtIncrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum factor by which &amp;lt;deltaTT&amp;gt; is multiplied when incrementing the                                      timestep.  Must be at least 1.0.  Default is 1.2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtVariableAdjustment ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles ability to vary the increment by which the timestep is adjusted when the                                      current timestep is determined to be too small.  This will permit the timestep to                                      be adjusted to a value between 1.0 and &amp;lt;dtIncrementFact&amp;gt; * &amp;lt;deltaTT&amp;gt;.  Toggle                                      is zero (off) by default.  Used only with &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rTol ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum position error (in units of b) tolerated in the timestep integration.                                      Only applies to the &amp;quot;trapezoid&amp;quot; integrator.  Default is 0.25 * &amp;lt;rc&amp;gt;. The annihilation&lt;br /&gt;
distance is related to rTol(By default, it is set to 2*&amp;lt;rTol&amp;gt;=0.5 * &amp;lt;rc&amp;gt;.)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rmax ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum distance (in units of b) a node is permitted to move in a single                                      timestep.  Not used if &amp;quot;trapezoid&amp;quot; timestep integrator used.  Default is                                      0.5 * &amp;lt;minSeg&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Discretization controls: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A3. Discretization control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the maximum permitted length (in units of b) of a dislocation segment.                                      Primarily used for determining when segments are to be rediscretized during                                      remesh operations.  This value must be less than 9/10 the size of a cell.                                      There is no default value, and must be specified in the control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  minSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the minimum desired length (in units of b) of a dislocation segment.                                      Primarily used for determining when nodes are to be removed during remesh                                      operations.  Default is: sqrt(remeshAreaMin*(4/sqrt(3))) where remeshAreaMin = 2*rTol*maxSeg&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  remeshRule ||align=&amp;quot;center&amp;quot;|     integer        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by number the set of rules governing rediscretization of                                      dislocations.  Currently the only supported remesh modules are versions 2 and 3.  Default is 2.  (See section                                      on Rediscretization for details on remesh versions.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FMM controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A4. FMM control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmEnabled    ||align=&amp;quot;center&amp;quot;|      integer      ||align=&amp;quot;left&amp;quot;|       &lt;br /&gt;
Toggle controlling use of a Fast Multipole Method (FMM) for computing force contributions from remote                                      dislocation segments.  A value of zero disables the use of FMM, any other value                                       enables FMM.  Default value is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fmCorrectionTbl ||align=&amp;quot;center&amp;quot;|      string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of the image correction table used by the FMM.  This correction table must                                      correspond to the specified &amp;lt;fmMPOrder&amp;gt;, &amp;lt;fmTaylorOrder&amp;gt; and &amp;lt;shearModulus&amp;gt;(?)                                      control parameters.  See the [[#Creating the FMM Image Correction Table with &#039;ctablegen&#039;|&#039;ctablegen&#039; utility]] for information on creating these tables.  This value is ignored if &amp;lt;fmEnabled&amp;gt; is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmMPOrder    ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the multipole expansion order used by the FMM.  This value is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fmTaylorOrder  ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the order of taylor expansions used by the FMM.  This values is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 4.&lt;br /&gt;
|}&lt;br /&gt;
                                          &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A5. Table for non-FMM far-field forces&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Rijmfile  ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                     calculations.  This parameter is ignored if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero.  Default is                                      &amp;quot;inputs/Rijm.cube.out&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  RijmPBCfile ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                      calculations with periodic boundary conditions.  This parameter is ignored                                      if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero. Default is &amp;quot;inputs/RijmPBC.cube.out&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Loading condition parameters: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A6. Loading condition parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  loadType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
&amp;lt;ol start=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Creep test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Constant strain rate test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Displacement-controlled test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Load-controlled, load vs. time curve &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Cyclic loading condition &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  appliedStress ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
External stress specified in units of Pa as [sigma11, sigma22, sigma33, sigma23,                                      sigma31, sigma12] when &amp;lt;loadType&amp;gt; == 0. Default is [0.0, 0.0, 0.0, 0.0, 0.0, 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eRate ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate.  Applicable only when &amp;lt;loadType&amp;gt; == 1.  Default is 1.0/sec.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  indxErate ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Index to indicate normal or shear deformation.  Used only when &amp;lt;loadType&amp;gt; == 1.                                      Valid values are:&lt;br /&gt;
#                                      normal&lt;br /&gt;
#                                      shear&lt;br /&gt;
If not specified, defaults to 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  edotdir ||align=&amp;quot;center&amp;quot;|     double[3]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Uniaxial loading direction accompanying &amp;lt;eRate&amp;gt;.  Default is [1.0 0.0 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cTimeOld ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Timestep related to cyclic loading. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Incremental strain under cyclic load. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  netCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Net accumulated strain under cyclic load.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numLoadCycle ||align=&amp;quot;center&amp;quot;|    integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Number of cyclic cycles.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eAmp ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain amplitude.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Material and mobility parameters: ===&lt;br /&gt;
&lt;br /&gt;
Note: Default values for all material and mobility related&lt;br /&gt;
parameters correspond to Tantalum at a temperature of &lt;br /&gt;
600 degress K and pressure of 0 GPa.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A7. Table for material and mobility parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  mobilityLaw ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by name the set of rules governing dislocation motion for the simulation conditions. Default                                      is &amp;quot;BCC_0&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  shearModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Shear modulus in units of Pa.  Default is 6.488424e+10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  pois ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Poisson ratio.  Default is 3.327533e-01&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  burgMag ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Magnitude of the burgers vector (b) in units of meters.  Default is 2.875401e-10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  YoungModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Young&#039;s modulus (in units of Pa). calculated from E = 2G(1+pois). Default is 200.0e+09.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rc ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core radius (in units of b) for self-force calculations.  No default value;                                      must be specified in control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ecore ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core energy used for self-force calculation.  Default is                                      (&amp;lt;shearModulus&amp;gt;/(4*PI)) * log(&amp;lt;rc&amp;gt;/0.1)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobScrew ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of screw dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobEdge ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of edge dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobClimb ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Climb mobility of dislocations in units of 1/(Pa*sec).  Default is 1.0e-02.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessileburgspec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of burgers vectors to be considered sessile.  First element of the                                      array contains the number of burgers vectors specified, the remaining elements                                      specify the X, Y, then Z components of each sessile burgers vector.  Maximum                                      sessile burgers vectors allowed is 9.  No burgers vectors are sessile by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessilelinespec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of line directions related to sessileburgspec.  First element is                                      ignored, remaining elements specify the X, Y, then Z components of each sessile                                      line.  The number of lines is assumed to be the same as the number of sessile                                      burgers vectors.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A8. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpSpn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic strain tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpStn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic spin tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totstraintensor ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate tensor with respect to global coordinate system.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ltot ||align=&amp;quot;center&amp;quot;|     double[4][4]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Decomposed density per burgers vector for screw and three edges (for BCC                                        slip systems only).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fluxtot  ||align=&amp;quot;center&amp;quot;|     double[4][7]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For each burgers vector (for BCC slip systems only), contains:&lt;br /&gt;
&amp;lt;table border = &amp;quot;0&amp;quot; cellpadding = &amp;quot;0&amp;quot; cellspacing = &amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  1.   &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to climb &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  2-4. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to edge components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  5-7. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to screw components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Velocity statistics: ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: these statistics will only be used if the VEL_STATISTICS pre-processor macro has been defined during compilation.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A9. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vAverage ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Average dislocation velocity.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vStDev ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Standard deviation of dislocation velocities.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== I/O controls and parameters ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: A number of the supported output forms are controlled by&lt;br /&gt;
very similar control parameters.  The general descriptions below&lt;br /&gt;
apply to all I/O control parameters of like names:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     *freq    Sets the frequency (in cycles) at which the associated data&lt;br /&gt;
              will be written to disk.  If the corresponding &amp;lt;*dt&amp;gt; parameter&lt;br /&gt;
              is greater than 0, this parameter will be ignored. &lt;br /&gt;
              Default for all such values is 100.&lt;br /&gt;
&lt;br /&gt;
     *dt      The *dt variables specify the simulation delta time that will&lt;br /&gt;
              control the frequency at which the associated output will be&lt;br /&gt;
              written to disk. A positive value is interpreted as a delta&lt;br /&gt;
              time and will take precedence over any frequency specified by&lt;br /&gt;
              the corresponding &amp;lt;*freq&amp;gt; value.  A value &amp;lt;= zero indicates&lt;br /&gt;
              write frequency will not be determined by delta times.&lt;br /&gt;
              Default value is -1.0.&lt;br /&gt;
&lt;br /&gt;
     *time    Specifies the simulation time at which the associated data&lt;br /&gt;
              was last written to disk.  This value will be automatically&lt;br /&gt;
              updated during the simulation.  If the corresponding &amp;lt;*dt&amp;gt;&lt;br /&gt;
              parameter is &amp;lt;= 0.0 this parameter will be ignored.&lt;br /&gt;
&lt;br /&gt;
     *counter Sequence number of the previously written file of the&lt;br /&gt;
              corresponding type.  Default is 0.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A10. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| dirname ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Base output directory name.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| skipIO ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle for disabling generation of all output types other than timing files.                                      Overrides output-specific toggles if set. Default is 0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| numIOGroups ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the number of groups into which the domains will be separated for doing                                      parallel IO.  All files generated in parallel will be created with this                                      number of segments.  This value must be at least one and no more than the total number of domains used.                                      default is 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files identifying each unique dislocation                                      segment.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilecounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiledt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilefreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiletime ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of flux decomposition files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxcounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxdt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|fluxtime ||align=&amp;quot;center&amp;quot;|   double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplot  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files formatted for use with gnuplot.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotcounter  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotfreq  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplottime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of &amp;lt;111&amp;gt; type burgers vector pole figures.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefilecounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigdt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigtime ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povray ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files with nodal data and domain                                      boundaries for use with povray.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraycounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraydt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povrayfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraytime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of postscript files containing nodal                                      data and domain boundaries.   Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiledt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfilefreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiletime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecn ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of restart files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecncounter ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecndt ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecnfreq ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecntime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveprop  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of various properties files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveproptime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimers  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of timing data files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerscounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerstime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savedensityspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the granularity of the 3D density field written to the density field file in X, Y and Z                                      dimensions.  If any element of this array is zero, this capability is                                      disabled.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplot  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      tecplot.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotcounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplottime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfile  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      the TeraScale Browser.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| writetsbspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilecounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiledt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfile  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files containing velocity data                                      for all nodes in the simulation.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilecounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiledt  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| winDefaultsFile  ||align=&amp;quot;center&amp;quot;|   string   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing default options and attributes for the X-window                                      display.  This is ignore if the X display support was not enabled at compile time.  Defaults to                                      &amp;quot;./inputs/paradis.xdefaults&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous parameters ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A11. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  elasticinteraction ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles between explicit calculation of elastic interaction and simple line                                      tension calculations.  Toggle is one (on) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TensionFactor ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor used for simple line tension force calculations when the                                      &amp;lt;elasticinteraction&amp;gt; parameter is zero. Default is 1.0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Under development ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A12. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TempK ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Simulation temperature (in Kelvin).  For use in FCC cross-slip.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| enforceGlidePlanes ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If non-zero, forces remesh, collision handling, etc. to use glide-plane                                      constraints.  Default is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| springConst ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For use with FCC_0 mobility&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_compute_escaig ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_cross_slip ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5617</id>
		<title>Overview of ParaDiS 2.2</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=Overview_of_ParaDiS_2.2&amp;diff=5617"/>
		<updated>2011-12-05T04:50:39Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* Simulation time and timestepping controls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is taken from ParaDiSInfo.txt in ParaDiS.v2.2 distribution.  Written by Gregg Hommes, LLNL.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
The Parallel Dislocation Simulator (ParaDiS) was written&lt;br /&gt;
and developed at LLNL by a team of physicists and computer&lt;br /&gt;
scientists.  ParaDiS is a code for doing Dislocation Dynamics&lt;br /&gt;
simulations and was specifically written to perform well on&lt;br /&gt;
massively parallel computers.  The computational approach to&lt;br /&gt;
Dislocation Dynamics used in ParaDiS is fairly simple.  In&lt;br /&gt;
it, one introduces dislocation lines into the computational&lt;br /&gt;
volume and lets them interact and move in response to the&lt;br /&gt;
forces imposed by external stress and inter-dislocation&lt;br /&gt;
interactions. &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Building ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
=== Directory Structure ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS release consists of a file which, when unzipped&lt;br /&gt;
and untarred creates a primary directory and a structure&lt;br /&gt;
of subdirectories.  For convenience, this primary directory&lt;br /&gt;
will hereafter be referred to as &amp;lt;ParadisDir&amp;gt;.  The directory&lt;br /&gt;
structure of the release will look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains primary &#039;make&#039; files for controlling build of all executables&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;This directory will be created during the &#039;make&#039; process. All executables will be placed in this directory during compilation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/docs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains any additional documentation&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/include/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Contains all C and C++ header files&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/inputs/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;FMM and non-FMM correction tables, X-display defaults file, gnuplot command file, etc.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/materials/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Sample files containing material specific tables and constants&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/src/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;All C and C++ source code modules related to the paradis executable&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/tools/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Miscellaneous support scripts&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/utilities/&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Source code modules pertaining to the various support tools&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling ===&lt;br /&gt;
&lt;br /&gt;
The current ParaDiS &#039;make&#039; files support compilation for&lt;br /&gt;
a number of pre-defined system types that are defined in&lt;br /&gt;
the file &#039;makefile.sys&#039;. In order to compile the code on&lt;br /&gt;
one of these pre-defined system types, simply edit&lt;br /&gt;
&#039;makefile.setup&#039; and set the &amp;quot;SYS=...&amp;quot; value to the&lt;br /&gt;
desired system type.  For other system types, add a new&lt;br /&gt;
system type into &#039;makefile.sys&#039; following the format used&lt;br /&gt;
for the existing systems and, as above, set the &amp;quot;SYS=...&amp;quot;&lt;br /&gt;
value in &#039;makefile.setup&#039;.&lt;br /&gt;
&lt;br /&gt;
Executing &#039;gmake&#039; with no options in &amp;lt;ParadisDir&amp;gt; will&lt;br /&gt;
build the following executables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradis&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Main parallel application&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisgen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating initial dislocation configurations (See [[#Utilities|Utilities]] section for  details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisrepart&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for generating a new domain decomposition for an existing dislocation configuration (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/paradisconvert&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for converting older format ParaDiS control parameter files to the current format (See [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating image correction tables needed when FMM code is enabled.  (See  [[#Utilities|Utilities]] section for details)&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/ctablegenp&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Parallel version of the ctablegen utility. See above.&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ParadisDir&amp;gt;/bin/stresstablegen&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Utility for creating tables used in calculating far-field stress if the FMM code is not enabled.  (See [[#Utilities|Utilities]] section for details)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Make files ===&lt;br /&gt;
&lt;br /&gt;
Compilation of the code is done via &#039;gmake&#039; and depends&lt;br /&gt;
on the following &#039;make&#039; files located in the &amp;lt;ParadisDir&amp;gt;&lt;br /&gt;
directory.  (See the individual make files for details)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This is the primary make file controlling the build of the parallel executable and associated utilities.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.sys&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- This file contains, for each supported system type, a set of &#039;make&#039; macros, definitions,  compiler selection, library and include file paths, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;makefile.setup&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-- Contains numerous &#039;make&#039; settings and flags that are not system specific, including settings for system type, optimization level, debugging flags, etc.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;         &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Executing ParaDiS ==&lt;br /&gt;
&lt;br /&gt;
===  Command line ===&lt;br /&gt;
&lt;br /&gt;
The ParaDiS command line format is:&lt;br /&gt;
&lt;br /&gt;
 paradis [-r &amp;lt;numCycles&amp;gt;] [-d dataFile] &amp;lt;controlFile&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;ctrlFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the ParaDiS control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-d &amp;lt;dataFile&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the base name of the file(s) containing the nodal data for the run. If this file name is not supplied, the code looks for a data file named the same as the control file with the file name suffix (if any) replaced with &amp;quot;.data&amp;quot;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;-r &amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;numCycles&amp;gt;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Causes the code to execute a series of &amp;lt;numCycles&amp;gt; cycles during which no force calculations or dislocation movement will occur. These cycles will be used strictly for load-balancing purposes and will be done before the normal cycles. This can be useful when a simulation is started with a uniform domain decomposition  and needs time to converge on an optimal decomposition as would occur when restarting a simulation on a different number of cpus&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
For example, the following are all valid execution lines with the&lt;br /&gt;
first two being equivalent, the third version using the same control&lt;br /&gt;
file as the first two, but explicitly selecting a different nodal&lt;br /&gt;
data file.&lt;br /&gt;
&lt;br /&gt;
For example, assuming you had a the control parameter file&lt;br /&gt;
&#039;testrun.ctrl&#039; and the two different nodal data files &#039;testrun.data&#039;&lt;br /&gt;
and &#039;testrun2.data&#039;, all of the following command lines formats&lt;br /&gt;
are valid.  The first two commands are equivalent, the third&lt;br /&gt;
uses the same control parameter file as the first two, but&lt;br /&gt;
explicitly selects a different nodal data file.&lt;br /&gt;
           &lt;br /&gt;
 mpirun -np 8 bin/paradis testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun.data testrun.ctrl&lt;br /&gt;
 mpirun -np 8 bin/paradis -d testrun2.data testrun.ctrl&lt;br /&gt;
&lt;br /&gt;
NOTE: The number of processors specified to mpirun (or other&lt;br /&gt;
parallel job initiator applicable to the execting system)&lt;br /&gt;
must match the number of domains specified in the control&lt;br /&gt;
file (i.e. np = numXdoms * numYdoms * numZdoms).&lt;br /&gt;
&lt;br /&gt;
Several small example problems are included with the&lt;br /&gt;
ParaDiS release.  The control and data files for these&lt;br /&gt;
examples are:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/frank_read_src.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/form_binaryjunc.data&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.ctrl&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/tests/fmm_8cpu.data&lt;br /&gt;
&lt;br /&gt;
NOTE: These tests require the following tables used&lt;br /&gt;
for calculating the far-field stresses from distant&lt;br /&gt;
cells and periodic images of the problem.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
 &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
These file *may* have been provided with the source&lt;br /&gt;
code release.  If not, see the README file in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tests directory for instructions on&lt;br /&gt;
generating these files.&lt;br /&gt;
&lt;br /&gt;
The &#039;form_binaryjunc*&#039; files contain a small configuration that&lt;br /&gt;
will demonstrate the formation of a binary junction from two&lt;br /&gt;
dislocation lines, while the &#039;frank_read_src*&#039; files contain a&lt;br /&gt;
configuration that demonstrates the behaviour of a frank-read&lt;br /&gt;
source.  Both these examples are single cpu examples.  To run&lt;br /&gt;
these tests, from the main &amp;lt;ParadisDir&amp;gt; directory execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/form_binaryjunc.ctrl&lt;br /&gt;
or&lt;br /&gt;
 mpirun -np 1 ./bin/paradis ./tests/frank_read_src.ctrl&lt;br /&gt;
          &lt;br /&gt;
The &#039;fmm_8cpu*&#039; files are just a general demonstration of the&lt;br /&gt;
behavior of a small number of screw dislocations.  This is&lt;br /&gt;
an 8 processor simulation using the Fast Multipole Method&lt;br /&gt;
(FMM) for calculating stress from far-field interactions.&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 ./bin/paradis ./tests/fmm_8cpu.ctrl&lt;br /&gt;
&lt;br /&gt;
Any output from these runs will be placed into corresponding&lt;br /&gt;
subdirectories under the &amp;quot;tests&amp;quot; directory.&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Inputs ==&lt;br /&gt;
&lt;br /&gt;
=== Input Files ===&lt;br /&gt;
&lt;br /&gt;
A ParaDiS simulation may be started from scratch, or &lt;br /&gt;
terminated and then later restarted if the user requested&lt;br /&gt;
periodic dumps of restart files.  In either case, the initial&lt;br /&gt;
or restart data data consists of two files, a control&lt;br /&gt;
parameter file and a nodal data file.  (See section on&lt;br /&gt;
[[#Output|Output]] for details on restart files)&lt;br /&gt;
&lt;br /&gt;
=== Control Parameter File ===&lt;br /&gt;
&lt;br /&gt;
The control parameter file consists of data of the form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = value&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt; &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&lt;br /&gt;
 identifier = [value_list]&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;or&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;  &lt;br /&gt;
 identifier = string&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
where&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;identifier&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is the name of a control parameter&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a numeric value associated with the parameter specified by &amp;lt;identifier&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;value_list&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a list of numeric values to be associated with the array specified by &amp;lt;identifier&amp;gt;. This values in this list must be delimited by white-space or line-feeds.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;string&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;a character string enclosed within either single or double quotes.  The string may not contain a line-feed character.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
        &lt;br /&gt;
The identifier names are case-insensitive and may be specified&lt;br /&gt;
as any mixture of upper and lower case.  If the code encounters&lt;br /&gt;
an identifier it does not recognize, the identifier and associated&lt;br /&gt;
value(s) will be ignore and a warning message displayed.&lt;br /&gt;
&lt;br /&gt;
Any blank lines in the control parameter file will will be&lt;br /&gt;
ignored and additionally, any &#039;#&#039; not contained within quotes&lt;br /&gt;
is treated as the beginning of a comment and causes the remainder&lt;br /&gt;
of the current line to be ignored.&lt;br /&gt;
&lt;br /&gt;
See the [[#Appendix 1. Control Parameters|Appendix]] for a complete list of the recognized control&lt;br /&gt;
parameters as well as a brief description of each.&lt;br /&gt;
&lt;br /&gt;
===  Nodal Data File ===&lt;br /&gt;
&lt;br /&gt;
==== Data File Format ====&lt;br /&gt;
&lt;br /&gt;
The nodal data will be contained in 1 or more file&lt;br /&gt;
segments, with the information being broken into&lt;br /&gt;
three sections (described below). The first section&lt;br /&gt;
is the data file parameters, the second section the&lt;br /&gt;
domain decomposition, and the third section the nodal&lt;br /&gt;
data.  The first two sections will be included only&lt;br /&gt;
in the first file segment.&lt;br /&gt;
&lt;br /&gt;
==== Data File Segments ====&lt;br /&gt;
&lt;br /&gt;
Given a control parameter file &#039;restart.cn&#039;, the&lt;br /&gt;
associated nodal data file(s) would be named:&lt;br /&gt;
&lt;br /&gt;
 restart.data[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where  &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when the nodal data was written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter was greater than 1). &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;      &lt;br /&gt;
    &lt;br /&gt;
For example, suppose the &amp;lt;numIOGroups&amp;gt; control parameter&lt;br /&gt;
was set to 4 during a simulation executed on 16 processors.&lt;br /&gt;
If the simulation created a restart file set at termination,&lt;br /&gt;
the following files would be generated and could be used&lt;br /&gt;
as input to continue the simulation at a later time:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.cn&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.0&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.1&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.2&lt;br /&gt;
 &amp;lt;outputDir&amp;gt;/restart/restart.data.3&lt;br /&gt;
&lt;br /&gt;
==== Data File Parameters ====&lt;br /&gt;
&lt;br /&gt;
The data file parameters make up the first section of&lt;br /&gt;
the nodal data file and are parsed in the same manner&lt;br /&gt;
as specified above for the control file parameters.&lt;br /&gt;
These parameters must preceed the other two types of&lt;br /&gt;
information in the nodal data file.  NOTE: The values&lt;br /&gt;
of these parameters are updated within the ParaDiS&lt;br /&gt;
code as necessary and should not be changed by the user.&lt;br /&gt;
&lt;br /&gt;
The recognized data file parameters are:&lt;br /&gt;
&lt;br /&gt;
:                     dataFileVersion&lt;br /&gt;
:                     numFileSegments&lt;br /&gt;
:                     minCoordinates&lt;br /&gt;
:                     maxCoordinates&lt;br /&gt;
:                     nodeCount&lt;br /&gt;
:                     dataDecompType&lt;br /&gt;
:                     dataDecompGeometry&lt;br /&gt;
&lt;br /&gt;
==== Domain Decomposition ====&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
==== Nodal Data ====&lt;br /&gt;
The raw nodal data comprises the third section&lt;br /&gt;
of the nodal data file.  For each node, there will&lt;br /&gt;
be a single line of node specific data followed by&lt;br /&gt;
several lines of segment specific data for each&lt;br /&gt;
segment associated with the node.  The nodal data&lt;br /&gt;
consists of:&lt;br /&gt;
&lt;br /&gt;
: node_tag x_coord y_coord z_coord num_arms constraint&lt;br /&gt;
&lt;br /&gt;
The segment specific data consists of:&lt;br /&gt;
&lt;br /&gt;
: nbr_tag burg_x burg_y, burg_z&lt;br /&gt;
: norm_x norm_y norm_z&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;*_tag&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a comma delimited pair of numbers uniquely identifying a node.  The first number is the ID of the domain owning the node, the second is the index number of the node within the owning domain.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;bottom&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;x_coord, y_coord, z_coord&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;coordinates of the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;num_arms&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Number of segments associated with the node&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;constraint&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Integer value indicating any constraints placed on the node (i.e.  a constraint of 7 implies a node fixed in place and unmovable)&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Cell and Domain Structure ==&lt;br /&gt;
&lt;br /&gt;
The ParaDiS code is used to simulate cubic systems which&lt;br /&gt;
are simultaneously partitioned into a uniform mesh of&lt;br /&gt;
cubic &#039;cells&#039; and spatially decomposed into &#039;domains&#039;.&lt;br /&gt;
&lt;br /&gt;
The cellular structure is defined by the &amp;lt;nXcells&amp;gt;, &amp;lt;nYcells&amp;gt;&lt;br /&gt;
and &amp;lt;nZcells&amp;gt; control parameters, and is used to determine&lt;br /&gt;
the cut-off distance between direct segment to segment&lt;br /&gt;
dislocation interactions and remote (or far-field) interactions.&lt;br /&gt;
In particular, for a given dislocation segment, the interaction&lt;br /&gt;
between the segment and any other segments in the same cell&lt;br /&gt;
or any of the immediately neighboring 26 cells are calculated&lt;br /&gt;
directly.  Interactions with all segments outside that range&lt;br /&gt;
are calculated via a hierarchical Fast Multipole Method or&lt;br /&gt;
by lumping all segments in the remote cell into a&lt;br /&gt;
&#039;super-dislocation&#039; where the group of remote dislocations&lt;br /&gt;
are represented as an expansion of dislocation multipoles.&lt;br /&gt;
(See [[#Far-Field Dislocation Interactions|section on Far-Field Forces]] for details)&lt;br /&gt;
&lt;br /&gt;
The type of spatial decomposition used for the simulation is&lt;br /&gt;
selected by the &amp;lt;decompType&amp;gt; control parameter, along with&lt;br /&gt;
the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt; and &amp;lt;nZdoms&amp;gt; parameters defining&lt;br /&gt;
the number of spatial domains in each dimension.  Each &#039;domain&#039;&lt;br /&gt;
is assigned to a single task (processor) within the simulation.&lt;br /&gt;
(See [[#Domain Decomposition 2|section on Domain Decomposition]] for details on the &lt;br /&gt;
supported types of spatial decomposition)&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Domain Decomposition ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Domain Decomposition Method ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS simulations are spatially decomposed into a number of&lt;br /&gt;
domains equal to the number of processors on which the simulation&lt;br /&gt;
is being executed.  The code curently supports two types of&lt;br /&gt;
domain decomposition and is selected via the &amp;lt;decompType&amp;gt;&lt;br /&gt;
control parameter.  The type 1 decomposition is a Recursive&lt;br /&gt;
Sectioning decomposition which is the default if no decomposition&lt;br /&gt;
type is explicitly requested.  The type 2 is a Recursive&lt;br /&gt;
Bisection decomposition.  (See descriptions of decomposition&lt;br /&gt;
algorithms below.)&lt;br /&gt;
&lt;br /&gt;
Since the ParaDiS simulations tend to grow in size and are&lt;br /&gt;
spatially heterogeneous, it is preferable to dynamically&lt;br /&gt;
recalculate the domain decomposition at intervals during the&lt;br /&gt;
simulation in order to rebalance the workload more efficiently.&lt;br /&gt;
The frequency with which the domain decomposition will be&lt;br /&gt;
recomputed is specified by the &amp;lt;DLBfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
The domain decomposition will be included in the restart files.&lt;br /&gt;
If the simulation is restarted and the &amp;lt;decompType&amp;gt; control&lt;br /&gt;
parameter selects a decomposition type *other* than the&lt;br /&gt;
decomposition that was used to generate the restart file, the&lt;br /&gt;
old domain decomposition from the restart file will be ignored&lt;br /&gt;
and a new domain decomposition of the selected type will be used.&lt;br /&gt;
&lt;br /&gt;
Additionally, if a simulation is restarted with a different number&lt;br /&gt;
of domains or a different domain geometry that that which was used&lt;br /&gt;
to create the restart file, the domain decomposition from the&lt;br /&gt;
restart file will be ignored and a new decomposition will be&lt;br /&gt;
generated.  &lt;br /&gt;
&lt;br /&gt;
Note: When restarting a large simulation (i.e. thousands&lt;br /&gt;
of processors) in such a way that the old domain decomposition must&lt;br /&gt;
be discarded, it may take some time for the simulation to converge&lt;br /&gt;
on an optimal domain decomposition. (The type 1 decomposition is&lt;br /&gt;
particularly susceptible to this.)  There are two ways to mitigate&lt;br /&gt;
this effect.  The first is to use the &#039;paradisrepart&#039; utility, the&lt;br /&gt;
second through the use of the &amp;quot;-r&amp;quot; command line option to ParaDiS.&lt;br /&gt;
See comments in other sections pertaining to these capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Sectioning ===&lt;br /&gt;
&lt;br /&gt;
The Recursive Sectioning algorithm performs a domain&lt;br /&gt;
decomposition over a 3-timestep period.  During the&lt;br /&gt;
first timestep, the entire problem space will be&lt;br /&gt;
sectioned along the X dimension into &amp;lt;nXdoms&amp;gt; slabs&lt;br /&gt;
such that the computational cost of each slab is roughly&lt;br /&gt;
equivalent.  The next timestep, each slab will be&lt;br /&gt;
sectioned alng the Y axis into &amp;lt;nYdoms&amp;gt; columns&lt;br /&gt;
such that the computational cost of each column in a&lt;br /&gt;
slab is roughly equivalent.  On the thrid timestep,&lt;br /&gt;
every column will be sectioned along the Z axis&lt;br /&gt;
into &amp;lt;nZdoms&amp;gt; chunks such that the computational&lt;br /&gt;
cost of each chunk in a column is roughy equivalent.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
third timestep.&lt;br /&gt;
&lt;br /&gt;
NOTE: Due to the fact that this algorithm requires 3&lt;br /&gt;
timesteps to complete a new decomposition, the&lt;br /&gt;
&amp;lt;DLBfreq&amp;gt; value must be no less than 3.&lt;br /&gt;
&lt;br /&gt;
=== Recursive Bisection ===&lt;br /&gt;
&lt;br /&gt;
WARNING: The implementation of this algorithm requires the&lt;br /&gt;
number of domains in each dimension (as specified&lt;br /&gt;
by the &amp;lt;nXdoms&amp;gt;, &amp;lt;nYdoms&amp;gt;, and &amp;lt;nZdoms&amp;gt; control&lt;br /&gt;
parameters) must be a power of 2.&lt;br /&gt;
&lt;br /&gt;
The Recursive Bisectioning algorithm begins with the entire&lt;br /&gt;
cubic problem space and bisects the space in the X, Y and/or&lt;br /&gt;
Z dimensions into octants quarters or halves (depending on&lt;br /&gt;
the number of domains specified per dimension) such that &lt;br /&gt;
computational cost of each subpartition is roughly the same.&lt;br /&gt;
The decomposition is then recursively applied to each of the&lt;br /&gt;
subpartitions until no further decomposition is necesssary.&lt;br /&gt;
&lt;br /&gt;
As stated above, the frequency with which the domain boundaries&lt;br /&gt;
will be recalulated is controlled by the &amp;lt;DLBfreq&amp;gt; parameter.&lt;br /&gt;
If this parameter is not explicity set, the default frequency&lt;br /&gt;
for recalculating this type of domain decomposition is every&lt;br /&gt;
timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Dislocation Mobility ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Mobility Module ===&lt;br /&gt;
&lt;br /&gt;
One of the crucial aspects of a ParaDiS simulation is the&lt;br /&gt;
selection of the set of rules governing the material specific&lt;br /&gt;
physics such as glide climb, and cross-slip with respect to&lt;br /&gt;
crystallographic constraints.  ParaDiS provides multiple sets&lt;br /&gt;
of rules or &amp;quot;mobility laws&amp;quot;, each implemented in a separate&lt;br /&gt;
module, that may be selected via the &amp;lt;mobilityLaw&amp;gt; control&lt;br /&gt;
file parameter.  The currently support modules are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;BCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;BCC_0b&amp;quot;&lt;br /&gt;
&lt;br /&gt;
There are additional modules for dealing with FCC type materials&lt;br /&gt;
however these are neither fully developed nor supported at this&lt;br /&gt;
point.  These FCC mobility functions are:&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;FCC_0&amp;quot;&lt;br /&gt;
: &amp;quot;FCC_2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
For a list of the control parameters related to the mobility&lt;br /&gt;
of dislocations, see the [[#Material and mobility parameters:|&amp;quot;Material and Mobility Parameters&amp;quot; section]] of the Appendix detailing the control file parameters.&lt;br /&gt;
Currently the default values of all mobility related parameters&lt;br /&gt;
correspond to tantalum at a temperature of 600 K and a&lt;br /&gt;
pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
=== BCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
In BCC metals, screw dislocations do not dissociate into partial&lt;br /&gt;
dislocations the same way they do in FCC metals, therefore, for&lt;br /&gt;
BCC crystals we do not assign glide plane normals to screw&lt;br /&gt;
dislocations.  Instead, screw dislocations are given the same&lt;br /&gt;
mobility in all directions perpendicular to the line.  This&lt;br /&gt;
isotropic mobility for screws mimics the &amp;quot;pencil-glide&amp;quot; behavior&lt;br /&gt;
of dislocations observed in BCC metals at elevated temperatures.&lt;br /&gt;
At the same time, the drag coefficient for non-screw segments&lt;br /&gt;
will remain anisotropic with respect to glide and climb.&lt;br /&gt;
&lt;br /&gt;
For details on this mobility module, refer to the paper:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/Docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== BCC_0b Mobility: ===&lt;br /&gt;
&lt;br /&gt;
The BCC_0b mobility module is nearly a duplicate of BCC_0 with&lt;br /&gt;
the exception that the movement of discretization nodes along&lt;br /&gt;
the dislocation lines has been dampened.&lt;br /&gt;
&lt;br /&gt;
=== TBD ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FCC_0 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
This module attempts to simulate easy glide in FCC systems.  The&lt;br /&gt;
glide plane is limited to one of the [111] planes, and cross-slip&lt;br /&gt;
is not permitted.  Also, no crystallographic information is&lt;br /&gt;
used in the dislocation core reactions and hence junction formation&lt;br /&gt;
can take place even slightly off the zone axis.&lt;br /&gt;
&lt;br /&gt;
Reminder:  This mobility module is not fully developed or supported.&lt;br /&gt;
&lt;br /&gt;
=== FCC_2 Mobility: ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Material Properties ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Specifying Material Properties ===&lt;br /&gt;
&lt;br /&gt;
All material specific properties are set via the control&lt;br /&gt;
file parameters.  If not specified, defaults will correspond&lt;br /&gt;
to tantalum at a temperatue of 300 K and pressure of 0GPa.&lt;br /&gt;
&lt;br /&gt;
See the [[#Material and mobility parameters:|&amp;quot;Material and mobility parameters&amp;quot; section]] of &lt;br /&gt;
Appendix 1 for a list of the material related parameters.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Far-Field Dislocation Interactions ==&lt;br /&gt;
&lt;br /&gt;
=== Fast Multipole for Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The FMM algorithm is enabled within the code via the &amp;lt;fmEnabled&amp;gt;&lt;br /&gt;
toggle in the control file.  The order of the multipole and&lt;br /&gt;
Taylor expansions used by the FMM algorithm are set via the&lt;br /&gt;
&amp;lt;fmMPOrder&amp;gt; and &amp;lt;fmTaylorOrder&amp;gt; control parameters respectively.&lt;br /&gt;
As a general rule, the taylor expansion order should be around&lt;br /&gt;
twice that of the multipole expansion order.  One additional&lt;br /&gt;
control parameter [[#FMM controls|&amp;lt;fmCorrectionTbl&amp;gt;]] specifies the name of the&lt;br /&gt;
file containing the table used by the FMM code to adjust the&lt;br /&gt;
stress calculated by the FMM for multiple periodic images.&lt;br /&gt;
&lt;br /&gt;
It is important to note that the file indicated by &amp;lt;fmCorrectionTbl&amp;gt;&lt;br /&gt;
must be built with the same multipole order, Taylor expansion order,&lt;br /&gt;
and Poisson value (&amp;lt;pois&amp;gt; control parameter) specified for a&lt;br /&gt;
simulation.  An appropriate correction table may be generated&lt;br /&gt;
via the &#039;ctablegen&#039; utility (See the section on Utilities for&lt;br /&gt;
details on the use of &#039;ctablegen&#039;), although a correction table&lt;br /&gt;
matching the code&#039;s default control parameter settings *may* have&lt;br /&gt;
been provided in the code release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/fm-ctab.Ta.600k.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The use of a Fast Multipole Method (FMM) for calculating the&lt;br /&gt;
far-field forces is based on formulae for generating and evaluating&lt;br /&gt;
multipole expansions and a few translation theorems.  A very&lt;br /&gt;
general description can be found below, but for details refer&lt;br /&gt;
to the following paper included with the source release.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The general FMM algorithm consists of the following steps:&lt;br /&gt;
&lt;br /&gt;
# Construct multipole moments: &lt;br /&gt;
#: Each domain (CPU) calculates the contributions of its dislocation segments to the  multipole moments of the FMM subcells to which those segments belong, and communicates those contributions to the domain that owns the FMM subcell. Each domain that owns an FMM subcell sums all the contributions for that subcell together. &amp;lt;bf&amp;gt;&lt;br /&gt;
# Upward pass: &lt;br /&gt;
#: Starting at the lowest layer of the FMM hierarchy, each domain collects and sums the contributions to the multipole moments for each of the FMM subcells it owns from the eight child cells and the calculates the upward pass translation of its multipole moments and communicates the result to the domain owing the subcell&#039;s parent, until the top of the hierarchy is reached.&lt;br /&gt;
# Transverse translations:&lt;br /&gt;
#: The multipole moments from 189 cells that are outside the nearest neighbor distance of the target cell but inside the nearest neaighbor distance of its parent are collected by the domain owning the target cell and their contributions to the Taylor series expansion of the stress filed in target is calculated.&lt;br /&gt;
# PBC correction: &lt;br /&gt;
#: The domain that owns the FMM cell at the highest level of the FMM hierarchy calculates the Taylor                series expansion of the stress state due to periodic images of the system (using [[#FMM controls|table]] specified in the &amp;lt;fmCorrectionTbl&amp;gt; parameter).&lt;br /&gt;
# Downward pass: &lt;br /&gt;
#: Starting with the highest level of the FMM hierarchy, each domain that owns an FMM subcell sums the               contributions from its parent to its Taylor series expansion of the stress from step 3 and then calculates the downward pass translation of the stress for each one of its child cells and sends the results to the domain owning the child subcells until the bottom of the hierarchy is reached.&lt;br /&gt;
# Each domain that owns a subcell at the lowest level of the FMM hierarchy communicates the Taylor series expansions of the stress field to the domains intersecting the subcell.&lt;br /&gt;
&lt;br /&gt;
=== Non-FMM Far-Field Interactions ===&lt;br /&gt;
&lt;br /&gt;
The use of the FMM in ParaDiS can be disable by setting the control&lt;br /&gt;
parameter &amp;lt;fmEnabled&amp;gt; to 0.  When FMM is disabled, ParaDiS requires&lt;br /&gt;
additional tables used to factor in the far-field stresses from&lt;br /&gt;
distant cells and periodic images of the system.  The names of the&lt;br /&gt;
files containing the tables are specified via the &amp;lt;Rijmfile&amp;gt; and&lt;br /&gt;
&amp;lt;RijmPBCfile&amp;gt; control parameters.  These tables can be generated&lt;br /&gt;
using the &#039;stresstablegen&#039; utility (see [[#Creating Far-Field Stress Tables with &#039;stresstablegen&#039;|Utilities section]] for&lt;br /&gt;
details), although copies *may* have been provided in the code&lt;br /&gt;
release as:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/Rijm.cube.out&lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
This method essentially lumps all dislocations in a cell into a &lt;br /&gt;
&#039;super-dislocation&#039; where the cell&#039;s dislocations are represented&lt;br /&gt;
as an expansion of the dislocation multipoles.  The remote stress&lt;br /&gt;
for a segment in a given cell is then calculated from two&lt;br /&gt;
components.  The first is the sum of the stresses resulting from&lt;br /&gt;
expansions from all remote cells (i.e. neither the current cell&lt;br /&gt;
nor any of its 26 immediate neighbors) and the stress from all&lt;br /&gt;
periodic images of those remote cells.  The second component&lt;br /&gt;
consists of the stress from only the periodic images of the local&lt;br /&gt;
cells (i.e. the current cell and its immediate neighbors).&lt;br /&gt;
&lt;br /&gt;
This method is can be faster for smaller simulations but unlike&lt;br /&gt;
the FMM, its performance does not scale well as the size of&lt;br /&gt;
a simulation increases in both dislocation density and number&lt;br /&gt;
of cells.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Discretization (Remesh) ==&lt;br /&gt;
&lt;br /&gt;
=== Selecting a Discretization Method ===&lt;br /&gt;
&lt;br /&gt;
The nature of DD simulations is such that the total length&lt;br /&gt;
of dislocation lines can increase several orders of magnitude.&lt;br /&gt;
Hence, rediscretization of the dislocations is an absolutely necessary&lt;br /&gt;
components of ParaDiS simulations.  The goal of the rediscretization&lt;br /&gt;
is to optimize the numerical description of the continuous dsilocation&lt;br /&gt;
line geometry so that a given level of accuracy is achieved with the&lt;br /&gt;
fewest degrees of freedom.  For regions of high curvature, an optimal&lt;br /&gt;
distribution of nodes will place nodes more closely together than&lt;br /&gt;
in regions of lower curvature.&lt;br /&gt;
&lt;br /&gt;
The level of accuracy is tied to the control parameters &amp;lt;maxSeg&amp;gt;&lt;br /&gt;
and &amp;lt;minSeg&amp;gt; which define the maximum and minimum segment lengths (in&lt;br /&gt;
units of b) respectively.  The smaller the maximum segment length, the&lt;br /&gt;
higher the accuracy.&lt;br /&gt;
&lt;br /&gt;
A number of rediscretization version have been developed and&lt;br /&gt;
tested, although only versions 2 and 3 are currently supported.&lt;br /&gt;
The rediscretization version to use can be selected through&lt;br /&gt;
the control parameter &amp;lt;remeshRule&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 2 ===&lt;br /&gt;
&lt;br /&gt;
This method achieves rediscrtization through two types of&lt;br /&gt;
operations; mesh coarsening and mesh refinement (removing and&lt;br /&gt;
adding discretization nodes respectively).&lt;br /&gt;
&lt;br /&gt;
This involved defining both minimum and maximum discretization areas&lt;br /&gt;
(A_min and A_max) based on the simulation minimum and maximum&lt;br /&gt;
segment lengths &amp;lt;minSeg&amp;gt; and &amp;lt;maxSeg&amp;gt;.  Then for each discretization&lt;br /&gt;
node (i.e. a node with no more than two associated segments) a&lt;br /&gt;
discretization area (A_node) is calculated.  This area is defined&lt;br /&gt;
as the triangle with vertices at the node and its two neighbors.&lt;br /&gt;
When the discretization area associated with a node A_node &amp;lt; A_min&lt;br /&gt;
the node is removed (coarsened out).  Conversely, if the area&lt;br /&gt;
A_node &amp;gt; A_max, the local discretization is refined by bisecting&lt;br /&gt;
both segments attached to the node.&lt;br /&gt;
&lt;br /&gt;
For additional information, refer to the following paper included&lt;br /&gt;
with the ParaDiS source release:&lt;br /&gt;
 &lt;br /&gt;
: &amp;lt;ParadisDir&amp;gt;/docs/ParaDiSAlgorithm.pdf&lt;br /&gt;
&lt;br /&gt;
=== Remesh Version 3 ===&lt;br /&gt;
&lt;br /&gt;
This rediscretization method is identical to type 2 with&lt;br /&gt;
the exception that during mesh refinement the inserted&lt;br /&gt;
nodes are not placed at the exact center of the segment&lt;br /&gt;
being bisected.  Instead, the algorithm treats the three&lt;br /&gt;
initial nodes as if they were on an arc and places the&lt;br /&gt;
new nodes at the center of the segments of the arc.&lt;br /&gt;
&lt;br /&gt;
The rationale behind this is that in simulations using&lt;br /&gt;
long segments and/or high stress, a new node added at the&lt;br /&gt;
center of a segment in a region of high curvature will&lt;br /&gt;
not be optimally placed.  This new node may immediately&lt;br /&gt;
accelerate quickly toward its optimal position then&lt;br /&gt;
decelerate as it nears that position.  This behavior&lt;br /&gt;
can severly impact the simulatuion timesteps.  By placing&lt;br /&gt;
the new nodes on an arc, the initial stress on the new&lt;br /&gt;
nodes will not be as high, keeping the motion of the node&lt;br /&gt;
similar to that of the surrounding nodes.  Hence, no&lt;br /&gt;
detrimental effects on the timestep.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Simulation Timestepping ==&lt;br /&gt;
&lt;br /&gt;
=== Timestep Controls ===&lt;br /&gt;
&lt;br /&gt;
Two timestepping algorithms are provided in the ParaDiS code.&lt;br /&gt;
The &amp;lt;timestepIntegrator&amp;gt; control parameter is used to select&lt;br /&gt;
the desired algorithm.  The currently supported algorithms&lt;br /&gt;
are:&lt;br /&gt;
&lt;br /&gt;
:              &amp;quot;trapezoid&amp;quot;&lt;br /&gt;
:              &amp;quot;forward-euler&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The default timestep integrator is the &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
There are several general control parameters used in conjunction&lt;br /&gt;
with any selected timestep intergrator, and several that are unique&lt;br /&gt;
to specific integrators.  The general control parameters are&lt;br /&gt;
&amp;lt;deltaTT&amp;gt; which specifies the duration of the previous timestep,&lt;br /&gt;
&amp;lt;nextDT&amp;gt; which indicates the desired timestep to attempt the next&lt;br /&gt;
timestep, and &amp;lt;maxDT&amp;gt; which specifies the maximum timestep duration&lt;br /&gt;
permitted.&lt;br /&gt;
&lt;br /&gt;
=== Timestep Integrators ===&lt;br /&gt;
&lt;br /&gt;
==== Trapezoid ====&lt;br /&gt;
&lt;br /&gt;
This implicit integrator is a mix of the Euler-Forward and&lt;br /&gt;
Euler-Backward methods.  This method is unconditionally&lt;br /&gt;
stable, but requires an iterative process that may involve&lt;br /&gt;
multiple nodal force and velocity calculations.  The&lt;br /&gt;
additional expense of the multiple calculations, however,&lt;br /&gt;
is usually offset by the gains from the larger timesteps&lt;br /&gt;
compared to explicit methods such as the forward euler&lt;br /&gt;
integrator.&lt;br /&gt;
&lt;br /&gt;
The algorithm uses the current nodal velocities to reposition&lt;br /&gt;
each node, then recalculates forces and velocities for the&lt;br /&gt;
nodes at their new positions.  A positioning &#039;error&#039; is&lt;br /&gt;
calculated for each node based on the current and previous&lt;br /&gt;
nodal position and velocity.  If the positioning error of&lt;br /&gt;
any node is greater than the maximum permitted positioning&lt;br /&gt;
error as defined by the &amp;lt;rTol&amp;gt; control parameter, the&lt;br /&gt;
timestep will be decremented by a factor specified in the&lt;br /&gt;
&amp;lt;dtDecrementFact&amp;gt; control parameter and the process starts&lt;br /&gt;
again.  On the otehr hand, if the positioning error of all&lt;br /&gt;
nodes is within the tolerance, the timestep is accepted&lt;br /&gt;
and the current timestep is multipled by the factor in the&lt;br /&gt;
&amp;lt;dtIncrementFactor&amp;gt; to be used as the initial timestep to&lt;br /&gt;
attempt the next cycle.&lt;br /&gt;
&lt;br /&gt;
==== Forward Euler ====&lt;br /&gt;
&lt;br /&gt;
The forward euler timestep integrator is relatively simple&lt;br /&gt;
and inexpensive in that it requires only a single calculation&lt;br /&gt;
of nodal force and velocities per timestep.  Unfortunately,&lt;br /&gt;
the algorithm is subject to the Courant condition for&lt;br /&gt;
numerical stability and is limited to relatively small&lt;br /&gt;
timesteps.  The size of the timestep is controlled by the&lt;br /&gt;
ratio between the length of the shortest segment and the&lt;br /&gt;
velocity of the fastest moving node.  Additionally, the&lt;br /&gt;
&amp;lt;rmax&amp;gt; control parameter defines the maximum distance&lt;br /&gt;
any node is permitted to move in a single timestep, which&lt;br /&gt;
further limits the timestep duration.  This &#039;rmax&#039; distance&lt;br /&gt;
should be set such that no dislocation segment crosses&lt;br /&gt;
multiple simulation cells in a single timestep.&lt;br /&gt;
&lt;br /&gt;
Note: This timestep integrator is NOT recommended.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
=== X-window display ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ParaDiS provides a simple X-window display capability for&lt;br /&gt;
visualization and debugging of small scale simulations as well&lt;br /&gt;
as obtaining certain types of nodal data via the display window.&lt;br /&gt;
&lt;br /&gt;
Unlike some of the other visualization capabilities, this one &lt;br /&gt;
must be enabled/disabled via the compile time flag &amp;quot;XLIB_MODE&amp;quot;&lt;br /&gt;
in the file &amp;lt;ParadisDir&amp;gt;/makefile.setup.  The X-window support&lt;br /&gt;
is enabled by setting:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = ON&lt;br /&gt;
&lt;br /&gt;
and disabled by:&lt;br /&gt;
&lt;br /&gt;
:              XLIB_MODE = OFF&lt;br /&gt;
&lt;br /&gt;
The default behavior is to have the X-window support enabled.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;winDefaultsFile&amp;gt; control parameter can be used to specify default&lt;br /&gt;
visualization options and attributes such as view perspective, colors&lt;br /&gt;
and so on.  Unless otherwise specified, this control parameter will&lt;br /&gt;
point to the following defaults file provided with the source release:&lt;br /&gt;
&lt;br /&gt;
:             &amp;lt;ParadisDir&amp;gt;/inputs/paradis.xdefaults&lt;br /&gt;
&lt;br /&gt;
Once the X-window display is initiated, the view can be controlled&lt;br /&gt;
through the following single-key commands:&lt;br /&gt;
&lt;br /&gt;
          Key            Command Description&lt;br /&gt;
          ---            -------------------&lt;br /&gt;
          &amp;lt;Home&amp;gt;         Restores image to default view&lt;br /&gt;
          &amp;lt;Esc&amp;gt;          Terminates X-window display without terminating&lt;br /&gt;
                         the simulation&lt;br /&gt;
          a              Enable/disable aspect ratio changes.  When enabled,&lt;br /&gt;
                         the Arrow keys alter the aspect ratio&lt;br /&gt;
          c              Enable/disable slice view of image.  When enabled,&lt;br /&gt;
                         Up/Down Arrows control slice position, Left/Right&lt;br /&gt;
                         Arrows control slice thickness.&lt;br /&gt;
          f              Turn display frame on/off&lt;br /&gt;
          p              Pause/restart simulation&lt;br /&gt;
          r              Enable image rotation.  When enabled, rotation can&lt;br /&gt;
                         be controlled via the mouse or Arrow keys.&lt;br /&gt;
          s              Enable display scaling.  When enabled, the Arrow&lt;br /&gt;
                         keys control scaling size.&lt;br /&gt;
          t              Enable image translation.  When enable,&lt;br /&gt;
                         the Arrow keys control translation direction.&lt;br /&gt;
          &amp;lt;F10&amp;gt;          Generate a postscript image of the display window.&lt;br /&gt;
                         File will be called &amp;lt;outputDir&amp;gt;/YshotNNNN where&lt;br /&gt;
                        &#039;NNNN&#039; is a sequence number incremented each time&lt;br /&gt;
                         a dump of the display window is generated and&lt;br /&gt;
                         &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
                         &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Additionally, clicking the mouse on a nodal point in the X-window&lt;br /&gt;
image will cause the following information to be written to the&lt;br /&gt;
terminal device (not the X-window display):&lt;br /&gt;
&lt;br /&gt;
* relative position (x,y) on the X-window display&lt;br /&gt;
* node ID (domainID,nodeindex)&lt;br /&gt;
* number of segments (arms) associated with the node&lt;br /&gt;
* simulation coordinates (x,y,z) of the node&lt;br /&gt;
&lt;br /&gt;
=== Gnuplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the gnuplot visualization package.  This capability is&lt;br /&gt;
enabled via the &amp;lt;gnuplot&amp;gt; toggle in the control parameter file.&lt;br /&gt;
The frequency with which gnuplot files will be generated is&lt;br /&gt;
controlled by the settings of the &amp;lt;gnuplotfreq&amp;gt; and &amp;lt;gnuplotdt&amp;gt;&lt;br /&gt;
parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of gnuplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/gnuplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/box.in&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/0tNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a gnuplot file set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when gnuplot files are being written in parallel (i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                      &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of gnuplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/gnuplot/gnuplot.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The &#039;box.in&#039; data file will contain data for plotting the boundaries&lt;br /&gt;
of the simulation space, while the &#039;0t*&#039; files contain the coordinate&lt;br /&gt;
pairs defining each unique dislocation segment.&lt;br /&gt;
&lt;br /&gt;
NOTE: When gnuplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  These file segments&lt;br /&gt;
can be combined into a single file for display in gnuplot&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of&lt;br /&gt;
[[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
To aid in visualizing the dislocation configuration, a file&lt;br /&gt;
containing commands to set some useful gnuplot options has&lt;br /&gt;
been provided;  This file is located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.cmds&lt;br /&gt;
&lt;br /&gt;
For example, to view the dislocation structure contained in the&lt;br /&gt;
gnuplot data file 0t0001 you could start gnuplot interactively&lt;br /&gt;
and execute the commands:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.defaults&#039;&lt;br /&gt;
 gnuplot&amp;gt; splot &#039;box.in&#039; with lines, &#039;0t0001&#039; w lines&lt;br /&gt;
&lt;br /&gt;
A second gnuplot command file has been provided as an example&lt;br /&gt;
of displaying a sequence of gnuplot files.  This file is&lt;br /&gt;
located at:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&lt;br /&gt;
&lt;br /&gt;
This file has the neccesary commands to plot the sequence&lt;br /&gt;
of files beginning with 0t0001 and ending with 0t1000.  After&lt;br /&gt;
starting gnuplot, simply load this file with:&lt;br /&gt;
&lt;br /&gt;
 gnuplot&amp;gt; load &#039;&amp;lt;ParadisDir&amp;gt;/inputs/gnuplot.movie&#039;&lt;br /&gt;
&lt;br /&gt;
This will initiate the plot of the first file, and thereafter,&lt;br /&gt;
simply hitting return will cause gnuplot to move to the next&lt;br /&gt;
file in the sequence.&lt;br /&gt;
&lt;br /&gt;
For details on using gnuplot, refer to the gnuplot manual or&lt;br /&gt;
enter &#039;help&#039; from the gnuplot interactive prompt.&lt;br /&gt;
&lt;br /&gt;
=== Tecplot ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS is capable of producing output files formatted for use&lt;br /&gt;
with the commercial visualization package Tecplot.  This&lt;br /&gt;
capability is enabled via the &amp;lt;tecplot&amp;gt; toggle in the control&lt;br /&gt;
parameter file.  The frequency with which tecplot files will&lt;br /&gt;
be generated is controlled by the settings of the &amp;lt;tecplotfreq&amp;gt;&lt;br /&gt;
and &amp;lt;tecplotdt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of tecplot output files in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/tecplot where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.  The&lt;br /&gt;
naming convention used for these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdataNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a tecplot file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when tecplot files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;                   &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of tecplot&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/tecplot/tecdata.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
The generated tecplot output has specific headers to assign the&lt;br /&gt;
variables and time frames (zones) and should look something like&lt;br /&gt;
this:&lt;br /&gt;
&lt;br /&gt;
          ...&lt;br /&gt;
          variables = X,Y,Z,V1,V2,V3,V4,V5,V6,V7,V8&lt;br /&gt;
          zone i = 54  F=POINT&lt;br /&gt;
          -4000.0  500.0  6000.0  133.1  612.4 -612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          -3866.9 1112.4  5387.7 -133.1 -612.4  612.3 0.0000  0.0000 0.0000 1 3&lt;br /&gt;
          471.0  -5132.6 11632.3 -1712.7 -48.8  48.9  0.0090 -0.0918 0.0918 2 3&lt;br /&gt;
          ...&lt;br /&gt;
&lt;br /&gt;
The first line defines the variables to reconstruct the dislocation&lt;br /&gt;
configuration.  X Y and Z specify the nodal coordinates,  V1 V2 and&lt;br /&gt;
V3 define arm vectors to the neighboring nodes.  These 6 variable&lt;br /&gt;
are used to represent dislocation segments as combinations of points&lt;br /&gt;
and vectors in tecplot.  The V4 V5 and V6 represent the nodal velocity&lt;br /&gt;
vector, V7 indicates the number of segments associated with the node&lt;br /&gt;
and V8 indicates a burgers vector type.&lt;br /&gt;
&lt;br /&gt;
NOTE: When tecplot data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the headers will only be&lt;br /&gt;
included in the first file segment with the remainder of the data&lt;br /&gt;
spread over the file segments.  These file segments can be combined&lt;br /&gt;
into a single file for display in tecplot via the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description of [[#stitch|&#039;stitch&#039;]]&lt;br /&gt;
tool for details.)&lt;br /&gt;
&lt;br /&gt;
For details on using tecplot, refer to the tecplot manual or select&lt;br /&gt;
the &#039;Help&#039; menu in tecplot.&lt;br /&gt;
&lt;br /&gt;
=== Povray ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;povray&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate files containing&lt;br /&gt;
dislocation segment data formatted for use with the POVRAY&lt;br /&gt;
(Persistence of Vision(tm) Ray Tracer) tool.  The frequency&lt;br /&gt;
with which these files will be generated is controlled by&lt;br /&gt;
the settings of the &amp;lt;povrayfreq&amp;gt; and &amp;lt;povraydt&amp;gt; parameters.&lt;br /&gt;
&lt;br /&gt;
Note:  These files contain the main data to be processed by&lt;br /&gt;
povray, but must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools)&lt;br /&gt;
which will create the final povray input file&lt;br /&gt;
containing the segment data embedded within a &lt;br /&gt;
proper framework of povray settings and commands.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will periodically&lt;br /&gt;
create a set of files in the directory &amp;lt;outputDir&amp;gt;/povray&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.  The naming convention used for&lt;br /&gt;
these files is:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povframeNNNN[.SEQ] &lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a povray frame file                          set is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when povray files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
In addition, at program termination, an extra set of povray&lt;br /&gt;
frame files will be created.  This set will be generated&lt;br /&gt;
regardless of the specified dump frequency in order to provide&lt;br /&gt;
an image of the final configuration. This set will be named&lt;br /&gt;
with the slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/povray/povray.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When povray data is being written in parallel&lt;br /&gt;
(i.e. &amp;lt;numIOGroups&amp;gt; is larger than 1), the dislocation segment&lt;br /&gt;
data is spread over the file segments.  If desired, these file&lt;br /&gt;
segments may be combined into a single file for post-processing&lt;br /&gt;
via the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See description&lt;br /&gt;
of [[#stitch|&#039;stitch&#039;]] tool for details.)&lt;br /&gt;
&lt;br /&gt;
As stated above, these files must be post-processed via the&lt;br /&gt;
&#039;genPovrayFrames&#039; tool (See [[#genPovrayFrames|section]] on Tools) which will&lt;br /&gt;
create the final povray input file containing the segment&lt;br /&gt;
data embedded within a proper framework of povray settings&lt;br /&gt;
and commands.  This tool is capable of dealing with single&lt;br /&gt;
or segmented &#039;povframe*&#039; files.&lt;br /&gt;
&lt;br /&gt;
For details on using povray, refer to the povray manual.&lt;br /&gt;
&lt;br /&gt;
=== Terascale Browser ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Postscript ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;psfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a postscript file&lt;br /&gt;
containing an image of the current state of the system.&lt;br /&gt;
The frequency with which the postscript files are&lt;br /&gt;
written is determined by the settings of the&lt;br /&gt;
&amp;lt;psfilefreq&amp;gt; and &amp;lt;psfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/YshotNNNN.ps&lt;br /&gt;
&lt;br /&gt;
where NNNN is a sequence number beginning with zero and incremented&lt;br /&gt;
each time another postscript file is written.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Output ==&lt;br /&gt;
&lt;br /&gt;
=== Restart files ===&lt;br /&gt;
&lt;br /&gt;
Periodic creation of ParaDiS restart files is enabled via&lt;br /&gt;
the &amp;lt;savecn&amp;gt; toggle in the control file.  The frequency with&lt;br /&gt;
which restart files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;savecnfreq&amp;gt; and &amp;lt;savecndt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When enabled, the code will periodically generate restart&lt;br /&gt;
file which will be located in the directory &amp;lt;outputDir&amp;gt;/restart&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the &amp;lt;dirname&amp;gt;&lt;br /&gt;
control file parameter.&lt;br /&gt;
           &lt;br /&gt;
The naming convention used for these restart files is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# control parameter file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;lt;outputDir&amp;gt;/restart/rsNNNN.data[.SEQ]&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;# nodal data file&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number begining at &#039;0001&#039; and incremented each time a restart file set is                          written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when restart files are being written in parallel (i.e. the                          &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1) &amp;lt;SEQ&amp;gt; will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Each time a restart file set is written, the name of the&lt;br /&gt;
control parameter file will also be written into the file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/latest_restart&lt;br /&gt;
&lt;br /&gt;
Additionally, when creation of restart files is enabled, an&lt;br /&gt;
additional restart file pair named &#039;restart.cn&#039; and restart.data&#039;&lt;br /&gt;
will be written at program termination even if the cycle is not&lt;br /&gt;
a multiple of the &amp;lt;savecnfreq&amp;gt; control parameter.&lt;br /&gt;
&lt;br /&gt;
=== Property Outputs ===&lt;br /&gt;
&lt;br /&gt;
==== Enabling Properties Output ====&lt;br /&gt;
&lt;br /&gt;
The code has the capability to produce files containing&lt;br /&gt;
various dislocation properties.  This capability is enabled&lt;br /&gt;
via the &amp;lt;saveprop&amp;gt; toggle in the control file.  The&lt;br /&gt;
frequency with which the property data is written is&lt;br /&gt;
determined by the settings of the &amp;lt;savepropfreq&amp;gt; and&lt;br /&gt;
&amp;lt;savepropdt&amp;gt; control file parameters. &lt;br /&gt;
&lt;br /&gt;
When this capability is enabled, the code will generate &lt;br /&gt;
and periodically append the properties data to one or more of&lt;br /&gt;
the following files which will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/properties, where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
==== Property Files ====&lt;br /&gt;
&lt;br /&gt;
===== density =====&lt;br /&gt;
&lt;br /&gt;
Note: burgVolFactor converts from length in units of B, to density&lt;br /&gt;
in units of meters&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This file contains the following columns of data:&lt;br /&gt;
&lt;br /&gt;
#   plastic strain&lt;br /&gt;
#   strain&lt;br /&gt;
#   dislocation density&lt;br /&gt;
#   deleted dislocation density &lt;br /&gt;
#: (lost through annihilation, junction formation, etc) &lt;br /&gt;
#: (density lost since last dump of data)&lt;br /&gt;
#   average dislocation velocity&amp;amp;#8225;&lt;br /&gt;
#   std. deviation of dislocation velocities&amp;amp;#8225;&lt;br /&gt;
#   density file version number&lt;br /&gt;
#   dislocation density for segments of specific groupings of burgers vectors (see below)*&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; These items will be calculated only if&lt;br /&gt;
the &amp;quot;VEL_STATISTICS&amp;quot; pre-processor macro was&lt;br /&gt;
defined during compilation.  Otherwise these&lt;br /&gt;
values will be zeroes.&lt;br /&gt;
&lt;br /&gt;
For BCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 1] [-1-1-1]&lt;br /&gt;
                          9         [-1 1 1] [ 1-1-1]&lt;br /&gt;
                          10        [ 1-1 1] [-1 1-1]&lt;br /&gt;
                          11        [ 1 1-1] [-1-1 1]&lt;br /&gt;
                          12        [ 1 0 0] [-1 0 0] [ 0 1 0]&lt;br /&gt;
                                    [ 0-1 0] [ 0 0 1] [ 0 0-1]&lt;br /&gt;
&lt;br /&gt;
For FCC simulations:&lt;br /&gt;
                        Column     Burgers vector types&lt;br /&gt;
                          8         [ 1 1 0] [-1-1 0]&lt;br /&gt;
                          9         [-1 1 0] [ 1-1 0]&lt;br /&gt;
                          10        [ 1 0 1] [-1 0-1]&lt;br /&gt;
                          11        [-1 0 1] [ 1 0-1]&lt;br /&gt;
                          12        [ 0 1 1] [ 0-1-1]&lt;br /&gt;
                          13        [ 0-1 1] [ 0 1-1]&lt;br /&gt;
                          14        all others&lt;br /&gt;
&lt;br /&gt;
===== time_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following two columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain&lt;br /&gt;
&lt;br /&gt;
===== stress_Plastic_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  The file contains the following two columns&lt;br /&gt;
of data:&lt;br /&gt;
&lt;br /&gt;
# plastic strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
===== stress_Total_strain =====&lt;br /&gt;
&lt;br /&gt;
This file will only be generated if the user specified&lt;br /&gt;
a loadType of 1 (constant strain rate) or 4 (cyclic&lt;br /&gt;
loading).  If the user specified a constant strain&lt;br /&gt;
rate, this file contains:&lt;br /&gt;
&lt;br /&gt;
# strain&lt;br /&gt;
# stress&lt;br /&gt;
&lt;br /&gt;
If the user specified cyclic loading, this file contains:&lt;br /&gt;
&lt;br /&gt;
#  net accumulated strain&lt;br /&gt;
#  stress&lt;br /&gt;
#  elapsed simulation time&lt;br /&gt;
#  number of loading cycles&lt;br /&gt;
&lt;br /&gt;
===== alleps =====&lt;br /&gt;
&lt;br /&gt;
This file contains the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||simulation timestep number&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||elapsed simulation time&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3-8.||plastic strain components&amp;amp;#8225;&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  9.||dislocation density&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;amp;#8225; from plastic strain tensor matrix, elements [0][0], [1][1], [2][2], [1][2], [0][1], and [0][2]&lt;br /&gt;
&lt;br /&gt;
===== epsdot =====&lt;br /&gt;
&lt;br /&gt;
This file contains the 2 columns of data:&lt;br /&gt;
&lt;br /&gt;
# elapsed simulation time&lt;br /&gt;
# plastic strain rate&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition ===&lt;br /&gt;
&lt;br /&gt;
ParaDiS has the capability to produce files containing&lt;br /&gt;
flux decomposition information for the simulation.&lt;br /&gt;
This capability is enabled via the &amp;lt;fluxfile&amp;gt; control&lt;br /&gt;
file toggle.  The frequency with which the flux&lt;br /&gt;
data is written is determined by the settings of&lt;br /&gt;
the &amp;lt;fluxfreq&amp;gt; and &amp;lt;fluxdt&amp;gt; control file parameters.&lt;br /&gt;
&lt;br /&gt;
When this capability is enabled the code will generate&lt;br /&gt;
and periodically append the flux data to two sets of&lt;br /&gt;
files that will be located in the directory&lt;br /&gt;
&amp;lt;outputDir&amp;gt;/fluxdata where &amp;lt;outputDir&amp;gt; is the directory&lt;br /&gt;
specified by the &amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
Each set contains four files, one file per burgers vector.&lt;br /&gt;
Files *b1, *b2, *b3, and *b4 contain statistics for burgers&lt;br /&gt;
vector types [111], [-111], [1-11], and [11-1] respectively.&lt;br /&gt;
&lt;br /&gt;
The first set of files (Ltot_b1, Ltot_b2, Ltot_b3 and&lt;br /&gt;
Ltot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
# Plastic strain&lt;br /&gt;
# Strain,&lt;br /&gt;
# Screw density&lt;br /&gt;
# Edgedensity1&lt;br /&gt;
# Edgedensity2&lt;br /&gt;
# Edgedensity3&lt;br /&gt;
# Sum of edge Densities (4+5+6)&lt;br /&gt;
# Total system EdgeDensity from all Ltot files&lt;br /&gt;
# Total system screw density from all Ltot files&lt;br /&gt;
&lt;br /&gt;
The second set of files (fluxtot_b1, fluxtot_b2, fluxtot_b3 and&lt;br /&gt;
fluxtot_b4) consist of the following 9 columns of data:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1.||Plastic Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  2.||Strain&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  3.||Flux due to climb motion&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Flux created by edge components on three planes (See below.)&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7-9.||Flux created by screw dislocation on three planes (See below.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For b1 = 1/2[1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 0  1 -1), [-2  1  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 (-1  0  1), [ 1 -2  1]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                 ( 1 -1  0), [ 1  1 -2]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b2 = 1/2[-1 1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1 -1), [ 2  1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [ 1  2 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [ 1 -1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b3 = 1/2[1 -1 1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2  1 -1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0 -1), [ 1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  1  0), [-1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
For b4 = 1/2[1 1 -1]&lt;br /&gt;
&amp;lt;ol start=&amp;quot;4&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 0  1  1), [ 2 -1  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1  0  1), [-1  2  1] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;                ( 1 -1  0), [ 1  1  2] &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pole figures ===&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
=== Velocity files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;velfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
velocity information about each unique dislocation node &lt;br /&gt;
in the system.  The frequency with which the velocity&lt;br /&gt;
data is written is determined by the settings of the&lt;br /&gt;
&amp;lt;velfilefreq&amp;gt; and &amp;lt;velfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/velocity&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/velNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;velfilecounter&amp;gt; control parameter and is incremented each  time another velocity file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ &amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when velocity data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
In addition, at program termination, an extra set of velocity&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/velocity/vel.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When velocity data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the velocity files consist of 4 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Velocity components (x,y,z)&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| align=right |  4.|| +1 if contributing to strain rate &amp;lt;br&amp;gt; -1 if moving in opposite direction&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Segment files ===&lt;br /&gt;
&lt;br /&gt;
If the &amp;lt;armfile&amp;gt; toggle is set in the control file,&lt;br /&gt;
ParaDiS will periodically generate a set of files containing&lt;br /&gt;
information about each unique dislocation segment &lt;br /&gt;
in the system.  The frequency with which the segment&lt;br /&gt;
(or arm) files are written is determined by the settings&lt;br /&gt;
of the &amp;lt;armfilefreq&amp;gt; and &amp;lt;armfiledt&amp;gt; control file parameters.&lt;br /&gt;
All files will be located in the directory &amp;lt;outputDir&amp;gt;/armdata&lt;br /&gt;
where &amp;lt;outputDir&amp;gt; is the directory specified by the&lt;br /&gt;
&amp;lt;dirname&amp;gt; control file parameter.&lt;br /&gt;
&lt;br /&gt;
All files will be named with the following convention:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/armNNNN[.SEQ]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;NNNN&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number based on the &amp;lt;armfilecounter&amp;gt; control parameter and is incremented each time another arm file is written.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;SEQ&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;is a sequence number included only when arm data is being written in parallel (i.e. &amp;lt;numIOGroups&amp;gt; control parameter is greater than 1.  SEQ will range from zero to &amp;lt;numIOGroups&amp;gt;-1.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt;  &lt;br /&gt;
  &lt;br /&gt;
In addition, at program termination, an extra set of arm&lt;br /&gt;
files will be created.  This set will be generated regardless&lt;br /&gt;
of the specified dump frequency in order to provide an image&lt;br /&gt;
of the final configuration. This set will be named with the&lt;br /&gt;
slightly different naming convention:&lt;br /&gt;
 &lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/armdata/arm.final[.SEQ]&lt;br /&gt;
&lt;br /&gt;
NOTE: When arm data is being written in parallel&lt;br /&gt;
the dislocation segment data is spread over the file segments.&lt;br /&gt;
These file segments can be combined into a single file via&lt;br /&gt;
the &amp;lt;ParadisDir&amp;gt;/tools/stitch tool.  (See [[#stitch|section]] on Tools&lt;br /&gt;
for details)&lt;br /&gt;
&lt;br /&gt;
The contents of the arm files consist of 10 columns&lt;br /&gt;
of data for each unique dislocation segment.  Those&lt;br /&gt;
columns are:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  1-3.||Burgers vector components&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  4-6.||Line direction vector&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  7.||Segment length&lt;br /&gt;
|-&lt;br /&gt;
| align=right |  8-10.||Coordinates of node &#039;owning&#039; the segment&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Density Field file ===&lt;br /&gt;
&lt;br /&gt;
If all components of the &amp;lt;savedensityspec&amp;gt; control parameter&lt;br /&gt;
are set to positive values in the control file, ParaDiS&lt;br /&gt;
will (at program termination) create a file containing a&lt;br /&gt;
3D dislocation density field formatted for use with the&lt;br /&gt;
VASP Data Viewer (vaspview).  The three components of&lt;br /&gt;
the &amp;lt;savedensityspec&amp;gt; parameter specify the granularity&lt;br /&gt;
of the density field in the X, Y and Z dimensions&lt;br /&gt;
respectively.   The density field will be written to the&lt;br /&gt;
file:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;outputDir&amp;gt;/densityfield.out&lt;br /&gt;
&lt;br /&gt;
Warning: This will overwrite any existing density field&lt;br /&gt;
file of the same name!&lt;br /&gt;
&lt;br /&gt;
The VASP Data Viewer is publicly available on the web&lt;br /&gt;
for non-commercial use.  For details on the product,&lt;br /&gt;
download the VASP Data Viewer from the web and refer&lt;br /&gt;
to the accompanying documentation.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Utilities ==&lt;br /&gt;
&lt;br /&gt;
=== Creating Initial Dislocations with &#039;paradisgen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisgen utility is capable of generating initial&lt;br /&gt;
dislocations suitable for a paradis simulation.  The command&lt;br /&gt;
line options for paradisgen control the type of dislocations,&lt;br /&gt;
number of dislocations, size of the simulation box, and so&lt;br /&gt;
on.  See &amp;quot;Examples&amp;quot; below for sample executions of this utility.&lt;br /&gt;
&lt;br /&gt;
The command line format for paradisgen is:&lt;br /&gt;
&lt;br /&gt;
              paradisgen [-cubel &amp;lt;cubelength&amp;gt;] [-help] [-hexsize &amp;lt;size&amp;gt;]  \&lt;br /&gt;
                         [-maxseg &amp;lt;maxseglen] [-nchains &amp;lt;numchains&amp;gt;]      \&lt;br /&gt;
                         [-nloops &amp;lt;numloops&amp;gt;] [-outfile &amp;lt;filename&amp;gt;        \&lt;br /&gt;
                         [-radius &amp;lt;radius&amp;gt;] [-seed &amp;lt;seedval&amp;gt;]             \&lt;br /&gt;
                         [-type &amp;lt;configtype&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
All command line options may be abbreviated to the shortest&lt;br /&gt;
non-ambiguous abbreviation of the option.  Descriptions of&lt;br /&gt;
the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
            -cubel &amp;lt;cubelength&amp;gt;  Defines the size of the simulation cube&lt;br /&gt;
                                 in units of b.  Minimum and maximum problem&lt;br /&gt;
                                 space coordinates will be 0.5*cubel and&lt;br /&gt;
                                 -0.5*cubel respectively.  If not specified&lt;br /&gt;
                                 this will default to 35000b (approx.&lt;br /&gt;
                                 10 micron).&lt;br /&gt;
&lt;br /&gt;
            -help                Causes the utility to display the command line&lt;br /&gt;
                                 format and option descriptions then terminate.&lt;br /&gt;
&lt;br /&gt;
            -hexsize &amp;lt;size&amp;gt;      Defines the radius (in units of b) for the&lt;br /&gt;
                                 hexagonal interstitial loops.  This option is&lt;br /&gt;
                                 used only when the selected dislocation type&lt;br /&gt;
                                 is &#039;fcc-irrad&#039;.&lt;br /&gt;
&lt;br /&gt;
            -looptype &amp;lt;ltype&amp;gt;    Specifies the types of prismatic loops to&lt;br /&gt;
                                 generate.  If not specified, this value&lt;br /&gt;
                                 will default to zero.  Valid values are:&lt;br /&gt;
&lt;br /&gt;
                                   0 == mixture of [1 1 1] and [1 0 0] types&lt;br /&gt;
                                   1 == all [1 1 1] type loops&lt;br /&gt;
                                   2 == all [1 0 0] type loops&lt;br /&gt;
&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.&lt;br /&gt;
&lt;br /&gt;
            -maxseg &amp;lt;length&amp;gt;     Defines the maximum desired segment length&lt;br /&gt;
                                 in units of b.  Initial dislocations will&lt;br /&gt;
                                 be discretized so no segment is longer than&lt;br /&gt;
                                 this value.  If not specified this value&lt;br /&gt;
                                 defaults to 500.&lt;br /&gt;
&lt;br /&gt;
            -nchains &amp;lt;numchain&amp;gt;  Indicates the number of dislocation lines&lt;br /&gt;
                                 to create.  This value is ignored when the&lt;br /&gt;
                                 selected dislocation type is &#039;prismatic-loop&#039;,&lt;br /&gt;
                                 and when the type is &#039;fcc-perfect-loop&#039;,&lt;br /&gt;
                                 this value must be a multiple of 12.  If&lt;br /&gt;
                                 not specified, this value defaults to 2.&lt;br /&gt;
&lt;br /&gt;
            -nloops &amp;lt;numloops&amp;gt;   Specifies the number of loops to create when&lt;br /&gt;
                                 the selected dislocation type is&lt;br /&gt;
                                 &#039;prismatic-loop&#039; or &#039;fcc-irrad&#039;.  If not&lt;br /&gt;
                                 specified, this value defaults to 1000.&lt;br /&gt;
&lt;br /&gt;
            -nsegs &amp;lt;numsegs&amp;gt;     Specifies the number of segments into which&lt;br /&gt;
                                 a prismatic loop will be discretized.  This&lt;br /&gt;
                                 option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to&lt;br /&gt;
                                 (2*PI*radius)/(maxseg/2).&lt;br /&gt;
&lt;br /&gt;
            -outfile &amp;lt;filename&amp;gt;  Name of the ParaDiS data file to be created.&lt;br /&gt;
                                 If not specified, data will be written&lt;br /&gt;
                                 into a file called &#039;paradis.data&#039;.&lt;br /&gt;
&lt;br /&gt;
            -radius &amp;lt;radius&amp;gt;     Radius (in units of b) of prismatic loops.&lt;br /&gt;
                                 This option is only used when the selected&lt;br /&gt;
                                 dislocation type is &#039;prismatic-loop&#039;.  If&lt;br /&gt;
                                 not specified, this value defaults to maxseg/2.&lt;br /&gt;
&lt;br /&gt;
            -seed &amp;lt;seed&amp;gt;         Specifies a value to seed the random number&lt;br /&gt;
                                 generator.  Using the same seed value for&lt;br /&gt;
                                 multiple executions of paradis (for which&lt;br /&gt;
                                 all other options are identical) insures&lt;br /&gt;
                                 creation of an identical configuration.  &lt;br /&gt;
&lt;br /&gt;
            -type &amp;lt;type&amp;gt;         Specifies the type of dislocations to create.&lt;br /&gt;
                                 This type can be a name or the integer value&lt;br /&gt;
                                 corresponding to the name.  Valid types are:&lt;br /&gt;
&lt;br /&gt;
                                 0 or &#039;screw&#039;        BCC screw dislocations.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 1 or &#039;finite-mixed&#039; A mixture of BCC screw and&lt;br /&gt;
                                                     edge dislocations&lt;br /&gt;
                                                     terminating at the edges&lt;br /&gt;
                                                     of the cubic problem&lt;br /&gt;
                                                     space.  This should not&lt;br /&gt;
                                                     be used with periodic&lt;br /&gt;
                                                     boundary conditions.&lt;br /&gt;
                                 2 or &#039;prismatic-loop&#039;   BCC prismatic loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 3 or &#039;fcc&#039;          FCC dislocations. Assumes&lt;br /&gt;
                                                     periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 4 or &#039;fcc-irrad&#039;    Mixture of FCC&lt;br /&gt;
                                                     dislocations and hexagonal&lt;br /&gt;
                                                     interstitial loops.&lt;br /&gt;
                                                     Assumes periodic boundary&lt;br /&gt;
                                                     conditions are enabled.&lt;br /&gt;
                                 5 or &#039;fcc-perfect-loop&#039; Not fully implemented.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&lt;br /&gt;
              TBD&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recomputing Domain Boundaries with &#039;paradisrepart&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisrepart utility provides a mechanism by which to&lt;br /&gt;
replace the domain decomposition/partitioning in an&lt;br /&gt;
existing nodal data file with a new domain decomposition.&lt;br /&gt;
The utility will read the current nodal data, and use the&lt;br /&gt;
specified domain/cell geometries to attempt to partition&lt;br /&gt;
the domains such that the computational cost for each domain&lt;br /&gt;
will be roughly equivalent.&lt;br /&gt;
&lt;br /&gt;
This utility is primarily used when it is necessary alter&lt;br /&gt;
the domain geometry or domain count for a simulation in&lt;br /&gt;
order to continue.  In such a situation, the existing&lt;br /&gt;
domain decomposition would be thrown away and the ParaDiS&lt;br /&gt;
code would generate an initial uniform decomposition&lt;br /&gt;
and then over time converge on a more optimal decomposition.&lt;br /&gt;
Using this utility instead to generate a new decomposition&lt;br /&gt;
provides a much more reasonable starting point from allowing&lt;br /&gt;
the ParaDiS simulation to converge on an optimal decomposition&lt;br /&gt;
much more quickly.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisrepart utility is:&lt;br /&gt;
&lt;br /&gt;
              paradisrepart -infile &amp;lt;inputFile&amp;gt;                           \&lt;br /&gt;
                            -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;               \&lt;br /&gt;
                            -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt;                \&lt;br /&gt;
                            [-outfile &amp;lt;outputFile&amp;gt;]  [-decompType &amp;lt;type&amp;gt;] \&lt;br /&gt;
                            [-help]&lt;br /&gt;
    &lt;br /&gt;
All command line arguments and options may be abbreviated to the&lt;br /&gt;
shortest non-ambiguous abbreviation of the option.  Descriptions&lt;br /&gt;
of the command lines options are as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
              -infile &amp;lt;inputFile&amp;gt;    Specifies the name of the nodal data file.&lt;br /&gt;
                                     On success, the first nodal data file&lt;br /&gt;
                                     segment will be copied to &amp;lt;inputFile&amp;gt;.bkup.&lt;br /&gt;
                                     This command line argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -cells &amp;lt;xcells[,ycells,zcells]&amp;gt;  Specifies the number of&lt;br /&gt;
                                     cells in each dimension.  If the&lt;br /&gt;
                                     number of cells in the Y and Z dimensions&lt;br /&gt;
                                     are not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xcells&amp;gt;. This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -domains &amp;lt;xdoms[,ydoms,zdoms]&amp;gt; Specifies the number of domains&lt;br /&gt;
                                     in each dimension.  If the number of&lt;br /&gt;
                                     domains in the Y and Z dimensions are&lt;br /&gt;
                                     not provided, they will default to the&lt;br /&gt;
                                     same value as &amp;lt;xdoms&amp;gt;.  This command line&lt;br /&gt;
                                     argument is not optional.&lt;br /&gt;
&lt;br /&gt;
              -decompType &amp;lt;type&amp;gt;     Specifies type of domain decomposition:&lt;br /&gt;
                                     If not specified, defaults to 1.  Valid&lt;br /&gt;
                                     types are:&lt;br /&gt;
&lt;br /&gt;
                                       1 == Recursive Sectioning&lt;br /&gt;
                                       2 == Recursive Bisectioning&lt;br /&gt;
&lt;br /&gt;
              -help                  Causes the utility to display the command&lt;br /&gt;
                                     line format and option descriptions then&lt;br /&gt;
                                     terminate.&lt;br /&gt;
&lt;br /&gt;
              -outfile &amp;lt;outputFile&amp;gt;  Specifies the name of the file into which&lt;br /&gt;
                                     to write the new domain decomposition.  If&lt;br /&gt;
                                     not specified, new domain decomposition&lt;br /&gt;
                                     will be written into the file specified&lt;br /&gt;
                                     by &amp;lt;inputFile&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
          Examples:&lt;br /&gt;
          ---------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Converting Control and Data File with &#039;paradisconvert&#039; ===&lt;br /&gt;
&lt;br /&gt;
The paradisconvert utility provides a mechanism by which&lt;br /&gt;
older format ParaDiS control and data files (and restart&lt;br /&gt;
files) may be converted to the current file formats.&lt;br /&gt;
This utility does recognize and handle segmented data files.&lt;br /&gt;
&lt;br /&gt;
In most cases this utility will not be required since&lt;br /&gt;
ParaDiS is still able to recognize and handle *most* of &lt;br /&gt;
the older file formats.  The only format the ParaDiS code&lt;br /&gt;
no longer recognizes is the truly ancient format associated&lt;br /&gt;
with the earliest incarnations of the code in which the&lt;br /&gt;
control file parameters and nodal data were included in&lt;br /&gt;
a single file.  For these control files, the paradisconvert&lt;br /&gt;
utility will be needed.&lt;br /&gt;
&lt;br /&gt;
The command line format for the paradisconvert utility is:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert  &amp;lt;controlFile&amp;gt; [dataFile]&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=3 &amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;controlFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;Specifies the name of the control parameter file to be updated to the current format.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;dataFile&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD ALIGN=&amp;quot;LEFT&amp;quot;&amp;gt;If the specified control file is the original ancient format including control parameters and                             nodal data in the single file, this argument is ignored.  Otherwise, this specifies the base name                             of the nodal data file(s) to be converted.  If not this argument is not provided, it will default to                             the same name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and the &#039;.data&#039; suffix added.&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/TABLE&amp;gt; &lt;br /&gt;
&lt;br /&gt;
On success, the utility will rename the original files by appending&lt;br /&gt;
a &#039;.bkup&#039; suffix to the names, and create new control and data files&lt;br /&gt;
with the specified names.  Note: for control parameter files which&lt;br /&gt;
include nodal data, a new data file will be generated under the&lt;br /&gt;
the name as &amp;lt;controlFile&amp;gt; with any file name suffix removed and&lt;br /&gt;
a &#039;.data&#039; suffix added.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Examples:&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To convert the original format file &#039;restart.cn&#039; containing&lt;br /&gt;
both control parameters and nodal data, execute:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert restart.cn&lt;br /&gt;
&lt;br /&gt;
The utility will generate the following files:&lt;br /&gt;
&lt;br /&gt;
:              restart.cn.bkup&lt;br /&gt;
:              restart.cn&lt;br /&gt;
:              restart.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control parameter and data file pair with&lt;br /&gt;
the names &#039;rs0100&#039; and &#039;rs0100.data&#039; respective, execute either&lt;br /&gt;
of the following equivalent command lines:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
&lt;br /&gt;
In both cases, the utility would generate the files:&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data&lt;br /&gt;
&lt;br /&gt;
To convert a newer control file &amp;lt;rs0100&amp;gt; and a set of segmented&lt;br /&gt;
data files with the names &amp;lt;rs0100.data.0&amp;gt;, &amp;lt;rs0100.data.1&amp;gt;, ...&lt;br /&gt;
&amp;lt;rs0100.data.7&amp;gt;, execute any of the following equivalent commands:&lt;br /&gt;
&lt;br /&gt;
 paradisconvert rs0100&lt;br /&gt;
 paradisconvert rs0100 rs0100.data&lt;br /&gt;
 paradisconvert rs0100 rs0100.data.0&lt;br /&gt;
&lt;br /&gt;
In all of the above cases, the utility would generate the files&lt;br /&gt;
&lt;br /&gt;
:              rs0100.bkup&lt;br /&gt;
:              rs0100.data.0.bkup&lt;br /&gt;
:              rs0100.data.1.bkup&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7.bkup&lt;br /&gt;
&lt;br /&gt;
:              rs0100&lt;br /&gt;
:              rs0100.data.0&lt;br /&gt;
:              rs0100.data.1&lt;br /&gt;
:              ...&lt;br /&gt;
:              rs0100.data.7&lt;br /&gt;
&lt;br /&gt;
=== Creating the FMM Image Correction Table with &#039;ctablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;ctablegen&#039; utility is used to create an image correction&lt;br /&gt;
table needed when the FMM (Fast Multipole Method) has been enabled&lt;br /&gt;
by setting the &amp;lt;fmEnabled&amp;gt; toggle on in the control file.  Since&lt;br /&gt;
the data in this file is dependent on the poisson ratio, shear&lt;br /&gt;
modulus, and orders of the multipole and taylor expansions, the&lt;br /&gt;
file must be created for the particular values of these items&lt;br /&gt;
used in the simulation.&lt;br /&gt;
&lt;br /&gt;
Given the current defaults used by ParaDiS (as set in Param.c):&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ||align=&amp;quot;left&amp;quot;| poisson ratio:          ||align=&amp;quot;center&amp;quot;|      3.327533e-01       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| shear modulus:          ||align=&amp;quot;center&amp;quot;|      6.488424e+10       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| multipole order:        ||align=&amp;quot;center&amp;quot;|      2       &lt;br /&gt;
|-&lt;br /&gt;
| ||align=&amp;quot;left&amp;quot;| taylor expansion order: ||align=&amp;quot;center&amp;quot;|      5       &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To create the FMM image correction table, you could execute&lt;br /&gt;
ctablegen from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command line:&lt;br /&gt;
&lt;br /&gt;
 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \&lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
NOTE:  The generation of this table can take a significant&lt;br /&gt;
amount of time, therefore, a parallel version of the utility&lt;br /&gt;
(called ctablegenp) has also been provided.  To execute the&lt;br /&gt;
table generation in parallel on 8 processors using mpirun as&lt;br /&gt;
a parallel program initiator, one could execute:&lt;br /&gt;
&lt;br /&gt;
 mpirun -np 8 bin/ctablegen -nu 3.327533e-01 -mu 6.488424e+10 -mporder 2 -torder 5 -outfile \ &lt;br /&gt;
 inputs/fm-ctab.Ta.600K.0GPa.m2.t5.dat&lt;br /&gt;
&lt;br /&gt;
The locations of this file is specified in the control&lt;br /&gt;
parameter file via the &amp;lt;fmCorrectionTbl&amp;gt; parameter.&lt;br /&gt;
&lt;br /&gt;
=== Creating Far-Field Stress Tables with &#039;stresstablegen&#039; ===&lt;br /&gt;
&lt;br /&gt;
The &#039;stresstablegen&#039; utility is used to create tables needed&lt;br /&gt;
for calculating stress from distant cells and periodic images&lt;br /&gt;
of the system when FMM is disabled (i.e. &amp;lt;fmEnabled&amp;gt; is set &lt;br /&gt;
to zero).  There are two required tables, one which factors&lt;br /&gt;
in stress from periodic images only and the other which factors&lt;br /&gt;
in stress from both the primary and period images.&lt;br /&gt;
&lt;br /&gt;
To create the needed stress tables, execute the stesstablegen&lt;br /&gt;
utility twice from the main &amp;lt;ParadisDir&amp;gt; directory using the&lt;br /&gt;
following command lines:&lt;br /&gt;
&lt;br /&gt;
 bin/stresstablegen -nopbc -outfile inputs/Rijm.cube.out&lt;br /&gt;
and&lt;br /&gt;
 bin/stresstablegen -pbc -outfile inputs/RijmPBC.cube.out&lt;br /&gt;
&lt;br /&gt;
The locations of these files are specified in the control&lt;br /&gt;
parameter file via the &amp;lt;Rijmfile&amp;gt; and &amp;lt;RijmPBCfile&amp;gt; parameters&lt;br /&gt;
respectively.&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== genPovrayFrames ===&lt;br /&gt;
&lt;br /&gt;
The genPovrayFrames tool is provided to post-process the&lt;br /&gt;
povray data files generated by ParaDiS when the &amp;lt;povray&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
create an &#039;*.pov&#039; file containing the ParaDiS generated&lt;br /&gt;
data embedded in a proper framework of povray settings &lt;br /&gt;
and commands.  The tool is located in the &amp;lt;ParadisDir&amp;gt;/tools&lt;br /&gt;
directory.  For details on the use of this tool, see&lt;br /&gt;
the comments at the beginning of the script or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/genPovrayFrames -help&lt;br /&gt;
&lt;br /&gt;
=== gnuplot2povray ===&lt;br /&gt;
         &lt;br /&gt;
The gnuplot2povray tool is provided to post-process the&lt;br /&gt;
gnuplot data files generated by ParaDiS when the &amp;lt;gnuplot&amp;gt;&lt;br /&gt;
control parameter toggle has been set.  This tool will&lt;br /&gt;
convert the data in the gnuplot files into a format&lt;br /&gt;
suitable for povray, and create an &#039;*.pov&#039; file containing&lt;br /&gt;
the converted data embedded in a proper framework of povray&lt;br /&gt;
settings and commands.  The tool is located in the&lt;br /&gt;
&amp;lt;ParadisDir&amp;gt;/tools directory.  For details on the use of&lt;br /&gt;
this tool, see the comments at the beginning of the script&lt;br /&gt;
or execute:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ParadisDir/tools/gnuplot2povray -help&lt;br /&gt;
&lt;br /&gt;
=== stitch ===&lt;br /&gt;
&lt;br /&gt;
When ParaDiS is configured to enable parallel I/O&lt;br /&gt;
(i.e. the &amp;lt;numIOGroups&amp;gt; control parameter is greater&lt;br /&gt;
than 1), each of the following types of output &lt;br /&gt;
will be generated as a set of files rather than a&lt;br /&gt;
single output file.  &lt;br /&gt;
&lt;br /&gt;
:              gnuplot files&lt;br /&gt;
:              tecplot files&lt;br /&gt;
:              segment/arm data&lt;br /&gt;
:              povray files&lt;br /&gt;
:              velocity data&lt;br /&gt;
:              terascale browser files&lt;br /&gt;
:              pole figures&lt;br /&gt;
&lt;br /&gt;
Each file &#039;segment&#039; will contain a portion of the full&lt;br /&gt;
data and will have a sequence number appended to the file&lt;br /&gt;
name.  &lt;br /&gt;
&lt;br /&gt;
Most utilities for processing these types of output, however,&lt;br /&gt;
expect the data in a single file, so the &#039;stitch&#039; tool&lt;br /&gt;
has been provided in order to recombine these data file&lt;br /&gt;
segments into a single usable file as a post-processing&lt;br /&gt;
step.  The tool can be found in the source release as:&lt;br /&gt;
&lt;br /&gt;
:              &amp;lt;ParadisDir&amp;gt;/tools/stitch&lt;br /&gt;
&lt;br /&gt;
The command line for &#039;stitch is as follows:&lt;br /&gt;
&lt;br /&gt;
 stitch [-h] [-d dir | -f file]&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
              -h          prints the usage information to stdout&lt;br /&gt;
&lt;br /&gt;
              -d &amp;lt;dir&amp;gt;    specifies a directory the utility will&lt;br /&gt;
                          scan for any segmented output files that&lt;br /&gt;
                          need to be stitched together.&lt;br /&gt;
&lt;br /&gt;
              -f &amp;lt;file&amp;gt;   specifies a base file name and the utility will&lt;br /&gt;
                          scan for the corresponding file segments (files&lt;br /&gt;
                          named &amp;lt;file&amp;gt;.N where N ranges from zero on up)&lt;br /&gt;
                          and stitch the segments into the single specified&lt;br /&gt;
                          base file name.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: If neither a directory nor file name was provided&lt;br /&gt;
on the command line, the tool will behave as though&lt;br /&gt;
the caller specified the current directory on the command&lt;br /&gt;
line and perform as stated above.&lt;br /&gt;
&lt;br /&gt;
==  Appendix 1. Control Parameters ==&lt;br /&gt;
&lt;br /&gt;
The following is a brief description of the valid control&lt;br /&gt;
file parameters.  Also see the example control files contained&lt;br /&gt;
within the &amp;lt;ParadisDir&amp;gt;/tests directory.&lt;br /&gt;
&lt;br /&gt;
The parameters have been grouped into the following categories, and&lt;br /&gt;
unless otherwise specified, units are in SI, and lengths are&lt;br /&gt;
normalized by burgers vector magnitude:&lt;br /&gt;
&lt;br /&gt;
* Simulation cell and processor setup&lt;br /&gt;
* Simulation time and timestepping controls&lt;br /&gt;
* Discretization controls&lt;br /&gt;
* FMM controls&lt;br /&gt;
* Tables for non-FMM far-field forces&lt;br /&gt;
* Loading condition parameters&lt;br /&gt;
* Material and mobility parameters&lt;br /&gt;
* Velocity statistics and controls&lt;br /&gt;
* I/O controls and parameters&lt;br /&gt;
* Miscellaneous parameters&lt;br /&gt;
&lt;br /&gt;
=== Simulation cell and processor setup: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A1. Control parameters for simulation setup&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXdoms, numYdoms, numZdoms ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of computational domains into which the problem space is                                      partitioned in the corresponding dimensions.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numXcells, numYcells, numZcells ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the number of cells in the corresponding dimension of the problem                                      space.  Cells are independent of the domain geometry and are used to                                      determine boundaries at which far-field forces are computed rather than direct                                      segment to segment forces.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundType, yBoundType, zBoundType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of problem space boundaries in the corresponding                                      dimension.  Currently supported types are 0, and 1 for periodic and free                                      surfaces respectively.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMax, yBoundMax, zBoundMax ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the upper limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;lt;= the respective maximum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  xBoundMin, yBoundMin, zBoundMin ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If periodic boundaries are not enabled, defines the lower limit on coordinates                                      of any dislocation nodes in the corresponding dimension.  Value must be &amp;gt;= the respective minimum problem                                      space coordinate specified in the nodal data file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  decompType ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the type of domain decomposition to be used for a run. A value of one selects the old Recursive                                      Sectioning (RS) algorithm, a value of 2 selects the Recursive Bisectioning (RB)                                      decomposition algorithm.  The default is currently the RS decomposition.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  DLBfreq ||align=&amp;quot;center&amp;quot;|     Integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the frequency (in cycles) at which Dynamic Load-Balancing is to be                                      attempted.  A value of zero indicates no load-balancing is to be done.                                     Default is 3.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Simulation time and timestepping controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A2. Time Control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cycleStart ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Starting cycle number for the simulation.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxstep ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Indicates the number of timesteps to execute before terminating.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeNow ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Current simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timeStart ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Initial simulation time (in seconds).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  timestepIntegrator ||align=&amp;quot;center&amp;quot;|     string      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Selects a timestep integration method. Valid methods are &amp;quot;trapezoid&amp;quot; and                                      &amp;quot;forward-euler&amp;quot;.  The default value is &amp;quot;trapezoid&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  deltaTT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the duration of the previous timestep in units of seconds.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the maximum timestep permitted. Default is 1.0e-07.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  nextDT ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the timestep duration to attempt on the next cycle.  The timestep                                      integrator will adjust this value dynamically.  Default is &amp;lt;maxDT&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtDecrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor by which &amp;lt;delatTT&amp;gt; is mutiplied when cutting the timestep duration down.                                      Must be between 0.0 and 1.0.  Currently only used with the &amp;quot;trapezoid&amp;quot;                                     integrator.  Default is 0.5.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtExponent ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Exponent used in calculation of timestep increment when &amp;lt;dtVariableAdjustment&amp;gt;                                      toggle is enabled.  Currently used only with &amp;quot;trapezoid&amp;quot; timestep integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtIncrementFact ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum factor by which &amp;lt;deltaTT&amp;gt; is multiplied when incrementing the                                      timestep.  Must be at least 1.0.  Default is 1.2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dtVariableAdjustment ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles ability to vary the increment by which the timestep is adjusted when the                                      current timestep is determined to be too small.  This will permit the timestep to                                      be adjusted to a value between 1.0 and &amp;lt;dtIncrementFact&amp;gt; * &amp;lt;deltaTT&amp;gt;.  Toggle                                      is zero (off) by default.  Used only with &amp;quot;trapezoid&amp;quot; integrator.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rTol ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum position error (in units of b) tolerated in the timestep integration.                                      Only applies to the &amp;quot;trapezoid&amp;quot; integrator.  Default is 0.25 * &amp;lt;rc&amp;gt;. The annihilation&lt;br /&gt;
distance is related to rTol(By default, it is set to 2*&amp;lt;rTol&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rmax ||align=&amp;quot;center&amp;quot;|     double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Maximum distance (in units of b) a node is permitted to move in a single                                      timestep.  Not used if &amp;quot;trapezoid&amp;quot; timestep integrator used.  Default is                                      0.5 * &amp;lt;minSeg&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Discretization controls: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A3. Discretization control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  maxSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the maximum permitted length (in units of b) of a dislocation segment.                                      Primarily used for determining when segments are to be rediscretized during                                      remesh operations.  This value must be less than 9/10 the size of a cell.                                      There is no default value, and must be specified in the control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  minSeg ||align=&amp;quot;center&amp;quot;|     double        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the minimum desired length (in units of b) of a dislocation segment.                                      Primarily used for determining when nodes are to be removed during remesh                                      operations.  Default is: sqrt(remeshAreaMin*(4/sqrt(3))) where remeshAreaMin = 2*rTol*maxSeg&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  remeshRule ||align=&amp;quot;center&amp;quot;|     integer        ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by number the set of rules governing rediscretization of                                      dislocations.  Currently the only supported remesh modules are versions 2 and 3.  Default is 2.  (See section                                      on Rediscretization for details on remesh versions.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FMM controls ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A4. FMM control parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmEnabled    ||align=&amp;quot;center&amp;quot;|      integer      ||align=&amp;quot;left&amp;quot;|       &lt;br /&gt;
Toggle controlling use of a Fast Multipole Method (FMM) for computing force contributions from remote                                      dislocation segments.  A value of zero disables the use of FMM, any other value                                       enables FMM.  Default value is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fmCorrectionTbl ||align=&amp;quot;center&amp;quot;|      string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of the image correction table used by the FMM.  This correction table must                                      correspond to the specified &amp;lt;fmMPOrder&amp;gt;, &amp;lt;fmTaylorOrder&amp;gt; and &amp;lt;shearModulus&amp;gt;(?)                                      control parameters.  See the [[#Creating the FMM Image Correction Table with &#039;ctablegen&#039;|&#039;ctablegen&#039; utility]] for information on creating these tables.  This value is ignored if &amp;lt;fmEnabled&amp;gt; is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|    fmMPOrder    ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the multipole expansion order used by the FMM.  This value is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 2.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fmTaylorOrder  ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the order of taylor expansions used by the FMM.  This values is ignored                                      if &amp;lt;fmEnabled&amp;gt; is zero.  Default is 4.&lt;br /&gt;
|}&lt;br /&gt;
                                          &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A5. Table for non-FMM far-field forces&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Rijmfile  ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                     calculations.  This parameter is ignored if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero.  Default is                                      &amp;quot;inputs/Rijm.cube.out&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  RijmPBCfile ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing the RIJM table to be used for far-field stress                                      calculations with periodic boundary conditions.  This parameter is ignored                                      if the &amp;lt;fmEnabled&amp;gt; parameter is non-zero. Default is &amp;quot;inputs/RijmPBC.cube.out&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Loading condition parameters: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A6. Loading condition parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  loadType ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
&amp;lt;ol start=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Creep test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Constant strain rate test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Displacement-controlled test &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Load-controlled, load vs. time curve &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;  Cyclic loading condition &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  appliedStress ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Defines the type of load on the system. Valid types are:&lt;br /&gt;
External stress specified in units of Pa as [sigma11, sigma22, sigma33, sigma23,                                      sigma31, sigma12] when &amp;lt;loadType&amp;gt; == 0. Default is [0.0, 0.0, 0.0, 0.0, 0.0, 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eRate ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate.  Applicable only when &amp;lt;loadType&amp;gt; == 1.  Default is 1.0/sec.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  indxErate ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Index to indicate normal or shear deformation.  Used only when &amp;lt;loadType&amp;gt; == 1.                                      Valid values are:&lt;br /&gt;
#                                      normal&lt;br /&gt;
#                                      shear&lt;br /&gt;
If not specified, defaults to 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  edotdir ||align=&amp;quot;center&amp;quot;|     double[3]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Uniaxial loading direction accompanying &amp;lt;eRate&amp;gt;.  Default is [1.0 0.0 0.0].&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  cTimeOld ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Timestep related to cyclic loading. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  dCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Incremental strain under cyclic load. Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  netCyclicStrain ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Net accumulated strain under cyclic load.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  numLoadCycle ||align=&amp;quot;center&amp;quot;|    integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Number of cyclic cycles.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  eAmp ||align=&amp;quot;center&amp;quot;|    double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain amplitude.  Only used when &amp;lt;loadType&amp;gt; == 4.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Material and mobility parameters: ===&lt;br /&gt;
&lt;br /&gt;
Note: Default values for all material and mobility related&lt;br /&gt;
parameters correspond to Tantalum at a temperature of &lt;br /&gt;
600 degress K and pressure of 0 GPa.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A7. Table for material and mobility parameters&lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  mobilityLaw ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies by name the set of rules governing dislocation motion for the simulation conditions. Default                                      is &amp;quot;BCC_0&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  shearModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Shear modulus in units of Pa.  Default is 6.488424e+10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  pois ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Poisson ratio.  Default is 3.327533e-01&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  burgMag ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Magnitude of the burgers vector (b) in units of meters.  Default is 2.875401e-10&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  YoungModulus ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Young&#039;s modulus (in units of Pa). calculated from E = 2G(1+pois). Default is 200.0e+09.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  rc ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core radius (in units of b) for self-force calculations.  No default value;                                      must be specified in control file.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ecore ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Core energy used for self-force calculation.  Default is                                      (&amp;lt;shearModulus&amp;gt;/(4*PI)) * log(&amp;lt;rc&amp;gt;/0.1)&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobScrew ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of screw dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobEdge ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Mobility of edge dislocations in units of 1/(Pa*sec).  Default is 10.0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  MobClimb ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Climb mobility of dislocations in units of 1/(Pa*sec).  Default is 1.0e-02.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessileburgspec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of burgers vectors to be considered sessile.  First element of the                                      array contains the number of burgers vectors specified, the remaining elements                                      specify the X, Y, then Z components of each sessile burgers vector.  Maximum                                      sessile burgers vectors allowed is 9.  No burgers vectors are sessile by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  sessilelinespec ||align=&amp;quot;center&amp;quot;|     double[30]      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Array of line directions related to sessileburgspec.  First element is                                      ignored, remaining elements specify the X, Y, then Z components of each sessile                                      line.  The number of lines is assumed to be the same as the number of sessile                                      burgers vectors.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Flux Decomposition: ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A8. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpSpn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic strain tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totpStn ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Plastic spin tensor&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  totstraintensor ||align=&amp;quot;center&amp;quot;|     double[6]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Strain rate tensor with respect to global coordinate system.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  Ltot ||align=&amp;quot;center&amp;quot;|     double[4][4]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Decomposed density per burgers vector for screw and three edges (for BCC                                        slip systems only).&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  fluxtot  ||align=&amp;quot;center&amp;quot;|     double[4][7]       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For each burgers vector (for BCC slip systems only), contains:&lt;br /&gt;
&amp;lt;table border = &amp;quot;0&amp;quot; cellpadding = &amp;quot;0&amp;quot; cellspacing = &amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  1.   &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to climb &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  2-4. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to edge components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;right&amp;quot;&amp;gt;  5-7. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; flux due to screw components &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Velocity statistics: ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: these statistics will only be used if the VEL_STATISTICS pre-processor macro has been defined during compilation.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A9. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vAverage ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Average dislocation velocity.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| vStDev ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Standard deviation of dislocation velocities.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== I/O controls and parameters ===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#8225; Note: A number of the supported output forms are controlled by&lt;br /&gt;
very similar control parameters.  The general descriptions below&lt;br /&gt;
apply to all I/O control parameters of like names:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     *freq    Sets the frequency (in cycles) at which the associated data&lt;br /&gt;
              will be written to disk.  If the corresponding &amp;lt;*dt&amp;gt; parameter&lt;br /&gt;
              is greater than 0, this parameter will be ignored. &lt;br /&gt;
              Default for all such values is 100.&lt;br /&gt;
&lt;br /&gt;
     *dt      The *dt variables specify the simulation delta time that will&lt;br /&gt;
              control the frequency at which the associated output will be&lt;br /&gt;
              written to disk. A positive value is interpreted as a delta&lt;br /&gt;
              time and will take precedence over any frequency specified by&lt;br /&gt;
              the corresponding &amp;lt;*freq&amp;gt; value.  A value &amp;lt;= zero indicates&lt;br /&gt;
              write frequency will not be determined by delta times.&lt;br /&gt;
              Default value is -1.0.&lt;br /&gt;
&lt;br /&gt;
     *time    Specifies the simulation time at which the associated data&lt;br /&gt;
              was last written to disk.  This value will be automatically&lt;br /&gt;
              updated during the simulation.  If the corresponding &amp;lt;*dt&amp;gt;&lt;br /&gt;
              parameter is &amp;lt;= 0.0 this parameter will be ignored.&lt;br /&gt;
&lt;br /&gt;
     *counter Sequence number of the previously written file of the&lt;br /&gt;
              corresponding type.  Default is 0.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A10. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| dirname ||align=&amp;quot;center&amp;quot;|     string       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Base output directory name.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| skipIO ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle for disabling generation of all output types other than timing files.                                      Overrides output-specific toggles if set. Default is 0.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| numIOGroups ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Sets the number of groups into which the domains will be separated for doing                                      parallel IO.  All files generated in parallel will be created with this                                      number of segments.  This value must be at least one and no more than the total number of domains used.                                      default is 1.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files identifying each unique dislocation                                      segment.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilecounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiledt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfilefreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| armfiletime ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfile ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of flux decomposition files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxcounter ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxdt ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| fluxfreq ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|fluxtime ||align=&amp;quot;center&amp;quot;|   double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplot  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files formatted for use with gnuplot.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotcounter  ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplotfreq  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| gnuplottime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of &amp;lt;111&amp;gt; type burgers vector pole figures.                                      Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefilecounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigdt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| polefigtime ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povray ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of files with nodal data and domain                                      boundaries for use with povray.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraycounter ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraydt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povrayfreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| povraytime  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfile ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of postscript files containing nodal                                      data and domain boundaries.   Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiledt ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfilefreq ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| psfiletime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecn ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of restart files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecncounter ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecndt ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecnfreq ||align=&amp;quot;center&amp;quot;|   integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savecntime ||align=&amp;quot;center&amp;quot;|   double      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveprop  ||align=&amp;quot;center&amp;quot;|   integer     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling writing of various properties files.  Toggle is                                      zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropdt  ||align=&amp;quot;center&amp;quot;|   double     ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savepropfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| saveproptime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimers  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of timing data files.  Toggle is zero (off)                                      by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerscounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimersfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savetimerstime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| savedensityspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Specifies the granularity of the 3D density field written to the density field file in X, Y and Z                                      dimensions.  If any element of this array is zero, this capability is                                      disabled.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplot  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      tecplot.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotcounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotdt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplotfreq  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tecplottime  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfile  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files formatted for use with                                      the TeraScale Browser.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| writetsbspec  ||align=&amp;quot;center&amp;quot;|   integer[3]    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilecounter  ||align=&amp;quot;center&amp;quot;|   integer    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiledt  ||align=&amp;quot;center&amp;quot;|   double    ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| tsbfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfile  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggle enabling/disabling generation of output files containing velocity data                                      for all nodes in the simulation.  Toggle is zero (off) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilecounter  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*counter&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiledt  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*dt&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfilefreq  ||align=&amp;quot;center&amp;quot;|   integer   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*freq&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| velfiletime  ||align=&amp;quot;center&amp;quot;|   double   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
See description of &amp;lt;*time&amp;gt; above.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| winDefaultsFile  ||align=&amp;quot;center&amp;quot;|   string   ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Name of file containing default options and attributes for the X-window                                      display.  This is ignore if the X display support was not enabled at compile time.  Defaults to                                      &amp;quot;./inputs/paradis.xdefaults&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous parameters ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A11. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|  elasticinteraction ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Toggles between explicit calculation of elastic interaction and simple line                                      tension calculations.  Toggle is one (on) by default.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TensionFactor ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Factor used for simple line tension force calculations when the                                      &amp;lt;elasticinteraction&amp;gt; parameter is zero. Default is 1.0.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Under development ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+ Table A12. &lt;br /&gt;
! Parameter &lt;br /&gt;
! Type &lt;br /&gt;
! Description               &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| TempK ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
Simulation temperature (in Kelvin).  For use in FCC cross-slip.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| enforceGlidePlanes ||align=&amp;quot;center&amp;quot;|     integer       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
If non-zero, forces remesh, collision handling, etc. to use glide-plane                                      constraints.  Default is zero.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| springConst ||align=&amp;quot;center&amp;quot;|     double       ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
For use with FCC_0 mobility&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_compute_escaig ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| mob_cross_slip ||align=&amp;quot;center&amp;quot;|     integer      ||align=&amp;quot;left&amp;quot;|&lt;br /&gt;
TBD&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Algorithm&amp;diff=5616</id>
		<title>PARADISCYL:Cylinder-Algorithm</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Algorithm&amp;diff=5616"/>
		<updated>2011-12-03T06:57:24Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* List of Files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Cylinder Code Algorithm &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This wiki page describes the ParaDiS Cylinder code v.2.5.1.  This version of the Cylinder code is created by a &#039;&#039;translation&#039;&#039; from the ParaDiS ThinFilm code v.2.5.1, with subsequent modifications.  In this wiki page, we only describe the difference between the Cylinder code and the &#039;&#039;translated&#039;&#039; ThinFilm code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==List of Files==&lt;br /&gt;
&lt;br /&gt;
The following is a list of all files modified manually after the &#039;&#039;translation&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
1. AllSegmentStress.c &lt;br /&gt;
 Changes are made in this file to construct the test cases.&lt;br /&gt;
&lt;br /&gt;
 A new function AllSegmentStress_no_cell_test1() is added, which computes the stress field of a&lt;br /&gt;
 infinite straight dislocation (analytic expression) for Test Case 1 only.  This function is activated&lt;br /&gt;
 when CYL_TEST1 is defined (in the makefile).&lt;br /&gt;
&lt;br /&gt;
 Function AllSegmentStress_no_cell() is modified to account for periodic images in Z direction.&lt;br /&gt;
 NimgPBC is specified in the input file(By default, it is &#039;1&#039;). For each dislocation segment, NimgPBC number&lt;br /&gt;
 of its images are included in the stress calculation.  &lt;br /&gt;
&lt;br /&gt;
 Macros (#ifdef &#039;s) are added to make the Cylinder code use FULL_N2_FORCES when _CYL_TEST23 is defined. &lt;br /&gt;
 The same changes also affect these files: Initialize.c, LocalSegForce.c,  NodeForce.c.&lt;br /&gt;
&lt;br /&gt;
2. Cylinder_Remesh.c&lt;br /&gt;
 In function Cylinder_Remesh(), added new rules to remove surface debris (to increase time step).&lt;br /&gt;
 Surface debris are defined as dislocation line consisting of two or three segments with two&lt;br /&gt;
 (end) surface nodes. &lt;br /&gt;
&lt;br /&gt;
See [[PARADISCYL:Cylinder-Remove_surface_debris | M11 Remove surface debris ]].&lt;br /&gt;
 A new function ProjectSurfaceNodes() is defined to project nodes flagged by CYLINDER_SURFACE_NODE&lt;br /&gt;
 back to the cylinder surface when it drifts inside the cylinder.  Note that surface nodes moving &lt;br /&gt;
 out of the cylinder are already handled by Cylinder_Remesh.&lt;br /&gt;
&lt;br /&gt;
See [[PARADISCYL:Cylinder-Project_surface_node | M12 Project surface nodes ]].&lt;br /&gt;
&lt;br /&gt;
3. MobilityLaw_BCC_glide.c&lt;br /&gt;
&lt;br /&gt;
 Modify the mobility of surface node /* version 3 */ so that they are kept simultaneously on the&lt;br /&gt;
 surface and its slip plane.  This algorithm works in two steps.  First, the velocity is made to&lt;br /&gt;
 satisfy all the slip plane glide constraints (copied from FCC_0 mobility law of bulk).  Then the&lt;br /&gt;
 surface normal is computed.  The surface node velocity is adjusted by adding a component parallel to&lt;br /&gt;
 the surface dislocation segment, so that the velocity becomes orthogonal to the surface normal.&lt;br /&gt;
&lt;br /&gt;
 The mobility (magnitude) of the surface node is made to be 2 (or 1, or 3, hard coded) times faster &lt;br /&gt;
 than the bulk.  (Search for keyword: scale).  This mobility enhancement is applied to a region near&lt;br /&gt;
 the cylinder surface (r &amp;gt; 0.8 R_cylinder) with a linear interpolation.&lt;br /&gt;
&lt;br /&gt;
 Added codes to choose glide planes for surface nodes based on the force on the force.  This force&lt;br /&gt;
 contains contributions from PK force (due to applied stress and other dislocations) and line tension&lt;br /&gt;
 force (if any).  Image stress does not contribute to this force and the image stress is supposed to&lt;br /&gt;
 be turned off when running with these codes.&lt;br /&gt;
See [[PARADISCYL:Cylinder-Surface_cross_slip  | M10 Surface multiplication  ]].&lt;br /&gt;
&lt;br /&gt;
 A threshold stress is applied to all nodes to mimic the Peierls stress behavior in BCC metals.  &lt;br /&gt;
 (Maybe the surface node has lower Peierls stress.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;We need to clean up this file.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Collision.c&lt;br /&gt;
 Added lines to turn off collision if param-&amp;gt;collisionoMethod is specified as a negative number &lt;br /&gt;
 (in the input file).&lt;br /&gt;
&lt;br /&gt;
5. cylinder.c&lt;br /&gt;
 In function CYL_stress_boundary(), a minus sign is added in computing the surface traction from &lt;br /&gt;
 the infinite stress:&lt;br /&gt;
          tr[j+i*nq] = -cylstress[0][0];&lt;br /&gt;
          tq[j+i*nq] = -cylstress[0][1];&lt;br /&gt;
          tz[j+i*nq] = -cylstress[2][0];&lt;br /&gt;
&lt;br /&gt;
6. gridstress.c&lt;br /&gt;
 Added lines to scale the image stress calculation when the cylinder radius is not 1.  This removes&lt;br /&gt;
 the (old) constraint that the cylinder radius has to be one.&lt;br /&gt;
&lt;br /&gt;
See [[PARADISCYL:Scale-Rule | M04 How units are scaled]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6. Remesh.c, Cylinder_Remesh.c&lt;br /&gt;
 Make substitutions: SURFACE_NODE -&amp;gt; CYLINDER_SURFACE_NODE.  &lt;br /&gt;
 &#039;&#039;&#039;This is supposed to be handled by translation&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
7. SplitSurfaceNodes.c PredictiveCollision.c ProximityCollision.c&lt;br /&gt;
 - For the surface node split (not implemented yet)&lt;br /&gt;
&lt;br /&gt;
==Cylinder Code Algorithm==&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Algorithm&amp;diff=5615</id>
		<title>PARADISCYL:Cylinder-Algorithm</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Algorithm&amp;diff=5615"/>
		<updated>2011-12-03T06:25:19Z</updated>

		<summary type="html">&lt;p&gt;Iryu: /* List of Files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Cylinder Code Algorithm &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This wiki page describes the ParaDiS Cylinder code v.2.5.1.  This version of the Cylinder code is created by a &#039;&#039;translation&#039;&#039; from the ParaDiS ThinFilm code v.2.5.1, with subsequent modifications.  In this wiki page, we only describe the difference between the Cylinder code and the &#039;&#039;translated&#039;&#039; ThinFilm code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==List of Files==&lt;br /&gt;
&lt;br /&gt;
The following is a list of all files modified manually after the &#039;&#039;translation&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
1. AllSegmentStress.c &lt;br /&gt;
 Changes are made in this file to construct the test cases.&lt;br /&gt;
&lt;br /&gt;
 A new function AllSegmentStress_no_cell_test1() is added, which computes the stress field of a&lt;br /&gt;
 infinite straight dislocation (analytic expression) for Test Case 1 only.  This function is activated&lt;br /&gt;
 when CYL_TEST1 is defined (in the makefile).&lt;br /&gt;
&lt;br /&gt;
 Function AllSegmentStress_no_cell() is modified to account for periodic images in Z direction.&lt;br /&gt;
 A local variable NimgPBC is hard coded.  For each dislocation segment, NimgPBC number of its images&lt;br /&gt;
 are included in the stress calculation.  &#039;&#039;&#039;We should move this to Param.h.&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
 Macros (#ifdef &#039;s) are added to make the Cylinder code use FULL_N2_FORCES when _CYL_TEST23 is defined. &lt;br /&gt;
 The same changes also affect these files: Initialize.c, LocalSegForce.c,  NodeForce.c.&lt;br /&gt;
&lt;br /&gt;
2. Cylinder_Remesh.c&lt;br /&gt;
 In function Cylinder_Remesh(), added new rules to remove surface debris (to increase time step).&lt;br /&gt;
 Surface debris are defined as dislocation line consisting of two or three segments with two&lt;br /&gt;
 (end) surface nodes. &lt;br /&gt;
&lt;br /&gt;
See [[PARADISCYL:Cylinder-Remove_surface_debris | M11 Remove surface debris ]].&lt;br /&gt;
 A new function ProjectSurfaceNodes() is defined to project nodes flagged by CYLINDER_SURFACE_NODE&lt;br /&gt;
 back to the cylinder surface when it drifts inside the cylinder.  Note that surface nodes moving &lt;br /&gt;
 out of the cylinder are already handled by Cylinder_Remesh.&lt;br /&gt;
&lt;br /&gt;
See [[PARADISCYL:Cylinder-Project_surface_node | M12 Project surface nodes ]].&lt;br /&gt;
&lt;br /&gt;
3. MobilityLaw_BCC_glide.c&lt;br /&gt;
&lt;br /&gt;
 Modify the mobility of surface node /* version 3 */ so that they are kept simultaneously on the&lt;br /&gt;
 surface and its slip plane.  This algorithm works in two steps.  First, the velocity is made to&lt;br /&gt;
 satisfy all the slip plane glide constraints (copied from FCC_0 mobility law of bulk).  Then the&lt;br /&gt;
 surface normal is computed.  The surface node velocity is adjusted by adding a component parallel to&lt;br /&gt;
 the surface dislocation segment, so that the velocity becomes orthogonal to the surface normal.&lt;br /&gt;
&lt;br /&gt;
 The mobility (magnitude) of the surface node is made to be 2 (or 1, or 3, hard coded) times faster &lt;br /&gt;
 than the bulk.  (Search for keyword: scale).  This mobility enhancement is applied to a region near&lt;br /&gt;
 the cylinder surface (r &amp;gt; 0.8 R_cylinder) with a linear interpolation.&lt;br /&gt;
&lt;br /&gt;
 Added codes to choose glide planes for surface nodes based on the force on the force.  This force&lt;br /&gt;
 contains contributions from PK force (due to applied stress and other dislocations) and line tension&lt;br /&gt;
 force (if any).  Image stress does not contribute to this force and the image stress is supposed to&lt;br /&gt;
 be turned off when running with these codes.&lt;br /&gt;
See [[PARADISCYL:Cylinder-Surface_cross_slip  | M10 Surface multiplication  ]].&lt;br /&gt;
&lt;br /&gt;
 A threshold stress is applied to all nodes to mimic the Peierls stress behavior in BCC metals.  &lt;br /&gt;
 (Maybe the surface node has lower Peierls stress.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;We need to clean up this file.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Collision.c&lt;br /&gt;
 Added lines to turn off collision if param-&amp;gt;collisionoMethod is specified as a negative number &lt;br /&gt;
 (in the input file).&lt;br /&gt;
&lt;br /&gt;
5. cylinder.c&lt;br /&gt;
 In function CYL_stress_boundary(), a minus sign is added in computing the surface traction from &lt;br /&gt;
 the infinite stress:&lt;br /&gt;
          tr[j+i*nq] = -cylstress[0][0];&lt;br /&gt;
          tq[j+i*nq] = -cylstress[0][1];&lt;br /&gt;
          tz[j+i*nq] = -cylstress[2][0];&lt;br /&gt;
&lt;br /&gt;
6. gridstress.c&lt;br /&gt;
 Added lines to scale the image stress calculation when the cylinder radius is not 1.  This removes&lt;br /&gt;
 the (old) constraint that the cylinder radius has to be one.&lt;br /&gt;
&lt;br /&gt;
See [[PARADISCYL:Scale-Rule | M04 How units are scaled]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6. Remesh.c, Cylinder_Remesh.c&lt;br /&gt;
 Make substitutions: SURFACE_NODE -&amp;gt; CYLINDER_SURFACE_NODE.  &lt;br /&gt;
 &#039;&#039;&#039;This is supposed to be handled by translation&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
7. SplitSurfaceNodes.c PredictiveCollision.c ProximityCollision.c&lt;br /&gt;
 - For the surface node split (not implemented yet)&lt;br /&gt;
&lt;br /&gt;
==Cylinder Code Algorithm==&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=ParaDiS_Cylinder_Code_Manuals&amp;diff=5614</id>
		<title>ParaDiS Cylinder Code Manuals</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=ParaDiS_Cylinder_Code_Manuals&amp;diff=5614"/>
		<updated>2011-12-03T06:22:06Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;UL&amp;gt;&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:How-To-Install | M01 How to install]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Test-Run | M02 Test Run]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-Algorithm  | M03 Cylinder code algorithm  ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Scale-Rule | M04 How units are scaled]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:How-To-Get-Nodal-Force | M05 How to get nodal force data]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-Benchmark | M06 Benchmarks to check PBC ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-Benchmark2 | M07 Benchmarks to check traction boundary condition ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-bug | M08 Discontinuites in stress at the cell boundary ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-test | M09 Test Cases  ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-Surface_cross_slip  | M10 Surface multiplication  ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-Remove_surface_debris | M11 Remove surface debris ]]&lt;br /&gt;
&amp;lt;LI&amp;gt;[[PARADISCYL:Cylinder-Project_surface_node | M12 Project surface nodes ]]&lt;br /&gt;
&amp;lt;/UL&amp;gt;&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
	<entry>
		<id>http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5613</id>
		<title>PARADISCYL:Cylinder-Project surface node</title>
		<link rel="alternate" type="text/html" href="http://micro.stanford.edu/mediawiki/index.php?title=PARADISCYL:Cylinder-Project_surface_node&amp;diff=5613"/>
		<updated>2011-12-03T06:17:04Z</updated>

		<summary type="html">&lt;p&gt;Iryu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;FONT SIZE=&amp;quot;+3&amp;quot; color=&amp;quot;darkred&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;&lt;br /&gt;
Project surface nodes &amp;lt;/STRONG&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;DIV&amp;gt;&lt;br /&gt;
&amp;lt;P ALIGN=&amp;quot;CENTER&amp;quot;&amp;gt;&amp;lt;STRONG&amp;gt;ill Ryu and Wei Cai&amp;lt;/STRONG&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/DIV&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the cylinder code, surface nodes need to stay on the surface of the cylinder. If they move outside the cylinder, it can be handled by Cylinder_Remesh(). However, if they move inside cylinder surface, it make a bug. In this Wiki page describe how to project the surface nodes when they moves inside the cylinder surface.&lt;/div&gt;</summary>
		<author><name>Iryu</name></author>
	</entry>
</feed>