Changeset 4083
- Timestamp:
- 10/22/18 16:10:24 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TOOLS/MOSAIX/nemo.py
r3740 r4083 22 22 23 23 def lbc (ptab, nperio=6, cd_type='T', psgn=1.0) : 24 # Set periodicity on input fields 24 25 """ 25 26 ptab : Input array … … 91 92 92 93 return ptab 94 95 96 def lbc_mask (ptab, nperio=6, cd_type='T', psgn=1.0) : 97 # Mask fields on duplicate points 98 """ 99 ptab : Input array 100 rank 2 at least : patb[...., lat, lon] 101 nperio : Type of periodicity 102 1, 4, 6 : Cyclic on i dimension (generaly longitudes) 103 2 : Obsolete (was symmetric condition at southern boundary ?) 104 3, 4 : North fold T-point pivot (legacy ORCA2) 105 5, 6 : North fold F-point pivot (ORCA1, ORCA025, ORCA2 with new grid for paleo) 106 cd_type : Grid specification : T, U, V or F 107 psgn : For change of sign for vector components 108 109 See NEMO documentation for further details 110 """ 93 111 112 jpi = ptab.shape[-1] 113 # 114 zero = 0 115 116 # 117 #> East-West boundary conditions 118 # -------------------------------- 119 120 if nperio in [1, 4, 6] : 121 # ... cyclic 122 ptab [...,:, 0] = zero 123 ptab [...,:, -1] = zero 124 125 # 126 #> North-South boundary conditions 127 # ---------------------------------- 128 if nperio in [3, 4] : # North fold T-point pivot 129 if cd_type in [ 'T', 'W' ] : # T-, W-point 130 ptab[..., -1, 1: ] = zero 131 ptab[..., -1, 0 ] = zero 132 ptab[..., -2, jpi//2: ] = zero 133 134 if cd_type == 'U' : 135 ptab[..., -1, 0:-1 ] = zero 136 ptab[..., -1, 0 ] = zero 137 ptab[..., -1, -1 ] = zero 138 ptab[..., -2, jpi//2-1:] = zero 139 140 if cd_type == 'V' : 141 ptab[..., -2, 1: ] = zero 142 ptab[..., -1, 1: ] = zero 143 ptab[..., -1, 0 ] = zero 144 145 if cd_type == 'F' : 146 ptab[..., -2, 0:-1 ] = zero 147 ptab[..., -1, 0:-1 ] = zero 148 ptab[..., -1, 0 ] =zero 149 ptab[..., -1, -1 ] = zero 150 151 if nperio in [5, 6] : # North fold F-point pivot 152 if cd_type in ['T', 'W'] : 153 ptab[..., -1, 0: ] = zero 154 155 if cd_type == 'U' : 156 ptab[..., -1, 0:-1 ] = zero 157 ptab[..., -1, -1 ] = zero 158 159 if cd_type == 'V' : 160 ptab[..., -1, 0: ] = zero 161 ptab[..., -2, jpi/2: ] = zero 162 163 if cd_type == 'F' : 164 ptab[..., -1, 0:-1 ] = zero 165 ptab[..., -1, -1 ] = zero 166 ptab[..., -2, jpi//2:-1] = zero 167 168 return ptab 94 169 ## =========================================================================== 95 170 ##
Note: See TracChangeset
for help on using the changeset viewer.