Changeset 2995
- Timestamp:
- May 29, 2006, 10:28:39 AM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
inundation/fit_interpolate/test_interpolate.py
r2881 r2995 1145 1145 raise 'Should raise exception' 1146 1146 1147 1148 def test_interpolation_function_time(self): 1149 """Test a long time series with an error in it (this did cause an 1150 error once) 1151 """ 1152 1153 time = array(\ 1154 [0.00000000e+00, 5.00000000e-02, 1.00000000e-01, 1.50000000e-01, 1155 2.00000000e-01, 2.50000000e-01, 3.00000000e-01, 3.50000000e-01, 1156 4.00000000e-01, 4.50000000e-01, 5.00000000e-01, 5.50000000e-01, 1157 6.00000000e-01, 6.50000000e-01, 7.00000000e-01, 7.50000000e-01, 1158 8.00000000e-01, 8.50000000e-01, 9.00000000e-01, 9.50000000e-01, 1159 1.00000000e-00, 1.05000000e+00, 1.10000000e+00, 1.15000000e+00, 1160 1.20000000e+00, 1.25000000e+00, 1.30000000e+00, 1.35000000e+00, 1161 1.40000000e+00, 1.45000000e+00, 1.50000000e+00, 1.55000000e+00, 1162 1.60000000e+00, 1.65000000e+00, 1.70000000e+00, 1.75000000e+00, 1163 1.80000000e+00, 1.85000000e+00, 1.90000000e+00, 1.95000000e+00, 1164 2.00000000e+00, 2.05000000e+00, 2.10000000e+00, 2.15000000e+00, 1165 2.20000000e+00, 2.25000000e+00, 2.30000000e+00, 2.35000000e+00, 1166 2.40000000e+00, 2.45000000e+00, 2.50000000e+00, 2.55000000e+00, 1167 2.60000000e+00, 2.65000000e+00, 2.70000000e+00, 2.75000000e+00, 1168 2.80000000e+00, 2.85000000e+00, 2.90000000e+00, 2.95000000e+00, 1169 3.00000000e+00, 3.05000000e+00, 9.96920997e+36, 3.15000000e+00, 1170 3.20000000e+00, 3.25000000e+00, 3.30000000e+00, 3.35000000e+00, 1171 3.40000000e+00, 3.45000000e+00, 3.50000000e+00, 3.55000000e+00, 1172 3.60000000e+00, 3.65000000e+00, 3.70000000e+00, 3.75000000e+00, 1173 3.80000000e+00, 3.85000000e+00, 3.90000000e+00, 3.95000000e+00, 1174 4.00000000e+00, 4.05000000e+00, 4.10000000e+00, 4.15000000e+00, 1175 4.20000000e+00, 4.25000000e+00, 4.30000000e+00, 4.35000000e+00, 1176 4.40000000e+00, 4.45000000e+00, 4.50000000e+00, 4.55000000e+00, 1177 4.60000000e+00, 4.65000000e+00, 4.70000000e+00, 4.75000000e+00, 1178 4.80000000e+00, 4.85000000e+00, 4.90000000e+00, 4.95000000e+00, 1179 5.00000000e+00, 5.05000000e+00, 5.10000000e+00, 5.15000000e+00, 1180 5.20000000e+00, 5.25000000e+00, 5.30000000e+00, 5.35000000e+00, 1181 5.40000000e+00, 5.45000000e+00, 5.50000000e+00, 5.55000000e+00, 1182 5.60000000e+00, 5.65000000e+00, 5.70000000e+00, 5.75000000e+00, 1183 5.80000000e+00, 5.85000000e+00, 5.90000000e+00, 5.95000000e+00, 1184 6.00000000e+00, 6.05000000e+00, 6.10000000e+00, 6.15000000e+00, 1185 6.20000000e+00, 6.25000000e+00, 6.30000000e+00, 6.35000000e+00, 1186 6.40000000e+00, 6.45000000e+00, 6.50000000e+00, 6.55000000e+00, 1187 6.60000000e+00, 6.65000000e+00, 6.70000000e+00, 6.75000000e+00, 1188 6.80000000e+00, 6.85000000e+00, 6.90000000e+00, 6.95000000e+00, 1189 7.00000000e+00, 7.05000000e+00, 7.10000000e+00, 7.15000000e+00, 1190 7.20000000e+00, 7.25000000e+00, 7.30000000e+00, 7.35000000e+00, 1191 7.40000000e+00, 7.45000000e+00, 7.50000000e+00, 7.55000000e+00, 1192 7.60000000e+00, 7.65000000e+00, 7.70000000e+00, 7.75000000e+00, 1193 7.80000000e+00, 7.85000000e+00, 7.90000000e+00, 7.95000000e+00, 1194 8.00000000e+00, 8.05000000e+00, 8.10000000e+00, 8.15000000e+00, 1195 8.20000000e+00, 8.25000000e+00, 8.30000000e+00, 8.35000000e+00, 1196 8.40000000e+00, 8.45000000e+00, 8.50000000e+00, 8.55000000e+00, 1197 8.60000000e+00, 8.65000000e+00, 8.70000000e+00, 8.75000000e+00, 1198 8.80000000e+00, 8.85000000e+00, 8.90000000e+00, 8.95000000e+00, 1199 9.00000000e+00, 9.05000000e+00, 9.10000000e+00, 9.15000000e+00, 1200 9.20000000e+00, 9.25000000e+00, 9.30000000e+00, 9.35000000e+00, 1201 9.40000000e+00, 9.45000000e+00, 9.50000000e+00, 9.55000000e+00, 1202 9.60000000e+00, 9.65000000e+00, 9.70000000e+00, 9.75000000e+00, 1203 9.80000000e+00, 9.85000000e+00, 9.90000000e+00, 9.95000000e+00, 1204 1.00000000e+01, 1.00500000e+01, 1.01000000e+01, 1.01500000e+01, 1205 1.02000000e+01, 1.02500000e+01, 1.03000000e+01, 1.03500000e+01, 1206 1.04000000e+01, 1.04500000e+01, 1.05000000e+01, 1.05500000e+01, 1207 1.06000000e+01, 1.06500000e+01, 1.07000000e+01, 1.07500000e+01, 1208 1.08000000e+01, 1.08500000e+01, 1.09000000e+01, 1.09500000e+01, 1209 1.10000000e+01, 1.10500000e+01, 1.11000000e+01, 1.11500000e+01, 1210 1.12000000e+01, 1.12500000e+01, 1.13000000e+01, 1.13500000e+01, 1211 1.14000000e+01, 1.14500000e+01, 1.15000000e+01, 1.15500000e+01, 1212 1.16000000e+01, 1.16500000e+01, 1.17000000e+01, 1.17500000e+01, 1213 1.18000000e+01, 1.18500000e+01, 1.19000000e+01, 1.19500000e+01, 1214 1.20000000e+01, 1.20500000e+01, 1.21000000e+01, 1.21500000e+01, 1215 1.22000000e+01, 1.22500000e+01, 1.23000000e+01, 1.23500000e+01, 1216 1.24000000e+01, 1.24500000e+01, 1.25000000e+01, 1.25500000e+01, 1217 1.26000000e+01, 1.26500000e+01, 1.27000000e+01, 1.27500000e+01, 1218 1.28000000e+01, 1.28500000e+01, 1.29000000e+01, 1.29500000e+01, 1219 1.30000000e+01, 1.30500000e+01, 1.31000000e+01, 1.31500000e+01, 1220 1.32000000e+01, 1.32500000e+01, 1.33000000e+01, 1.33500000e+01, 1221 1.34000000e+01, 1.34500000e+01, 1.35000000e+01, 1.35500000e+01, 1222 1.36000000e+01, 1.36500000e+01, 1.37000000e+01, 1.37500000e+01, 1223 1.38000000e+01, 1.38500000e+01, 1.39000000e+01, 1.39500000e+01, 1224 1.40000000e+01, 1.40500000e+01, 1.41000000e+01, 1.41500000e+01, 1225 1.42000000e+01, 1.42500000e+01, 1.43000000e+01, 1.43500000e+01, 1226 1.44000000e+01, 1.44500000e+01, 1.45000000e+01, 1.45500000e+01, 1227 1.46000000e+01, 1.46500000e+01, 1.47000000e+01, 1.47500000e+01, 1228 1.48000000e+01, 1.48500000e+01, 1.49000000e+01, 1.49500000e+01, 1229 1.50000000e+01, 1.50500000e+01, 1.51000000e+01, 1.51500000e+01, 1230 1.52000000e+01, 1.52500000e+01, 1.53000000e+01, 1.53500000e+01, 1231 1.54000000e+01, 1.54500000e+01, 1.55000000e+01, 1.55500000e+01, 1232 1.56000000e+01, 1.56500000e+01, 1.57000000e+01, 1.57500000e+01, 1233 1.58000000e+01, 1.58500000e+01, 1.59000000e+01, 1.59500000e+01, 1234 1.60000000e+01, 1.60500000e+01, 1.61000000e+01, 1.61500000e+01, 1235 1.62000000e+01, 1.62500000e+01, 1.63000000e+01, 1.63500000e+01, 1236 1.64000000e+01, 1.64500000e+01, 1.65000000e+01, 1.65500000e+01, 1237 1.66000000e+01, 1.66500000e+01, 1.67000000e+01, 1.67500000e+01, 1238 1.68000000e+01, 1.68500000e+01, 1.69000000e+01, 1.69500000e+01, 1239 1.70000000e+01, 1.70500000e+01, 1.71000000e+01, 1.71500000e+01, 1240 1.72000000e+01, 1.72500000e+01, 1.73000000e+01, 1.73500000e+01, 1241 1.74000000e+01, 1.74500000e+01, 1.75000000e+01, 1.75500000e+01, 1242 1.76000000e+01, 1.76500000e+01, 1.77000000e+01, 1.77500000e+01, 1243 1.78000000e+01, 1.78500000e+01, 1.79000000e+01, 1.79500000e+01, 1244 1.80000000e+01, 1.80500000e+01, 1.81000000e+01, 1.81500000e+01, 1245 1.82000000e+01, 1.82500000e+01, 1.83000000e+01, 1.83500000e+01, 1246 1.84000000e+01, 1.84500000e+01, 1.85000000e+01, 1.85500000e+01, 1247 1.86000000e+01, 1.86500000e+01, 1.87000000e+01, 1.87500000e+01, 1248 1.88000000e+01, 1.88500000e+01, 1.89000000e+01, 1.89500000e+01, 1249 1.90000000e+01, 1.90500000e+01, 1.91000000e+01, 1.91500000e+01, 1250 1.92000000e+01, 1.92500000e+01, 1.93000000e+01, 1.93500000e+01, 1251 1.94000000e+01, 1.94500000e+01, 1.95000000e+01, 1.95500000e+01, 1252 1.96000000e+01, 1.96500000e+01, 1.97000000e+01, 1.97500000e+01, 1253 1.98000000e+01, 1.98500000e+01, 1.99000000e+01, 1.99500000e+01, 1254 2.00000000e+01, 2.00500000e+01, 2.01000000e+01, 2.01500000e+01, 1255 2.02000000e+01, 2.02500000e+01, 2.03000000e+01, 2.03500000e+01, 1256 2.04000000e+01, 2.04500000e+01, 2.05000000e+01, 2.05500000e+01, 1257 2.06000000e+01, 2.06500000e+01, 2.07000000e+01, 2.07500000e+01, 1258 2.08000000e+01, 2.08500000e+01, 2.09000000e+01, 2.09500000e+01, 1259 2.10000000e+01, 2.10500000e+01, 2.11000000e+01, 2.11500000e+01, 1260 2.12000000e+01, 2.12500000e+01, 2.13000000e+01, 2.13500000e+01, 1261 2.14000000e+01, 2.14500000e+01, 2.15000000e+01, 2.15500000e+01, 1262 2.16000000e+01, 2.16500000e+01, 2.17000000e+01, 2.17500000e+01, 1263 2.18000000e+01, 2.18500000e+01, 2.19000000e+01, 2.19500000e+01, 1264 2.20000000e+01, 2.20500000e+01, 2.21000000e+01, 2.21500000e+01, 1265 2.22000000e+01, 2.22500000e+01, 2.23000000e+01, 2.23500000e+01, 1266 2.24000000e+01, 2.24500000e+01, 2.25000000e+01]) 1267 1268 #print 'Diff', time[1:] - time[:-1] 1269 1270 #Setup mesh used to represent fitted function 1271 a = [0.0, 0.0] 1272 b = [0.0, 2.0] 1273 c = [2.0, 0.0] 1274 d = [0.0, 4.0] 1275 e = [2.0, 2.0] 1276 f = [4.0, 0.0] 1277 1278 points = [a, b, c, d, e, f] 1279 #bac, bce, ecf, dbe 1280 triangles = [[1,0,2], [1,2,4], [4,2,5], [3,1,4]] 1281 1282 1283 #New datapoints where interpolated values are sought 1284 interpolation_points = [[ 0.0, 0.0], 1285 [ 0.5, 0.5], 1286 [ 0.7, 0.7], 1287 [ 1.0, 0.5], 1288 [ 2.0, 0.4], 1289 [ 545354534, 4354354353]] # outside the mesh 1290 1291 #One quantity 1292 Q = zeros( (len(time),6), Float ) 1293 1294 #Linear in time and space 1295 for i, t in enumerate(time): 1296 Q[i, :] = t*linear_function(points) 1297 1298 #Check interpolation of one quantity using interpolaton points) 1299 try: 1300 I = Interpolation_function(time, Q, 1301 vertex_coordinates = points, 1302 triangles = triangles, 1303 interpolation_points = interpolation_points, 1304 verbose = False) 1305 except: 1306 pass 1307 else: 1308 raise 'Should raise exception due to time being non-monotoneous' 1309 1310 1147 1311 def test_points_outside_the_polygon(self): 1148 1312 a = [-1.0, 0.0]
Note: See TracChangeset
for help on using the changeset viewer.