Statistiques
| Révision :

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')