How should I compile TMVOC and use executable to run a simulation in the Windows 7 operating system?
Hello everyone,
I have an executable for TMVOC and I am not sure how to use it to run a simulation. I tried to run problem 7 mentioned in the manual on the Windows 7 PC, but it could not work. Could you describe in details how I should do? I am also interested in compiling the codes by myself using intel fortran. Could you tell me how to do it? There are more details on how to compile on a workstation and Linux/Unix system, but there is no information on windows. Thank you very much! I appreciate it.
Fang
9 replies
-
Hi Fang,
To compile TMVOC (and any other TOUGH2 module), do the following:
(1) Create a project that includes all the necessary source files mentioned in the manual and read.me file.
(2) Set the maximum array dimensions necessary for the given EOS module and the problem size.
(3) Rename duplicate subroutines. For TMVOC, these means renaming subroutines FGTAB, RELP, PCAP in file t2f.f (e.g., to xFGTAB, xRELP, xPCAP). You may also replace (or comment out) the CPU timing function in subroutine SEC.
(4) Set the following compiler options (check your compiler manual for the appropriate flag):
- Set the default real type to 8 bytes
- Align common blocks by padding to 8 byte wide fields
- Disable array bound checking
(5) Once the executable (named, e.g., xtmvoc) is generated, copy it to your working directory (or add the directory where the executable resides to your command search path), then (on a PC) open a DOS Command Prompt window, go to the working directory, and (to run sample problem 7, after having prepared all the necessary input files) type:
xtmvoc < r2dl > r2dl.out
Most of this is described in the manual, and all of it is described in the read.me file that comes with the TOUGH2 V2.1 distribution.
I hope this helps!
Stefan
-
Thank you Stefan. This is really helpful and it works for the executable in the TMVOC folder! I will try to compile it by myself following your steps. Thank you again and I appreciate it!
Fang