.. _doc.environment.why: What is the MARS environment ============================ **3 Directories** * MARS environment is composed by 3 directories : * **MARS_CONFIG** : for compilation and code modification by the user * **COMPILE_MARS** : where the compile code is (*The user doesn't need to go in this directory and he must not modify files otherwise user's changes might be lost*) * **RUN_MARS** : for run simulations by the user, and where there are input and output files **3 scripts** * **mkconfdir** : create the directories of a configuration (:ref:`doc.envir_commands`) * **makefile** : manage the configuration (choice of rank, test case, previous configurations), and compile the code by calling Makefile.linux or Makefile.datarmor * **Makefile.linux or Makefile.datarmor** : MARS compilation with CPP keys **Reference code** * The originial code (reference code) is placed in the Reference directory **$HOMEMARS/..** * which contains : * MARS sources, * Scripts of MARS environment, * Makefile for the compilation, * Input files as namelists and '*'.dat (river.dat, outflow.dat…) * Documentation : manuals, faq * Module example (fortran) * Libraries (netcdf, io_netcdf) * Code rules * The directory **$HOMEMARS** is defined in the user file : **.cshrc** **Available directories** .. image:: FIG/PHYS/arbre_homemars.jpg