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.
Changeset 11624 for NEMO/branches/2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles/src/OFF/nemogcm.F90 – NEMO

Ignore:
Timestamp:
2019-10-01T15:07:45+02:00 (5 years ago)
Author:
acc
Message:

Branch 2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles. Substantive changes required to replace all namelists with internal files. These are the key changes only; to compile and run tests all REWIND and CLOSE operations on the (no longer) units have to be removed. These changes affect many more files but can be scripted so are not included here in order to make a later merge easier. The scripts used to prepare code for testing are included on: wiki:2019WP/ENHANCE-04_AndrewC-reporting/Internal_Namelists. With these additional changes this code passes most SETTE tests but the AGRIF preprocessor does not currently accept the new allocatable character strings. To be investigated.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles/src/OFF/nemogcm.F90

    r11536 r11624  
    192192      IF( lwm )   CALL ctl_opn(     numout,        'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
    193193      ! open reference and configuration namelist files 
    194                   CALL ctl_opn( numnam_ref,        'namelist_ref',     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
    195                   CALL ctl_opn( numnam_cfg,        'namelist_cfg',     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
     194                  CALL load_nml( numnam_ref,        'namelist_ref',                                          -1, .FALSE. ) 
     195                  CALL load_nml( numnam_cfg,        'namelist_cfg',                                          -1, .FALSE. ) 
    196196      IF( lwm )   CALL ctl_opn(     numond, 'output.namelist.dyn', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
    197197      ! open /dev/null file to be able to supress output write easily 
     
    202202      !                             !--------------------! 
    203203      ! 
    204       REWIND( numnam_ref )              ! Namelist namctl in reference namelist 
    205204      READ  ( numnam_ref, namctl, IOSTAT = ios, ERR = 901 ) 
    206205901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namctl in reference namelist' ) 
    207       REWIND( numnam_cfg )              ! Namelist namctl in confguration namelist 
    208206      READ  ( numnam_cfg, namctl, IOSTAT = ios, ERR = 902 ) 
    209207902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namctl in configuration namelist' ) 
     
    260258      !                             !------------------------------------! 
    261259      !      
    262       REWIND( numnam_ref )              ! Namelist namcfg in reference namelist 
    263260      READ  ( numnam_ref, namcfg, IOSTAT = ios, ERR = 903 ) 
    264261903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namcfg in reference namelist' ) 
    265       REWIND( numnam_cfg )              ! Namelist namcfg in confguration namelist 
    266262      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
    267263904   IF( ios >  0 )   CALL ctl_nam ( ios , 'namcfg in configuration namelist' )    
     
    446442      ! 
    447443      IF( numstp     /= -1 )   CLOSE( numstp     )   ! time-step file 
    448       IF( numnam_ref /= -1 )   CLOSE( numnam_ref )   ! oce reference namelist 
    449       IF( numnam_cfg /= -1 )   CLOSE( numnam_cfg )   ! oce configuration namelist 
    450       IF( numout     /=  6 )   CLOSE( numout     )   ! standard model output file 
    451444      IF( lwm.AND.numond  /= -1 )   CLOSE( numond          )   ! oce output namelist 
    452445      ! 
Note: See TracChangeset for help on using the changeset viewer.