*IF DEF,C90_1A,OR,DEF,C90_2A,OR,DEF,C90_2B,OR,DEF,RECON AAD2F404.300 C ******************************COPYRIGHT****************************** GTS2F400.757 C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.758 C GTS2F400.759 C Use, duplication or disclosure of this code is subject to the GTS2F400.760 C restrictions as set forth in the contract. GTS2F400.761 C GTS2F400.762 C Meteorological Office GTS2F400.763 C London Road GTS2F400.764 C BRACKNELL GTS2F400.765 C Berkshire UK GTS2F400.766 C RG12 2SZ GTS2F400.767 C GTS2F400.768 C If no contract has been raised with this copy of the code, the use, GTS2F400.769 C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.770 C to do so must first be obtained in writing from the Head of Numerical GTS2F400.771 C Modelling at the above address. GTS2F400.772 C ******************************COPYRIGHT****************************** GTS2F400.773 C GTS2F400.774 CLL SUBROUTINE CALC_TS --------------------------------------------- CALCTS1A.3 CLL CALCTS1A.4 CLL PURPOSE: CALCULATES TEMPERATURE AS A FUNCTION OF PRESSURE USING CALCTS1A.5 CLL THE UNIFIED MODEL STANDARD ATMOSPHERE. CALCTS1A.6 CLL CALCTS1A.7 CLL VERSION FOR CRAY Y-MP CALCTS1A.8 CLL NOT SUITABLE FOR I.B.M. USE. CALCTS1A.9 CLL CALCTS1A.10 CLL WRITTEN BY M.H MAWSON. CALCTS1A.11 CLL CALCTS1A.12 CLL MODEL MODIFICATION HISTORY FROM MODEL VERSION 3.0: CALCTS1A.13 CLL VERSION DATE CALCTS1A.14 CLL CALCTS1A.15 CLL 3.4 13/04/94 DEF LINEARTS REPLACED BY LOGICAL LLINTS GSS1F304.171 CLL S.J.SWARBRICK GSS1F304.172 CLL GSS1F304.173 CLL PROGRAMMING STANDARD: UNIFIED MODEL DOCUMENTATION PAPER NO. 4, CALCTS1A.16 CLL STANDARD A. VERSION 2, DATED 18/01/90 CALCTS1A.17 CLL CALCTS1A.18 CLL LOGICAL COMPONENTS COVERED: P195 CALCTS1A.19 CLL CALCTS1A.20 CLL PROJECT TASK: P1 CALCTS1A.21 CLL CALCTS1A.22 CLL DOCUMENTATION: APPENDIX 2 OF DOCUMENTATION PAPER 10. CALCTS1A.23 CLL BY M.J.P.CULLEN, T.DAVIES AND M.H.MAWSON, CALCTS1A.24 CLL VERSION 9 ,DATED 27/06/90 CALCTS1A.25 CLLEND------------------------------------------------------------- CALCTS1A.26 C CALCTS1A.27 C*L ARGUMENTS:--------------------------------------------------- CALCTS1A.28SUBROUTINE CALC_TS 9CALCTS1A.29 1 (P,TS,POINTS,CONSTANT_PRESSURE,LLINTS) GSS1F304.174 CALCTS1A.31 IMPLICIT NONE CALCTS1A.32 LOGICAL LLINTS ! LOGICAL SWITCH FOR LINEAR TS CALC GSS1F304.175 CALCTS1A.33 INTEGER CALCTS1A.34 * POINTS !IN NUMBER OF POINTS OVER WHICH CALCULATION CALCTS1A.35 * ! IS TO BE PERFORMED. CALCTS1A.36 CALCTS1A.37 REAL CALCTS1A.38 * P(POINTS) !IN PRESSURE VALUES. CALCTS1A.39 CALCTS1A.40 REAL CALCTS1A.41 * TS(POINTS) !OUT U.M. STANDARD TEMPERATURE AT PRESSURE P. CALCTS1A.42 CALCTS1A.43 LOGICAL CALCTS1A.44 * CONSTANT_PRESSURE !IN. IF TRUE THEN P CONTAINS THE SAME VALUES CALCTS1A.45 * ! FOR ALL POINTS. CALCTS1A.46 C*--------------------------------------------------------------------- CALCTS1A.47 CALCTS1A.48 C*L DEFINE ARRAYS AND VARIABLES USED IN THIS ROUTINE----------------- CALCTS1A.49 CL NO LOCAL ARRAYS NEEDED. CALCTS1A.50 C*--------------------------------------------------------------------- CALCTS1A.51 C REAL SCALARS CALCTS1A.53 REAL CALCTS1A.54 * TERM1,TERM2,TERM3,TERM4,TERM5,TERM6,CONST CALCTS1A.55 C COUNT VARIABLES FOR DO LOOPS CALCTS1A.57 INTEGER CALCTS1A.58 * I CALCTS1A.59 CALCTS1A.60 C*L NO EXTERNAL SUBROUTINE CALLS.------------------------------------ CALCTS1A.61 C*--------------------------------------------------------------------- CALCTS1A.62 CL CALL COMDECK TO OBTAIN CONSTANTS USED. CALCTS1A.63 CALCTS1A.64 *CALL C_CALCTS
CALCTS1A.65 CALCTS1A.66 CL MAXIMUM VECTOR LENGTH IS DETERMINED BY POINTS. CALCTS1A.67 CL CALCTS1A.68 CL--------------------------------------------------------------------- CALCTS1A.69 CL INTERNAL STRUCTURE. CALCTS1A.70 CL--------------------------------------------------------------------- CALCTS1A.71 CL GSS1F304.176 C GSS1F304.177 IF (LLINTS) THEN GSS1F304.178 CL GSS1F304.179 CL CODE USES SIMPLE LINEAR APPROXIMATION TO TS FOR ALL PRESSURE CALCTS1A.73 CL VALUES. THIS IS TO MININISE COST. CALCTS1A.74 CL CALCTS1A.75 CL SECTION 1. CALCULATE TS AT PRESSURE P. CALCTS1A.76 CL--------------------------------------------------------------------- CALCTS1A.77 CALCTS1A.78 CL IF CONSTANT_PRESSURE THEN CALCULATE TS FOR ONE POINT ONLY CALCTS1A.79 CL AND THEN SET ALL OTHER POINTS TO THIS VALUE. CALCTS1A.80 CL TS = AS0*P + BS0 CALCTS1A.81 CL CALCTS1A.82 CALCTS1A.83 IF(CONSTANT_PRESSURE) THEN CALCTS1A.84 TS(1) = AS0 * P(1) + BS0 CALCTS1A.85 CALCTS1A.86 DO 100 I=2,POINTS CALCTS1A.87 TS(I) = TS(1) CALCTS1A.88 100 CONTINUE CALCTS1A.89 ELSE CALCTS1A.90 CALCTS1A.91 CL ELSE CALCULATE TS FOR ALL POINTS. CALCTS1A.92 CALCTS1A.93 DO 200 I=1,POINTS CALCTS1A.94 TS(I) = AS0 * P(I) + BS0 CALCTS1A.95 200 CONTINUE CALCTS1A.96 END IF CALCTS1A.97 CL GSS1F304.180 ELSE ! LLINTS GSS1F304.181 CL GSS1F304.182 CL CALCULATE TS CLOSE TO U.M.S.A PROFILE. CALCTS1A.99 CL EXPONENTIATION HAS BEEN REPLACED BY A TAYLOR SERIES EXPANSION CALCTS1A.100 CL WHICH IS ACCURATE TO AT WORST ONE DEGREE KELVIN. CALCTS1A.101 CL CALCTS1A.102 CL SECTION 1. CALCULATE TS AT PRESSURE P. CALCTS1A.103 CL--------------------------------------------------------------------- CALCTS1A.104 CALCTS1A.105 CL IF CONSTANT_PRESSURE THEN CALCULATE TS FOR FIRST POINT ONLY CALCTS1A.106 CL AND THEN SET ALL OTHER POINTS TO THIS VALUE. CALCTS1A.107 CL OTHERWISE PERFORM CALCULATION AT ALL POINTS. CALCTS1A.108 CL CALCTS1A.109 CALCTS1A.110 IF(CONSTANT_PRESSURE) THEN CALCTS1A.111 C---------------------------------------------------------------------- CALCTS1A.112 CL SECTION 1.1 IF PRESSURE ABOVE P_ISO THEN CALCTS1A.113 CL TS = TS0*(P0/P)**(R*L0/G) CALCTS1A.114 CL IS REWRITTEN AS TS=TS0*(P/P0)**(-R*L0/G). CALCTS1A.115 CL THIS IS REPLACED BY THE TAYLOR EXPANSION STOPPED CALCTS1A.116 CL AFTER 5 TERMS EXPANDED ABOUT A WHERE A=(PB+PT)/2*PB CALCTS1A.117 CL THIS SECTION USES PARAMETERS SUFFIXED BY 1. CALCTS1A.118 C---------------------------------------------------------------------- CALCTS1A.119 CALCTS1A.120 IF(P(1).GT.P_ISO) THEN CALCTS1A.121 CONST = (P(1)*RECIP_P0-A1)*RECIP_A1 CALCTS1A.122 TERM1 = 1.+ CONST*(MINUS_RLG1-5.)*ONE_SIXTH CALCTS1A.123 TERM2 = 1. +TERM1*CONST*(MINUS_RLG1-4.)*.2 CALCTS1A.124 TERM3 = 1. +TERM2*CONST*(MINUS_RLG1-3.)*.25 CALCTS1A.125 TERM4 = 1. +TERM3*CONST*(MINUS_RLG1-2.)*ONE_THIRD CALCTS1A.126 TERM5 = 1. +TERM4*CONST*(MINUS_RLG1-1.)*.5 CALCTS1A.127 TERM6 = A1_TO_MINUS_RLG1*(1. +TERM5*CONST*MINUS_RLG1) CALCTS1A.128 TS(1) = TS0* TERM6 CALCTS1A.129 CALCTS1A.130 C---------------------------------------------------------------------- CALCTS1A.131 CL SECTION 1.2 IF PRESSURE ABOVE P_ISO BUT LESS THAN P_LOW_STRAT THEN CALCTS1A.132 CL TS = T_ISO WHICH IS A CONSTANT. CALCTS1A.133 C---------------------------------------------------------------------- CALCTS1A.134 CALCTS1A.135 ELSE IF(P(1).LE.P_ISO.AND.P(1).GE.P_LOW_STRAT) THEN CALCTS1A.136 TS(1) = T_ISO CALCTS1A.137 CALCTS1A.138 C---------------------------------------------------------------------- CALCTS1A.139 CL SECTION 1.3 IF PRESSURE BELOW P_LOW_STRAT BUT GREATER THAN CALCTS1A.140 CL P_MID_STRAT CALCTS1A.141 CL TS = T_ISO*(P_LOW_STRAT/P)**(R*L_LOW_STRAT/G) CALCTS1A.142 CL TS IS EVALUATED AS DESCRIBED IN SECTION 1.1 CALCTS1A.143 CL PARAMETERS IN THIS SECTION ARE SUFFIXED 2. CALCTS1A.144 C---------------------------------------------------------------------- CALCTS1A.145 CALCTS1A.146 ELSE IF(P(1).LT.P_LOW_STRAT.AND.P(1).GT.P_MID_STRAT) THEN CALCTS1A.147 CONST = (P(1)*RECIP_P_LOW_STRAT-A2)*RECIP_A2 CALCTS1A.148 TERM1 = 1.+ CONST*(MINUS_RLG2-5.)*ONE_SIXTH CALCTS1A.149 TERM2 = 1. +TERM1*CONST*(MINUS_RLG2-4.)*.2 CALCTS1A.150 TERM3 = 1. +TERM2*CONST*(MINUS_RLG2-3.)*.25 CALCTS1A.151 TERM4 = 1. +TERM3*CONST*(MINUS_RLG2-2.)*ONE_THIRD CALCTS1A.152 TERM5 = 1. +TERM4*CONST*(MINUS_RLG2-1.)*.5 CALCTS1A.153 TERM6 = A2_TO_MINUS_RLG2*(1. +TERM5*CONST*MINUS_RLG2) CALCTS1A.154 TS(1) = T_ISO* TERM6 CALCTS1A.155 CALCTS1A.156 C---------------------------------------------------------------------- CALCTS1A.157 CL SECTION 1.4 IF PRESSURE BELOW P_MID_STRAT BUT GREATER THAN CALCTS1A.158 CL P_UPPER_STRAT CALCTS1A.159 CL TS = T_MID_STRAT*(P_MID_STRAT/P)**(R*L_MID_STRAT/G) CALCTS1A.160 CL TS IS EVALUATED AS DESCRIBED IN SECTION 1.1 CALCTS1A.161 CL PARAMETERS IN THIS SECTION ARE SUFFIXED 3. CALCTS1A.162 C---------------------------------------------------------------------- CALCTS1A.163 CALCTS1A.164 ELSE IF(P(1).LT.P_MID_STRAT.AND.P(1).GT.P_UPPER_STRAT) THEN CALCTS1A.165 CONST = (P(1)*RECIP_P_MID_STRAT-A3)*RECIP_A3 CALCTS1A.166 TERM1 = 1.+ CONST*(MINUS_RLG3-5.)*ONE_SIXTH CALCTS1A.167 TERM2 = 1. +TERM1*CONST*(MINUS_RLG3-4.)*.2 CALCTS1A.168 TERM3 = 1. +TERM2*CONST*(MINUS_RLG3-3.)*.25 CALCTS1A.169 TERM4 = 1. +TERM3*CONST*(MINUS_RLG3-2.)*ONE_THIRD CALCTS1A.170 TERM5 = 1. +TERM4*CONST*(MINUS_RLG3-1.)*.5 CALCTS1A.171 TERM6 = A3_TO_MINUS_RLG3*(1. +TERM5*CONST*MINUS_RLG3) CALCTS1A.172 TS(1) = T_MID_STRAT* TERM6 CALCTS1A.173 CALCTS1A.174 C---------------------------------------------------------------------- CALCTS1A.175 CL SECTION 1.5 IF PRESSURE BELOW P_UPPER_STRAT BUT GREATER THAN CALCTS1A.176 CL P_MESO CALCTS1A.177 CL TS = T_UPPER_STRAT CALCTS1A.178 C---------------------------------------------------------------------- CALCTS1A.179 CALCTS1A.180 ELSE IF(P(1).LT.P_UPPER_STRAT.AND.P(1).GT.P_MESO) THEN CALCTS1A.181 TS(1) = T_UPPER_STRAT CALCTS1A.182 CALCTS1A.183 C---------------------------------------------------------------------- CALCTS1A.184 CL SECTION 1.6 IF PRESSURE BELOW P_MESO BUT GREATER THAN P_MIN. CALCTS1A.185 CL USE STANDARD MESOSPHERE. CALCTS1A.186 CL TS IS EVALUATED AS DESCRIBED IN SECTION 1.1 CALCTS1A.187 CL PARAMETERS IN THIS SECTION ARE SUFFIXED 4. CALCTS1A.188 C---------------------------------------------------------------------- CALCTS1A.189 CALCTS1A.190 ELSE IF(P(1).LT.P_MESO.AND.P(1).GT.P_MIN) THEN CALCTS1A.191 CONST = (P(1)*RECIP_P_MESO-A4)*RECIP_A4 CALCTS1A.192 TERM1 = 1.+ CONST*(MINUS_RLG4-5.)*ONE_SIXTH CALCTS1A.193 TERM2 = 1. +TERM1*CONST*(MINUS_RLG4-4.)*.2 CALCTS1A.194 TERM3 = 1. +TERM2*CONST*(MINUS_RLG4-3.)*.25 CALCTS1A.195 TERM4 = 1. +TERM3*CONST*(MINUS_RLG4-2.)*ONE_THIRD CALCTS1A.196 TERM5 = 1. +TERM4*CONST*(MINUS_RLG4-1.)*.5 CALCTS1A.197 TERM6 = A4_TO_MINUS_RLG4*(1. +TERM5*CONST*MINUS_RLG4) CALCTS1A.198 TS(1) = T_UPPER_STRAT* TERM6 CALCTS1A.199 CALCTS1A.200 C---------------------------------------------------------------------- CALCTS1A.201 CL SECTION 1.7 IF PRESSURE BELOW P_MIN. CALCTS1A.202 CL SET TO T_MIN. CALCTS1A.203 C---------------------------------------------------------------------- CALCTS1A.204 CALCTS1A.205 ELSE CALCTS1A.206 TS(1) = T_MIN CALCTS1A.207 CALCTS1A.208 ENDIF CALCTS1A.209 CALCTS1A.210 C---------------------------------------------------------------------- CALCTS1A.211 CL SECTION 1.8 IF CONSTANT_PRESSURE SET TS VALUES FROM POINT CALCTS1A.212 CL NUMBER 2 TO POINTS EQUAL TO TS VALUE CALCULATED CALCTS1A.213 CL FOR POINT NUMBER 1. CALCTS1A.214 C---------------------------------------------------------------------- CALCTS1A.215 CALCTS1A.216 DO 180 I=2,POINTS CALCTS1A.217 TS(I) = TS(1) CALCTS1A.218 180 CONTINUE CALCTS1A.219 ELSE CALCTS1A.220 CALCTS1A.221 C NOT CONSTANT PRESSURE SO LOOP OVER ALL POINTS. CALCTS1A.222 C CODE SECTIONS ARE AS ABOVE. CALCTS1A.223 CALCTS1A.224 CMIC$ DO ALL VECTOR AUTOSCOPE CALCTS1A.225 CDIR$ IVDEP CALCTS1A.226 ! Fujitsu vectorization directive GRB0F405.197 !OCL NOVREC GRB0F405.198 DO 300 I=1,POINTS GSS1F304.183 C---------------------------------------------------------------------- CALCTS1A.228 C SECTION 2.1 IF PRESSURE ABOVE P_ISO THEN CALCTS1A.229 C TS = TS0*(P0/P)**(R*L0/G) CALCTS1A.230 C---------------------------------------------------------------------- CALCTS1A.231 CALCTS1A.232 IF(P(I).GT.P_ISO) THEN CALCTS1A.233 CONST = (P(I)*RECIP_P0-A1)*RECIP_A1 CALCTS1A.234 TERM1 = 1.+ CONST*(MINUS_RLG1-5.)*ONE_SIXTH CALCTS1A.235 TERM2 = 1. +TERM1*CONST*(MINUS_RLG1-4.)*.2 CALCTS1A.236 TERM3 = 1. +TERM2*CONST*(MINUS_RLG1-3.)*.25 CALCTS1A.237 TERM4 = 1. +TERM3*CONST*(MINUS_RLG1-2.)*ONE_THIRD CALCTS1A.238 TERM5 = 1. +TERM4*CONST*(MINUS_RLG1-1.)*.5 CALCTS1A.239 TERM6 = A1_TO_MINUS_RLG1*(1. +TERM5*CONST*MINUS_RLG1) CALCTS1A.240 TS(I) = TS0* TERM6 CALCTS1A.241 CALCTS1A.242 C---------------------------------------------------------------------- CALCTS1A.243 C SECTION 2.2 IF PRESSURE ABOVE P_ISO BUT LESS THAN P_LOW_STRAT THEN CALCTS1A.244 C TS = T_ISO WHICH IS A CONSTANT. CALCTS1A.245 C---------------------------------------------------------------------- CALCTS1A.246 CALCTS1A.247 ELSE IF(P(I).LE.P_ISO.AND.P(I).GE.P_LOW_STRAT) THEN CALCTS1A.248 TS(I) = T_ISO CALCTS1A.249 CALCTS1A.250 C---------------------------------------------------------------------- CALCTS1A.251 C SECTION 2.3 IF PRESSURE BELOW P_LOW_STRAT BUT GREATER THAN CALCTS1A.252 C P_MID_STRAT CALCTS1A.253 C TS = T_ISO*(P_LOW_STRAT/P)**(R*L_LOW_STRAT/G) CALCTS1A.254 C---------------------------------------------------------------------- CALCTS1A.255 CALCTS1A.256 ELSE IF(P(I).LT.P_LOW_STRAT.AND.P(I).GT.P_MID_STRAT) THEN CALCTS1A.257 CONST = (P(I)*RECIP_P_LOW_STRAT-A2)*RECIP_A2 CALCTS1A.258 TERM1 = 1.+ CONST*(MINUS_RLG2-5.)*ONE_SIXTH CALCTS1A.259 TERM2 = 1. +TERM1*CONST*(MINUS_RLG2-4.)*.2 CALCTS1A.260 TERM3 = 1. +TERM2*CONST*(MINUS_RLG2-3.)*.25 CALCTS1A.261 TERM4 = 1. +TERM3*CONST*(MINUS_RLG2-2.)*ONE_THIRD CALCTS1A.262 TERM5 = 1. +TERM4*CONST*(MINUS_RLG2-1.)*.5 CALCTS1A.263 TERM6 = A2_TO_MINUS_RLG2*(1. +TERM5*CONST*MINUS_RLG2) CALCTS1A.264 TS(I) = T_ISO* TERM6 CALCTS1A.265 CALCTS1A.266 C---------------------------------------------------------------------- CALCTS1A.267 C SECTION 2.4 IF PRESSURE BELOW P_MID_STRAT BUT GREATER THAN CALCTS1A.268 C P_UPPER_STRAT CALCTS1A.269 C TS = T_MID_STRAT*(P_MID_STRAT/P)**(R*L_MID_STRAT/G) CALCTS1A.270 C---------------------------------------------------------------------- CALCTS1A.271 CALCTS1A.272 ELSE IF(P(I).LT.P_MID_STRAT.AND.P(I).GT.P_UPPER_STRAT) THEN CALCTS1A.273 CONST = (P(I)*RECIP_P_MID_STRAT-A3)*RECIP_A3 CALCTS1A.274 TERM1 = 1.+ CONST*(MINUS_RLG3-5.)*ONE_SIXTH CALCTS1A.275 TERM2 = 1. +TERM1*CONST*(MINUS_RLG3-4.)*.2 CALCTS1A.276 TERM3 = 1. +TERM2*CONST*(MINUS_RLG3-3.)*.25 CALCTS1A.277 TERM4 = 1. +TERM3*CONST*(MINUS_RLG3-2.)*ONE_THIRD CALCTS1A.278 TERM5 = 1. +TERM4*CONST*(MINUS_RLG3-1.)*.5 CALCTS1A.279 TERM6 = A3_TO_MINUS_RLG3*(1. +TERM5*CONST*MINUS_RLG3) CALCTS1A.280 TS(I) = T_MID_STRAT* TERM6 CALCTS1A.281 CALCTS1A.282 C---------------------------------------------------------------------- CALCTS1A.283 C SECTION 2.5 IF PRESSURE BELOW P_UPPER_STRAT BUT GREATER THAN CALCTS1A.284 C P_MESO CALCTS1A.285 C TS = T_UPPER_STRAT CALCTS1A.286 C---------------------------------------------------------------------- CALCTS1A.287 CALCTS1A.288 ELSE IF(P(I).LT.P_UPPER_STRAT.AND.P(I).GT.P_MESO) THEN CALCTS1A.289 TS(I) = T_UPPER_STRAT CALCTS1A.290 CALCTS1A.291 C---------------------------------------------------------------------- CALCTS1A.292 C SECTION 2.6 IF PRESSURE BELOW P_MESO BUT GREATER THAN P_MIN. CALCTS1A.293 C USE STANDARD MESOSPHERE. CALCTS1A.294 C---------------------------------------------------------------------- CALCTS1A.295 CALCTS1A.296 ELSE IF(P(I).LT.P_MESO.AND.P(I).GT.P_MIN) THEN CALCTS1A.297 CONST = (P(I)*RECIP_P_MESO-A4)*RECIP_A4 CALCTS1A.298 TERM1 = 1.+ CONST*(MINUS_RLG4-5.)*ONE_SIXTH CALCTS1A.299 TERM2 = 1. +TERM1*CONST*(MINUS_RLG4-4.)*.2 CALCTS1A.300 TERM3 = 1. +TERM2*CONST*(MINUS_RLG4-3.)*.25 CALCTS1A.301 TERM4 = 1. +TERM3*CONST*(MINUS_RLG4-2.)*ONE_THIRD CALCTS1A.302 TERM5 = 1. +TERM4*CONST*(MINUS_RLG4-1.)*.5 CALCTS1A.303 TERM6 = A4_TO_MINUS_RLG4*(1. +TERM5*CONST*MINUS_RLG4) CALCTS1A.304 TS(I) = T_UPPER_STRAT* TERM6 CALCTS1A.305 CALCTS1A.306 CALCTS1A.307 C---------------------------------------------------------------------- CALCTS1A.308 C SECTION 2.7 IF PRESSURE BELOW P_MIN. CALCTS1A.309 C SET TO T_MIN. CALCTS1A.310 C---------------------------------------------------------------------- CALCTS1A.311 CALCTS1A.312 ELSE CALCTS1A.313 TS(I) = T_MIN CALCTS1A.314 CALCTS1A.315 ENDIF CALCTS1A.316 CALCTS1A.317 C END LOOP OVER POINTS CALCTS1A.318 300 CONTINUE GSS1F304.184 END IF CALCTS1A.320 CALCTS1A.321 END IF ! LLINTS GSS1F304.185 CALCTS1A.323 CL END OF ROUTINE CALC_TS CALCTS1A.324 RETURN CALCTS1A.325 END CALCTS1A.326 CALCTS1A.327 *ENDIF CALCTS1A.328