Changeset 15161 for NEMO/branches/UKMO/NEMO_4.0.4_idealised_ovf
- Timestamp:
- 2021-07-29T18:58:32+02:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/UKMO/NEMO_4.0.4_idealised_ovf/src/OCE/USR/usrdef_istate.F90
r15156 r15161 52 52 ! 53 53 INTEGER :: ji, jj, kk, num_pnt, ierr0, ierr1 54 INTEGER, ALLOCATABLE , DIMENSION(:) :: ovf_ji, ovf_jj ! arrays for overflow 54 INTEGER , DIMENSION(38) :: dst_ji, dst_jj ! arrays for overflow 55 INTEGER , DIMENSION(164) :: ifr_ji, ifr_jj ! arrays for overflow 56 INTEGER , ALLOCATABLE , DIMENSION(:) :: ovf_ji, ovf_jj ! arrays for overflow 55 57 !!---------------------------------------------------------------------- 56 58 ! … … 68 70 pts(:, :, :, jp_sal) = rn_sal_env 69 71 ! 70 SELECT CASE(nn_ovf_loc) 72 ! Denmark Strait idealised overflow 73 dst_ji = (/ & 74 & 1041, 1041, 1041, 1042, 1039, 1040, 1041, 1042, & 75 & 1039, 1040, 1041, 1042, 1043, 1041, 1042, 1043, & 76 & 1044, 1042, 1043, 1044, 1045, 1043, 1044, 1045, & 77 & 1046, 1043, 1044, 1045, 1046, 1047, 1048, 1043, & 78 & 1044, 1045, 1046, 1047, 1044, 1045 & 79 & /) 80 81 dst_jj = (/ & 82 & 1012, 1013, 1014, 1014, 1015, 1015, 1015, 1015, & 83 & 1016, 1016, 1016, 1016, 1016, 1017, 1017, 1017, & 84 & 1017, 1018, 1018, 1018, 1018, 1019, 1019, 1019, & 85 & 1019, 1020, 1020, 1020, 1020, 1020, 1020, 1021, & 86 & 1021, 1021, 1021, 1021, 1022, 1022 & 87 & /) 88 89 ! Iceland-Faroe Ridge idealised overflow 90 ifr_ji = (/ & 91 & 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1091, & 92 & 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, & 93 & 1101, 1102, 1103, 1104, 1089, 1090, 1091, 1092, 1093, & 94 & 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, & 95 & 1103, 1104, 1089, 1090, 1091, 1092, 1093, 1094, 1095, & 96 & 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, & 97 & 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, & 98 & 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1089, 1090, & 99 & 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, & 100 & 1100, 1101, 1102, 1103, 1089, 1090, 1091, 1092, 1093, & 101 & 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, & 102 & 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, & 103 & 1098, 1099, 1087, 1088, 1089, 1090, 1091, 1092, 1093, & 104 & 1094, 1095, 1096, 1097, 1088, 1089, 1090, 1091, 1092, & 105 & 1093, 1094, 1095, 1096, 1089, 1090, 1091, 1092, 1093, & 106 & 1094, 1095, 1096, 1090, 1091, 1092, 1093, 1094, 1095, & 107 & 1096, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, & 108 & 1091, 1092, 1093, 1094, 1095, 1096, 1091, 1092, 1093, & 109 & 1094, 1095 & 110 & /) 111 112 ifr_jj = (/ & 113 & 996 , 996 , 996 , 996 , 996 , 996 , 996 , 996 , 997 , & 114 & 997 , 997 , 997 , 997 , 997 , 997 , 997 , 997 , 997 , & 115 & 997 , 997 , 997 , 997 , 998 , 998 , 998 , 998 , 998 , & 116 & 998 , 998 , 998 , 998 , 998 , 998 , 998 , 998 , 998 , & 117 & 998 , 998 , 999 , 999 , 999 , 999 , 999 , 999 , 999 , & 118 & 999 , 999 , 999 , 999 , 999 , 999 , 999 , 999 , 999 , & 119 & 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, & 120 & 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1001, 1001, & 121 & 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, & 122 & 1001, 1001, 1001, 1001, 1002, 1002, 1002, 1002, 1002, & 123 & 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, & 124 & 1003, 1003, 1003, 1003, 1003, 1003, 1003, 1003, 1003, & 125 & 1003, 1003, 1004, 1004, 1004, 1004, 1004, 1004, 1004, & 126 & 1004, 1004, 1004, 1004, 1005, 1005, 1005, 1005, 1005, & 127 & 1005, 1005, 1005, 1005, 1006, 1006, 1006, 1006, 1006, & 128 & 1006, 1006, 1006, 1007, 1007, 1007, 1007, 1007, 1007, & 129 & 1007, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, & 130 & 1009, 1009, 1009, 1009, 1009, 1009, 1010, 1010, 1010, & 131 & 1010, 1010 & 132 & /) 133 134 SELECT CASE(nn_ovf_loc) 71 135 72 136 CASE(0) ! Denmark Strait 73 num_pnt = 17137 num_pnt = SIZE(dst_ji) 74 138 ALLOCATE( ovf_ji(num_pnt), STAT=ierr0 ) 75 139 ALLOCATE( ovf_jj(num_pnt), STAT=ierr1 ) … … 77 141 CALL ctl_stop( 'dta_tsd : unable to allocate T & S data arrays' ); RETURN 78 142 ENDIF 79 ovf_ji = (/ & 80 & 1045, 1046, & 81 & 1044, 1045, 1046, & 82 & 1043, 1044, 1045, & 83 & 1042, 1043, 1044, & 84 & 1041, 1042, 1043, & 85 & 1040, 1041, 1042 & 86 & /) 87 ovf_jj = (/ & 88 & 1020, 1020, & 89 & 1019, 1019, 1019, & 90 & 1018, 1018, 1018, & 91 & 1017, 1017, 1017, & 92 & 1016, 1016, 1016, & 93 & 1015, 1015, 1015 & 94 & /) 143 ovf_ji(:) = dst_ji(:) 144 ovf_jj(:) = dst_jj(:) 145 146 CASE(1) ! Iceland-Faroe Ridge 147 num_pnt = SIZE(ifr_ji) 148 ALLOCATE( ovf_ji(num_pnt), STAT=ierr0 ) 149 ALLOCATE( ovf_jj(num_pnt), STAT=ierr1 ) 150 IF( ierr0 + ierr1 > 0 ) THEN 151 CALL ctl_stop( 'dta_tsd : unable to allocate T & S data arrays'); RETURN 152 ENDIF 153 ovf_ji(:) = ifr_ji(:) 154 ovf_jj(:) = ifr_jj(:) 155 156 CASE(2) ! Both 157 num_pnt = SIZE(dst_ji) + SIZE(ifr_ji) 158 ALLOCATE( ovf_ji(num_pnt), STAT=ierr0 ) 159 ALLOCATE( ovf_jj(num_pnt), STAT=ierr1 ) 160 IF( ierr0 + ierr1 > 0 ) THEN 161 CALL ctl_stop( 'dta_tsd : unable to allocate T & S data arrays'); RETURN 162 ENDIF 163 ovf_ji(1 : SIZE(dst_ji)) = dst_ji(:) 164 ovf_ji(SIZE(dst_ji)+1 : num_pnt ) = ifr_ji(:) 165 ovf_jj(1 : SIZE(dst_jj)) = dst_jj(:) 166 ovf_jj(SIZE(dst_jj)+1 : num_pnt ) = ifr_jj(:) 167 95 168 END SELECT 96 169 !
Note: See TracChangeset
for help on using the changeset viewer.