Juan 12/02/2014: update to PACK-MNH-V5-1-0
[MNH-git_open_source-lfs.git] / A-INSTALL
1 #
2 # Version of PACKAGE MESONH "stand-alone distribution"
3 #              PACK-MNH-V5-1-0
4 #              DATE : 12/02/2014
5 #              VERSION : MESONH MASDEV5_1 + BUG-0  
6 #
7 #  MAP
8 #
9 #        0) TWO WAYS OF DOWNLOADING MESONH
10 #      I-A) DOWNLOAD VIA THE WEB MESONH HOME PAGE
11 #      I-B) DOWNLOAD VIA CVS ANONYMOUS 
12 #       II) CONFIGURING THE MESONH PACKAGE
13 #      III) COMPILING/INSTALLING THE MESONH PACKAGE ON OUR LINUX COMPUTER 
14 #       IV) RUN SOME "SMALL KTEST" EXAMPLES
15 #        V) RECOMPILING YOUR 'OWN' SOURCES ONLY 
16 #       VI) COMPILING/INSTALLING MESONH ON GENCI & ECMWF & METEO COMPUTERS
17 #      VII) "SCANDOLLAR" = SCRIPTING YOUR OWN PROCEDURES 
18 #
19 #     VIII) TROUBLE-SHOOTING
20 #           a) Segmentation violation -> problem of "stack size" limit
21 #           b) Compiler bug with "ifort 10.0.xxx" 
22 #
23 #
24 #  0) TWO WAYS OF DOWNLOADING MESONH
25 #  =================================
26 #
27 #  MESONH sources and executables 
28 #  http://mesonh.aero.obs-mip.fr
29 #  are developed and maintained with the
30 #  CVS tools ( http://www.cvshome.org/ )
31 #
32 #  There are two ways to download the package of
33 #  MESONH containing :
34 #    - sources 
35 #    - makefiles
36 #    - precompile exe 
37 #    - graphic tools
38 #    - basic examples
39 #
40 #  The first way is for VERY BASIC USER OF MESONH 
41 #  via a download of a "tar ball" in the WEB site of MESONH
42 #
43 #  The second way is for USER/DEVELOPER of MESONH
44 #  via the use of the CVS tools and an access via anonymous
45 #  connection with "ssh" to the CVS REPOSITORY of the MESONH package 
46
47 #
48 # REM: It is now strongly recommended, but it's not an obligation, 
49 #      for all users to use de CVS solution, because:
50 #
51 #      * It's far more easy for us ( support team ) to give you some assistance
52 #        in case of trouble ... as the CVS tool permits us to know exactly
53 #         what you have changed in the original PACKAGE
54 #
55 #      * It's much more easy for you to update to the last version ...  
56 #        or at least see the change made for BUGFIX directly on our installation .
57 #
58 #
59 #  So here are explained the two ways <=> mutually exclusif 
60 #
61 #
62 ^L
63 # I-A) DOWNLOAD VIA THE WEB MESONH HOME PAGE
64 # ==========================================
65 #
66 # With your preferred web browser go to the MESONH WEB SITE
67
68 #  http://mesonh.aero.obs-mip.fr/mesonh
69 #     ---> Download
70 #           ---> CVS MESONH
71 #
72 # or directly
73 #
74 # http://mesonh.aero.obs-mip.fr/cgi-bin/mesonh_interne/viewcvs.cgi/MNH-VX-Y-Z
75 #
76 # in the field  "Show files using tag:" 
77 #
78 #    ---> select "PACK-MNH-V5-1-0"
79 #
80 # and then download the file "PACK-MNH-VX-Y-Z.tar.gz" by the link 
81 #
82 #    --> Download tarball
83 #
84 # Then untar the file "PACK-MNH-VX-Y-Z.tar.gz" where you want to,
85 # in your home directory for example:
86 #
87  
88 cd ~
89 tar xvfz PACK-MNH-VX-Y-Z.tar.gz
90
91 #
92 # As the directory did not reflect the last version name move it 
93 # to the right one
94 #
95  
96 mv MNH-VX-Y-Z MNH-V5-1-0
97       
98 #
99 #  Process now to the chapter to configure the MesoNH 
100 #
101 # => II) CONFIGURING THE MESONH PACKAGE
102 #
103 ^L
104 # I-B) DOWNLOAD VIA CVS ANONYMOUS
105 # ===============================
106 #
107 #    a) download the ssh key file "anoncvs.key" for anonymous connection 
108 #    -------------------------------------------------------------------
109 #
110 # With your preferred web browser go to the MESONH WEB SITE
111
112 #  http://mesonh.aero.obs-mip.fr/mesonh
113 #     ---> Download
114 #           ---> CVS PACKAGE MESONH
115 #
116 # or directly
117 #
118 #   http://mesonh.aero.obs-mip.fr/cgi-bin/mesonh_interne/viewcvs.cgi/MNH-VX-Y-Z
119 #
120 # in the field  "Show files using tag:" 
121 #
122 #    ---> select "PACK-MNH-V5-1-0"
123 #
124 #   download the file "anoncvs.key"
125 #
126 #   by  :
127 #         1) a  "left-click" in the "Rev." column 
128 #       + 2) a  "right-click" on "download" 
129 #                   ---> save link to disk
130 #               (Warning :: don't copy the file content with  mouse copy/past 
131 #               because it contains binary-encoded information !!!)
132 #
133 #   then copy this file in your "${HOME}/.ssh/" directory
134 #
135 #   AND VERY IMPORTANT !!!
136 #   Modify the "read/write" permission with:
137
138
139 chmod 600 anoncvs.key
140
141 #
142 #    b) download the config file "config.anoncvs_www"
143 #    ------------------------------------------------ 
144 #
145 #    For METEO-FRANCE & IDRIS & CINES & Laboratoire d'Aerologie computers ( IP address filter )
146 #    ==========================================================================================
147 #
148 #    download the file
149 #
150 #      -->  "config.anoncvs_www" 
151 #
152 #    Then concatened the file content with your "${HOME}/.ssh/config" file
153 #    ( this will define the computer alias "mesonh_anoncvs_www" for future ssh 
154 #      anonymous connections )
155
156 cd ${HOME}/.ssh
157 cat config.anoncvs_www >> config
158
159 #
160 #    FOR OTHER COMPUTERS USE special "config.anoncvs_www" 
161 #    ===================================================
162 #
163 #    if the computer, from which you download the MESONH sources,
164 #    is external to  METEO-FRANCE & IDRIS & CINES & Laboratoire d'Aerologie Laboratoire download this file 
165 #
166 #      --> "config.anoncvs_www_ext" 
167
168 cd ${HOME}/.ssh
169 cat config.anoncvs_www_ext >> config
170
171 #
172 #    OR for ECMWF computer ( c1a ) download this config file 
173 #    ( to bypass the gateway filter ) 
174 #
175 #      --> "config.anoncvs_www_ecmwf"
176 #
177
178 cd ${HOME}/.ssh
179 cat config.anoncvs_www_ecmwf >> config
180
181 #
182 #    c) Setting CVS variables
183 #    ------------------------
184 #
185 #    set the CVS_RSH et CVSROOT like this
186 #    ( in your ".profile" or ".bashrc" file )
187 #
188
189 export CVS_RSH=ssh
190 export CVSROOT=:ext:mesonh_anoncvs_www:/home/cvsroot
191
192 #
193 #   c)  Checking out the "MESONH PACKAGE"  
194 #   -------------------------------------
195 #
196 #   Now, from your "$HOME" directory for example 
197 #   extract the version "PACK-MNH-V5-1-0"
198 #   of the directory "MNH-VX-Y-Z" from the
199 #   cvs repository : 
200
201 cd ~
202 cvs co -r PACK-MNH-V5-1-0 -d MNH-V5-1-0 MNH-VX-Y-Z
203
204 #
205 # WARNING : don't use a sub-directory with dot "." in the name
206 #            ---> you could have some trouble when compiling mesonh
207 #
208 #  this will create in your "$HOME" a directory "MNH-V5-1-0" 
209 #  which contains of the last revision named "PACK-MNH-V5-1-0" 
210 #  of the MESONH PACKAGE 
211 #
212 #  The advantage of this way of downloading 
213 #  the package is that in the future you 
214 #  could check/update quickly differences with
215 #  the new version of the package without having
216 #  to download entirely the full package
217 #
218 #  Suppose that a new version for example
219 #  "PACK-MNH-V5-1-1" is announced ...
220 #
221 #  To see the differences with your working copy
222 #  do
223 #
224
225 cd ~/MNH-V5-1-0
226 cvs diff -r PACK-MNH-V5-1-1
227
228 #
229 #  And to upgrade your working copy
230 #
231
232 cd ~/MNH-V5-1-0
233 cvs update -r PACK-MNH-V5-1-1 -d -P
234
235 #
236 # At any time you could also check for "uptodate" 
237 # changes in the CVS "branch" dedicated to the MNH410 version
238 # before the official release of the "bugN+1" bugfix
239 #
240
241 cvs diff -r MNH410-BUG-branch
242   
243 #
244 # An at "your own risk" update to this
245 # ( not yet official ) version by
246 #
247
248 cd ~/MNH-V5-1-0
249 cvs update -r MNH410-BUG-branch -d -P
250
251 #
252 #  Well, the use of CVS is not under the scope of this "INSTALL" document ...
253 #
254 #   Now go to then next chapter 
255 #
256 #   => II) CONFIGURING THE MESONH PACKAGE
257 #
258 #
259 ^L
260 #
261 # II) CONFIGURING THE MESONH PACKAGE
262 # ==================================
263 #
264 #    For the installation process, you could now
265 #    use the "./configure" script like this 
266 #
267
268 cd ~/MNH-V5-1-0/src
269 ./configure
270 . ../conf/profile_mesonh
271
272 #
273 #    this will create a configuration file "profile_mesonh" with
274 #    an extension reflecting the different "choices" made automatically
275 #    to match the computer on which you want to install MESONH
276 #   
277 #    WARNING :
278 #    =========
279 #    On GENCI & ECMWF & METEO/CNRM  computers, the './configure' is tuned to 
280 #    identify the computer on which the command is used
281 #    so the good compiler,  mpi & cdf library , etc ... 
282 #    are automatically chosen
283
284 #    /!\ This is not the case in your "own" personal Linux computer ...
285 #    So is up to you to set the ARCH variable correctly
286 #    ARCH     = Fortran compiler to use,
287 #    VER_MPI  = version of MPi to, use 
288 #    OPTLEVEL = 
289 #    etc ...
290 #    and all the other environnement variables . 
291
292 #    Be default, for an unknow computer, you will have  :
293 #
294 #   - the compiler choosen to be "gfortran" => ARCH=LXgfortran
295 #   - the mpi library to be the MPIVIDE  => VER_MPI=MPIVIDE
296 #     ( empty mpi library coming with MESONH package = no  parallel run possible )
297 #   - the level compiler optimization   => OPTLEVEL=DEBUG
298 #     (  for development purpose ,fast compilation & debugging )   
299 #       
300 #    SO IF NEEDED:
301 #    ============
302 #    you could change the default FLAG compiler/mpi/optlevel
303 #    like this, for example 
304
305 export ARCH=LXifort        # Use Intel "ifort" compiler on LX=linux Plateform 
306 export VER_MPI=MPIAUTO     # Use MPI with compiler wrapper 'mpif90', for computer having this wrapper installed 
307 export OPTLEVEL=O2         # Compile in O2 , 4 time faster then DEBUG, but least error check 
308
309 ./configure
310
311 #    and then source/load the new generate file
312
313 . ../conf/profile_mesonh.LXifort.MNH-V5-1-0.MPIAUTO.O2
314
315 #
316 #  REM: 
317 #  ====
318 #
319 #  - Options specific to compile/architecture, like 'OPTLEVEL' are defined inside the "Rules.${ARCH}.mk" .
320 #
321 #  - Options specific to library like "mpi"="VER_MPI" or "cdf"="VER_CDF" are defined inside "Makefile.MESONH.mk"
322 #
323 #  - If need, for adaptation to your requirement, look inside the files and changes options for your needs .   
324 #  
325 #  - On PC-Linux, if needed , look in the "MesonhTEAM Wiki" to know how to compile the library MPI = OPEN-MPI , with MESONH
326 #
327 #    http://mesonh.aero.obs-mip.fr/teamwiki/MesonhTEAMFAQ/PC_Linux
328 #      --> Compilation of OPEN-MPI
329
330 ^L
331 #   
332 # III) COMPILING/INSTALLING THE MESONH PACKAGE ON OUR LINUX COMPUTER 
333 # ==================================================================
334 #
335 # go to the directory  "src"
336 #
337
338 cd  ~/MNH-V5-1-0/src
339
340 #
341 # if you have not already configured your MESONH environment
342 # either manually in your interactive session 
343 # or automatically through your .profile (or .bashrc), do:
344 #
345 # REM: use the configure file corresponding to your needs, cf. previous chapter 
346
347 . ../conf/profile_mesonh{use_the_good_version_here} 
348
349 #
350 # run the compilation by
351 #
352
353 (g)make
354
355 #
356 # The compilation will take about 20 minutes on modern PC-Linux ...
357
358 # If you have a multi-processor machine you can speedup
359 # the compilation, for example, on two processors with:
360
361 (g)make -j 2
362
363 #
364 #
365 # The  object files "*.o"  &  main executables of the "MESONH PACKAGE" :
366 #
367 #  MESONH , PREP_IDEAL_CASE , PREP_REAL_CASE , etc ...
368 #
369 #  are compiled in one step and created in the directory
370 #
371 #    dir_obj-$(ARCH).../MASTER
372 #
373 # ( REM: the lib...a is only created and removed at the link phase;
374 #          this allows a parallel compilation of the sources ... ) 
375 #
376 # The exact name of this "dir_obj..." depends on the different environnement
377 # variables set by the "profile_mesonh...." which you have loaded before the compilation.
378 #
379 # This allow by loading different "profile_mesonh.." files to compile in the same
380 # source/installation directory different version of MESONH , with different
381 # compiler, different version of MPI , different USER sources , etc ...
382 #
383 #
384 # To install the new compiled program in the "$SRC_MESONH/exe"
385 # directory, after compilation, just run
386 #
387
388 make installmaster
389
390 #
391 # The executable with their full name, including, $ARCH , compiler
392 # and MPI , level of optimization, will be linked in the "../exe" directory
393
394 # REM: 
395 # ---
396 #      The "make installmaster" need to be done only one time by "version" . 
397 #      If you change/add source only you have to do "make" 
398
399 make
400  
401 #
402 #  IV) RUN SOME "SMALL KTEST" EXAMPLES
403 #  ===================================
404 #
405 #  After compilation & installation you could run
406 #  some basic "KTEST" examples from the "src" directory 
407 #  by running:
408
409 make examples 
410
411 # or by giving one of the "KTEST" names in 
412 #
413 # the list "001_2Drelief 002_3Drelief 003_KW78 004_Reunion 007_16janvier"
414
415 make 004_Reunion
416
417 #
418 #  EXAMPLES USING NCL
419 #  ===================
420 #
421 #  WITH 2 OPTIONS TO CONVERT FROM LFI TO NETCDF FORMAT
422 #  1: with extractdia
423 #  2: with lfi2cdf
424 #  Only for 2 KTEST : 004_Reunion and 007_16janvier
425 #
426
427 make ncl1_examples  # if using extractdia
428
429 #or
430
431 make ncl2_examples  # if using lfi2cdf
432
433 #
434 # Or by giving the KTEST name followed by _ncl1 or _ncl2
435 #
436
437 make 004_Reunion_ncl1
438
439 #or
440
441 make 004_Reunion_ncl2
442
443 ^L
444 #
445 #  V) RECOMPILING YOUR OWN SOURCES ONLY 
446 #  ====================================
447 #
448 #  NOW YOU COULD GENERATE AND RECOMPILE YOUR OWN SOURCES ONLY
449 #  ( like BIBUSER in centralised MESONH version )
450 #
451 #  Suppose you want to create a "MY_MODIF" version ...
452 #
453 # Step-1 : prepare your source directory
454 # ---------------------------------------
455 #
456 # Put your own source in a subdirectory of "${SRC_MESONH}/src" named 
457 #  
458    
459 ${SRC_MESONH}/src/MY_MODIF
460
461 #
462 #  All subdirectories in "MY_MODIF" will be scanned so if you want
463 #  you could make a subdirectory for each component of the MESONH
464 #  Package
465 #
466
467 cp .../mesonh.f90 MY_MODIF/MNH/.
468 cp .../isba.f90   MY_MODIF/SURFEX/.
469
470 #
471 #  /!\ WARNING :
472 #  -------------
473 #   - In this subdirectory put only fortran source you want to compile !!!
474 #   Don't use it as a trash, with old sources file like 'my_source.f90.old'
475 #   or 'tar' files 'mysource.tar' . 
476 #   - All 'spirituous' file will confuse the  'make' commande .   
477 #
478 #   
479 # Step-2 : configure/compiling with VER_USER=...
480 # ----------------------------------------------
481
482 # - Logout of the current session, to be sure to unset all the 
483 #   environnement variables load with the your 'master 'profile_mesonh'   
484 #
485 # - Login again and :
486 #
487 #   - set the variable "VER_USER" with the name of your "USER VERSION",  
488 #   - set also optionnal the , ARCH, VER_MPI ,etc... , you want to use 
489 #  
490 # and run again the "./configure" commande  
491
492 #export ARCH=...
493 #export VER_MPI=...
494 export VER_USER=MY_MODIF
495 ./configure
496
497 #
498 # this will regenerate the "profile-mesonh" file and a copy
499 # of this with the extent  "profile_mesonh...${VER_USER)..."
500 #
501 # as before load it & and compile with the command "make user"
502
503 . ../conf/profile_mesnh...${VER_USER}...
504
505 make user
506
507 # this will compilation Only your sources, and the files depending of your sources
508 # and generate the new executables in your own directory 
509 #
510 #   dir_obj-$(ARCH).../${VER_USER}
511 #
512 #
513 # WARNING : 
514 # ========
515 #  before compiling your own sources be sure that these ones
516 #  are younger than the "*.o" files of the MASTER directory
517 #  if any doubt, at any time use the command 
518 #
519 #      touch *.f*
520 #
521 #     on your sources, and only on yours do that!!!
522 #
523 #
524 # Step-3 : running the examples 
525 # -----------------------------
526 #
527 #
528 # Now if the compilatio is OK,  you could to test this new version with the "make examples"
529 #
530 # First, install the new binaries in the '${SRC_MESONH}/exe' with 
531
532 make installuser
533
534 #   The "make installuser" need to be done only one time by "version" . 
535
536 #
537 # And run the examples, your Version should appear in the name of the executables
538 # used .
539 #
540
541 make examples 
542
543 ^L
544 #
545 #   VI) COMPILING/INSTALLING ON GENCI & ECMWF & METEO COMPUTERS
546 #   ===========================================================
547 #
548 #   After downloading "exactly" like on "any standalone PC" 
549 #   run the "./configure" command :
550 #
551
552 ./configure
553
554 #
555 #  - If you do not have sufficient space in your "$HOME" directory
556 #    install the whole package directly on the ${WORKDIR}
557 #
558 #   WARNING :
559 #   ======== 
560 #    - Think to do a backup of your installation 
561 #    - This space is not more "purged" but a "crash disk" could/will
562 #      probably occur !!!
563
564
565 cd $WORKDIR
566 cvs co -r PACK-MNH-V5-1-0 -d MNH-V5-1-0 MNH-VX-Y-Z
567 cd MNH-V5-1-0/src
568
569 ./configure
570  
571 #   
572 #   Due to limitation in time & memory on interactive connection 
573 #   then compile the MESONH PACKAGE in batch mode with the different "job_make_mesonh*" files
574 #   
575 #   at IDRIS :
576 #   ---------
577 #
578
579 #   - On ADA ( IBM/x3750 ) with :
580
581 llsubmit job_make_mesonh_IBM_ada
582
583 #
584 #
585 #   - On TURING (IBM BG/Q ) : 
586
587 llsubmit job_make_mesonh_BGQ
588 #
589 #
590 #   BACKUP : /!\ backup your work on "gaya"
591 #
592 #   
593 #   at CINES on JADE( SGI/ICE ) :
594 #   ----------------------------
595
596 #   - install the PACKAGE in your "$WORKDIR" 
597 #   - you could compile in interactive mode
598 #
599 #    BACKUP : /!\ backup your work on "/data/${USER}"
600
601
602 #   at ECMWF on c2a ( IBM/SP7 ) :
603 #   ----------------------------
604 #
605 #   - to install MESONH you need more disk space than allowed for 'standard' user ( 150 mb only ... )
606 #     Ask to Dominique Lucas, look this email :
607 #
608 #    http://mesonh.aero.obs-mip.fr/cgi-bin/mesonh_interne/mail2html.cgi?file=2009_09_24_15:31:54
609 #
610 #   - for the compilation use :
611
612 llsubmit job_make_mesonh_cxa
613
614 #
615 #   EXAMPLES ON GENCI & ECMWF PLATFORMS
616 #   ====================================
617 #
618 #  - At IDRIS
619 #
620
621 # on ADA
622
623 llsubmit job_make_examples_IBM_ada
624
625 #on TURING
626
627 llsubmit job_make_examples_BGQ
628
629 #
630 #   - At CINES on JADE( SGI/ICE ) :
631 #
632 # load ".profile_mesonh..." & set the variables :
633  
634 export MONORUN="mpirun -np 1"
635 export MPIRUN="mpirun -np 4 " 
636   
637 # and run with 
638
639 make examples
640
641 #
642 #   - At ECMWF on c2a
643 #
644
645 llsubmit  job_make_examples_cxa
646
647 #
648 # That's all for the basic INSTALLATION of the "MESONH PACKAGE"
649 #  
650
651 #
652 #  VII) "SCANDOLLAR" = SCRIPTING YOUR OWN PROCEDURES 
653 #  ====================================================
654
655 # A small script 'scandollar' is in test in this version of MESONH.
656 # It will help you to build a complete chaining of an experiment. 
657 # The idea is to write some "template" scripts with '$VARIABLE' in the 
658 # Key point. Then 'scandollar' will parse this template files
659 # and generate the file with the variables evaluated ...
660 #
661 # First don't forget to load your "profile_mesonh..."
662 #
663 # So how it work  ...
664 #
665 #  Syntaxe 
666
667 export CONFEXP="YOUR_EXPERIMENT"
668 scandollar [list_directory]
669
670 # What is done :
671 #
672 #   for all (directory) in [liste directory]
673 #   go to this (directory)
674 #    - read the environnement variable in the user 'confdollar' file 
675 #    - read the default environnement variable for this 'machine' in ${CONF_DOLLAR}
676 #    - parse all the '*.ihm' file and put the transformed file 
677 #         (without extension in) in a new sub-directory '${CONFEXP}'
678 #
679 #  Without [list_directory] the current directory '.' is parsed . 
680 #
681 # As a demonstration the '16janvier Study Case' is build with this
682 # template script here :
683
684 $SRC_MESONH/MY_RUN/KTEST/007_16janvier_scandollar
685
686 #
687 # EXAMPLE :
688 # -------
689 #
690 # To parse only the first pgd step = directory '001_pgd1'
691
692 cd $SRC_MESONH/MY_RUN/KTEST/007_16janvier_scandollar/001_pgd1
693
694 export CONFEXP=4101
695 scandollar
696
697 ## OUTPUT ::
698
699 >#  read default config file :: --->  CONF_DOLLAR=/home/escj/DEV64/PACK-MNH-V5-1-0/conf/post/confdollar_aeropc_default
700 >#
701 >#  read    user config file :: --->  CONFIG=confdollar
702 >#
703 >#  processes file *.ihm and put them in ./4101/ ::
704 >#          ---> run_prep_pgd_xyz.ihm =>  ./4101/run_prep_pgd_xyz
705
706
707 #
708 # And to run this step 
709 #
710
711 cd $SRC_MESONH/MY_RUN/KTEST/007_16janvier_scandollar/001_pgd1/4101
712 (qsub) run_prep_pgd_xyz # qsub on brodie 
713
714 # To parse all these steps 
715
716 cd $SRC_MESONH/MY_RUN/KTEST/007_16janvier_scandollar/
717 scandollar 0*
718
719 ## OUTPUT ::
720 >#
721 >#  read default config file :: --->  CONF_DOLLAR=/home/escj/DEV64/PACK-MNH-V5-1-0/conf/post/confdollar_aeropc_default
722 >#
723 >#  read    user config file :: --->  CONFIG=confdollar
724 >#
725 >#  processes file *.ihm and put them in 001_pgd1/4101/ ::
726 >#          ---> run_prep_pgd_xyz.ihm =>  001_pgd1/4101/run_prep_pgd_xyz
727 ...
728 >#  read    user config file :: --->  CONFIG=confdollar
729 >#
730 >#  processes file *.ihm and put them in 008_run2/4101/ ::
731 >#          ---> run_mesonh_xyz.ihm =>  008_run2/4101/run_mesonh_xyz
732 >#
733 ...
734 >#  read    user config file :: --->  CONFIG=confdollar
735 >#
736 >#  processes file *.ihm and put them in 011_diaprog/4101/ ::
737 >#          ---> run_diaprog.ihm =>  011_diaprog/4101/run_diaprog
738
739
740 #
741 # The chaining of the differents steps is control by the "RMSHELL" variable .
742 # To inhibit put a "#" in it , eather in your current shell
743 # or in the 'confdollar' file .
744
745 export RMSHELL="#"
746
747 #
748 # Some 'predefine' variables are set in the '${CONF_DOLLAR}' default files
749 #   --> One file is defined by know-computer . 
750 #
751 #   Are included files for 'brodie' , 'vargas' , ( babel beta-test ) , 'c1a' , 'jade' & 'aeropc*' ( = default for unknown host )
752
753 export  CONF_DOLLAR=${SRC_MESONH}/conf/post/confdollar_aeropc_default
754
755 #
756 #   You could define your own default file and use it by setting
757 #   in your shell the  'CONF_DOLLAR' variable 
758 #   ( By default './configure' will set it for you in the profile_mesonh file ) 
759
760
761 #
762 #  ON GENCI PLATEFORM 
763 #  ------------------
764
765 #  You will find my "own" personal installation of MESONH 
766 #  in the next directory . If you need only to run MESONH
767 #  without recompiliong new sources for MESONH, you could :
768 #
769 #  - source/load my own "profile_mesonh" without modification
770
771 #  - and copy the scripts examples  with 
772
773 cp -R  007_16janvier_scandollar /.../your_directory
774   
775 #
776
777
778 # You could also copy only the differents "*/493"  sub-directory
779 # if you don't when ti use the "scandollar" script  .
780 #
781
782 #   You will the need to change only information corresponding 
783 #   the location to your own path directory for the input/ouput data .
784 #  
785 #   So
786 #
787 #  - At IDRIS :
788 #    ==========
789 #
790 #  On Brodie
791 #  ---------
792 #
793 # use this "profile_mesonh" :
794
795 .  /home/rech/mnh/rmnh007/DEV/MNH-V5-1-0/conf/profile_mesonh-SX8-MNH-V5-1-0-MPIAUTO-O4
796
797 # And the examples are here ( link to my $WORKDIR in actually )  
798
799 /home/rech/mnh/rmnh007/DEV/MNH-V5-1-0/MY_RUN/KTEST/007_16janvier_scandollar
800
801 #
802 #  On vargas
803 #  ---------
804 #  use this "profile_mesonh" :
805
806 . /workgpfs/rech/mnh/rmnh007/DEV/MNH-V5-1-0/conf/profile_mesonh-AIX64-MNH-V5-1-0-MPIAUTO-O2
807
808 # and examples here :
809
810 /workgpfs/rech/mnh/rmnh007/DEV/MNH-V5-1-0/MY_RUN/KTEST/007_16janvier_scandollar
811
812
813 #  - At CINES on JADE :
814 #    =================
815 #
816 # use 
817
818 . /work/escobar/DEV/MNH-V5-1-0/conf/profile_mesonh-LXifort-MNH-V5-1-0-MPIICE-O2
819
820 # and the exemples
821
822 /work/escobar/DEV/MNH-V5-1-0/MY_RUN/KTEST/007_16janvier_scandollar
823
824 #
825 #  - At ECMWF on cxa :
826 #    ===============
827 #
828 # use
829
830 . /c1a/ms_perm/au5/MNH-V5-1-0/conf/profile_mesonh-AIX64-MNH-V5-1-0-MPIAUTO-O2
831
832 # and the examples
833
834 /c1a/ms_perm/au5/MNH-V5-1-0/MY_RUN/KTEST/007_16janvier_scandollar
835
836
837 #
838 #  Good luck!!!
839 #
840
841 #
842 # VIII) TROUBLE-SHOOTING
843 # ======================
844 #
845 #
846 # a) "Segmentation violation" -> problem of "stack size" limit
847 # ------------------------------------------------------------
848 #
849 #  When running the examples coming with the MESONH package, if you obtain
850 #  a "segmentation violation" error it is probably a problem with
851 #  the "stack size" limit on your Linux computer ...
852 #
853 #  Check this limit with the command
854
855 ulimit -s
856
857 #  The limit is given in Kbytes and is often 8192 KB
858 #
859 #  ---> this mean only 8Mbytes for array in stack memory
860 #
861 #  It's a very low walue !!!
862 #
863 #  We recommend you to put it to "unlimited" in your
864 #  ".bashrc" or ".profile" like this
865
866 ulimit -s unlimited
867
868
869 #
870 # b) Compiler BUG with "ifort 10.0.xxx" 
871 # -------------------------------------
872 #
873 #   Some routines do not compile with
874 #   the version "10.0.XXX" of "ifort" ( at least until 10.0.023 )
875 #
876 #    Solution ---> Upgrade to ifort "10.1.015"
877 #
878 #   The ifort "10.1.008" has also some bug in the generation
879 #   of optimized 'vectorized SSE' code resulting in unpredictable
880 #   "Flaoting Point" error
881 #
882 #    Solution ---> compile the routine with problem with '-O1' option
883 #                  or upgrade to at least "10.1.015" version
884 #   
885
886
887