December 17, 1996 MOCV32 - Version: 3.2.2 1996/01/22 Method Of Characteristics ground-water flow and transport model For assistance, enhancement requests, or bug reports contact the Hydrologic Analysis Software Support Team via email at h2osoft@usgs.gov. See the file doc/moc.txt for descriptions, references, and additional contacts for this software. Instructions for installation, execution, and testing are provided below. TABLE OF CONTENTS A. FILES B. EXTRACTING FILES C. COMPILING D. INSTALLING E. RUNNING THE SOFTWARE F. TESTING A. FILES The following distribution packages (containing the software, test data sets, and information files) are currently available for UNIX systems: mocv32.DGUX.tar.gz - Compiled for Data General AViiON under DG/UX 5.4 mocv32.Solaris.tar.gz - Compiled for Sun UltraSPARC 2 under Solaris 2.5 mocv32.SGI.tar.gz - Compiled for Silicon Graphics Indigo (32-bit) under Irix Release 6.0.1 mocv32.source.tar.gz - Source code For use on Data General workstations, the program source code consists of the following files (found in the mocv32/src directory): mocv32.f Makefile -- input instructions to the UNIX "make" utility for compiling MOC B. EXTRACTING FILES The compressed tar file, named mocv32.OS.tar.gz, contains all the files needed to install and test MOCV32 on a computer with a particular operating system, where OS is a string indicating the operating system the distribution is intended for. If a version is not available for your operating system, the file mocv32.source.tar.gz contains the source code and all other files needed to compile, install, and test the software on a UNIX-based computer. For either type of distribution, the directory mocv32 is created (or overwritten) when the files are extracted from the tar file. If the mocv32 directory already exists, you may want to delete or rename it before extracting the files. The following are the steps to extract the files from a distribution tar file. 1. If the tar file is not already in the directory under which you want the distribution installed, move it there. For example: mv mocv32.____.tar.gz /usr/opt/wrdapp 2. If you are not in the directory where the tar file is located, go there. For example: cd /usr/opt/wrdapp 3. Uncompress the distribution file. For example: gunzip mocv32.____.tar.gz 4. Extract the distribution files from the tar file. For example: tar -xof mocv32.___.tar This creates the following directory structure (the contents of each directory are shown to the right): mocv32 ; copy of this readme file `-----bin ; compiled executable `-----doc ; documentation files (manual page, update notes) `-----src ; Makefile and source code `-----test ; scripts to run verification tests `-----data ; standard data sets used in verification tests Notes: a) The bin directory is not included in the mocv32.source.tar.gz distribution (it is created during compilation). b) Source code is included only with the mocv32.source.tar.gz distribution. c) It is recommended that no user files be kept in the mocv32 directory structure. If you do plan to put files in the mocv32 directory structure, do so only by creating subdirectories of mocv32. C. COMPILING If a compiled version of the software is not available for your computer, or if you want to build the executable yourself, follow the instructions in this section. If you have retrieved a pre-compiled distribution of the software, skip to the Installing section below. The source code is provided in the mocv32.source.tar.gz distribution so that users can generate the executable themselves. No support can be provided for users generating their own versions of the software. In general, the requirements are a Fortran compiler and a minimal level of knowledge of the compiler and the UNIX operating system. As provided, the Makefile and source code are set up for use on Data General AViiON workstations running the DG/UX operating system. To generate a new executable, do the following: 1. Change directory to the source directory: cd mocv32/src 2. Modify the beginning of the file named Makefile to correctly specify system-dependent variables: F77 Fortran compiler name FFLAGS Fortran compiler flags 3. Use the make program to initiate compilation of the source code and installation of the software: make [BINDIR=directory_for_links] See the Installing instructions below for an explanation of BINDIR. The make will: a. create the directories mocv32/bin and BINDIR if they do not already exist, b. compile the source code, c. place the executable (mocv32) in mocv32/bin, and d. place a link to the executable in BINDIR if specified. D. INSTALLING To make the executable (mocv32) easy to use, it should be installed in a directory included in the user's search path. The Makefile (input instructions to the UNIX make program--located in mocv32/src) contains instructions to optionally place a link in a specified directory to the executable contained in mocv32/bin. Use the following two commands to do this: cd mocv32/src make install [BINDIR=directory_for_links] If BINDIR is specified, a link to the executable is placed in the specified directory. For example, if your search path consists of: /usr/bin:/usr/opt/bin:/usr/local/bin use the command: make install BINDIR=/usr/local/bin to make the executable accessible from any directory without requiring the full pathname of the software's location. Notes: a) Brackets "[xxx]" are used to indicate optional arguments to commands. b) To create and delete a link to the MOCV32 executable file, the installer must have sufficient rights in the directory that BINDIR is set to. E. RUNNING THE SOFTWARE After MOC is properly installed in a directory that is included in your PATH, it can be executed with the command "mocv32". The program prompts for the name of the file containing the input data for the MOC model. MOC generates a file name for MOC output data. If this file does not exist the simulation begins. If the output file exists, you are prompted whether to overwrite the file or quit. F. TESTING Test data sets are provided to verify that the program is correctly installed and running on the system. The tests may also be looked at as examples of how to use the program. The directory "mocv32/test" contains the scripts to run the tests. The directory "mocv32/data" contains the input data and expected results for each test. Tests are usually run in the directory "mocv32/test", but they can be run in any user directory if the installation procedure was completed (make install performed). Run the tests using any of the commands in the table below. To test the installation, change to the mocv32/test directory and type the command: ./test.sh [m [n]] If running from another directory, specify the full path to the script; for example: /usr/opt/wrdapp/mocv32/test/test.sh [m [n]] To test the installation, change to the mocv32/test directory and type the command: ./test.sh [m [n]] where: m = the number of the first test to perform, default=1 n = the number of the last test to perform, default=9 For example: command what happens ------------------ ------------------------------------ ./test.sh runs all of the tests ./test.sh n runs test 'n' through the last test ./test.sh n m runs test 'n' through 'm' After the tests are completed, the results are compared to the expected results. If all goes well, the only differences will be due to different processing times or pathnames. To clean up after the tests, type the command: ./clean.sh NOTE: the standard data sets were created on a Data General AViiON workstation. You may notice slight numeric differences in the results on other computers. These are generally due to different round-off algorithms and the different architecture of the central processing unit chip. The tests are described in the table below. Test is the test number, program is the program used to run the test, and the usage column indicates how a file is used, with i for input, o for output, and i/o for both input and output. test program description of test and files file name & usage ---- ------- ------------------------------------- ----------------- 1 MOC ROCKY MT ARSENAL -- APPROXIMATE SOLUTION MOC control file rmabig.dat i summary of processed data rmabig.out o final concentration data rmabig.cn1 o 2 MOC 60X60 GRID MOC control file big60.dat i summary of processed data big60.out o final concentration data big60.cn1 o 3 MOC PROBLEM SET 1 -- 1-D APPROXIMATION MOC input file one-d.dat i summary of processed data one-d.out o 4 MOC Problem Set 2 MOC control file prob2.dat i summary of processed data prob2.out o initial concentration data prob2.cn0 o final concentration data prob2.cn1 o initial hydraulic head data prob2.hd0 o final hydraulic head data prob2.hd1 o observation well data prob2.obs o hydraulic conductivity data prob2.prm o diffuse recharge/discharge data prob2.rec o saturated thickness data prob2.thk o transmissivity data prob2.trn o velocity data prob2.vel o 5 MOC TEST PROBLEM NO. 3 (STEADY FLOW, 1 WELL, CONSTANT-HEAD BOUNDARIES) MOC control file prob3_78.dat i summary of processed data prob3_78.out o 6 MOC Problem 3 (Steady flow, 1 well, constant-head boundaries, linear sorption) MOC control file prob3_94.dat i summary of processed data prob3_94.out o initial concentration data prob3_94.cn0 o final concentration data prob3_94.cn1 o observation well data prob3_94.o1 o observation well data prob3_94.o2 o 7 MOC ROCKY MT ARSENAL -- APPROXIMATE SOLUTION MOC control file rma.dat i summary of processed data rma.out o 8 MOC Problem Set 2 MOC control file s1.dat i summary of processed data s1.out o 9 MOC Problem Set 2 MOC control file s2.dat i summary of processed data s2.out o velocity data s2.vel o * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Good Luck! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *