1
2
3 from unittest import TestCase
4
6 __test__ = False
7
15
17 from ..netcdf import NetCDF
18 nc = NetCDF(self.testfn)
19 self.assertEqual(nc.get_dim('ii'), 4)
20 self.assertEqual(nc.get_dim('jj'), 3)
21 self.assertEqual(nc.get_dim('kk'), 3)
22 self.assertEqual(nc.get_dim('i1'), 5)
23 self.assertEqual(nc.get_dim('i2'), 3)
24 self.assertEqual(nc.get_dim('i3'), 7)
25 self.assertEqual(nc.get_dim('rec'), 3)
26 self.assertEqual(nc.get_dim('ll'), 3)
27 self.assertEqual(nc.get_dim('mm'), 1)
28 self.assertEqual(nc.get_dim('nn'), 1)
29 self.assertEqual(nc.get_dim('pp'), 7)
30 self.assertEqual(nc.get_dim('qq'), 10)
31 self.assertEqual(nc.get_dim('d0'), 2)
32 self.assertEqual(nc.get_dim('d1'), 3)
33 self.assertEqual(nc.get_dim('d2'), 5)
34 self.assertEqual(nc.get_dim('d3'), 6)
35 self.assertEqual(nc.get_dim('d4'), 4)
36 self.assertEqual(nc.get_dim('d5'), 31)
37 self.assertEqual(nc.get_dim('w'), 7)
38 self.assertEqual(nc.get_dim('x'), 5)
39 self.assertEqual(nc.get_dim('y'), 6)
40 self.assertEqual(nc.get_dim('z'), 4)
41 nc.close_file()
42
51
53 from numpy import array
54 from ..netcdf import NetCDF
55 nc = NetCDF(self.testfn)
56 kk = nc.get_dim('kk')
57 jj = nc.get_dim('jj')
58 arr = nc.get_array('bb', (kk, jj), 'int32')
59 self.assertTrue((arr == array([
60 [-4, -3, -2], [-1, 0, 1], [2, 3, 0],
61 ])).all())
62 nc.close_file()
63
65 from numpy import array
66 from ..netcdf import NetCDF
67 nc = NetCDF(self.testfn)
68 rec = nc.get_dim('rec')
69 i2 = nc.get_dim('i2')
70 i3 = nc.get_dim('i3')
71 arr = nc.get_array('ce', (rec, i2, i3), 'float32')
72 self.assertTrue((arr == array([
73 [[ 1., 2., 3., 4., 5., 6., 7.],
74 [ 8., 9., 10., 11., 12., 13., 14.],
75 [ 15., 16., 17., 18., 19., 20., 21.]],
76 [[ 1., 2., 3., 4., 5., 6., 7.],
77 [ 8., 9., 10., 11., 12., 13., 14.],
78 [ 15., 16., 17., 18., 19., 20., 21.]],
79 [[ 43., 44., 45., 46., 47., 48., 49.],
80 [ 50., 51., 52., 53., 54., 55., 56.],
81 [ 57., 58., 59., 60., 61., 62., 1.]],
82 ], dtype='float32')).all())
83 nc.close_file()
84
86 from numpy import arange
87 from ..netcdf import NetCDF
88 nc = NetCDF(self.testfn)
89 w = nc.get_dim('w')
90 x = nc.get_dim('x')
91 y = nc.get_dim('y')
92 z = nc.get_dim('z')
93 arr = nc.get_array('doublevar', (w, x, y, z), 'float64')
94 arr2 = arange(w*x*y*z, dtype='float64') - 420
95 arr2[420-148+1] = 0
96 arr2[-1] = 0
97 arr2 = arr2.reshape(arr.shape)
98 self.assertTrue((arr == arr2).all())
99 nc.close_file()
100
107
114