calculate_footprint_size_amsu Calculate approximate footprint edge Calculates the semi-major axis, the semi-minor axis and the eccentricity of an ellipse approximating the edge of the AMSU footprint, according to the method found in bennartz00:_optim_convol_amsu_b_amsu_jaot, depending on the scan position. FORMAT [cross, along, eccentricity] = calculate_footprint_size_amsu(type, n) IN type string 'amsua' or 'amsub' n scalar channel number OUT cross scalar cross-track size (km) along scalar along-track size (km) ecc scalar eccentricity for ellipse $Id: calculate_footprint_size_amsu.m 6679 2010-12-10 19:56:54Z gerrit $
calculate_footprint_size_amsu.m
0001 function [cross, along, eccentricity] = calculate_footprint_size_amsu(type, n) 0002 0003 % calculate_footprint_size_amsu Calculate approximate footprint edge 0004 % 0005 % Calculates the semi-major axis, the semi-minor axis and the eccentricity of 0006 % an ellipse approximating the edge of the AMSU footprint, according to the 0007 % method found in bennartz00:_optim_convol_amsu_b_amsu_jaot, depending on the 0008 % scan position. 0009 % 0010 % FORMAT 0011 % 0012 % [cross, along, eccentricity] = calculate_footprint_size_amsu(type, n) 0013 % 0014 % IN 0015 % 0016 % type string 'amsua' or 'amsub' 0017 % n scalar channel number 0018 % 0019 % OUT 0020 % 0021 % cross scalar cross-track size (km) 0022 % along scalar along-track size (km) 0023 % ecc scalar eccentricity for ellipse 0024 % 0025 % $Id: calculate_footprint_size_amsu.m 6679 2010-12-10 19:56:54Z gerrit $ 0026 0027 switch type 0028 case {'b', 'amsub'} 0029 if n > 45 0030 n = 91 - n; 0031 end 0032 cross = .5 * (79.08 + 2.84 * n - 14.78 * n^0.666); 0033 along = .5 * (28.72 - 0.90 * n + 0.094 * n^1.5); 0034 0035 case {'a', 'amsua'} 0036 if n > 15 0037 n = 31 - n; 0038 end 0039 0040 cross = .5 * (230.65 + 12.39 * n - 95.06 * n^0.5); 0041 along = .5 * (83.01 - 7.28 * n + 1.28 * n^1.5); 0042 otherwise 0043 error('atmlab:calculate_footprint_size_amsu', ... 0044 'Invalid sensor: %s', type) 0045 end 0046 0047 a = max(cross, along); 0048 b = min(cross, along); 0049 0050 eccentricity = sqrt(a.^2 - b.^2) / a;