PuppyDSL for creating NetCDF files | |
Download |
Puppy Ranking & Summary
Advertisement
- License:
- MIT/X Consortium Lic...
- Price:
- FREE
- Publisher Name:
- Roberto De Almeida
- Publisher web site:
- http://pydap.org/
Puppy Tags
Puppy Description
Puppy is a DSL for creating NetCDF files. Here's a simple example:from pup import *class Test(NetCDF): # NC_GLOBAL attributes go here history = 'Created for a test' # dimensions need to be set explicitly only when they # have no variable associated with them dim0 = Dimension(2) # variables that don't specify dimensions are assumed to # be their own dimension time = Variable(range(10), record=True, units='days since 2008-01-01') # now a variable with dimensions (time,) temperature = Variable(range(10), (time,), units='deg C')Test.save('simple.nc')This will produce the following NetCDF file:netcdf simple {dimensions: dim0 = 2 ; time = UNLIMITED ; // (10 currently)variables: int time(time) ; time:units = "days since 2008-01-01" ; int temperature(time) ; temperature:units = "deg C" ;// global attributes: :history = "Created for a test" ;data: time = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ; temperature = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ;}By default it uses pupynere for creating files, but this can be overloaded:from netCDF4 import Datasetclass Test(NetCDF): loader = Dataset ...Test.save('simple.nc', format='NETCDF4')Product's homepage
Puppy Related Software