This section will briefly describe each of the individual input items (and their data types) a user needs in order to use this code. The following list of variables are the same as in the serial code, except for the flag, pflag, which is used for timing information. To find these variables in the code, search for occurrences of USER − they are located nearby. The variables are listed in the order in which they are found in the program. The input that is generic to all the codes will be presented first and then in each subsection, a description of the specific input per program is presented.
1. nx,ny,nz (integer*4): The dimensionality of the data, i.e. pix(nx, ny, nz).
2. nphase (integer*4): The number of phases represented in your microstructure.
3. gtest (double precision): The stopping criteria which is compared to gg (=gb x gb).
4. pflag (integer*4): A flag used for printing timing information. 0 suppresses printing and 1 prints out all per processor timing information.
5. Input file name (Unit 9) (character string): The name of the file which contains the 3-D image under investigation. The input file contains 2-byte integers in which the value of each element represents the phase at that position in the microstructure (1,2,3,...,nphase).
6. Output file name (Unit 7) (character string): The main set of output is generated and placed into this file as the job proceeds. Description of its contents is in the Output section.7. npoints (integer*4): This integer tells the program how many distinct input files will be run. Typically this value equals 1, but can be changed.
8. kmax (integer*4): Maximum number of times subroutine DEMBX_MPI will be called.
9. ldemb (integer*4): Number of conjugate gradient steps performed during each call of DEMBX_MPI.