New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Users/ModelInterfacing/InputsOutputs (diff) – NEMO

Changes between Version 2 and Version 3 of Users/ModelInterfacing/InputsOutputs


Ignore:
Timestamp:
2017-03-01T16:48:41+01:00 (7 years ago)
Author:
timgraham
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Users/ModelInterfacing/InputsOutputs

    v2 v3  
    2020In attached mode XIOS runs on each of the cores used by NEMO. This method is less efficient than the detached mode but can be more convenient for testing or with small configurations. To activate this mode simply set "using_server" to false in the iodef.xml file and don't allocate any cores to XIOS. Note that due to the different domain decompositions between XIOS and NEMO if the total number of cores is larger than the number of grid points in the j direction then the model run will fail. 
    2121 
     22 
     23== Adding new diagnostics == 
     24If you want to add a NEMO diagnostic to the NEMO code you will need to do the following: 
     25   1) Add any necessary code to calculate you new diagnostic in NEMO <br> 
     26   2) Send the field to XIOS using {{{CALL iom_put( 'field_id', variable )}}} where 'field_id' is a unique id for your new diagnostics and variable is the fortran variable containing the data. This should be called at every model timestep regardless of how often you want to output the field. No time averaging should be done in the model code.  
     27   3) If it is computationally expensive to calculate your new diagnostic you should also use "iom_use" to determine if it is requested in the current model run. For example, 
     28{{{ 
     29IF iom_use('field_id') THEN 
     30   !Some expensive computation 
     31   !... 
     32   !... 
     33   iom_put('field_id', variable) 
     34ENDIF 
     35}}} 
     36 
     37 
     38