- Timestamp:
- 2018-12-10T08:45:39+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/IOM/iom_nf90.F90
r10358 r10377 691 691 INTEGER, DIMENSION(4) :: idimid ! dimensions id 692 692 CHARACTER(LEN=256) :: clinfo ! info character 693 CHARACTER(LEN= 12), DIMENSION( 4) :: cltmp ! temporary character693 CHARACTER(LEN= 12), DIMENSION(5) :: cltmp ! temporary character 694 694 INTEGER :: if90id ! nf90 file identifier 695 695 INTEGER :: idmy ! dummy variable … … 716 716 ENDIF 717 717 ! define the dimension variables if it is not already done 718 IF(iom_file(kiomid)%nlev == jpk ) THEN 719 cltmp = (/ 'nav_lon ', 'nav_lat ', 'nav_lev ', 'time_counter' /) 720 ELSE 721 cltmp = (/ 'nav_lon ', 'nav_lat ', 'numcat ', 'time_counter' /) 722 ENDIF 718 cltmp = (/ 'nav_lon', 'nav_lat', 'nav_lev', 'time_counter', 'numcat' /) 723 719 CALL iom_nf90_check(NF90_DEF_VAR( if90id, TRIM(cltmp(1)), NF90_FLOAT , (/ 1, 2 /), iom_file(kiomid)%nvid(1) ), clinfo) 724 720 CALL iom_nf90_check(NF90_DEF_VAR( if90id, TRIM(cltmp(2)), NF90_FLOAT , (/ 1, 2 /), iom_file(kiomid)%nvid(2) ), clinfo) … … 728 724 iom_file(kiomid)%nvars = 4 729 725 iom_file(kiomid)%luld(1:4) = (/ .FALSE., .FALSE., .FALSE., .TRUE. /) 730 iom_file(kiomid)%cn_var(1:4) = cltmp 731 iom_file(kiomid)%ndims(1:4) = (/ 2, 2, 1, 1 /) 726 iom_file(kiomid)%cn_var(1:4) = cltmp(1:4) 727 iom_file(kiomid)%ndims(1:4) = (/ 2, 2, 1, 1 /) 728 IF( NF90_INQ_DIMID( if90id, 'numcat', idmy ) == nf90_noerr ) THEN ! add a 5th variable corresponding to the 5th dimension 729 CALL iom_nf90_check(NF90_DEF_VAR( if90id, TRIM(cltmp(5)), NF90_FLOAT , (/ 5 /), iom_file(kiomid)%nvid(5) ), clinfo) 730 iom_file(kiomid)%nvars = 5 731 iom_file(kiomid)%luld(5) = .FALSE. 732 iom_file(kiomid)%cn_var(5) = cltmp(5) 733 iom_file(kiomid)%ndims(5) = 1 734 ENDIF 732 735 ! trick: defined to 0 to say that dimension variables are defined but not yet written 733 736 iom_file(kiomid)%dimsz(1, 1) = 0 … … 841 844 CALL iom_nf90_check( NF90_INQ_VARID( if90id, 'nav_lat' , idmy ) , clinfo ) 842 845 CALL iom_nf90_check( NF90_PUT_VAR ( if90id, idmy, gphit(ix1:ix2, iy1:iy2) ), clinfo ) 843 IF(iom_file(kiomid)%nlev == jpk ) THEN 844 !NEMO 845 CALL iom_nf90_check( NF90_INQ_VARID( if90id, 'nav_lev' , idmy ), clinfo ) 846 CALL iom_nf90_check( NF90_PUT_VAR ( if90id, idmy, gdept_1d ), clinfo ) 847 ELSE 848 CALL iom_nf90_check( NF90_INQ_VARID( if90id, 'numcat' , idmy ), clinfo) 846 CALL iom_nf90_check( NF90_INQ_VARID( if90id, 'nav_lev' , idmy ), clinfo ) 847 CALL iom_nf90_check( NF90_PUT_VAR ( if90id, idmy, gdept_1d ), clinfo ) 848 IF( NF90_INQ_VARID( if90id, 'numcat', idmy ) == nf90_noerr ) THEN 849 849 CALL iom_nf90_check( NF90_PUT_VAR ( if90id, idmy, (/ (idlv, idlv = 1,iom_file(kiomid)%nlev) /)), clinfo ) 850 850 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.