Commit 69188de6 authored by Antoine Berchet's avatar Antoine Berchet
Browse files

Change auto doc to plugins

parent a905f744
......@@ -409,7 +409,7 @@ def process_pycif_keywords(app, what, obj_name, obj, options, lines):
newplg = key_req.get("newplg", False)
towrite.extend((
" * - {}\n"
" - :doc:`{}</documentation/plg_autodoc/{}/index>` \n"
" - :doc:`{}</documentation/plugins/{}/index>` \n"
" - {}\n"
" - {}\n"
" - {}\n"
......@@ -530,7 +530,7 @@ def build_rst_from_plugins(app):
"""Generate rst files from yaml examples"""
# plugins
plg_dir = "{}/documentation/plg_autodoc/".format(app.srcdir)
plg_dir = "{}/documentation/plugins/".format(app.srcdir)
init_dir(plg_dir)
# Initialize index
......@@ -667,7 +667,7 @@ def clean_rst_from_plg(app, exception):
"""Remove rst files generated from yaml examples"""
# Plugin directory
plg_dir = "{}/documentation/plg_autodoc/".format(app.srcdir)
plg_dir = "{}/documentation/plugins/".format(app.srcdir)
shutil.rmtree(plg_dir)
......
......@@ -2,7 +2,7 @@
:language: bash
Have a yaml file ready with a simulation that works with known plugins.
For the :doc:`obsoperator</documentation/plg_autodoc/obsoperators/index>`,
For the :doc:`obsoperator</documentation/plugins/obsoperators/index>`,
choose the optional argument :bash:`onlyinit` so that only the inputs are computed
XXXX CHECK THIS OPTION ACTUALLY DOES THISXXXX, not the whole simulation.
......
......@@ -36,7 +36,7 @@ XXXXXXX what about the input arguments? Ils demandent une partie dediee!?XXXXXXX
a) .. include:: readme.rst
b) create the rst file that contains the automatic documentation in docs/source/documentation/plg_autodoc/fields/. Please provide it with a self-explaining name. Example for the template: file bc_template.rst reads
b) create the rst file that contains the automatic documentation in docs/source/documentation/plugins/fields/. Please provide it with a self-explaining name. Example for the template: file bc_template.rst reads
.. code-block:: rest
......@@ -49,7 +49,7 @@ XXXXXXX what about the input arguments? Ils demandent une partie dediee!?XXXXXXX
.. automodule:: pycif.plugins.fields.bc_plugin_template
c) add the reference to the rst file in docs/source/documentation/plg_autodoc/fields/index.rst:
c) add the reference to the rst file in docs/source/documentation/plugins/fields/index.rst:
.. code-block:: rest
......@@ -71,6 +71,6 @@ XXXXXXX what about the input arguments? Ils demandent une partie dediee!?XXXXXXX
bc_template
chimere_icbc
d) built the documentation (:bash:`make html` in docs/) and check that the link to the new plugin appears in the documentation at file:///your_path/cif/docs/build/html/documentation/plg_autodoc/index.html and that the section "doc" of the input arguments is correctly displayed at file:///your_path/cif/docs/build/html/documentation/plg_autodoc/fields/the_new_plugin.html
d) built the documentation (:bash:`make html` in docs/) and check that the link to the new plugin appears in the documentation at file:///your_path/cif/docs/build/html/documentation/plugins/index.html and that the section "doc" of the input arguments is correctly displayed at file:///your_path/cif/docs/build/html/documentation/plugins/fields/the_new_plugin.html
......@@ -38,7 +38,7 @@ XXXXXXX what about the input arguements? Ils demandent une partie dediee!?XXXXXX
a) .. include:: ../newBCdata/readme.rst
b) create the rst file that contains the automatic documentation in docs/source/documentation/plg_autodoc/fluxes/. Please provide it with a self-explaining name. Example for the template: file fluxes_template.rst reads
b) create the rst file that contains the automatic documentation in docs/source/documentation/plugins/fluxes/. Please provide it with a self-explaining name. Example for the template: file fluxes_template.rst reads
.. code-block:: rest
......@@ -51,7 +51,7 @@ XXXXXXX what about the input arguements? Ils demandent une partie dediee!?XXXXXX
.. automodule:: pycif.plugins.fluxes.flux_plugin_template
c) add the reference to the rst file in docs/source/documentation/plg_autodoc/fluxes/index.rst:
c) add the reference to the rst file in docs/source/documentation/plugins/fluxes/index.rst:
.. code-block:: rest
......@@ -76,5 +76,5 @@ XXXXXXX what about the input arguements? Ils demandent une partie dediee!?XXXXXX
lmdz_bin
lmdz_sflx
d) built the documentation (:bash:`make html` in docs/) and check that the link to the new plugin appears in the documentation at file:///your_path/cif/docs/build/html/documentation/plg_autodoc/index.html and that the section "doc" of the input arguments is correctly displayed at file:///your_path/cif/docs/build/html/documentation/plg_autodoc/fluxes/the_new_plugin.html
d) built the documentation (:bash:`make html` in docs/) and check that the link to the new plugin appears in the documentation at file:///your_path/cif/docs/build/html/documentation/plugins/index.html and that the section "doc" of the input arguments is correctly displayed at file:///your_path/cif/docs/build/html/documentation/plugins/fluxes/the_new_plugin.html
......@@ -3,7 +3,7 @@ Create and register the plugin module
#####################################
Here, one should add the model to the list of model plugins recognized by the CIF.
The list of available plugins can be accessed :doc:`here<../../documentation/plg_autodoc/available>`
The list of available plugins can be accessed :doc:`here<../../documentation/plugins/available>`
1. Go to the directory "pycif/plugins/models/"
2. Make an empty directory named according to your model.
......
......@@ -6,7 +6,7 @@ How to add, register and initialize a new plugin
:language: bash
pyCIF is organized around so-called :bash:`plugins` interacting with each other.
Further details about :bash:`plugins` are given :doc:`here<../../documentation/plg_autodoc/index>`.
Further details about :bash:`plugins` are given :doc:`here<../../documentation/plugins/index>`.
Here, you will learn how to add a new :bash:`plugins` of any type.
Adding a :bash:`plugin` to pyCIF
......
......@@ -6,9 +6,9 @@ Using the CIF in Docker
:language: bash
A docker image has been generated to easily run the CIF within a Docker container.
This Docker image allows new users to try academic examples with a :doc:`Gaussian plume model</documentation/plg_autodoc/models/dummy>`.
This Docker image allows new users to try academic examples with a :doc:`Gaussian plume model</documentation/plugins/models/dummy>`.
In principle, more complex cases with full-physics numerical transport models could work on the Docker container,
but this was only tested with the model :doc:`CHIMERE</documentation/plg_autodoc/models/chimere>` so far,
but this was only tested with the model :doc:`CHIMERE</documentation/plugins/models/chimere>` so far,
and it requires some extra knowledge on
how to use Docker to be able to use datasets from your cluster.
......
......@@ -8,7 +8,7 @@ LMDZ-Dispersion-SACS
LMDZ-Dispersion is the offline version of the Global Circulation Model
LMDZ. It was originally customized to be interfaced with `PYVAR <https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2005JD006390>`__.
The PYVAR interface was adapted to be implemented to the CIF.
More details can be found :doc:`here</documentation/plg_autodoc/models/lmdz>`.
More details can be found :doc:`here</documentation/plugins/models/lmdz>`.
pyCIF requires the following arguments to set a LMDZ simulation up:
......
......@@ -50,7 +50,7 @@ Below is an example graph of dependencies corresponding to the pyCIF configurati
In this example, blue boxes are :bash:`plugins` that are explicitly defined in the configuration file.
Red boxes are implicitly deduced from default values as specified in individual :bash:`plugins`
(see :doc:`here<plg_autodoc/available>`).
(see :doc:`here<plugins/available>`).
Black arrows stand for method dependencies, while red ones are data dependencies.
Thus, for instance, the :bash:`obsoper` plugin is required by the :bash:`mode` plugin while it is not specified in the Yaml file.
......@@ -79,6 +79,6 @@ The following list can be obtained by running the following python commands.
Plugin.print_registered(print_rst=True, print_requirement=True)
.. include:: plg_autodoc/available.rst
.. include:: plugins/available.rst
......@@ -8,7 +8,7 @@ Boundary condition inputs
The BOUN_CONCS files contain the concentration fields in molecules/cm3 at the lateral borders of the model's grid and at the top of the domain. Among the species in BOUN_CONCS, only those which are listed in the ACTIVE_SPECIES file of the :doc:`chemical scheme<chemistry>` are used. If no concentrations are provided for a given species, its lateral and top concentrations are set at 1d-17 (see :bash:`iniboun`). WARNING: check that no species is set at null boundary concentrations due to forgetting it in BOUN_CONCS since no error is then raised.
The boundary concentrations provided in dry air mole fractions can be converted into total air mole fractions (in :bash:`master_locvalues`) for correct use by CHIMERE, following the specifications of the user in the ACTIVE_SPECIES file of the :doc:`chemical scheme<chemistry>`. The units are assumed to be ppb XX PUT A CHECK OF THIS?XXX
See also :doc:`the fields plugin for CHIMERE </documentation/plg_autodoc/fields/chimere_icbc>` for documentation on these files and the information to provide to the CIF to generate them.
See also :doc:`the fields plugin for CHIMERE </documentation/plugins/fields/chimere_icbc>` for documentation on these files and the information to provide to the CIF to generate them.
The format of BOUN_CONCS is as follows, with PP, NVERTI, NZONAL and NMERID given the relevant values, NS the number of species in the file (i.e. the same list of species for lateral boundaries and the top), NHBLAT is the number of cells in the lateral borders at one level = (NZONAL + NMERID) * 2
......
......@@ -7,7 +7,7 @@ Chemical mechanism
A chemical scheme is defined in 12 text files: ACTIVE_SPECIES, ANTHROPIC, BIOGENIC, CHEMISTRY, DEPO_PARS, DEPO_SPEC, FAMILIES, OUTPUT_SPECIES, PHOTO_PARAMETERS, REACTION_RATES, STOICHIOMETRY, WETD_SPEC. They must be named NAME.name_of_the_chemical_scheme (with NAME one of the 12) and stored in a directory named chemical_scheme/name_of_the_chemical_scheme.
See also :doc:`the chemistry plugin for CHIMERE </documentation/plg_autodoc/chemistries/chimere>` for documentation on the chemical mechanism.
See also :doc:`the chemistry plugin for CHIMERE </documentation/plugins/chemistries/chimere>` for documentation on the chemical mechanism.
ACTIVE_SPECIES
---------------
......
......@@ -9,7 +9,7 @@ The INI_CONCS.0.nc file contains the initial concentration fields in molecules/c
The initial concentrations provided in dry air mole fractions can be converted into total air mole fractions for use by CHIMERE, following the specifications of the user in the ACTIVE_SPECIES file of the :doc:`chemical scheme<chemistry>`.
See also :doc:`the fields plugin for CHIMERE </documentation/plg_autodoc/fields/chimere_icbc>` for documentation on this file and the information to provide to the CIF to generate it.
See also :doc:`the fields plugin for CHIMERE </documentation/plugins/fields/chimere_icbc>` for documentation on this file and the information to provide to the CIF to generate it.
The format of INI_CONCS.0.nc is as follows, with NVERTI, NZONAL and NMERID given the relevant values, NS the number of species in the file XXX TO CHECK ON A EXAMPLE XXXXX(the "normal" and "conco" concentrations do not use the same name), UNITS is either ppb, in which case the values are converted into molec/cm3, or anything else, in which case it is assumed that they already are molec/cm3. XX PUT A CHECK OF THIS IN CHIMERE AT LEASTXXXXX
......
......@@ -7,7 +7,7 @@ Coordinates files and associated information
CHIMERE requires two files with horizontal coordinates, one file with general information [to be removed at some point since contains redundant information] and, if relevant, one file of land-use. They must be named COORDcorner_DOM, COORD_DOM, domainlist.nml and LANDUSE_DOM where DOM is the name of the simulation domain, as listed in domainlist.nml. They must be stored in a directory where domainlist.nml is available with a subdirectory named HCOORD containing COORD_DOM and COORDcorner_DOM, a subdirectory LANDUSE containing LANDUSE_DOM.
See also :doc:`the domain plugin for CHIMERE </documentation/plg_autodoc/domains/chimere>` for documentation on these files and the information to provide to the CIF to generate them.
See also :doc:`the domain plugin for CHIMERE </documentation/plugins/domains/chimere>` for documentation on these files and the information to provide to the CIF to generate them.
COORD_DOM
---------
......
......@@ -7,7 +7,7 @@ Emission inputs
The A/BEMISSIONS files contain the emissions in molecules/cm2/s on the model's grid at an hourly resolution. Among the species in A/BEMISSIONS.nc, only those which are listed in the ANTHROPIC/BIOGENIC files of the :doc:`chemical scheme<chemistry>` are used. The AEMISSIONS are kept constant during the one-hour time steps in CHIMERE (historically used for anthropogenic emissions); the BEMISSIONS are linearly interpolated within the 1-hour time steps (historically used for biogenic emissions). AEMISSIONS are required for a simulation, BEMISSIONS can be ignored with the switch :doc:`optemisb<diff>`.
See also :doc:`the fluxes plugin for CHIMERE </documentation/plg_autodoc/fluxes/chimere>` for documentation on these files and the information to provide to the CIF to generate them.
See also :doc:`the fluxes plugin for CHIMERE </documentation/plugins/fluxes/chimere>` for documentation on these files and the information to provide to the CIF to generate them.
The format of the A/BEMISSIONS.nc is as follows, with PP, NZONAL and NMERID given the relevant values, NVERTI being the number of levels on which emissions are to be found (NVERTI can be smaller than the number of levels of the simulation grid: this saves a lot of space in the input files since it is not usual to have emissions very high in altitude) and NS the number of :doc:`ANTHROPIC/BIOGENIC<chemistry>` species:
......
......@@ -5,7 +5,7 @@ Parameters for various processes
.. role:: bash(code)
:language: bash
CHIMERE takes into account various processes: deep convection, emissions, transport and mixing, chemistry, etc. A number of choices are available to the user. See :doc:`CHIMERE plugin</documentation/plg_autodoc/models/chimere>` for information on how these are done in the yaml.
CHIMERE takes into account various processes: deep convection, emissions, transport and mixing, chemistry, etc. A number of choices are available to the user. See :doc:`CHIMERE plugin</documentation/plugins/models/chimere>` for information on how these are done in the yaml.
ideepconv
---------
......
......@@ -5,7 +5,7 @@ Parameters related to time steps
.. role:: bash(code)
:language: bash
The user must specify a number of parameters to enable CHIMERE to determine how many time steps must be used in various routines. See :doc:`CHIMERE plugin</documentation/plg_autodoc/models/chimere>` for information on which parameters are to be provided and how this is done in the yaml.
The user must specify a number of parameters to enable CHIMERE to determine how many time steps must be used in various routines. See :doc:`CHIMERE plugin</documentation/plugins/models/chimere>` for information on which parameters are to be provided and how this is done in the yaml.
nphour
------
......
......@@ -5,7 +5,7 @@ Parameters on the vertical axis
.. role:: bash(code)
:language: bash
The user must specify a number of parameters regarding the vertical axis of the simulation domain, which are used by CHIMERE in many various routines. See :doc:`CHIMERE plugin</documentation/plg_autodoc/models/chimere>` for information on which parameters are to be provided and how this is done in the yaml.
The user must specify a number of parameters regarding the vertical axis of the simulation domain, which are used by CHIMERE in many various routines. See :doc:`CHIMERE plugin</documentation/plugins/models/chimere>` for information on which parameters are to be provided and how this is done in the yaml.
nivout
------
......
......@@ -7,7 +7,7 @@ Chemical mechanism
Following the example of CHIMERE, a chemical scheme for LMDz-SACS is defined in 10 text files. They are read in :bash:`phylmd/init_chem.F90`.
.. See also :doc:`the chemistry plugin for CHIMERE </documentation/plg_autodoc/chemistries/chimere>` for documentation on the chemical mechanism.
.. See also :doc:`the chemistry plugin for CHIMERE </documentation/plugins/chemistries/chimere>` for documentation on the chemical mechanism.
chemical_scheme.nml
--------------------
......
......@@ -6,11 +6,11 @@ Initial condition inputs
:language: bash
If :bash:`readstart` is True in :doc:`totinput<totinput>`, a file containing initial conditions is read.
See :doc:`the LMDz-SACS plugin </documentation/plg_autodoc/models/lmdz>` for documentation on how to make this choice in the yaml.
See :doc:`the LMDz-SACS plugin </documentation/plugins/models/lmdz>` for documentation on how to make this choice in the yaml.
The netcdf start.nc file can be taken from the :doc:`output of a previous simulation<outputs>`
or generated by the CIF (see :doc:`the fields plugin for LMDz-SACS</documentation/plg_autodoc/fields/lmdz_ic>`
or generated by the CIF (see :doc:`the fields plugin for LMDz-SACS</documentation/plugins/fields/lmdz_ic>`
the information to provide to the CIF to generate it).
The format of start.nc is as follows, with NLON the number of cells in longitude,
......
......@@ -7,7 +7,7 @@ Emission inputs
The emissions of the :doc:`active tracers<chemistry>` are provided to the executable through binary files :bash:`mod_SPEC.bin` with SPEC the name of the species.
These binary files can be built by the CIF from netcdf files provided by the user: see the :doc:`plugins for fluxes</documentation/plg_autodoc/fluxes/index>`.
These binary files can be built by the CIF from netcdf files provided by the user: see the :doc:`plugins for fluxes</documentation/plugins/fluxes/index>`.
.. EXPLANATION FOR THE RELEVANT PLUGIN Emission maps associated to the emitted/simulated tracers. Must be NetCDF annual files encompassing 12 monthly values. Latitude and longitude coordinates must be consistent with specified domain. The unit must be kg.cm-2.s-1. Variables must have therefore three coordinates (time, latitude, longitude), following this order.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment