Changeset 27467
- Timestamp:
- 12/21/22 06:32:22 (2 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/SMBarma.m
r27465 r27467 174 174 tempelevationbins = repmat(tempelevationbins,1,1,12); %same values each month 175 175 end 176 nbas = size(templapserates,1); 177 nbins = size(templapserates,2); 178 ntmlapse = size(templapserates,3); 176 179 if(any(isnan(md.smb.refelevation))) 177 180 temprefelevation = zeros(1,md.smb.num_basins); … … 185 188 temprefelevation(ii) = sum(areas(indices).*elemsh)/sum(areas(indices)); 186 189 end 187 if(any(reshape( md.smb.lapserates,[1,nbas*nbins*12])~=0))190 if(any(reshape(templapserates,[1,nbas*nbins*12])~=0)) 188 191 disp(' smb.refelevation not specified: Reference elevations set to mean surface elevation of basins'); 189 192 end 190 193 end 191 nbas = size(templapserates,1);192 nbins = size(templapserates,2);193 194 temp2dlapserates = zeros(nbas,nbins*12); 194 195 temp2delevationbins = zeros(nbas,max(1,nbins-1)*12); -
issm/trunk-jpl/src/m/classes/SMBarma.py
r27465 r27467 171 171 nprm = md.smb.num_params; 172 172 nper = md.smb.num_breaks+1; 173 if(len(np.shape(md.smb.lapserates))==1): 174 nbins = 1 175 ntmlapse = 1 176 elif(len(np.shape(md.smb.lapserates))==2): 177 nbins = np.shape(md.smb.lapserates)[1] 178 ntmlapse = 1 179 elif(len(np.shape(md.smb.lapserates))==3): 180 nbins = np.shape(md.smb.lapserates)[1] 181 ntmlapse = np.shape(md.smb.lapserates)[2] 182 templapserates = np.reshape(md.smb.lapserates,[nbas,nbins,ntmlapse]) 183 tempelevationbins = np.reshape(md.smb.elevationbins,[nbas,max(1,nbins-1),ntmlapse]) 173 if(np.any(np.isnan(md.smb.lapserates))): 174 templapserates = np.zeros((md.smb.num_basins,2,12)) 175 print(' smb.lapserates not specified: set to 0') 176 tempelevationbins = np.zeros((md.smb.num_basins,1,12)) #dummy elevation bins 177 nbins = 2 178 ntmlapse = 12 179 else: 180 if(len(np.shape(md.smb.lapserates))==1): 181 nbins = 1 182 ntmlapse = 1 183 elif(len(np.shape(md.smb.lapserates))==2): 184 nbins = np.shape(md.smb.lapserates)[1] 185 ntmlapse = 1 186 elif(len(np.shape(md.smb.lapserates))==3): 187 nbins = np.shape(md.smb.lapserates)[1] 188 ntmlapse = np.shape(md.smb.lapserates)[2] 189 templapserates = np.reshape(md.smb.lapserates,[nbas,nbins,ntmlapse]) 190 tempelevationbins = np.reshape(md.smb.elevationbins,[nbas,max(1,nbins-1),ntmlapse]) 184 191 temprefelevation = np.copy(md.smb.refelevation) 185 192 # Scale the parameters # … … 217 224 dbreaks = np.copy(md.smb.datebreaks) 218 225 219 if(np.any(np.isnan(md.smb.lapserates))): 220 templapserates = np.zeros((md.smb.num_basins,2,12)) 221 print(' smb.lapserates not specified: set to 0') 222 tempelevationbins = np.zeros((md.smb.num_basins,1,12)) #dummy elevation bins 223 elif(ntmlapse==1): 226 if(ntmlapse==1): 224 227 templapserates = np.repeat(templapserates,12,axis=2) 225 228 tempelevationbins = np.repeat(tempelevationbins,12,axis=2)
Note:
See TracChangeset
for help on using the changeset viewer.