Opened 15 years ago

Closed 14 years ago

# Problem with Randint from Numeric when use by split in geospatial_data on cyclone however not tornado

Reported by: Owned by: nick ole low Other normal nick

### Description

Here is a small piece of code that highlights the problem, it runs in seconds. Note the data file is here
Gneiss\gem\5\nhi\inundation\data\anuga_validation\cocos\elevation_final\new_edited_cocos_final_small_clip.txt

```from anuga.geospatial_data.geospatial_data import *
from os import sep, environ, getenv, getcwd,umask
from anuga.pmesh.mesh_interface import create_mesh_from_regions
from anuga.shallow_water import Domain
from anuga.shallow_water import Reflective_boundary
from anuga.shallow_water.data_manager import export_grid
from anuga.shallow_water.data_manager import start_screen_catcher, copy_code_files
from math import sqrt
from time import localtime, strftime, gmtime

home = getenv('INUNDATIONHOME') + sep +'data'+sep
#output_dir = home + 'anuga_validation'+sep+'cocos'+sep+'anuga'+sep+'outputs'+sep+time+sep

data_dir='/d/ehn/4/ehn/tsunami/data/bathymetry/Cocos/bathymetry/'
data_dir_name = data_dir + 'new_edited_cocos_final'

data_dir_name_small_clip=data_dir_name+'_small_clip'

mesh_file=data_dir+'cocos.msh'
sww_file='test_final'

a_points = randint(0,99999,(80,2))
points = a_points.tolist()
#        print points

Ga = Geospatial_data(points)

G1, G2  = Ga.split(0.01,verbose=True)

print 'finish test1 of split'

G = Geospatial_data(file_name=data_dir_name_small_clip + '.txt')
G1, G2 = G.split(0.01,verbose=True)
```

When I run this code on cyclone two different problem occur. One of the problems is with randint() here is the error

```Traceback (most recent call last):
File "grid_test.py", line 26, in ?
a_points = randint(0,99999,(80,2))
File "/opt/lib64/python2.3/site-packages/Numeric/RandomArray.py", line 73, in randint
a = ((maximum-minimum)* random(shape))
OverflowError: math range error
```

The other is here

```Traceback (most recent call last):
File "grid_test.py", line 36, in ?
G1, G2 = G.split(0.01,verbose=True)
File "/d/cit/1/cit/unixhome/nbartzis/anuga/anuga_core/source/anuga/geospatial_data/geospatial_data.py", line 695, in split
random_list.append(remainder_list.pop(i))
OverflowError: signed integer is greater than maximum
```

The interesting thing is that the unit tests for split in geospatial_data, force it to use randint and it is successful when run on cyclone

It is not high on the list of things to do, but it does need to be recorded

### comment:1 Changed 15 years ago by nick

• Owner ole deleted
• Severity changed from major to normal

### comment:2 Changed 15 years ago by ole

If you check the code in, someone can have a look at the problem :-)

### comment:3 Changed 15 years ago by nick

The code to test this is in \anuga_work\development\cocos\find_alpha_cocos.py

I have also just run it on the head node of cyclone and it works fine. It is just the other nodes that in throws a "OverFlowError?" ???

This ticket seems to be related to Trac ticket 237

### comment:4 Changed 15 years ago by nick

• Owner set to ole

### comment:5 Changed 15 years ago by ole

• Status changed from new to assigned

### comment:6 Changed 14 years ago by nariman

• Resolution set to fixed
• Status changed from assigned to closed
Note: See TracTickets for help on using tickets.