source: trunk/MESOSCALE_DEV/MANUAL/SRC/installation.tex @ 214

Last change on this file since 214 was 214, checked in by aslmd, 13 years ago

MESOSCALE: finished clean-up of SIMU directory. no more links in MESOSCALE/LMDZ.MARS directories, the actual specific files are here.

File size: 11.6 KB
RevLine 
[209]1\chapter{Installing the model}
2
3\vk
4This chapter is meant for first time users of the LMD Martian Mesoscale Model. We describe how to install the model on your system. Experience with either the terrestrial WRF mesoscale model or the LMD Martian GCM is not absolutely required,
5although it would help you getting more easily through the installation process.
6
7\mk
8\section{Prerequisites}
9
10\sk
11\subsection{General requirements}
12
13\sk
14In order to install the LMD Martian Mesoscale Model, please ensure the following prerequisites:
15\begin{citemize}
16\item your computer is connected to the internet;
17\item you have~\ttt{200 Mo} free disk space available;
18\item your OS is Linux\footnote{The model was also successfully compiled on MacOSX; ``howto" information is available upon request but could have become obsolete on recent versions of Apple hardware and software. It is probably possible to compile the model on Windows using Cygwin but this has not implemented nor tested. You are kindly advised to install a Linux distribution on your computer (e.g. Ubuntu, Debian, Fedora, ...).} with a decent set of basic commmands (\ttt{sed}, \ttt{awk}, \ldots);
19\item at least one of the following Fortran compilers is installed on your computer
20\begin{itemize}
21\item Portland Group commercial compiler \ttt{pgf90}
22\item G95 free compiler\footnote{Sources and binaries available on \url{http://www.g95.org}} \ttt{g95} 
23\item Intel commercial compiler \ttt{ifort} 
24\end{itemize}
25\item your C compiler is \ttt{gcc} and C development libraries are included;
26\item \ttt{bash}, \ttt{m4} and \ttt{perl} are installed on your computer;
27\item \ttt{netCDF} libraries\footnote{The outputs from model computations are in netCDF format. This is a convenient self-describing file format widely used in atmospheric science and data analysis. Further information and downloads can be found in \url{http://www.unidata.ucar.edu/software/netcdf}.} have been compiled \emph{on your system with the Fortran compiler suite you aimed to use to compile the model}. Three environment variables associated with the \ttt{NETCDF} libraries must be defined with the following commands\footnote{Note that all command lines proposed in this document are defined in \ttt{bash} script language}:
28\begin{verbatim}
29declare -x NETCDF=/disk/user/netcdf 
30declare -x NCDFLIB=$NETCDF/lib       
31declare -x NCDFINC=$NETCDF/include       
32\end{verbatim}
33\end{citemize} 
34
35\sk
36\begin{finger}
37\item 
38You might also find useful -- though not mandatory -- to install on your system the following software:
39\begin{citemize}
40\item \ttt{ncview}\footnote{ \url{http://meteora.ucsd.edu/~pierce/ncview\_home\_page.html} }: tool to visualize the contents of a netCDF file;
41\item \ttt{nco}\footnote{ \url{ http://nco.sourceforge.net } }: tools to manipulate and modify netCDF files;
42\item \ttt{epd}\footnote{ \url{ http://www.enthought.com/products/getepd.php }. A complete version is available free of charge for students and employees at degree-granting institutions. A limited version with essential librairies is available free of charge for any user. }: the python distribution suite packaged by Enthought, including many librairies for plotting, scientific computations, data analysis...
43\end{citemize}
44\end{finger}
45
46\sk
47Parallel computations with the Message Passing Interface (MPI) standard are supported by the LMD Martian Mesoscale Model. If you want to use this capability, you would have to add the installation of MPICH2 as a additional prerequisite. Once the installation is completed, it is required to define the environment variable \ttt{\$WHERE\_MPI} to point in your \ttt{mpich} \ttt{bin} directory, even if you added the \ttt{\$LMDMOD/MPI/mpich2-1.0.8/bin} directory to your \ttt{\$PATH} variable.
48
49\begin{finger}
50\item \scriptsize Here is a brief ``how-to" to install MPICH2, although this surely does not replace reading carefully installation notes and choosing what installation suits best your system. Please download the current stable version of the sources (e.g. we choose here an old version \ttt{mpich2-1.0.8.tar.gz} to illustrate the commands) on the MPICH2 website \url{http://www.mcs.anl.gov/research/projects/mpich2} and install the MPICH2 utilities by the following commands:
51\begin{verbatim}
52mkdir $LMDMOD/MPI
53mv mpich2-1.0.8.tar.gz $LMDMOD/MPI
54cd $LMDMOD/MPI
55tar xzvf mpich2-1.0.8.tar.gz
56cd mpich2-1.0.8
57./configure --prefix=$PWD --with-device=ch3:nemesis > conf.log 2> conferr.log &
58# please wait...
59make > mk.log 2> mkerr.log &
60declare -x WHERE_MPI=$LMDMOD/MPI/mpich2-1.0.8/bin
61\end{verbatim}
62\normalsize
63\end{finger}
64
65\sk
66\subsection{Compiling the terrestrial WRF model}
67
68\sk The LMD Martian Mesoscale Model is based on the terrestrial NCEP/NCAR ARW-WRF Mesoscale Model. As a first step towards the compilation of the Martian version, we advise you to check that the terrestrial model compiles on your computer with either \ttt{g95} or \ttt{pgf90} or \ttt{ifort}. On the ARW-WRF website \url{http://www.mmm.ucar.edu/wrf/users/download/get\_source.html}, you will be allowed to freely download the model after a quick registration process (click on ``New users"). Make sure to download the version 2.2 of the WRF model and copy the \ttt{WRFV2.2.TAR.gz} archive to your current working directory. Then please extract the model sources and configure the compilation process:
69\begin{verbatim}
70tar xzvf WRFV2.2.TAR.gz
71cd WRFV2
72./configure
73\end{verbatim}
74
75\sk
76The \ttt{configure} script analyzes your architecture and proposes you several possible compilation options. Make sure to choose the ``single-threaded, no nesting" option related to either \ttt{g95} (should be option $13$ on a $32$~bits Linux PC) or \ttt{pgf90} (should be option $1$ on a $32$~bits Linux PC) or \ttt{ifort}. The next step is then to compile the WRF model by choosing the kind of simulations you would like to run. A simple and direct test consists in trying to compile the idealized case of a 2D flow impinging on a small hill:
77\begin{verbatim}
78./compile em_hill2d_x > log_compile 2> log_error &
79\end{verbatim}
80%
81\begin{finger} \item In case you encounter problems compiling the ARW-WRF model, please read documentation on the website \url{http://www.mmm.ucar.edu/wrf/users}, contact the WRF helpdesk or search the web for your error message. Our team will not be able to offer support for the LMD Martian Mesoscale Model if the ARW-WRF model does not compile and run on your system. \end{finger}
82
83\sk
84If the compilation is successful, the file \ttt{log\_error} should be empty or only reporting few warnings). In the \ttt{main} folder two executables \ttt{ideal.exe} and \ttt{run.exe} should be found and allow you to run the test simulation:
85\begin{verbatim}
86cd test/em_hill2d_x
87./ideal.exe
88./wrf.exe
89\end{verbatim}
90
91\sk
92During the simulation, the time taken by the computer to perform integrations at each dynamical timestep  is displayed in the standard output. The simulation should end with a message \ttt{SUCCESS COMPLETE WRF}. The model results are stored in a \ttt{wrfout} netCDF data file you might like to browse with a \ttt{NETCDF}-compliant software such as \ttt{ncview}, or read with your favorite graphical software.
93%
94\begin{finger} \item If you compiled the model with \ttt{g95}, \ttt{ideal.exe} will probably complain about an error reading the namelist. Please move the line \ttt{non\_hydrostatic} below the line \ttt{v\_sca\_adv\_order} in the \ttt{namelist.input} file to solve the problem. \end{finger}
95
96\mk
97\section{Main installation of the model sources}
98
99\sk
100\subsection{Method 1: You were given a \ttt{LMD\_MM\_MARS.tar.gz} archive}
101
102\sk
103Please set the environment variable \ttt{\$LMDMOD} to point at the directory where you will install the model and define the environment variable \ttt{\$MMM} as \ttt{\$LMDMOD/LMD\_MM\_MARS}. Copy the \ttt{LMD\_MM\_MARS.tar.gz} file in the \ttt{\$LMDMOD} directory and extract the files. Then execute the \ttt{prepare} script that would do some necessary installation tasks\footnote{Deflate the various compressed archives contained into \ttt{LMD\_MM\_MARS}, download the ARW-WRF sources from the web, apply a (significant) ``Martian patch" to these sources and build the structure of your \ttt{LMD\_MM\_MARS} directory} for you:
104%
105\begin{verbatim}       
106declare -x LMDMOD=/disk/user/MODELS
107declare -x MMM=$LMDMOD/LMD_MM_MARS
108cp LMD_MM_MARS.tar.gz $LMDMOD
109cd $LMDMOD
110tar xzvf LMD_MM_MARS.tar.gz
111cd $LMDMOD/LMD_MM_MARS
112./prepare
113\end{verbatim}
114
115\sk
116\subsection{Method 2: You were given a \ttt{svn} link \ttt{the\_link}}
117
118\sk
119\emph{You must have Subversion (\ttt{svn}) installed on your system to follow this method}. Please use the name of our server repository combined to an \ttt{svn checkout} command to get the model sources\footnote{At this stage, it is essential to have registered to the WRF website (see foreword) because our server contains some part of the ARW-WRF sources.}. Please also set the environment variable \ttt{\$LMDMOD} and \ttt{\$MMM}:
120
121\begin{verbatim}
122svn checkout the_link -N the_name_of_your_local_destination_folder
123cd the_name_of_your_local_destination_folder
124svn update LMDZ.MARS MESOSCALE
125cd MESOSCALE
126declare -x LMDMOD=$PWD
127declare -x MMM=$LMDMOD/LMD_MM_MARS
128\end{verbatim}
129
130\sk
131The first download of the model sources could be a bit long. Compared to method~$1$, this method~$2$ using \ttt{svn} would allow you to easily get the latest updates and bug fixes done on the LMD Martian Mesoscale Model by the development team\footnote{If you are not interested by this feature, please replace the command line featuring \ttt{svn checkout} by this command line \ttt{svn export the\_link/LMDZ.MARS the\_link/MESOSCALE} }:
132
133\begin{verbatim}
134cd the_name_of_your_local_destination_folder
135svn update LMDZ.MARS MESOSCALE
136svn info | more
137\end{verbatim}
138
139\mk
140\section{Structure of the \ttt{LMD\_MM\_MARS} directory}
141
142\sk
143Please check the contents of the \ttt{LMD\_MM\_MARS} and the \ttt{LMD\_MM\_MARS/SRC} directories by the following command line:
144\begin{verbatim}
145ls $MMM
146ls $MMM/SRC
147\end{verbatim}
148
149\sk
150Contents of~\ttt{LMD\_MM\_MARS} directory:
151\begin{citemize}
[214]152\item \ttt{makemeso}: this is the \ttt{bash} script to compile the model.
153\item \ttt{SRC}: this is a directory containing the model sources.
154\item \ttt{SIMU}: this is a directory containing scripts and files for an advanced use.
155\item \ttt{WPS_GEOG}: this is a directory containing static data for the model (topography, soil properties, etc...)
[209]156\end{citemize}
157
158\sk
159Contents of~\ttt{LMD\_MM\_MARS/SRC} directory:
160\begin{citemize}
[214]161\item \ttt{WRFV2}: this is a directory containing main model sources (modified WRF dynamics + LMD physics in \ttt{mars_lmd*}).
162\item \ttt{PREP\_MARS}: this a directory containing sources for the first preprocessing step.
163\item \ttt{WPS}: this a directory containing sources for the second preprocessing step.
164\item \ttt{POSTPROC}: this a directory containing postprocessing sources.
165\item \ttt{LES} and \ttt{LESnophys_}: these are directories containing sources for Large-Eddy Simulations.
[209]166\end{citemize}
167
168\sk
[214]169Contents of~\ttt{LMD\_MM\_MARS} directory:
170\begin{citemize}
171\item 
172
173\item the sources directory \ttt{SRC};
174\item the static data directory \ttt{WPS\_GEOG};
175\item the simulation utilities directory \ttt{SIMU}.
176\end{citemize}
177
178
179
180\sk
[209]181Contents of~\ttt{LMD\_MM\_MARS/WPS\_GEOG} directory:
182\begin{citemize}
183\item three directories \ttt{albedo\_GCM}, \ttt{mola\_GCM}, \ttt{thermal\_GCM}, \ttt{res}
184\item one data file \ttt{dust\_tes.nc}
185\end{citemize}
186
187\sk
188The directory~\ttt{LMD\_MM\_MARS/SIMU} contains many files and directories not important at this stage. If you used method~$2$, you will probably notice that other directories than~\ttt{LMD\_MM\_MARS} are present in \ttt{\$LMDMOD}, but those are not important at this stage.
189
[214]190%LMD_MM_MARS/  LMD_MM_MARS_User_Manual.pdf  LMDZ.MARS/  LMDZ.MARS.new
191
[209]192\clearemptydoublepage
Note: See TracBrowser for help on using the repository browser.