Changes between Version 1 and Version 2 of ticket/1358
- Timestamp:
- 2014-11-05T18:27:09+01:00 (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ticket/1358
v1 v2 8 8 '''ticket''' : #1358 9 9 10 '''Branch''' : [https://forge.ipsl.jussieu.fr/nemo/browser/branches/ BRANCH_NAME BRANCH_NAME]10 '''Branch''' : [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2014/dev_r4650_UKMO14.12_STAND_ALONE_OBSOPER 2014/dev_r4650_UKMO14.12_STAND_ALONE_OBSOPER ] 11 11 ---- 12 12 13 13 === Description === 14 14 15 The NEMO offline observationo operator needs to be updated, refactored and simplified. To allow the code to compile, the custom `nemogcm.F90` must be updated to make it compatible with the latest version of OPA `nemogcm.F90`. The primary refactoring involves renaming the sub-directory containing the code from **OOO_SRC** to **SAO_SRC**, representing the name "**S**tand **A**lone **O**bservation operator" which should make the purpose of the package clearer. A side effect of this change is that NEMO uses a hungarian notationesque naming convention to reduce pollution of the global namespace and to diagnose the origin of a piece of code, these will have to be updated from ooo to sao or be dropped. Other less obvious refactorings will present themselves during the development cycle. A suite of use-cases has been written to test the functionality of the compiled executable, these will be used ahead of every commit to ensure that functionality has not been affected by the refactoring process. There is also a suggestion by the external reviewer during the previous development cycle to change the way the I/O is controlled from the custom read/write code which is already in place to a more common framework seen in other stand alone executables such as **OFF_SRC**. 16 17 ---- 18 === Use cases === 19 20 The NEMO observation operator is a well used piece of code which has been extensively tested, as such, these use cases do not intend to be a complete suite of possible uses of the observation operator code. 21 22 * Sea surface temperature cases 23 * single observation w/feedback file outputs 24 * test correct values: SST_obs/SST_Hx 25 * test correct temporal/spatial coordinates: latitude/longitude/julian day 26 * test correct meta-data: station identifier, station type 27 * test correct quality control 28 * single observation out side of domain 29 * test correct rejection 30 * multiple model fields 31 * Altimetry cases 32 * single observation inside/outside domain 33 * multiple model fields 34 * Profile cases 35 * single profile inside/outside domain 36 * multiple model fields 37 38 When the base line tests are in place, altering the internal workings of the code (such as swapping out the read routines) shouldn't affect the results of the above tests. Some changes may be 'breaking' changes which alter the API these changes will be reflected in the accompanying documentation. 15 39 16 40 ---- … … 46 70 ---- 47 71 === System Changes === 48 ||Does your change alter namelists?||!''' YES/NO !'''||49 ||Does your change require a change in compiler options?||!''' YES/NO !'''||72 ||Does your change alter namelists?||!'''NO !'''|| 73 ||Does your change require a change in compiler options?||!'''NO !'''|| 50 74 51 75 If any of these apply, please document the changes required here....... … … 57 81 ---- 58 82 === IPR issues === 59 ||Has the code been wholly (100%) produced by NEMO developers staff working exclusively on NEMO?||!'''YES / NO!'''||83 ||Has the code been wholly (100%) produced by NEMO developers staff working exclusively on NEMO?||!'''YES !'''|| 60 84 61 85 If No: