{ "info": { "author": "Roberto De Almeida", "author_email": "roberto@dealmeida.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Scientific/Engineering", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "A DSL for creating NetCDF files. Here's a simple example:\n\n.. code-block:: python\n\n from pup import *\n\n class Test(NetCDF):\n # NC_GLOBAL attributes go here\n history = 'Created for a test'\n\n # dimensions need to be set explicitly only when they\n # have no variable associated with them\n dim0 = Dimension(2)\n\n # variables that don't specify dimensions are assumed to\n # be their own dimension\n time = Variable(range(10), record=True, units='days since 2008-01-01')\n\n # now a variable with dimensions (time,)\n temperature = Variable(range(10), (time,), units='deg C')\n\n Test.save('simple.nc')\n\nThis will produce the following NetCDF file::\n\n netcdf simple {\n dimensions:\n dim0 = 2 ;\n time = UNLIMITED ; // (10 currently)\n variables:\n int time(time) ;\n time:units = \"days since 2008-01-01\" ;\n int temperature(time) ;\n temperature:units = \"deg C\" ;\n\n // global attributes:\n :history = \"Created for a test\" ;\n data:\n\n time = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ;\n\n temperature = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ;\n }\n\nCompare this with the code necessary to do the same using common NetCDF\nlibraries:\n\n\n.. code-block:: python\n\n f = netcdf_file(\"simple.nc\", \"w\")\n\n f.history = \"Created for a test\"\n\n f.createDimension(\"dim0\", 2)\n\n f.createDimension(\"time\", None)\n time = f.createVariable(\"time\", \"i\", (\"time\",))\n time.units = \"days since 2008-01-01\"\n time[:] = range(10)\n\n temperature = f.createVariable(\"temperature\", \"i\", (\"time\",))\n temperature.units = \"deg C\"\n temperature[:] = range(10)\n\nBy default it uses pupynere for creating files, but this can be overloaded; we\ncan use the netCDF4 module, for example, which allows us to specify groups:\n\n.. code-block:: python\n\n from netCDF4 import Dataset\n\n class Test(NetCDF):\n loader = Dataset\n ...\n\n foo = Group(\n dim = Dimension(10),\n var = Variable(range(10)),\n ...\n )\n Test.save('simple.nc', format='NETCDF4')\n\nChangelog:\n\n:0.1.8: Ensure record dimensions are created first.\n:0.1.7: Convert strings to array of chars.\n:0.1.6: Fix bug in dimension name.\n:0.1.5: Added support for Groups when using netcdf4.\n:0.1.4: Added support for masked arrays.\n:0.1.3: Pass keyword arguments in save() to the loader.\n:0.1.2: Improved optional loader detection.\n:0.1.1: Added pupynere dependency.\n:0.1: Initial release.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://bitbucket.org/robertodealmeida/puppy/", "keywords": "netcdf data array math", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "Puppy", "package_url": "https://pypi.org/project/Puppy/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/Puppy/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://bitbucket.org/robertodealmeida/puppy/" }, "release_url": "https://pypi.org/project/Puppy/0.1.8/", "requires_dist": null, "requires_python": null, "summary": "DSL for creating NetCDF files", "version": "0.1.8" }, "last_serial": 936898, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "d4c4fd37480615df6575f79d73b77a86", "sha256": "9eff82d7556f03dca843ca388d163c13c763435131d0f0019a28482f12489ac5" }, "downloads": -1, "filename": "Puppy-0.1-py2.6.egg", "has_sig": false, "md5_digest": "d4c4fd37480615df6575f79d73b77a86", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 3836, "upload_time": "2012-04-19T17:52:41", "url": "https://files.pythonhosted.org/packages/dd/22/0093835136d8abc255e1a2fbbd2996431009f98b956f93187323122ea082/Puppy-0.1-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "15d0f055f28627ab2d961cb555167693", "sha256": "e43f5a698a220c1260aca375f76d4176e38343022568dc4e2273df96ea1c02ee" }, "downloads": -1, "filename": "Puppy-0.1.tar.gz", "has_sig": false, "md5_digest": "15d0f055f28627ab2d961cb555167693", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2624, "upload_time": "2012-04-19T17:52:39", "url": "https://files.pythonhosted.org/packages/0a/21/8af780e3ce5065f157f59e3b3884db1c1a6f75d7383d03ff430da1473846/Puppy-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "184aeec4fb32258a9cf04da953b6af8b", "sha256": "b769aa8e304f85c302e183d046f762a5fee32d8f48bf0961df65236b6177be59" }, "downloads": -1, "filename": "Puppy-0.1.1-py2.6.egg", "has_sig": false, "md5_digest": "184aeec4fb32258a9cf04da953b6af8b", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 3946, "upload_time": "2012-04-19T19:50:07", "url": "https://files.pythonhosted.org/packages/34/98/c93618c5f60a7ec7c286c86a6d625242ae0bf17a1da40881cdbcb2928c78/Puppy-0.1.1-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "f85c81d563cad072d155e86b2932b5a9", "sha256": "820a0e5a2fce46b71b6f113d5e4e2bfe44023d59e79b9ce8a2f52cfd5a61d58d" }, "downloads": -1, "filename": "Puppy-0.1.1.tar.gz", "has_sig": false, "md5_digest": "f85c81d563cad072d155e86b2932b5a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2645, "upload_time": "2012-04-19T19:50:05", "url": "https://files.pythonhosted.org/packages/76/c1/ac278d858906b7b8c9606d75552e57eb935dbbbfa46c7331a74b1bd0e934/Puppy-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "bd33e1e20c492e6b0349ff643824db09", "sha256": "12097c2398541b457e804edbeaa8f6d68752f9037774aab9d2e90bc9237842f6" }, "downloads": -1, "filename": "Puppy-0.1.2-py2.6.egg", "has_sig": false, "md5_digest": "bd33e1e20c492e6b0349ff643824db09", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 3958, "upload_time": "2012-04-19T19:55:41", "url": "https://files.pythonhosted.org/packages/4b/a3/4d7bfb75557d68358fa40a7996532a9a1ebea70e768bda93df6208a010b0/Puppy-0.1.2-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "ddf36f66ffdec659e18d4f32cc7285c0", "sha256": "d0de813266a398bd8e283dd585a9c6a1fad829e8b1b0e0d8a24f3d89ab2f19da" }, "downloads": -1, "filename": "Puppy-0.1.2.tar.gz", "has_sig": false, "md5_digest": "ddf36f66ffdec659e18d4f32cc7285c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2656, "upload_time": "2012-04-19T19:55:40", "url": "https://files.pythonhosted.org/packages/a8/62/549d63f14a7dafe8fdac2f541488abf613d5e722af51e0c8ace659b34326/Puppy-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "85bc35b230d13f28fc9a77fbf0318031", "sha256": "f9b65c0622ad99a22bd417f9e00a0a13351d8662aaa763845b1abc061e23e641" }, "downloads": -1, "filename": "Puppy-0.1.3-py2.6.egg", "has_sig": false, "md5_digest": "85bc35b230d13f28fc9a77fbf0318031", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 3984, "upload_time": "2012-04-20T15:22:34", "url": "https://files.pythonhosted.org/packages/d3/eb/24139186b1e28069dc7f67387b49dce825ff66288b2f5a83c6432fa44dde/Puppy-0.1.3-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "e59effed90cf57c6d59109fb063629d5", "sha256": "e8439cea13bab9e528914cfec097679c68860f31c7a5428b034ab987ae37750c" }, "downloads": -1, "filename": "Puppy-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e59effed90cf57c6d59109fb063629d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2686, "upload_time": "2012-04-20T15:22:33", "url": "https://files.pythonhosted.org/packages/96/e1/546038f85c686535956067d638ba9fb31e789528bb680efecd833a4fef3b/Puppy-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "8f706ef64d28ff69b1736e2f37b6e3dd", "sha256": "5f254401a73e19513a25f8c80220578947a59bd2924d54a622ab82d47e2d6031" }, "downloads": -1, "filename": "Puppy-0.1.4-py2.6.egg", "has_sig": false, "md5_digest": "8f706ef64d28ff69b1736e2f37b6e3dd", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 4261, "upload_time": "2012-04-25T16:03:45", "url": "https://files.pythonhosted.org/packages/a9/fd/5f47bb247c05b33b605ba09d3aac1e740a77e55e5783285d539e9a9c5289/Puppy-0.1.4-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "fc00cf955ccd677405f541e42a2b36f3", "sha256": "0ef1385203456afe75d889be6c3afc0ea6ba8ab8f04e78c3daab823a0ba68a30" }, "downloads": -1, "filename": "Puppy-0.1.4.tar.gz", "has_sig": false, "md5_digest": "fc00cf955ccd677405f541e42a2b36f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2872, "upload_time": "2012-04-25T16:03:43", "url": "https://files.pythonhosted.org/packages/2e/17/38d5555ffb60705351f519e5f8d170c70a62b1ea18752882f59a313fbbc1/Puppy-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "edd068ca6e83b153ec736d64eb8e444c", "sha256": "d510a5ec188404c8c05c109fa93dfdb7c78176bd58d299e097ba08c3f23f2745" }, "downloads": -1, "filename": "Puppy-0.1.5-py2.7.egg", "has_sig": false, "md5_digest": "edd068ca6e83b153ec736d64eb8e444c", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 4639, "upload_time": "2012-07-03T18:49:29", "url": "https://files.pythonhosted.org/packages/da/6d/26ca921802d1b03e0ad37dcb47fe9e3a611219e34a30907d32c10397beda/Puppy-0.1.5-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "589d4ec99129d00cae44b45a048490d5", "sha256": "fda6cf54c382e2594d7260863c656778f9373fc1bde74fda3eb6a4b801f4be19" }, "downloads": -1, "filename": "Puppy-0.1.5.tar.gz", "has_sig": false, "md5_digest": "589d4ec99129d00cae44b45a048490d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3160, "upload_time": "2012-07-03T18:49:28", "url": "https://files.pythonhosted.org/packages/7b/f6/f682fcac1cfda6149bb1c45ef802023551951fd15949382cf6481c7a3990/Puppy-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "7b2b7ecebed70614e7a3f9376f92b4c3", "sha256": "0ebf4104a18422fffe034636726717e4002cd236cc85e7d848d20f126aa2207a" }, "downloads": -1, "filename": "Puppy-0.1.6-py2.7.egg", "has_sig": false, "md5_digest": "7b2b7ecebed70614e7a3f9376f92b4c3", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 4665, "upload_time": "2012-11-27T23:25:05", "url": "https://files.pythonhosted.org/packages/62/3e/faacab1bcdd4664cc4b76585f0e099c5445ec797f4730f8041884f28060f/Puppy-0.1.6-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "affdac88313d9fcdaec8f8a592b10457", "sha256": "b4c64e132bf7c31d48409687336ad7c18d637538a967604a41289fb1cc766dd9" }, "downloads": -1, "filename": "Puppy-0.1.6.tar.gz", "has_sig": false, "md5_digest": "affdac88313d9fcdaec8f8a592b10457", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3155, "upload_time": "2012-11-27T23:25:03", "url": "https://files.pythonhosted.org/packages/58/65/99176bcde0a75c92e3fe0d999467b543136b0a0c6ad5fc3e4f74f372d418/Puppy-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "6ab765b8bb1c993218ff2ac4e9ce7dfd", "sha256": "89e0e7f903b559588afc81712928bab1616fffa936534535737ce2ae1ee5dec8" }, "downloads": -1, "filename": "Puppy-0.1.7-py2.7.egg", "has_sig": false, "md5_digest": "6ab765b8bb1c993218ff2ac4e9ce7dfd", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 4724, "upload_time": "2013-11-22T18:56:26", "url": "https://files.pythonhosted.org/packages/f9/91/45498b04f04174cb8779280906d317b92317ed3b3f3e4b23396ff18a03c1/Puppy-0.1.7-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "a50aae4acb659cc0c32afe88cc37158e", "sha256": "1940155f5f3c5a7a9d51435c969f7f6c7b347b980f5c9c21023779e1fde2ccf2" }, "downloads": -1, "filename": "Puppy-0.1.7.tar.gz", "has_sig": false, "md5_digest": "a50aae4acb659cc0c32afe88cc37158e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3251, "upload_time": "2013-11-22T18:56:23", "url": "https://files.pythonhosted.org/packages/b4/ed/4f00d1345e2af2c3064951a1ab3d2c6be857c8af53bddb93660ad23c28c9/Puppy-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "583d9853d46d6c371906cf62a0bda1da", "sha256": "aee1c9f6c2e1d3e7617c2f1b60748bc03ad2b3d48987a457f9a465793f068eaa" }, "downloads": -1, "filename": "Puppy-0.1.8-py2.7.egg", "has_sig": false, "md5_digest": "583d9853d46d6c371906cf62a0bda1da", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 5261, "upload_time": "2013-12-05T17:54:34", "url": "https://files.pythonhosted.org/packages/d2/d3/16fb5a7d3419266ef1e26e39bc6ef12b1f4357672605699e6d2e4980586c/Puppy-0.1.8-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "2302d7c0654dcfc11764f75ed87c521e", "sha256": "19ea7908bc997ab956f8ec79b23d9fcad134d5d72762d2bec97be79043192963" }, "downloads": -1, "filename": "Puppy-0.1.8.tar.gz", "has_sig": false, "md5_digest": "2302d7c0654dcfc11764f75ed87c521e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3617, "upload_time": "2013-12-05T17:54:32", "url": "https://files.pythonhosted.org/packages/e6/22/7275af67f649b89a9dd9ea0ca7bbb7155160251b93d616eaa474ad3247e2/Puppy-0.1.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "583d9853d46d6c371906cf62a0bda1da", "sha256": "aee1c9f6c2e1d3e7617c2f1b60748bc03ad2b3d48987a457f9a465793f068eaa" }, "downloads": -1, "filename": "Puppy-0.1.8-py2.7.egg", "has_sig": false, "md5_digest": "583d9853d46d6c371906cf62a0bda1da", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 5261, "upload_time": "2013-12-05T17:54:34", "url": "https://files.pythonhosted.org/packages/d2/d3/16fb5a7d3419266ef1e26e39bc6ef12b1f4357672605699e6d2e4980586c/Puppy-0.1.8-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "2302d7c0654dcfc11764f75ed87c521e", "sha256": "19ea7908bc997ab956f8ec79b23d9fcad134d5d72762d2bec97be79043192963" }, "downloads": -1, "filename": "Puppy-0.1.8.tar.gz", "has_sig": false, "md5_digest": "2302d7c0654dcfc11764f75ed87c521e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3617, "upload_time": "2013-12-05T17:54:32", "url": "https://files.pythonhosted.org/packages/e6/22/7275af67f649b89a9dd9ea0ca7bbb7155160251b93d616eaa474ad3247e2/Puppy-0.1.8.tar.gz" } ] }