MODULE r5utils !********************************************************* !This module contains routines developed as part of Knaff et al. (2014) !where TC size metrics are estimated from the azimuthal mean IR !brightness temperatures ! ! Contains: ! Subroutine mk_12_1d_IR_PCs ! Real function r5mean ! Real function R5_850 ! Real function V500_850 ! Real function V500viaTb_sat ! ! References: ! Knaff, J.A., S.P. Longmore, D.A. Molenar, 2014: An Objective ! Satellite-Based Tropical Cyclone Size Climatology. J. Climate, ! 27, 455-476. doi: http://dx.doi.org/10.1175/JCLI-D-13-00096.1 ! ! Compiled and written by J. Knaff, NOAA/NESDIS/StAR, Fort Collins, CO ! ! Last modified 17 July 2014 ! !********************************************************** INTEGER, PARAMETER::NP=12,NO=150 REAL, DIMENSION (NP)::eval=(/36092.289,9494.890,3310.277,1175.016,553.916,& 284.493,170.226,108.350,70.282,49.813,& 36.726,26.583/) REAL, DIMENSION(0:NO):: xbar=(/230.923,231.342,232.066,232.271,231.912,& 231.319,230.755,230.321,230.027,229.851,& 229.783,229.806,229.910,230.083,230.306,230.572,230.873,231.206,231.568,231.967,& 232.393,232.845,233.312,233.793,234.288,234.792,235.301,235.814,236.323,236.827,& 237.332,237.839,238.347,238.864,239.381,239.903,240.425,240.943,241.461,241.975,& 242.487,242.997,243.509,244.021,244.528,245.030,245.526,246.013,246.500,246.982,& 247.466,247.951,248.435,248.916,249.396,249.872,250.340,250.806,251.268,251.727,& 252.180,252.628,253.073,253.514,253.943,254.366,254.787,255.202,255.614,256.021,& 256.423,256.821,257.213,257.599,257.983,258.367,258.744,259.114,259.479,259.846,& 260.207,260.561,260.911,261.259,261.600,261.939,262.272,262.599,262.923,263.241,& 263.556,263.863,264.162,264.452,264.737,265.017,265.295,265.567,265.835,266.107,& 266.373,266.633,266.889,267.144,267.395,267.640,267.884,268.124,268.359,268.590,& 268.819,269.045,269.271,269.488,269.702,269.914,270.121,270.323,270.527,270.724,& 270.917,271.106,271.293,271.474,271.652,271.825,272.001,272.173,272.339,272.499,& 272.657,272.816,272.972,273.123,273.270,273.413,273.556,273.696,273.832,273.967,& 274.102,274.233,274.362,274.486,274.610,274.733,274.852,274.968,275.080,275.188,& 275.293/) REAL,DIMENSION(0:NO):: xsdev=(/32.723,32.557,32.002,31.294,30.627,& 30.057,29.571,29.145,28.758,28.389,& 28.030,27.677,27.332,26.997,26.665,26.335,26.009,25.682,25.360,25.047,& 24.745,24.454,24.176,23.906,23.641,23.381,23.125,22.873,22.624,22.377,& 22.138,21.906,21.682,21.466,21.259,21.063,20.875,20.696,20.528,20.367,& 20.212,20.060,19.910,19.768,19.629,19.490,19.357,19.232,19.107,18.987,& 18.870,18.756,18.644,18.537,18.432,18.333,18.238,18.149,18.060,17.969,& 17.877,17.784,17.690,17.602,17.519,17.431,17.343,17.259,17.176,17.092,& 17.006,16.921,16.834,16.742,16.650,16.558,16.461,16.366,16.272,16.177,& 16.087,15.997,15.904,15.811,15.718,15.628,15.533,15.438,15.341,15.245,& 15.146,15.044,14.941,14.840,14.746,14.653,14.559,14.469,14.379,14.289,& 14.195,14.101,14.003,13.909,13.815,13.725,13.630,13.534,13.439,13.346,& 13.255,13.161,13.062,12.965,12.870,12.778,12.690,12.601,12.514,12.425,& 12.338,12.247,12.157,12.074,11.995,11.914,11.833,11.748,11.668,11.590,& 11.514,11.436,11.360,11.284,11.208,11.132,11.058,10.987,10.915,10.846,& 10.782,10.721,10.658,10.596,10.533,10.468,10.404,10.338,10.272,10.209,& 10.157/) REAL, DIMENSION(NP,0:NO):: evec=RESHAPE((/0.124,0.143,0.262,0.210,& 0.191,0.170,-0.157,-0.144,-0.145,-0.115,& -0.138,-0.130,0.124,0.144,0.259,0.207,0.185,0.163,-0.148,-0.134,& -0.132,-0.103,-0.122,-0.111,0.124,0.144,0.248,0.192,0.163,0.136,& -0.112,-0.092,-0.080,-0.055,-0.055,-0.039,0.124,0.145,0.231,0.167,& 0.125,0.089,-0.052,-0.026,0.000,0.016,0.042,0.061,0.125,0.144,& 0.208,0.135,0.079,0.034,0.015,0.046,0.082,0.085,0.129,0.142,& 0.127,0.143,0.183,0.100,0.031,-0.021,0.076,0.107,0.143,0.129,& 0.173,0.170,0.127,0.141,0.158,0.066,-0.012,-0.068,0.121,0.145,& 0.172,0.141,0.166,0.144,0.128,0.139,0.134,0.035,-0.049,-0.104,& 0.150,0.160,0.169,0.124,0.120,0.082,0.128,0.136,0.112,0.008,& -0.078,-0.128,0.162,0.156,0.141,0.088,0.057,0.007,0.128,0.133,& 0.093,-0.015,-0.101,-0.143,0.160,0.138,0.099,0.043,-0.008,-0.062,& 0.127,0.130,0.075,-0.034,-0.118,-0.150,0.148,0.109,0.051,-0.003,& -0.064,-0.113,0.127,0.126,0.059,-0.052,-0.129,-0.149,0.127,0.074,& 0.002,-0.045,-0.106,-0.140,0.126,0.122,0.044,-0.066,-0.137,-0.143,& 0.102,0.035,-0.044,-0.082,-0.134,-0.143,0.125,0.118,0.030,-0.079,& -0.140,-0.133,0.075,-0.001,-0.083,-0.108,-0.143,-0.126,0.124,0.114,& 0.018,-0.090,-0.140,-0.119,0.046,-0.036,-0.112,-0.122,-0.135,-0.091,& 0.123,0.110,0.006,-0.098,-0.137,-0.102,0.016,-0.066,-0.132,-0.123,& -0.112,-0.047,0.122,0.106,-0.005,-0.105,-0.132,-0.084,-0.013,-0.091,& -0.142,-0.114,-0.081,0.000,0.121,0.102,-0.015,-0.111,-0.124,-0.064,& -0.040,-0.110,-0.142,-0.095,-0.043,0.044,0.120,0.098,-0.024,-0.115,& -0.115,-0.043,-0.064,-0.124,-0.134,-0.069,-0.004,0.083,0.119,0.094,& -0.032,-0.117,-0.105,-0.022,-0.085,-0.131,-0.119,-0.038,0.034,0.111,& 0.118,0.090,-0.040,-0.118,-0.094,-0.001,-0.102,-0.134,-0.097,-0.007,& 0.068,0.127,0.117,0.086,-0.047,-0.119,-0.082,0.019,-0.116,-0.131,& -0.071,0.024,0.096,0.132,0.116,0.081,-0.054,-0.119,-0.069,0.038,& -0.126,-0.123,-0.041,0.052,0.115,0.125,0.115,0.077,-0.060,-0.117,& -0.055,0.055,-0.132,-0.109,-0.010,0.075,0.126,0.108,0.114,0.073,& -0.066,-0.115,-0.041,0.071,-0.134,-0.092,0.021,0.093,0.129,0.079,& 0.113,0.068,-0.071,-0.112,-0.028,0.085,-0.133,-0.072,0.050,0.106,& 0.121,0.043,0.112,0.064,-0.076,-0.108,-0.014,0.097,-0.128,-0.049,& 0.075,0.112,0.105,0.003,0.111,0.060,-0.081,-0.104,-0.001,0.107,& -0.120,-0.026,0.096,0.113,0.083,-0.035,0.110,0.055,-0.085,-0.099,& 0.013,0.115,-0.109,-0.002,0.113,0.107,0.057,-0.069,0.109,0.051,& -0.088,-0.094,0.026,0.121,-0.097,0.020,0.124,0.096,0.027,-0.097,& 0.108,0.047,-0.092,-0.089,0.038,0.125,-0.082,0.041,0.130,0.079,& -0.004,-0.117,0.107,0.043,-0.094,-0.083,0.050,0.126,-0.065,0.060,& 0.131,0.059,-0.035,-0.128,0.106,0.039,-0.097,-0.077,0.061,0.126,& -0.047,0.077,0.127,0.036,-0.063,-0.128,0.105,0.035,-0.099,-0.070,& 0.070,0.123,-0.029,0.092,0.118,0.012,-0.086,-0.119,0.104,0.031,& -0.101,-0.064,0.079,0.119,-0.010,0.104,0.105,-0.012,-0.105,-0.104,& 0.104,0.027,-0.103,-0.057,0.088,0.114,0.008,0.113,0.088,-0.036,& -0.118,-0.083,0.103,0.023,-0.104,-0.049,0.095,0.107,0.026,0.118,& 0.068,-0.058,-0.124,-0.055,0.102,0.019,-0.105,-0.041,0.102,0.099,& 0.043,0.121,0.045,-0.077,-0.123,-0.025,0.101,0.015,-0.106,-0.034,& 0.107,0.089,0.058,0.120,0.021,-0.093,-0.115,0.008,0.100,0.012,& -0.106,-0.026,0.112,0.078,0.072,0.115,-0.003,-0.104,-0.101,0.040,& 0.099,0.008,-0.106,-0.018,0.115,0.067,0.084,0.107,-0.026,-0.110,& -0.082,0.069,0.099,0.004,-0.106,-0.009,0.118,0.054,0.094,0.098,& -0.048,-0.111,-0.058,0.093,0.098,0.000,-0.106,-0.001,0.120,0.042,& 0.103,0.086,-0.067,-0.107,-0.032,0.110,0.097,-0.003,-0.105,0.007,& 0.121,0.029,0.110,0.073,-0.085,-0.099,-0.005,0.119,0.096,-0.007,& -0.104,0.014,0.121,0.015,0.115,0.056,-0.099,-0.088,0.022,0.122,& 0.096,-0.010,-0.103,0.022,0.120,0.002,0.117,0.039,-0.110,-0.073,& 0.048,0.119,0.095,-0.014,-0.102,0.029,0.119,-0.011,0.118,0.021,& -0.118,-0.056,0.072,0.108,0.094,-0.017,-0.101,0.037,0.116,-0.023,& 0.116,0.002,-0.121,-0.036,0.092,0.093,0.093,-0.020,-0.099,0.043,& 0.113,-0.036,0.113,-0.015,-0.121,-0.015,0.106,0.072,0.093,-0.023,& -0.097,0.050,0.109,-0.047,0.108,-0.032,-0.118,0.006,0.115,0.047,& 0.092,-0.027,-0.095,0.057,0.104,-0.058,0.101,-0.047,-0.112,0.026,& 0.118,0.019,0.091,-0.030,-0.093,0.063,0.098,-0.068,0.092,-0.062,& -0.102,0.045,0.116,-0.010,0.090,-0.033,-0.090,0.068,0.092,-0.077,& 0.082,-0.075,-0.090,0.063,0.109,-0.038,0.090,-0.036,-0.088,0.073,& 0.085,-0.086,0.071,-0.087,-0.075,0.078,0.097,-0.063,0.089,-0.039,& -0.085,0.078,0.077,-0.093,0.060,-0.096,-0.058,0.091,0.082,-0.084,& 0.088,-0.041,-0.083,0.082,0.069,-0.100,0.047,-0.103,-0.041,0.101,& 0.064,-0.099,0.087,-0.044,-0.080,0.086,0.061,-0.106,0.034,-0.108,& -0.022,0.108,0.042,-0.111,0.087,-0.047,-0.077,0.090,0.053,-0.110,& 0.021,-0.111,-0.004,0.110,0.020,-0.117,0.086,-0.049,-0.074,0.093,& 0.045,-0.112,0.008,-0.112,0.015,0.110,-0.003,-0.118,0.085,-0.052,& -0.071,0.096,0.036,-0.114,-0.004,-0.110,0.034,0.105,-0.026,-0.112,& 0.085,-0.054,-0.068,0.098,0.028,-0.113,-0.016,-0.106,0.050,0.098,& -0.048,-0.101,0.084,-0.056,-0.065,0.101,0.019,-0.112,-0.029,-0.100,& 0.066,0.088,-0.067,-0.085,0.083,-0.059,-0.062,0.102,0.011,-0.110,& -0.040,-0.092,0.080,0.075,-0.083,-0.066,0.082,-0.061,-0.059,0.103,& 0.003,-0.107,-0.051,-0.083,0.091,0.060,-0.095,-0.044,0.082,-0.063,& -0.055,0.104,-0.006,-0.104,-0.061,-0.073,0.099,0.043,-0.102,-0.020,& 0.081,-0.065,-0.052,0.104,-0.014,-0.099,-0.070,-0.061,0.107,0.024,& -0.106,0.005,0.080,-0.067,-0.049,0.104,-0.022,-0.094,-0.079,-0.049,& 0.111,0.005,-0.107,0.031,0.079,-0.068,-0.045,0.104,-0.030,-0.088,& -0.086,-0.036,0.113,-0.014,-0.106,0.054,0.079,-0.070,-0.042,0.104,& -0.037,-0.081,-0.093,-0.022,0.113,-0.033,-0.101,0.074,0.078,-0.072,& -0.038,0.103,-0.044,-0.074,-0.098,-0.008,0.110,-0.051,-0.091,0.090,& 0.077,-0.073,-0.035,0.102,-0.051,-0.067,-0.102,0.006,0.105,-0.067,& -0.078,0.102,0.076,-0.075,-0.032,0.100,-0.057,-0.059,-0.104,0.020,& 0.097,-0.082,-0.063,0.110,0.076,-0.076,-0.028,0.098,-0.063,-0.051,& -0.106,0.033,0.086,-0.093,-0.045,0.113,0.075,-0.078,-0.025,0.096,& -0.068,-0.042,-0.106,0.046,0.074,-0.102,-0.026,0.110,0.074,-0.079,& -0.022,0.093,-0.073,-0.032,-0.106,0.058,0.060,-0.109,-0.007,0.104,& 0.073,-0.080,-0.018,0.091,-0.078,-0.023,-0.104,0.069,0.047,-0.113,& 0.013,0.093,0.073,-0.081,-0.015,0.088,-0.082,-0.014,-0.101,0.080,& 0.032,-0.114,0.031,0.080,0.072,-0.082,-0.012,0.084,-0.086,-0.004,& -0.097,0.088,0.017,-0.112,0.049,0.064,0.071,-0.083,-0.008,0.081,& -0.089,0.005,-0.092,0.095,0.001,-0.108,0.065,0.045,0.070,-0.084,& -0.005,0.077,-0.092,0.014,-0.085,0.101,-0.014,-0.101,0.080,0.026,& 0.070,-0.085,-0.002,0.074,-0.094,0.023,-0.079,0.105,-0.029,-0.091,& 0.091,0.005,0.069,-0.086,0.001,0.070,-0.096,0.032,-0.071,0.107,& -0.043,-0.080,0.100,-0.016,0.068,-0.087,0.004,0.066,-0.098,0.040,& -0.063,0.108,-0.056,-0.066,0.104,-0.034,0.067,-0.087,0.007,0.063,& -0.099,0.047,-0.054,0.107,-0.068,-0.050,0.107,-0.052,0.066,-0.088,& 0.010,0.059,-0.100,0.054,-0.044,0.106,-0.077,-0.034,0.105,-0.068,& 0.066,-0.089,0.012,0.055,-0.101,0.060,-0.035,0.102,-0.085,-0.018,& 0.099,-0.082,0.065,-0.089,0.015,0.051,-0.101,0.066,-0.025,0.098,& -0.091,-0.001,0.092,-0.093,0.064,-0.090,0.018,0.047,-0.101,0.072,& -0.015,0.092,-0.096,0.015,0.082,-0.099,0.063,-0.090,0.020,0.042,& -0.100,0.077,-0.005,0.085,-0.100,0.031,0.070,-0.103,0.063,-0.090,& 0.023,0.038,-0.098,0.081,0.005,0.077,-0.102,0.047,0.057,-0.103,& 0.062,-0.091,0.025,0.034,-0.096,0.085,0.014,0.069,-0.102,0.062,& 0.043,-0.099,0.061,-0.091,0.027,0.030,-0.094,0.087,0.023,0.060,& -0.101,0.075,0.028,-0.092,0.060,-0.091,0.030,0.025,-0.092,0.090,& 0.032,0.051,-0.097,0.087,0.012,-0.082,0.060,-0.091,0.032,0.021,& -0.089,0.092,0.040,0.040,-0.092,0.097,-0.004,-0.070,0.059,-0.092,& 0.034,0.017,-0.086,0.094,0.048,0.030,-0.086,0.105,-0.020,-0.057,& 0.058,-0.092,0.036,0.012,-0.082,0.095,0.055,0.019,-0.080,0.111,& -0.035,-0.042,0.057,-0.092,0.038,0.008,-0.079,0.096,0.062,0.007,& -0.072,0.115,-0.050,-0.026,0.057,-0.092,0.040,0.004,-0.075,0.096,& 0.068,-0.004,-0.063,0.117,-0.064,-0.010,0.056,-0.092,0.042,0.000,& -0.071,0.096,0.074,-0.014,-0.053,0.116,-0.075,0.008,0.055,-0.092,& 0.044,-0.005,-0.067,0.095,0.078,-0.025,-0.042,0.112,-0.085,0.024,& 0.054,-0.092,0.046,-0.009,-0.062,0.093,0.082,-0.035,-0.031,0.107,& -0.094,0.040,0.054,-0.092,0.048,-0.013,-0.058,0.091,0.085,-0.044,& -0.020,0.099,-0.100,0.053,0.053,-0.091,0.049,-0.017,-0.053,0.089,& 0.088,-0.053,-0.010,0.091,-0.103,0.065,0.052,-0.091,0.051,-0.020,& -0.049,0.087,0.090,-0.061,0.001,0.081,-0.103,0.075,0.052,-0.091,& 0.052,-0.024,-0.044,0.084,0.091,-0.068,0.011,0.070,-0.101,0.083,& 0.051,-0.091,0.054,-0.028,-0.040,0.081,0.092,-0.075,0.021,0.057,& -0.097,0.090,0.050,-0.091,0.055,-0.031,-0.035,0.077,0.093,-0.080,& 0.030,0.044,-0.090,0.094,0.049,-0.090,0.056,-0.035,-0.030,0.073,& 0.093,-0.085,0.040,0.031,-0.083,0.096,0.049,-0.090,0.058,-0.038,& -0.026,0.068,0.092,-0.089,0.048,0.017,-0.073,0.095,0.048,-0.089,& 0.059,-0.041,-0.021,0.063,0.091,-0.092,0.056,0.003,-0.062,0.092,& 0.048,-0.089,0.060,-0.044,-0.016,0.058,0.089,-0.095,0.062,-0.011,& -0.050,0.086,0.047,-0.089,0.061,-0.047,-0.011,0.053,0.087,-0.096,& 0.067,-0.025,-0.038,0.079,0.046,-0.088,0.062,-0.050,-0.006,0.048,& 0.084,-0.097,0.072,-0.038,-0.024,0.071,0.046,-0.088,0.062,-0.053,& -0.002,0.042,0.080,-0.097,0.076,-0.051,-0.010,0.061,0.045,-0.087,& 0.063,-0.056,0.003,0.037,0.077,-0.096,0.080,-0.062,0.004,0.050,& 0.044,-0.087,0.064,-0.058,0.007,0.032,0.072,-0.095,0.082,-0.073,& 0.017,0.037,0.044,-0.086,0.065,-0.061,0.012,0.026,0.068,-0.092,& 0.084,-0.084,0.030,0.022,0.043,-0.086,0.065,-0.063,0.016,0.021,& 0.063,-0.089,0.084,-0.092,0.043,0.007,0.042,-0.085,0.066,-0.065,& 0.020,0.015,0.058,-0.085,0.083,-0.099,0.054,-0.009,0.042,-0.085,& 0.067,-0.067,0.024,0.009,0.052,-0.080,0.082,-0.104,0.064,-0.023,& 0.041,-0.084,0.067,-0.070,0.028,0.003,0.046,-0.075,0.079,-0.108,& 0.073,-0.037,0.041,-0.083,0.068,-0.072,0.032,-0.003,0.040,-0.069,& 0.076,-0.110,0.081,-0.050,0.040,-0.083,0.068,-0.073,0.036,-0.008,& 0.033,-0.062,0.073,-0.111,0.087,-0.061,0.039,-0.082,0.069,-0.075,& 0.040,-0.014,0.027,-0.056,0.070,-0.110,0.091,-0.071,0.039,-0.082,& 0.069,-0.077,0.043,-0.019,0.021,-0.049,0.066,-0.108,0.094,-0.079,& 0.038,-0.081,0.070,-0.078,0.047,-0.024,0.014,-0.042,0.062,-0.104,& 0.095,-0.085,0.038,-0.080,0.070,-0.080,0.050,-0.029,0.008,-0.035,& 0.057,-0.099,0.095,-0.089,0.037,-0.080,0.071,-0.081,0.053,-0.034,& 0.001,-0.028,0.051,-0.092,0.093,-0.091,0.037,-0.079,0.071,-0.083,& 0.056,-0.038,-0.005,-0.020,0.045,-0.084,0.089,-0.092,0.036,-0.078,& 0.071,-0.084,0.058,-0.042,-0.012,-0.012,0.037,-0.075,0.083,-0.090,& 0.036,-0.078,0.071,-0.085,0.061,-0.047,-0.018,-0.004,0.030,-0.065,& 0.076,-0.087,0.035,-0.077,0.071,-0.087,0.064,-0.051,-0.025,0.004,& 0.022,-0.055,0.069,-0.081,0.035,-0.076,0.071,-0.087,0.066,-0.055,& -0.031,0.011,0.014,-0.044,0.060,-0.074,0.034,-0.076,0.071,-0.088,& 0.069,-0.059,-0.037,0.019,0.006,-0.033,0.050,-0.066,0.034,-0.075,& 0.071,-0.089,0.071,-0.063,-0.043,0.026,-0.002,-0.022,0.040,-0.058,& 0.033,-0.074,0.071,-0.090,0.073,-0.067,-0.048,0.034,-0.010,-0.010,& 0.029,-0.048,0.033,-0.074,0.071,-0.090,0.075,-0.071,-0.054,0.041,& -0.018,0.001,0.018,-0.038,0.032,-0.073,0.071,-0.091,0.077,-0.074,& -0.059,0.048,-0.026,0.013,0.007,-0.027,0.032,-0.072,0.071,-0.091,& 0.079,-0.077,-0.064,0.055,-0.034,0.025,-0.003,-0.015,0.031,-0.072,& 0.071,-0.091,0.080,-0.079,-0.068,0.061,-0.041,0.036,-0.014,-0.003,& 0.031,-0.071,0.070,-0.092,0.081,-0.081,-0.073,0.067,-0.048,0.047,& -0.025,0.009,0.030,-0.070,0.070,-0.092,0.083,-0.084,-0.077,0.072,& -0.054,0.058,-0.035,0.022,0.030,-0.070,0.070,-0.092,0.084,-0.086,& -0.081,0.077,-0.060,0.068,-0.045,0.034,0.030,-0.069,0.070,-0.093,& 0.085,-0.088,-0.084,0.081,-0.064,0.077,-0.055,0.046,0.029,-0.068,& 0.070,-0.093,0.086,-0.089,-0.087,0.085,-0.069,0.085,-0.064,0.056,& 0.029,-0.068,0.069,-0.092,0.087,-0.091,-0.090,0.088,-0.074,0.092,& -0.072,0.066,0.028,-0.067,0.069,-0.092,0.088,-0.092,-0.093,0.092,& -0.078,0.098,-0.079,0.074,0.028,-0.066,0.069,-0.092,0.088,-0.093,& -0.095,0.094,-0.082,0.105,-0.085,0.081,0.028,-0.066,0.068,-0.092,& 0.089,-0.094,-0.096,0.097,-0.086,0.110,-0.091,0.087,0.027,-0.065,& 0.068,-0.092,0.089,-0.095,-0.098,0.099,-0.089,0.115,-0.094,0.093,& 0.027,-0.064,0.068,-0.091,0.090,-0.095,-0.099,0.101,-0.091,0.119,& -0.098,0.098/),(/np,no+1/)) CONTAINS SUBROUTINE mk_12_1d_IR_PCs (RProf,nr,PC,npc,istat) ! Subroutine to calculate the Principle Components associated with the ! 1-D IR radial profiles of tropical cyclones. ! ! INPUT: ! RProf, real - Array of azimuthally averaged IR brightness temperatures ! nr, integer - size of RProf ! OUTPUT: ! PC, real - Array of IR PCs ! np, integer - size of PC ! ! Notes: ! 1) reads eigenvectors and eigenvalues from file Tb_loadfactors.f90 ! 2) assumes the size of Rprof to extend from 2 to 602 km and have a size ! of 151 elements. The code checks for these assumptions ! ! Written by J. Knaff, NOAA/NESDIS ! ! Last Modified: 14 July 2014 ! ! History: ! Modified to be part of a module and use the eigenvector/value information ! from the global variables - JAK July 14, 2014 ! !********************************************************************** IMPLICIT NONE ! General variables INTEGER:: iargc, ios, i, j, k, istat, iread INTEGER:: luload=50 REAL:: dummy !************************************************ ! Data now comes from the shared variables in the module... old code ! ! CHARACTER (LEN=80):: & ! feval='/home/knaff/TCSIZE/src/TC_SIZE_CIRA/Tb_loadfactors.out' ! Eigen stuff !INTEGER:: nobs=150, np=12 !REAL :: eval(np),evec(np,0:nobs) !REAL :: xbar(0:nobs),xsdev(0:nobs) !*********************************************** REAL, INTENT(INOUT) :: PC(np) !DATA INTEGER,INTENT(INOUT):: nr,npc REAL, INTENT(INOUT):: RProf(nr) ! Clear PC pc=0.0 npc=np istat=0 IF (nr /= no) THEN istat=1 print*,'Subroutine mk_12_1d_IR_PCs: nr is not the right size' STOP END IF !********************************************* ! READ in the eigen values and then vectors !OPEN(unit=luload, file=feval) !READ(luload,'(10x,20f10.3)')(eval(i),i=1,np) !DO i=0,nobs ! READ(luload,'(10x,20f10.3)')xbar(i),xsdev(i),(evec(j,i),j=1,np) !END DO !CLOSE (luload) !********************************************* ! Calculate PCs DO i=1,np PC(i)=0.0 DO j=0,no PC(i)=PC(i)+evec(i,j)*(RProf(j)-xbar(j)) END DO PC(i)=PC(I)/sqrt(eval(i)) END DO RETURN END SUBROUTINE mk_12_1d_IR_PCs !**** REAL FUNCTION r5mean(v) !Calculates the global mean R5 value based on a polynomial as a function of ! vmax (v). REAL:: v REAL:: a=-2.86622E-4, b=8.58278E-2,c=7.653 r5mean=a*v**2+b*v+c RETURN END FUNCTION r5mean !**** REAL FUNCTION R5_850(v500) ! ! This function creates an estimate of the radius of 5kt wind at 850 hPa ! based on an input value of v500 and the atlantic + east pacific ! climatological slope 2007-2011 ! ! INPUT : v500 - tangential wind at 500km from a TC center [m/s] at 850 hPa ! ! OUTPUT R5_850 - the radius of 5kt winds at 850 hPa [deg lat] ! ! written by J. Knaff, NOAA/NESDIS ! ! Last modified : 1 November 2012 ! ! History: ! !************************************************************************** IMPLICIT NONE REAL, INTENT(INOUT):: v500 REAL:: v500c=5.05, v1000c=2.25, r5c=952.0 REAL:: km2lat=111.11111 R5_850=max(3.0,(r5c+(v500-v500c)*500/(v500c-v1000c))/km2lat) RETURN END FUNCTION R5_850 !**** REAL FUNCTION V500_850(R5) !***************************************************************** ! Calculates V500 given R5 ! ! INPUT ! R5 - latitude in degrees ! OUTPUT ! V500_850 [m/s] ! ! Returns V500 at 850mb via an R5 estimate ! ! Written by J. Knaff (NOAA/NESDIS) ! !**************************************************************** REAL, INTENT(INOUT):: r5 REAL:: v500c=5.05, v1000c=2.25, r5c=952.0 REAL:: km2lat=111.11111 V500=(v500c-v1000c)*(r5*km2lat-r5c)/500.0 + v500c RETURN END FUNCTION V500_850 !**** REAL FUNCTION V500viaTb_sat (rlat,PC1,PC2,PC3) ! ! creates an estimate of V500 [m/s]at 850 mb given the latitude, and ! the first 3 normalized priniciple components of brightness temperature ! calculated from azimuthal means out to 600 km in radius. ! ! INPUT ! rlat - latitude in degrees ! PC1...3 - normalized principle components ! ! Returns V500 at 850mb via an objective satellite measure ! ! Written by J. Knaff (NOAA/NESDIS) ! !********************************************************************* IMPLICIT NONE !Regression Coefficients REAL:: c0= 2.4877, c1= 11.4778E+00, c2= -1.3504, & c3=0.91175E+00, c4=0.3190e+00 REAL:: rlat, PC1, PC2, PC3 REAL:: x1,x2,x3,x4 ! create predictors and apply regression coefficents x1=sin(2.0*abs(rlat)*acos(0.0)/180.0) x2=PC1 x3=PC2 x4=PC3 V500viaTb_sat = c0 + c1*x1 +c2*x2 + c3*x3 + c4*x4 RETURN END FUNCTION V500viaTb_sat !**** END MODULE r5utils