Changeset 556 for trunk/NEMO/OPA_SRC
- Timestamp:
- 2006-10-27T17:10:08+02:00 (18 years ago)
- Location:
- trunk/NEMO/OPA_SRC/IOM
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/OPA_SRC/IOM/in_out_manager.F90
r550 r556 16 16 USE par_oce 17 17 USE lib_print ! formated print library 18 USE iom_def ! iom variables definitions19 18 20 19 IMPLICIT NONE … … 26 25 CHARACTER (len=16) :: cexper = "exp0" !: experiment name used for output filename 27 26 LOGICAL :: ln_rstart = .FALSE. !: start from (F) rest or (T) a restart file 28 LOGICAL :: ln_ctl = .FALSE. !: run control for debugging29 27 INTEGER :: no = 0 !: job number 30 28 INTEGER :: nrstdt = 0 !: control of the time step (0, 1 or 2) … … 34 32 INTEGER :: nleapy = 0 !: Leap year calendar flag (0/1 or 30) 35 33 INTEGER :: ninist = 0 !: initial state output flag (0/1) 36 INTEGER :: nbench = 0 !: benchmark parameter (0/1)37 38 34 !!---------------------------------------------------------------------- 39 35 !! output monitoring 40 36 !!---------------------------------------------------------------------- 37 LOGICAL :: ln_ctl = .FALSE. !: run control for debugging 41 38 INTEGER :: nstock = 10 !: restart file frequency 42 39 INTEGER :: nprint = 0 !: level of print (0 no print) … … 49 46 INTEGER :: jsplt = 1 !: number of processors following j 50 47 INTEGER :: ijsplt = 1 !: nb of local domain = nb of processors 51 48 INTEGER :: nbench = 0 !: benchmark parameter (0/1) 49 INTEGER :: nbit_cmp = 0 !: bit reproducibility (0/1) 52 50 !!---------------------------------------------------------------------- 53 51 !! logical units -
trunk/NEMO/OPA_SRC/IOM/iom.F90
r550 r556 25 25 26 26 IMPLICIT NONE 27 P RIVATE27 PUBLIC ! must be public to be able to access iom_def through iom 28 28 29 29 PUBLIC iom_open, iom_close, iom_varid, iom_get, iom_gettime, iom_rstput … … 36 36 END INTERFACE 37 37 38 INTEGER :: iom_init = 0 !39 38 !!---------------------------------------------------------------------- 40 39 !! OPA 9.0 , LOCEAN-IPSL (2006) … … 675 674 INTEGER , INTENT(in) :: kiomid ! Identifier of the file 676 675 CHARACTER(len=*), INTENT(in) :: cdvar ! time axis name 677 REAL(wp) , INTENT(in) :: pvar ! readfield676 REAL(wp) , INTENT(in) :: pvar ! written field 678 677 INTEGER , INTENT(in), OPTIONAL :: ktype ! variable external type 679 678 INTEGER :: ivid ! variable id … … 695 694 INTEGER , INTENT(in) :: kiomid ! Identifier of the file 696 695 CHARACTER(len=*), INTENT(in) :: cdvar ! time axis name 697 REAL(wp) , INTENT(in), DIMENSION( jpk) :: pvar ! readfield696 REAL(wp) , INTENT(in), DIMENSION( jpk) :: pvar ! written field 698 697 INTEGER , INTENT(in), OPTIONAL :: ktype ! variable external type 699 698 INTEGER :: ivid ! variable id … … 715 714 INTEGER , INTENT(in) :: kiomid ! Identifier of the file 716 715 CHARACTER(len=*), INTENT(in) :: cdvar ! time axis name 717 REAL(wp) , INTENT(in), DIMENSION(jpi,jpj ) :: pvar ! readfield716 REAL(wp) , INTENT(in), DIMENSION(jpi,jpj ) :: pvar ! written field 718 717 INTEGER , INTENT(in), OPTIONAL :: ktype ! variable external type 719 718 INTEGER :: ivid ! variable id … … 735 734 INTEGER , INTENT(in) :: kiomid ! Identifier of the file 736 735 CHARACTER(len=*), INTENT(in) :: cdvar ! time axis name 737 REAL(wp) , INTENT(in), DIMENSION(jpi,jpj,jpk) :: pvar ! readfield736 REAL(wp) , INTENT(in), DIMENSION(jpi,jpj,jpk) :: pvar ! written field 738 737 INTEGER , INTENT(in), OPTIONAL :: ktype ! variable external type 739 738 INTEGER :: ivid ! variable id -
trunk/NEMO/OPA_SRC/IOM/iom_def.F90
r550 r556 6 6 !! History : 9.0 ! 06 09 (S. Masson) Original code 7 7 !!-------------------------------------------------------------------- 8 !!--------------------------------------------------------------------------------- 9 !! OPA 9.0 , LOCEAN-IPSL (2006) 10 !! $Header$ 11 !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 12 !!--------------------------------------------------------------------------------- 13 8 14 USE par_kind 9 15 … … 19 25 INTEGER, PARAMETER, PUBLIC :: jpdom_unknown = 7 !: No dimension checking 20 26 21 INTEGER, PARAMETER, PUBLIC :: jpioipsl = 100 !: Use ioipsl (fliocom only) library22 INTEGER, PARAMETER, PUBLIC :: jpnf90 = 101 !: Use nf90 library23 INTEGER, PARAMETER, PUBLIC :: jprstdimg = 102 !: Use restart dimgs (fortran direct acces) library27 INTEGER, PARAMETER, PUBLIC :: jpioipsl = 100 !: Use ioipsl (fliocom only) library 28 INTEGER, PARAMETER, PUBLIC :: jpnf90 = 101 !: Use nf90 library 29 INTEGER, PARAMETER, PUBLIC :: jprstdimg = 102 !: Use restart dimgs (fortran direct acces) library 24 30 #if defined key_dimgout 25 31 INTEGER, PARAMETER, PUBLIC :: jprstlib = jprstdimg !: restarts io library … … 28 34 #endif 29 35 30 INTEGER, PARAMETER, PUBLIC :: jp_r8 = 200 !:31 INTEGER, PARAMETER, PUBLIC :: jp_r4 = 201 !:32 INTEGER, PARAMETER, PUBLIC :: jp_i4 = 202 !:33 INTEGER, PARAMETER, PUBLIC :: jp_i2 = 203 !:34 INTEGER, PARAMETER, PUBLIC :: jp_i1 = 204 !:36 INTEGER, PARAMETER, PUBLIC :: jp_r8 = 200 !: write REAL(8) 37 INTEGER, PARAMETER, PUBLIC :: jp_r4 = 201 !: write REAL(4) 38 INTEGER, PARAMETER, PUBLIC :: jp_i4 = 202 !: write INTEGER(4) 39 INTEGER, PARAMETER, PUBLIC :: jp_i2 = 203 !: write INTEGER(2) 40 INTEGER, PARAMETER, PUBLIC :: jp_i1 = 204 !: write INTEGER(1) 35 41 36 42 INTEGER, PARAMETER, PUBLIC :: jpmax_files = 20 !: maximum number of simultaneously opened file … … 39 45 INTEGER, PARAMETER, PUBLIC :: jpmax_digits = 5 !: maximum number of digits for the cpu number in the file name 40 46 47 INTEGER, PUBLIC :: iom_init = 0 !: used to initialize iom_file(:)%nfid to 0 41 48 !$AGRIF_DO_NOT_TREAT 42 TYPE, PUBLIC :: f lio_file49 TYPE, PUBLIC :: file_descriptor 43 50 CHARACTER(LEN=240) :: name !: name of the file 44 51 INTEGER :: nfid !: identifier of the file (0 if closed) … … 54 61 REAL(kind=wp), DIMENSION(jpmax_vars) :: scf !: scale_factor of the variables 55 62 REAL(kind=wp), DIMENSION(jpmax_vars) :: ofs !: add_offset of the variables 56 END TYPE f lio_file57 TYPE(f lio_file), DIMENSION(jpmax_files), PUBLIC :: iom_file !: array containing the info for all opened files63 END TYPE file_descriptor 64 TYPE(file_descriptor), DIMENSION(jpmax_files), PUBLIC :: iom_file !: array containing the info for all opened files 58 65 !$AGRIF_END_DO_NOT_TREAT 59 66 -
trunk/NEMO/OPA_SRC/IOM/iom_ioipsl.F90
r550 r556 20 20 USE dom_oce ! ocean space and time domain 21 21 USE lbclnk ! lateal boundary condition / mpp exchanges 22 USE iom_def ! iom variables definitions 22 23 USE ioipsl ! IOIPSL library 23 24 … … 298 299 INTEGER , INTENT(in) :: kvid ! variable id 299 300 INTEGER , INTENT(in), OPTIONAL :: ktype ! variable type (default R8) 300 REAL(wp) , INTENT(in), OPTIONAL :: pv_r0d ! read field301 REAL(wp), DIMENSION( jpk), INTENT(in), OPTIONAL :: pv_r1d ! read field302 REAL(wp), DIMENSION(jpi,jpj ), INTENT(in), OPTIONAL :: pv_r2d ! read field303 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(in), OPTIONAL :: pv_r3d ! read field301 REAL(wp) , INTENT(in), OPTIONAL :: pv_r0d ! written Od field 302 REAL(wp), DIMENSION( jpk), INTENT(in), OPTIONAL :: pv_r1d ! written 1d field 303 REAL(wp), DIMENSION(jpi,jpj ), INTENT(in), OPTIONAL :: pv_r2d ! written 2d field 304 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(in), OPTIONAL :: pv_r3d ! written 3d field 304 305 ! 305 306 INTEGER :: idims ! number of dimension -
trunk/NEMO/OPA_SRC/IOM/iom_nf90.F90
r550 r556 20 20 USE dom_oce ! ocean space and time domain 21 21 USE lbclnk ! lateal boundary condition / mpp exchanges 22 USE iom_def ! iom variables definitions 22 23 USE netcdf ! NetCDF library 23 24 … … 315 316 INTEGER , INTENT(in) :: kvid ! variable id 316 317 INTEGER , INTENT(in), OPTIONAL :: ktype ! variable type (default R8) 317 REAL(wp) , INTENT(in), OPTIONAL :: pv_r0d ! read field318 REAL(wp), DIMENSION( jpk), INTENT(in), OPTIONAL :: pv_r1d ! read field319 REAL(wp), DIMENSION(jpi,jpj ), INTENT(in), OPTIONAL :: pv_r2d ! read field320 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(in), OPTIONAL :: pv_r3d ! read field318 REAL(wp) , INTENT(in), OPTIONAL :: pv_r0d ! written Od field 319 REAL(wp), DIMENSION( jpk), INTENT(in), OPTIONAL :: pv_r1d ! written 1d field 320 REAL(wp), DIMENSION(jpi,jpj ), INTENT(in), OPTIONAL :: pv_r2d ! written 2d field 321 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(in), OPTIONAL :: pv_r3d ! written 3d field 321 322 ! 322 323 INTEGER :: idims ! number of dimension -
trunk/NEMO/OPA_SRC/IOM/iom_rstdimg.F90
r550 r556 18 18 USE dom_oce ! ocean space and time domain 19 19 USE lbclnk ! lateal boundary condition / mpp exchanges 20 USE iom_def ! iom variables definitions 20 21 21 22 IMPLICIT NONE … … 297 298 INTEGER , INTENT(in) :: kiomid ! Identifier of the file 298 299 CHARACTER(len=*) , INTENT(in) :: cdvar ! time axis name 299 REAL(wp) , INTENT(in) :: pv_r0d ! read field300 REAL(wp) , INTENT(in) :: pv_r0d ! written 0d field 300 301 ! 301 302 CHARACTER(LEN=100) :: clinfo ! info character … … 410 411 INTEGER , INTENT(in) :: kiomid ! Identifier of the file 411 412 CHARACTER(len=*) , INTENT(in) :: cdvar ! time axis name 412 REAL(wp), DIMENSION( jpk), INTENT(in), OPTIONAL :: pv_r1d ! read field413 REAL(wp), DIMENSION(jpi,jpj ), INTENT(in), OPTIONAL :: pv_r2d ! read field414 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(in), OPTIONAL :: pv_r3d ! read field413 REAL(wp), DIMENSION( jpk), INTENT(in), OPTIONAL :: pv_r1d ! written 1d field 414 REAL(wp), DIMENSION(jpi,jpj ), INTENT(in), OPTIONAL :: pv_r2d ! written 2d field 415 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(in), OPTIONAL :: pv_r3d ! written 3d field 415 416 ! 416 417 CHARACTER(LEN=100) :: clinfo ! info character
Note: See TracChangeset
for help on using the changeset viewer.