Changeset 6906
- Timestamp:
- Apr 26, 2009, 5:35:16 PM (16 years ago)
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
anuga_validation/automated_validation_tests/patong_beach_validation/validate.py
r6903 r6906 58 58 OUTDIR_PREFIX = 'Make directory ' 59 59 60 # Name of SWW file produced by simulation60 # Name of SWW file produced by run_model.py 61 61 OUTPUT_SWW = 'patong.sww' 62 62 … … 93 93 94 94 if 'DOCTYPE' in data: 95 return False96 97 return True95 return True 96 97 return False 98 98 99 99 … … 114 114 (result, auth) = get_web_file(remote_url, local, auth=auth) 115 115 if result and is_html(local)==False: 116 log.debug('Success fetching file %s' % remote _url)116 log.debug('Success fetching file %s' % remote) 117 117 return (True, auth) 118 118 log.debug('Failure fetching from %s' % mirror) 119 120 log.debug('Failure fetching file %s' % remote) 119 121 return (False, auth) 120 122 … … 164 166 if not files_same(local_data_digest, remote_data_digest): 165 167 # digests differ, refresh object 166 log.info('Local file %s is out of date, refreshing ...' % obj)167 168 shutil.move(remote_digest, local_digest) 168 169 (res, auth) = get_remote_from_mirrors(obj, local_file, auth, mirrors) -
branches/numpy_anuga_validation/automated_validation_tests/patong_beach_validation/cmpsww.py
r6808 r6906 24 24 # Don't have to have all of these, and we don't care about others. 25 25 expect_global_attributes = ['smoothing', 'vertices_are_stored_uniquely', 26 'order', ' revision_number', 'starttime',26 'order', 'starttime', 27 27 'xllcorner', 'yllcorner', 28 28 'zone', 'false_easting', 'false_northing', … … 89 89 raise RuntimeError, error_msg 90 90 91 if globals is None: 92 globals = expect_global_attributes 93 91 94 ##### 92 95 # First, check that files have the required structure … … 144 147 file2, str(glob_vars2))) 145 148 error = True 146 globals = glob_vars1147 149 148 150 # get variables to test -
branches/numpy_anuga_validation/automated_validation_tests/patong_beach_validation/run_model.py
r6905 r6906 177 177 #------------------------------------------------------------------------------- 178 178 179 log.critical('Set boundary - available tags:' ,domain.get_boundary_tags())179 log.critical('Set boundary - available tags:' % domain.get_boundary_tags()) 180 180 181 181 Br = Reflective_boundary(domain) -
branches/numpy_anuga_validation/automated_validation_tests/patong_beach_validation/validate.py
r6905 r6906 42 42 # as code below depends upon it. 43 43 Optional_Data_Objects = ('patong.sww.TRIAL.tgz', 44 'patong.sww.BASIC.tgz',45 'patong.sww.FINAL.tgz'44 # 'patong.sww.BASIC.tgz', 45 # 'patong.sww.FINAL.tgz' 46 46 ) 47 47 … … 58 58 OUTDIR_PREFIX = 'Make directory ' 59 59 60 # Name of SWW file produced by simulation60 # Name of SWW file produced by run_model.py 61 61 OUTPUT_SWW = 'patong.sww' 62 62 … … 93 93 94 94 if 'DOCTYPE' in data: 95 return False96 97 return True95 return True 96 97 return False 98 98 99 99 … … 114 114 (result, auth) = get_web_file(remote_url, local, auth=auth) 115 115 if result and is_html(local)==False: 116 log.debug('Success fetching file %s' % remote _url)116 log.debug('Success fetching file %s' % remote) 117 117 return (True, auth) 118 118 log.debug('Failure fetching from %s' % mirror) 119 120 log.debug('Failure fetching file %s' % remote) 119 121 return (False, auth) 120 122 … … 162 164 (res, auth) = get_remote_from_mirrors(obj_digest, remote_digest, auth, mirrors) 163 165 if res: 164 if not files_same(local_d ata_digest, remote_data_digest):166 if not files_same(local_digest, remote_digest): 165 167 # digests differ, refresh object 166 log.info('Local file %s is out of date, refreshing ...' % obj)167 168 shutil.move(remote_digest, local_digest) 168 169 (res, auth) = get_remote_from_mirrors(obj, local_file, auth, mirrors) … … 269 270 270 271 # modify project.py template 272 log.info('Creating %s version of project.py' % vtype) 271 273 fd = open('project.py.template', 'r') 272 274 project = fd.readlines() … … 285 287 286 288 # run the simulation, produce SWW file 289 log.info('Running run_model.py') 287 290 cmd = 'python run_model.py > %s' % RUNMODEL_STDOUT 288 291 log.debug("run_simulation: doing '%s'" % cmd) … … 374 377 log.console_logging_level = log.INFO 375 378 log.log_logging_level = log.DEBUG 379 log_filename = log.log_filename 380 376 381 setup() 377 382 … … 429 434 (expected_sww, _) = valid_sww.rsplit('.', 1) 430 435 check_that_output_is_as_expected(expected_sww, valid_sww) 436 shutil.move(log_filename, '%s.%s' % (log_filename, vtype)) 431 437 432 438 # clean up -
branches/numpy_misc/tools/plotcsv/installer/plotcsv.nsi
r6480 r6906 1 1 !define PRODUCT_NAME "plotcsv" 2 !define PRODUCT_VERSION "0. 4"2 !define PRODUCT_VERSION "0.5" 3 3 !define ICON_FILE "plotcsv.ico" 4 4 -
branches/numpy_misc/tools/plotcsv/plotcsv.py
r6482 r6906 54 54 # program name and version 55 55 APP_NAME = 'plotcsv' 56 APP_VERSION = '0. 4'56 APP_VERSION = '0.5' 57 57 58 58 # name of the configuration filename … … 624 624 title=self.txtTitle.GetValue(), 625 625 legend=self.chkLegend.GetValue(), 626 legend_path=self.chkLegendPath.GetValue()) 626 legend_path=self.chkLegendPath.GetValue()) 627 # hide problem with wxPython and matplotlib - close app! 628 self.Close(True) 627 629 628 630 def error(self, msg): -
branches/numpy_misc/tools/write_large_files/rw_big_file.py
r6817 r6906 59 59 def read_file(filename, variable_size, num_variables): 60 60 # create a data array slice 61 slice_array_mask = num py.ones((XDIM,), 'd')61 slice_array_mask = num.ones((XDIM,), 'd') 62 62 63 63 # if timing file read, get start time … … 148 148 149 149 # create a data array slice 150 slice_array_mask = num py.ones((XDIM,), 'd')150 slice_array_mask = num.ones((XDIM,), 'd') 151 151 152 152 # if timing file write, remember start time -
misc/tools/write_large_files/rwi4_big_file.py
r6739 r6906 8 8 # that is checked when the file is read. 9 9 # 10 # So, element E of slice S ov variable V has the float value: 11 # V*1000 + S . E*1.0e-1 10 # So, for variable V (numbering from 0), slice S (starting from 0), element 11 # E will range from 0 to 10**6-1, and the element value will be: 12 # S*100 + V + E*1.0E-6 12 13 # which will look like: 13 # VVVSSSS.0EEEEEE 14 # SSSSVV.EEEEEE 15 # This implies that the maximum number of variables written is 100 (0 to 99). 14 16 ################################################################################ 15 17 … … 28 30 29 31 # array slice definitions 30 XDIM = 10 24*102432 XDIM = 1000*1000 31 33 SLICE_SIZE = XDIM*8 # 8 bytes / float 32 34 MBYTE = 1024*1024 … … 47 49 48 50 # mask for variable names 49 VarnameMask = 'var_%0 4d'51 VarnameMask = 'var_%02d' 50 52 51 53 … … 74 76 for var_num in xrange(num_variables): 75 77 varname = VarnameMask % var_num 76 var = fid.variables[varname]77 78 78 79 # num variable bytes written counter … … 85 86 86 87 # create expected slice array 87 slice_array = slice_array_mask*slice_number + var_num*1000 88 for x in xrange(XDIM): 89 slice_array[x] += x*1.0e-7 88 slice_array = slice_array_mask*slice_number*100 + var_num 89 slice_array += ElementIndexArray 90 90 91 91 if Verbose: … … 96 96 float(file_bytes_read)/MBYTE)) 97 97 98 #var_array = fid.variables[varname][slice_number,:]99 var_array = var[slice_number,:]100 if var_array != slice_array:98 var_array = fid.variables[varname][slice_number,:] 99 if not num.allclose(var_array, slice_array): 100 ## if num.any(var_array != slice_array): 101 101 print 'Read variable %s, slice %d: got unexpected value' % \ 102 102 (varname, slice_number) … … 161 161 162 162 # create unique slice array 163 slice_array = slice_array_mask*slice_number + var_num*1000 164 for x in xrange(XDIM): 165 slice_array[x] += x*1.0e-7 163 slice_array = slice_array_mask*slice_number*100 + var_num 164 slice_array += ElementIndexArray 166 165 167 166 fid.variables[varname][slice_number,:] = slice_array … … 169 168 if CloseAfterSlice: 170 169 fid.close() 171 fid = nc.NetCDFFile(filename, 'a4') 170 # fid = nc.NetCDFFile(filename, 'a4') 171 fid = nc.NetCDFFile(filename, 'a') 172 172 173 173 file_bytes_written += SLICE_SIZE … … 204 204 print " and <numvars> is the number of variables of the above size" 205 205 print " to write. If not supplied, 1 is assumed." 206 print " There can be at most 100 variables." 206 207 print " and <opts> is zero or more of:" 207 208 print " -c s close & open the output file after" … … 217 218 def main(argv=None): 218 219 global TimeFileWrite, TimeFileRead, CloseAfterSlice, Verbose 220 global ElementIndexArray 219 221 220 222 if argv is None: … … 259 261 260 262 var_size = args[0][:-1] 261 modifier = args[0][-1]263 modifier = args[0][-1] 262 264 263 265 if modifier in '0123456789': … … 280 282 usage() 281 283 284 if num_vars > 100: 285 usage() 286 287 # initialize the global element index array which contains 288 # 0.EEEEEE in each element. 289 ElementIndexArray = num.ndarray((XDIM,), 'd') 290 for x in xrange(XDIM): 291 ElementIndexArray[x] = x*1.0e-6 292 282 293 # write the required file 283 294 filename = write_file(var_size, num_vars) … … 288 299 return 10 289 300 290 print 'Read/write of NectCDF file was correct'301 # print 'Read/write of NectCDF file was correct' 291 302 return 0 292 303 -
misc/tools/write_large_files/rwi_big_file.py
r6739 r6906 8 8 # that is checked when the file is read. 9 9 # 10 # So, element E of slice S ov variable V has the float value: 11 # V*1000 + S . E*1.0e-1 10 # So, for variable V (numbering from 0), slice S (starting from 0), element 11 # E will range from 0 to 10**6-1, and the element value will be: 12 # S*100 + V + E*1.0E-6 12 13 # which will look like: 13 # VVVSSSS.0EEEEEE 14 # SSSSVV.EEEEEE 15 # This implies that the maximum number of variables written is 100 (0 to 99). 14 16 ################################################################################ 15 17 … … 28 30 29 31 # array slice definitions 30 XDIM = 10 24*102432 XDIM = 1000*1000 31 33 SLICE_SIZE = XDIM*8 # 8 bytes / float 32 34 MBYTE = 1024*1024 … … 47 49 48 50 # mask for variable names 49 VarnameMask = 'var_%0 4d'51 VarnameMask = 'var_%02d' 50 52 51 53 … … 87 89 88 90 # create expected slice array 89 slice_array = slice_array_mask*slice_number + var_num*1000 90 for x in xrange(XDIM): 91 slice_array[x] += x*1.0e-7 91 slice_array = slice_array_mask*slice_number*100 + var_num 92 slice_array += ElementIndexArray 92 93 93 94 if Verbose: 94 95 print ('File %s, variable %s, reading slice %d: ' 95 96 'var=%.1fMiB, file=%.1fMiB' % 96 (filename, varname, slice_number, float(var_bytes_read)/MBYTE, 97 (filename, varname, slice_number, 98 float(var_bytes_read)/MBYTE, 97 99 float(file_bytes_read)/MBYTE)) 98 100 99 101 var_array = fid.variables[varname][slice_number,:] 100 if var_array != slice_array: 101 result = False 102 if Verbose: 103 print 'Read variable %s, slice %d: got unexpected value' % \ 104 (varname, slice_number) 105 for x in xrange(XDIM): 106 if var_array[x] != slice_array[x]: 107 print 'Got %f, expected %f' % (var_array[x], slice_array[x]) 108 sys.exit(0) 102 if not num.allclose(var_array, slice_array): 103 ## if num.any(var_array != slice_array): 109 104 print 'Read variable %s, slice %d: got unexpected value' % \ 110 105 (varname, slice_number) 111 106 for x in xrange(XDIM): 112 107 if var_array[x] != slice_array[x]: 113 print 'Got %f, expected %f' % (var_array[x], slice_array[x]) 114 sys.exit(0) 108 print 'Index %d, got %f, expected %f' % \ 109 (x, var_array[x], slice_array[x]) 110 return False 115 111 116 112 slice_number += 1 … … 127 123 (stop_file_read - start_file_read)) 128 124 129 return result125 return True 130 126 131 127 … … 168 164 169 165 # create unique slice array 170 slice_array = slice_array_mask*slice_number + var_num*1000 171 for x in xrange(XDIM): 172 slice_array[x] += x*1.0e-7 166 slice_array = slice_array_mask*slice_number*100 + var_num 167 slice_array += ElementIndexArray 173 168 174 169 fid.variables[varname][slice_number,:] = slice_array … … 188 183 189 184 slice_number += 1 185 186 fid.close() 190 187 191 188 if TimeFileWrite: … … 209 206 print " and <numvars> is the number of variables of the above size" 210 207 print " to write. If not supplied, 1 is assumed." 208 print " There can be at most 100 variables." 211 209 print " and <opts> is zero or more of:" 212 210 print " -c s close & open the output file after" … … 222 220 def main(argv=None): 223 221 global TimeFileWrite, TimeFileRead, CloseAfterSlice, Verbose 222 global ElementIndexArray 224 223 225 224 if argv is None: … … 264 263 265 264 var_size = args[0][:-1] 266 modifier = args[0][-1]265 modifier = args[0][-1] 267 266 268 267 if modifier in '0123456789': … … 285 284 usage() 286 285 286 if num_vars > 100: 287 usage() 288 289 # initialize the global element index array which contains 290 # 0.EEEEEE in each element. 291 ElementIndexArray = num.ndarray((XDIM,), 'd') 292 for x in xrange(XDIM): 293 ElementIndexArray[x] = x*1.0e-6 294 287 295 # write the required file 288 296 filename = write_file(var_size, num_vars) … … 293 301 return 10 294 302 295 print 'Read/write of NectCDF file was correct'303 # print 'Read/write of NectCDF file was correct' 296 304 return 0 297 305 -
misc/tools/write_large_files/rwil_big_file.py
r6739 r6906 8 8 # that is checked when the file is read. 9 9 # 10 # So, element E of slice S ov variable V has the float value: 11 # V*1000 + S . E*1.0e-1 10 # So, for variable V (numbering from 0), slice S (starting from 0), element 11 # E will range from 0 to 10**6-1, and the element value will be: 12 # S*100 + V + E*1.0E-6 12 13 # which will look like: 13 # VVVSSSS.0EEEEEE 14 # SSSSVV.EEEEEE 15 # This implies that the maximum number of variables written is 100 (0 to 99). 14 16 ################################################################################ 15 17 … … 28 30 29 31 # array slice definitions 30 XDIM = 10 24*102432 XDIM = 1000*1000 31 33 SLICE_SIZE = XDIM*8 # 8 bytes / float 32 34 MBYTE = 1024*1024 … … 47 49 48 50 # mask for variable names 49 VarnameMask = 'var_%0 4d'51 VarnameMask = 'var_%02d' 50 52 51 53 … … 84 86 85 87 # create expected slice array 86 slice_array = slice_array_mask*slice_number + var_num*1000 87 for x in xrange(XDIM): 88 slice_array[x] += x*1.0e-7 88 slice_array = slice_array_mask*slice_number*100 + var_num 89 slice_array += ElementIndexArray 89 90 90 91 if Verbose: … … 96 97 97 98 var_array = fid.variables[varname][slice_number,:] 98 99 if var_array != slice_array:99 if not num.allclose(var_array, slice_array): 100 ## if num.any(var_array != slice_array): 100 101 print 'Read variable %s, slice %d: got unexpected value' % \ 101 102 (varname, slice_number) … … 160 161 161 162 # create unique slice array 162 slice_array = slice_array_mask*slice_number + var_num*1000 163 for x in xrange(XDIM): 164 slice_array[x] += x*1.0e-7 163 slice_array = slice_array_mask*slice_number*100 + var_num 164 slice_array += ElementIndexArray 165 165 166 166 fid.variables[varname][slice_number,:] = slice_array … … 168 168 if CloseAfterSlice: 169 169 fid.close() 170 fid = nc.NetCDFFile(filename, 'al')171 #fid = nc.NetCDFFile(filename, 'a')170 # fid = nc.NetCDFFile(filename, 'al') 171 fid = nc.NetCDFFile(filename, 'a') 172 172 173 173 file_bytes_written += SLICE_SIZE … … 204 204 print " and <numvars> is the number of variables of the above size" 205 205 print " to write. If not supplied, 1 is assumed." 206 print " There can be at most 100 variables." 206 207 print " and <opts> is zero or more of:" 207 208 print " -c s close & open the output file after" … … 217 218 def main(argv=None): 218 219 global TimeFileWrite, TimeFileRead, CloseAfterSlice, Verbose 220 global ElementIndexArray 219 221 220 222 if argv is None: … … 259 261 260 262 var_size = args[0][:-1] 261 modifier = args[0][-1]263 modifier = args[0][-1] 262 264 263 265 if modifier in '0123456789': … … 280 282 usage() 281 283 284 if num_vars > 100: 285 usage() 286 287 # initialize the global element index array which contains 288 # 0.EEEEEE in each element. 289 ElementIndexArray = num.ndarray((XDIM,), 'd') 290 for x in xrange(XDIM): 291 ElementIndexArray[x] = x*1.0e-6 292 282 293 # write the required file 283 294 filename = write_file(var_size, num_vars) … … 288 299 return 10 289 300 290 print 'Read/write of NectCDF file was correct'301 # print 'Read/write of NectCDF file was correct' 291 302 return 0 292 303
Note: See TracChangeset
for help on using the changeset viewer.