root / ase / test / netcdf.py @ 1
Historique | Voir | Annoter | Télécharger (556 octet)
1 | 1 | tkerber | import numpy as np |
---|---|---|---|
2 | 1 | tkerber | from ase.io.pupynere import NetCDFFile |
3 | 1 | tkerber | |
4 | 1 | tkerber | # Write array
|
5 | 1 | tkerber | a1 = np.random.rand(5, 5) |
6 | 1 | tkerber | a2 = a1 * 2 - 5 |
7 | 1 | tkerber | nc = NetCDFFile('test.nc', 'w') |
8 | 1 | tkerber | nc.createDimension('dimx', a1.shape[0]) |
9 | 1 | tkerber | nc.createDimension('dimy', a1.shape[1]) |
10 | 1 | tkerber | nc.createVariable('matrix1', 'd', ('dimx', 'dimy'))[:] = a1 |
11 | 1 | tkerber | nc.createVariable('matrix2', 'd', ('dimx', 'dimy'))[:] = a2 |
12 | 1 | tkerber | nc.sync() |
13 | 1 | tkerber | nc.close() |
14 | 1 | tkerber | |
15 | 1 | tkerber | # Read array
|
16 | 1 | tkerber | nc = NetCDFFile('test.nc', 'r') |
17 | 1 | tkerber | b1 = nc.variables['matrix1'][:]
|
18 | 1 | tkerber | b2 = nc.variables['matrix2'][:]
|
19 | 1 | tkerber | |
20 | 1 | tkerber | assert np.all(a1 == b1) and np.all(a2 == b2) |
21 | 1 | tkerber | |
22 | 1 | tkerber | import os |
23 | 1 | tkerber | os.remove('test.nc') |