diff --git a/.gitignore b/.gitignore index 96fb8e7..34a0f5a 100644 --- a/.gitignore +++ b/.gitignore @@ -36,6 +36,7 @@ env/ */pncpy/*.c core.* build/ +*.whl !docs/build/ # egg *.eggs/ diff --git a/README.md b/README.md index 1c89964..3e32509 100644 --- a/README.md +++ b/README.md @@ -21,10 +21,10 @@ At a granular level, PnetCDF-python is a library that consists of the following * To work with the in-development version, you need to install [Cython](http://cython.org/) ### Installation -If you already have a working MPI and the mpicc compiler wrapper is on your search path, you can use pip: +Currently our PyPI wheels don't cover all systems. If you already have a working MPI with the mpicc compiler wrapper is on your search path and pnetcdf-C installation, you can use pip: ```sh -env CC=mpicc pip install pncpy +CC=mpicc PNETCDF_DIR=/path/to/pnetcdf/dir/ pip install pncpy==0.0.3 ``` ### Development installation @@ -37,7 +37,7 @@ env CC=mpicc pip install pncpy * (Optional) create python virtual environment and activate it -* Run `env CC=mpicc python3 setup.py build`, then `env CC=mpicc python3 setup.py install` +* Run `CC=mpicc python3 setup.py build`, then `CC=mpicc python3 setup.py install` ### Current build status The project is under active development. Below is a summary of the current implementation status diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle index e6157cc..2741c2c 100644 Binary files a/docs/build/doctrees/environment.pickle and b/docs/build/doctrees/environment.pickle differ diff --git a/docs/build/doctrees/installation/install.doctree b/docs/build/doctrees/installation/install.doctree index 2721c3b..b9c84b0 100644 Binary files a/docs/build/doctrees/installation/install.doctree and b/docs/build/doctrees/installation/install.doctree differ diff --git a/docs/build/html/_sources/installation/install.rst.txt b/docs/build/html/_sources/installation/install.rst.txt index 169e261..37bb7d6 100644 --- a/docs/build/html/_sources/installation/install.rst.txt +++ b/docs/build/html/_sources/installation/install.rst.txt @@ -22,12 +22,22 @@ Building PnetCDF C library $ cd pnetcdf-1.12.3 # configure - $ ./configure --prefix=/path/to/install-dir --enable-shared CC=mpicc + $ ./configure --prefix=/path/to/install-dir --enable-shared --disable-fortran --disable-cxx CC=mpicc # build and install $ make $ make install +Installation +=================================== + +Currently our PyPI wheels don't cover all systems. If you already have a working MPI with the mpicc compiler wrapper is on your search path and pnetcdf-C installation, you can use pip: + +.. code-block:: bash + + $ CC=mpicc PNETCDF_DIR=/path/to/pnetcdf/dir/ pip install pncpy==0.0.3 + + Building PnetCDF-python from source =================================== @@ -35,7 +45,7 @@ Building PnetCDF-python from source # activate an virtual environment (optional) # use Python 3.9 or later - $ python3 -m venv env + $ python -m venv env $ source env/bin/activate $ pip install --upgrade pip @@ -48,7 +58,7 @@ Building PnetCDF-python from source $ cd pnetcdf-python # install PnetCDF-python - env CC=mpicc python3 setup.py build - env CC=mpicc python3 setup.py install + CC=mpicc python setup.py build + CC=mpicc python setup.py install diff --git a/docs/build/html/index.html b/docs/build/html/index.html index 055e222..3528d0a 100644 --- a/docs/build/html/index.html +++ b/docs/build/html/index.html @@ -102,6 +102,7 @@

PnetCDF-Python DocumentationInstall from Source diff --git a/docs/build/html/installation/install.html b/docs/build/html/installation/install.html index 9028d68..46b58be 100644 --- a/docs/build/html/installation/install.html +++ b/docs/build/html/installation/install.html @@ -51,6 +51,7 @@
  • Install from Source
  • @@ -114,7 +115,7 @@

    Building PnetCDF C library cd pnetcdf-1.12.3 # configure -$ ./configure --prefix=/path/to/install-dir --enable-shared CC=mpicc +$ ./configure --prefix=/path/to/install-dir --enable-shared --disable-fortran --disable-cxx CC=mpicc # build and install $ make @@ -122,11 +123,18 @@

    Building PnetCDF C library +

    Installation

    +

    Currently our PyPI wheels don’t cover all systems. If you already have a working MPI with the mpicc compiler wrapper is on your search path and pnetcdf-C installation, you can use pip:

    +
    $ CC=mpicc PNETCDF_DIR=/path/to/pnetcdf/dir/ pip install pncpy==0.0.3
    +
    +
    +

    Building PnetCDF-python from source

    # activate an virtual environment (optional)
     # use Python 3.9 or later
    -$ python3 -m venv env
    +$ python -m venv env
     $ source env/bin/activate
     $ pip install --upgrade pip
     
    @@ -139,8 +147,8 @@ 

    Building PnetCDF-python from source cd pnetcdf-python # install PnetCDF-python -env CC=mpicc python3 setup.py build -env CC=mpicc python3 setup.py install +CC=mpicc python setup.py build +CC=mpicc python setup.py install

    diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv index 7521c42..b24cbeb 100644 Binary files a/docs/build/html/objects.inv and b/docs/build/html/objects.inv differ diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js index 2554cfb..b0385b7 100644 --- a/docs/build/html/searchindex.js +++ b/docs/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["api/attribute_api", "api/dimension_api", "api/file_api", "api/function_api", "api/variable_api", "development/compatibility", "index", "installation/install", "introduction/overview", "tutorial/basic", "tutorial/datatypes", "tutorial/non_blocking", "tutorial/read_write"], "filenames": ["api/attribute_api.rst", "api/dimension_api.rst", "api/file_api.rst", "api/function_api.rst", "api/variable_api.rst", "development/compatibility.rst", "index.rst", "installation/install.rst", "introduction/overview.rst", "tutorial/basic.rst", "tutorial/datatypes.rst", "tutorial/non_blocking.rst", "tutorial/read_write.rst"], "titles": ["Attribute", "Dimension", "File", "Functions", "Variable", "Compatibility with C", "PnetCDF-Python Documentation", "Install from Source", "Overview", "Basics", "Datatype", "Non-blocking Reads and Writes", "Parallel Read and Write"], "terms": {"In": [0, 2, 4, 9], "librari": [0, 2, 4, 6, 8, 9], "netcdf": [0, 2, 3, 4, 6, 7, 8, 10, 11, 12], "can": [0, 2, 3, 4, 9, 11, 12], "creat": [0, 1, 2, 3, 4, 6], "access": [0, 1, 2, 8, 9, 12], "manipul": [0, 8], "us": [0, 1, 2, 3, 4, 7, 8, 9, 10, 11, 12], "python": [0, 2, 4, 5, 8, 10, 11, 12], "dictionari": [0, 2, 9], "like": [0, 4, 9], "syntax": [0, 4, 6, 9], "A": [0, 2, 4, 9, 11], "interfac": [0, 1, 2, 4, 8, 10], "metadata": [0, 2, 4], "oper": [0, 2, 3, 4, 12], "i": [0, 1, 2, 3, 4, 8, 9, 11, 12], "provid": [0, 1, 2, 4, 9, 11, 12], "both": 0, "file": [0, 1, 3, 4, 5, 6, 8, 11, 12], "class": [0, 1, 2, 4, 9], "global": [0, 2, 9], "variabl": [0, 1, 2, 5, 6, 10, 11, 12], "defin": [1, 2, 4, 9, 10, 11, 12], "shape": [1, 3, 4, 6, 9, 11, 12], "structur": [1, 4], "store": [1, 2, 4, 9, 11, 12], "coordin": 1, "data": [1, 2, 4, 8, 9, 10, 11, 12], "multidimension": [1, 4, 9, 12], "arrai": [1, 2, 3, 4, 9, 11, 12], "The": [1, 2, 3, 4, 5, 9, 10, 11, 12], "object": [1, 2, 4, 9], "which": [1, 2, 4, 11, 12], "also": [1, 2, 4, 9], "kei": [1, 9], "compon": [1, 4, 5], "an": [1, 2, 3, 4, 7, 9, 11, 12], "instanc": [1, 2, 3, 4, 9], "should": [1, 2, 4, 11], "def_dim": [1, 2, 6, 9], "method": [1, 2, 4, 6, 9, 11], "__init__": [1, 2, 4, 6], "directli": [1, 4, 9, 12], "pncpy": [1, 2, 3, 4, 9, 11], "base": [1, 2, 4, 8, 9], "arg": 1, "kwarg": [1, 2, 4], "getfil": [1, 6], "self": [1, 2, 4], "return": [1, 2, 3, 4, 9, 11, 12], "thi": [1, 2, 3, 4, 8, 9, 11, 12], "member": [1, 2, 4], "type": [1, 2, 3, 4, 9, 10], "isunlimit": [1, 2, 6, 9], "true": [1, 2, 4], "unlimit": [1, 2, 4, 9], "fals": [1, 2, 4], "otherwis": [1, 2, 4], "bool": [1, 2, 4], "attribut": [1, 2, 4, 5, 6], "follow": [1, 2, 4, 5, 9, 10, 12], "ar": [1, 2, 4, 9, 11, 12], "read": [1, 2, 4, 6], "onli": [1, 2, 4, 11], "modifi": [1, 2, 4], "user": [1, 2, 3, 4, 9, 11], "name": [1, 2, 3, 4, 6, 9], "string": [1, 2, 3, 4, 9], "To": [1, 2, 5, 9, 11], "renam": [1, 2, 4], "rename_dim": [1, 2, 6], "size": [1, 2, 3, 4, 5, 6, 9, 11, 12], "current": [1, 2, 3, 4, 9, 12], "call": [1, 2, 3, 4, 6, 9, 11], "len": [1, 2, 9], "high": [2, 8], "level": [2, 5, 9, 11], "repres": [2, 4, 12], "write": [2, 4, 6], "within": [2, 4, 9], "serv": [2, 4, 12], "root": [2, 9], "contain": [2, 3, 4, 5], "dimens": [2, 3, 4, 5, 6], "togeth": [2, 12], "thei": [2, 4, 9, 12], "describ": [2, 4], "mean": [2, 4], "relat": [2, 9], "among": 2, "field": 2, "filenam": [2, 9], "format": [2, 3, 4, 9, 10], "64bit_offset": 2, "mode": [2, 3, 4, 9, 12], "w": [2, 9], "comm": [2, 9], "none": [2, 3, 4, 9, 11], "info": [2, 9], "constructor": [2, 4, 9], "paramet": [2, 3, 4, 11, 12], "str": [2, 3, 4], "new": [2, 3, 4, 9, 10], "r": [2, 9], "open": [2, 4, 6, 12], "error": [2, 3, 4, 11], "doe": 2, "exist": [2, 3, 4, 9], "same": [2, 4, 9, 11], "delet": [2, 4, 11], "x": 2, "append": [2, 11], "underli": 2, "relev": [2, 4], "when": [2, 4, 9], "cdf": [2, 4, 9, 10], "2": [2, 4, 5, 9, 10, 12], "64bit_data": [2, 9], "5": [2, 4, 9, 10, 12], "default": [2, 3, 4, 9, 12], "1": [2, 3, 4, 5, 7, 9, 10, 12], "mpi4pi": [2, 4, 7, 9], "mpi": [2, 4, 6], "option": [2, 3, 4, 7, 9, 11, 12], "commun": 2, "mpi_comm_world": 2, "mpi_info_nul": 2, "attach_buff": [2, 4, 6, 11], "bufsiz": 2, "allow": [2, 3, 8, 11], "pnetcdf": [2, 3, 4, 5, 8, 9, 11, 12], "alloc": [2, 3, 4], "intern": [2, 3, 4], "buffer": [2, 4, 6, 12], "accommod": [2, 4], "request": [2, 4, 6], "prerequisit": [2, 11], "non": [2, 6], "block": [2, 4, 6], "detach_buff": [2, 6, 11], "requir": [2, 4, 6, 8, 11, 12], "longer": [2, 4], "need": [2, 4, 9, 11], "int": [2, 3, 4, 10], "unit": [2, 9], "byte": [2, 3, 4, 10], "obtain": 2, "numpi": [2, 3, 4, 6, 7, 9, 10, 11], "ndarrai": [2, 3, 4], "nbyte": [2, 11], "begin_indep": [2, 6, 12], "leav": 2, "from": [2, 3, 4, 6, 11, 12], "collect": [2, 4, 11, 12], "enter": 2, "independ": [2, 3, 4, 11, 12], "cancel": [2, 6], "num": [2, 4, 11, 12], "statu": [2, 3, 12], "list": [2, 4, 5, 11, 12], "pend": [2, 11], "nonblock": [2, 4, 6], "made": 2, "iput_var": [2, 4, 6, 11], "iget_var": [2, 4, 5, 6, 11], "bput_var": [2, 4, 6, 11], "number": [2, 3, 4, 9, 10, 11], "It": [2, 3], "next": 2, "two": [2, 4, 9], "argument": [2, 4, 9, 11, 12], "altern": [2, 9, 11], "modul": [2, 9, 11], "constant": [2, 9, 10, 11], "nc_req_al": [2, 11], "flush": [2, 4, 6, 11], "all": [2, 3, 4, 9, 10, 11, 12], "nc_get_req_al": [2, 11], "get": [2, 4], "nc_put_req_al": [2, 11], "put": [2, 4, 6, 9, 11], "integ": [2, 3, 4, 9, 10], "specifi": [2, 3, 4, 9, 11, 12], "id": [2, 4, 11], "were": 2, "earlier": 2, "hold": [2, 11], "code": [2, 3, 4, 7, 9], "status": [2, 11], "correspond": [2, 3, 4, 10], "valu": [2, 4, 9, 11, 12], "strerror": [2, 3, 6], "messag": [2, 3], "either": [2, 4, 9], "close": [2, 5, 6], "dimnam": 2, "given": [2, 4, 9], "must": [2, 4, 9], "posit": [2, 4], "stand": 2, "determin": 2, "maximum": [2, 3, 9], "function": [2, 4, 6, 9], "def_var": [2, 4, 6, 9], "varnam": [2, 4], "nc_dtype": [2, 4], "fill_valu": [2, 4], "datatyp": [2, 3, 4, 6, 9, 11], "support": [2, 4, 9, 10, 12], "nc_char": [2, 4, 10], "text": [2, 4, 10], "nc_byte": [2, 4, 10], "nc_short": [2, 4, 10], "sign": [2, 4, 10], "nc_int": [2, 4, 9, 10], "4": [2, 4, 9, 10], "nc_float": [2, 4, 10], "float": [2, 4, 10], "point": [2, 4, 9, 10], "nc_doubl": [2, 4, 10], "8": [2, 3, 4, 9, 10], "real": [2, 4, 10], "doubl": [2, 4, 10], "precis": [2, 4, 10], "nc_ubyt": [2, 4, 10], "unsign": [2, 4, 10], "nc_ushort": [2, 4, 10], "nc_uint": [2, 4, 10], "nc_int64": [2, 4, 10], "nc_uint64": [2, 4, 10], "tupl": [2, 4, 9, 12], "empti": [2, 4, 11, 12], "scalar": [2, 4], "therefor": [2, 4, 9], "ha": [2, 3, 4], "fill": [2, 4, 9, 11], "accept": [2, 4], "turn": [2, 4, 12], "off": [2, 4, 9], "ani": [2, 4, 9, 11, 12], "other": [2, 3, 4], "del_att": [2, 4, 6], "you": [2, 4, 9], "one": [2, 3, 4, 11], "reserv": [2, 4, 11], "while": [2, 3, 4, 9], "detach": [2, 11], "previous": 2, "attach": [2, 11], "end_indep": [2, 6, 12], "enddef": [2, 6, 11, 12], "exit": [2, 12], "place": 2, "so": [2, 11], "written": [2, 4, 12], "filepath": [2, 6], "encod": [2, 3, 4], "system": [2, 3], "path": [2, 7], "wa": 2, "dataset": [2, 9, 12], "decod": [2, 4], "sy": 2, "getfilesystemencod": 2, "cach": [2, 4, 7], "memori": [2, 3, 4, 11], "get_att": [2, 4, 5, 6], "utf": [2, 3, 4], "retriev": [2, 4, 9, 12], "charact": [2, 3, 4], "inq_buff_s": [2, 6], "inq_buff_usag": [2, 6], "usag": 2, "inq_get_s": [2, 6], "report": 2, "amount": 2, "actual": 2, "been": [2, 3], "sinc": 2, "inq_header_ext": [2, 6], "header": 2, "extent": 2, "space": [2, 11], "inq_header_s": [2, 6], "note": [2, 4, 11, 12], "inq_info": [2, 6], "hint": 2, "inq_nreq": [2, 6], "inq_num_fix_var": [2, 6], "fix": [2, 3, 4], "inq_num_rec_var": [2, 6], "record": [2, 4], "inq_put_s": [2, 6], "inq_recs": [2, 6], "sum": 2, "individu": 2, "each": [2, 3, 4, 9, 11], "inq_strip": [2, 6], "inq_unlimdim": [2, 6], "dim": 2, "inq_vers": [2, 6], "ncattr": [2, 4, 6, 9], "put_att": [2, 4, 6, 9], "set": [2, 3, 4, 9], "pair": [2, 4, 9], "especi": [2, 4], "redef": [2, 5, 6], "ad": [2, 9], "rename_att": [2, 4, 6], "oldnam": [2, 4], "newnam": [2, 4], "old": [2, 4], "If": [2, 3, 4, 9, 11], "than": [2, 4], "origin": [2, 4], "subroutin": [2, 3], "consist": 2, "process": [2, 3, 9, 11, 12], "rename_var": [2, 6], "set_auto_chartostr": [2, 4, 6], "affect": 2, "after": [2, 11], "behaviour": 2, "set_fil": [2, 6], "fillmod": 2, "nc_fill": 2, "nc_nofil": 2, "chang": [2, 3, 4, 11], "far": 2, "time": [2, 4, 9], "api": [2, 5, 11], "word": 2, "overwrit": 2, "addit": [2, 4, 9], "sync": [2, 6], "disk": 2, "wait": [2, 4, 6, 11], "complet": [2, 4], "o": [2, 8, 9, 11, 12], "wait_al": [2, 4, 5, 6, 11], "map": [2, 4, 5, 11, 12], "file_format": [2, 6, 9], "possibl": 2, "includ": [2, 9], "classic": [2, 9], "cdf2": 2, "64bit": 2, "cdf5": 2, "netcdf4": [2, 9], "bp": 2, "err_cod": 3, "static": 3, "refer": [3, 4, 9, 11], "presum": 3, "previou": [3, 9], "some": 3, "might": 3, "have": [3, 4, 9, 10], "strerrno": [3, 6], "nc": [3, 9, 10, 11], "For": [3, 4, 9, 11, 12], "ncmpi_strerrno": [3, 5], "nc_ebadid": 3, "chartostr": [3, 4, 6], "b": [3, 4], "convert": [3, 4], "less": 3, "un": [3, 4], "sn": 3, "where": [3, 4, 12], "n": [3, 4, 9, 12], "input": [3, 11, 12], "s1": [3, 4], "u1": [3, 10], "Will": 3, "length": [3, 4, 9, 12], "np": [3, 4, 9, 10, 11, 12], "string_": 3, "btye": 3, "stringtochar": [3, 6], "extra": 3, "treat": [3, 9], "raw": 3, "set_default_format": [3, 6], "new_format": 3, "futur": [3, 11], "ncmpi_creat": [3, 5], "without": [3, 11, 12], "nc_format_class": 3, "nc_format_cdf2": 3, "nc_format_64bit": 3, "nc_format_cdf5": 3, "nc_format_64bit_data": 3, "expect": [3, 4], "intend": 3, "later": [3, 7, 9, 11], "inq_default_format": [3, 6], "inq_file_format": [3, 6], "file_nam": 3, "inq_malloc_max_s": [3, 6], "rtype": [3, 4], "inq_malloc_s": [3, 6], "core": 4, "organ": 4, "along": 4, "more": [4, 9, 11], "associ": 4, "form": [4, 9], "particularli": [4, 12], "flexibl": 4, "done": 4, "through": 4, "explicit": 4, "style": 4, "index": [4, 9, 11, 12], "analog": 4, "see": [4, 9, 11, 12], "detail": [4, 9], "_fillvalu": 4, "befor": [4, 9], "replac": 4, "start": [4, 9, 11, 12], "count": [4, 9, 11, 12], "stride": [4, 11, 12], "imap": [4, 11, 12], "bufcount": 4, "buftyp": 4, "post": [4, 11], "parallel": [4, 6, 7, 8], "behavior": [4, 11, 12], "vari": [4, 11, 12], "depend": [4, 9, 11, 12], "pattern": [4, 9, 11, 12], "select": [4, 11, 12], "execut": [4, 11], "until": [4, 11], "caller": 4, "prepar": 4, "unlik": [4, 11], "iput": 4, "onc": [4, 11], "free": [4, 11], "content": [4, 11], "prior": 4, "make": [4, 7, 8, 9], "sure": [4, 9], "entir": [4, 11, 12], "simplest": 4, "whenev": 4, "take": [4, 9, 12], "care": 4, "try": 4, "yet": 4, "henc": 4, "0": [4, 9, 11, 12], "noth": 4, "similarli": [4, 9], "assum": 4, "mai": [4, 9], "suppli": 4, "result": [4, 11], "segment": 4, "violat": 4, "singl": [4, 11, 12], "element": [4, 12], "exampl": [4, 9, 11, 12], "would": 4, "10": [4, 9, 11, 12], "dimension": 4, "skip": 4, "subarrai": [4, 11, 12], "part": [4, 9], "give": [4, 9, 10], "corner": [4, 9, 12], "vector": [4, 9, 12], "edg": [4, 9, 12], "section": [4, 9, 12], "c": [4, 6, 10], "d": 4, "subsampl": [4, 11, 12], "e": [4, 9, 11, 12], "f": [4, 9, 11, 12], "g": [4, 9, 11, 12], "h": 4, "between": [4, 11], "3": [4, 5, 7, 9, 12], "butter": 4, "distanc": 4, "diagram": 4, "below": [4, 11, 12], "illustr": [4, 12], "6": [4, 9], "numer": 4, "int32": [4, 9, 10], "match": [4, 12], "": [4, 5, 8, 9, 11, 12], "long": [4, 10, 12], "multi": 4, "top": 4, "left": 4, "varaibl": 4, "first": [4, 5, 9, 11], "order": [4, 11], "2d": 4, "ndim": [4, 6], "sampl": 4, "interv": 4, "equal": 4, "locat": 4, "adjac": 4, "indic": [4, 11, 12], "deriv": 4, "layout": 4, "reqeust": [4, 11], "success": 4, "def_fil": [4, 6], "no_fil": 4, "custom": 4, "purpos": [4, 9], "ignor": 4, "fill_rec": [4, 6], "rec_no": 4, "predefin": 4, "get_dim": [4, 6], "get_var": [4, 5, 6, 9, 11], "buff": [4, 9, 11, 12], "don": 4, "t": 4, "how": [4, 9], "mani": 4, "caus": 4, "get_var_al": [4, 5, 6, 9, 12], "retain": 4, "handler": [4, 9], "transact": 4, "inq_fil": [4, 6], "te": 4, "els": 4, "inq_offset": [4, 6], "offset": [4, 9], "alter": [4, 11], "unexpect": [4, 11], "put_var": [4, 6, 11, 12], "put_var_al": [4, 6, 9, 12], "automat": 4, "convers": 4, "_encod": 4, "dtype": [4, 6, 9, 11, 12], "unicod": 4, "rightmost": 4, "back": 4, "indiviu": 4, "perform": [4, 8, 9, 11, 12], "set_auto_mask": [4, 6], "mask": [4, 6], "exactli": 4, "missing_valu": 4, "instead": 4, "valid_min": 4, "valid_max": 4, "outsid": 4, "rang": [4, 11], "regular": 4, "set_auto_scal": [4, 6], "scale": [4, 6, 9], "pack": 4, "unpack": 4, "scale_factor": 4, "add_offset": 4, "_unsign": 4, "present": 4, "miss": 4, "zero": [4, 9, 12], "view": 4, "appli": 4, "reset": 4, "set_auto_maskandscal": 4, "tabl": [5, 10], "implement": 5, "prioriti": 5, "ncmpi_strerror": 5, "ncmpi_open": 5, "ncmpi_enddef": 5, "ncmpi_sync": 5, "ncmpi_begin": 5, "end_indep_data": 5, "ncmpi_inq_path": 5, "ncmpi_inq": 5, "ncmpi_wait": 5, "ncmpi_wait_al": 5, "ncmpi_inq_libv": 5, "ncmpi_set_fil": 5, "ncmpi_set_default_format": 5, "ncmpi_inq_put": 5, "get_siz": 5, "ncmpi_delet": 5, "ncmpi_sync_numrec": 5, "ncmpi_inq_file_info": 5, "ncmpi_inq_files_open": 5, "ncmpi_def_dim": 5, "ncmpi_inq_ndim": 5, "ncmpi_inq_dimlen": 5, "ncmpi_inq_dim": 5, "ncmpi_inq_dimnam": 5, "ncmpi_put": 5, "get_att_text": 5, "ncmpi_inq_att": 5, "ncmpi_inq_natt": 5, "ncmpi_inq_attnam": 5, "ncmpi_rename_att": 5, "ncmpi_del_att": 5, "ncmpi_def_var": 5, "ncmpi_def_var_fil": 5, "ncmpi_inq_varndim": 5, "ncmpi_inq_varnam": 5, "get_vara": [5, 12], "get_var1": 5, "get_varn": 5, "get_varm": 5, "get_vara_al": 5, "get_vars_al": 5, "get_var1_al": 5, "get_varn_al": 5, "get_varm_al": 5, "ncmpi_iput": 5, "iget_vara": 5, "iget_var1": 5, "iget_varm": 5, "iget_varn": 5, "ncmpi_bput": 5, "bget_var": 5, "bget_var1": 5, "bget_vara": 5, "bget_varm": 5, "bget_varn": 5, "ncmpi_inq_nreq": 5, "ncmpi_inq_buffer_usag": 5, "ncmpi_cancel": 5, "ncmpi_fill_var_rec": 5, "second": 5, "third": 5, "overview": 6, "sourc": 6, "softwar": 6, "build": 6, "basic": 6, "run": 6, "script": 6, "slice": [6, 9], "commit": 6, "9": [7, 9, 12], "cython": 7, "setuptool": 7, "download": 7, "v1": 7, "12": 7, "wget": 7, "http": 7, "github": 7, "io": 7, "releas": 7, "tar": 7, "gz": 7, "xf": 7, "cd": 7, "configur": 7, "prefix": 7, "dir": 7, "enabl": [7, 11], "share": 7, "cc": 7, "mpicc": 7, "activ": 7, "virtual": 7, "environ": 7, "python3": 7, "m": 7, "venv": 7, "env": 7, "bin": 7, "pip": 7, "upgrad": 7, "git": 7, "clone": 7, "com": 7, "jonathanlyj": 7, "setup": 7, "py": [7, 9, 11, 12], "integr": 8, "easi": 8, "analysi": 8, "visual": 8, "rich": 8, "ecosystem": 8, "scientif": 8, "comput": 8, "valuabl": 8, "tool": 8, "applic": 8, "under": [9, 10, 11, 12], "construct": [9, 10, 11, 12], "program": [9, 11, 12], "command": 9, "mpiexec": 9, "practic": [9, 11], "look": 9, "processor": 9, "simpli": 9, "specif": [9, 12], "keyword": 9, "examin": 9, "accomplish": 9, "via": 9, "here": [9, 11, 12], "import": 9, "comm_world": 9, "testfil": 9, "equival": [9, 10, 12], "rootgrp": 9, "test": 9, "netcdf3_class": 9, "full": [9, 11, 12], "craete_open": 9, "establish": 9, "expand": 9, "omit": 9, "assign": 9, "lat_nam": 9, "lat": 9, "lat_len": 9, "50": [9, 12], "time_nam": 9, "tmp": 9, "lat_dim": 9, "time_dim": 9, "netcdf3_64bit_data": 9, "createdimens": 9, "print": [9, 12], "_dimens": 9, "inform": 9, "check": 9, "tst_dim": 9, "similar": [9, 11], "util": 9, "mandatori": [9, 11, 12], "found": 9, "var": [9, 12], "createvari": 9, "i4": [9, 10, 11, 12], "wai": [9, 12], "_variabl": 9, "up": 9, "properli": 9, "usual": 9, "whole": [9, 11], "titl": 9, "histori": 9, "properti": 9, "special": 9, "minimum": 9, "valid": 9, "factor": 9, "reenter": 9, "sequenc": 9, "our": 9, "floatatt": 9, "math": 9, "pi": 9, "option1": 9, "intatt": 9, "option2": 9, "seqatt": 9, "arang": 9, "int_att": 9, "group": 9, "setncattr": 9, "And": 9, "__dict__": 9, "141592653589793": 9, "7": 9, "global_attribut": 9, "now": 9, "do": 9, "firstli": 9, "Then": 9, "just": 9, "stop": 9, "step": [9, 11], "triplet": 9, "leverag": 9, "accord": 9, "specfic": 9, "20": 9, "symmetr": 9, "differ": 9, "retreiv": 9, "topleft": [9, 12], "behav": 9, "learn": 9, "about": 9, "page": 9, "extern": 10, "direct": 10, "quival": 10, "bit": 10, "intent": 10, "char": 10, "int8": 10, "i1": 10, "short": 10, "16": 10, "int16": 10, "i2": 10, "32": 10, "float32": 10, "f4": 10, "64": 10, "float64": 10, "f8": 10, "uint8": 10, "uint16": 10, "u2": 10, "uint32": 10, "u4": 10, "int64": 10, "i8": 10, "uint64": 10, "u8": 10, "multipl": [11, 12], "them": 11, "altogeth": 11, "achiev": 11, "better": 11, "common": 11, "shown": 11, "pass": 11, "req_id": 11, "write_buff": 11, "randint": 11, "xdim": 11, "ydim": 11, "zdim": 11, "astyp": 11, "num_req": 11, "v": 11, "datam": 11, "track": 11, "non_blocking_writ": 11, "again": 11, "initi": 11, "v_data": 11, "flexible_api": 11, "eventu": 11, "wise": 11, "debug": 11, "suffix": [11, 12], "_all": [11, 12], "contrast": [11, 12], "indeped": [11, 12], "req_err": 11, "One": 11, "limit": 11, "abov": 11, "allevi": 11, "ident": 11, "howev": 11, "reus": 11, "posts": 11, "As": 11, "tell": 11, "reqest": 11, "estim": 11, "buffsiz": 11, "rememb": 11, "requet": 11, "re": 12, "translat": 12, "fast": 12, "effici": 12, "recogn": 12, "NOT": 12, "mult": 12, "respect": 12, "diagramm": 12, "By": 12, "25": 12, "total": 12, "put_vara": 12, "collective_writ": 12}, "objects": {"": [[4, 0, 1, "", "chartostring"], [4, 0, 1, "", "datatype"], [4, 0, 1, "", "dimensions"], [4, 0, 1, "", "dtype"], [2, 0, 1, "", "file_format"], [4, 0, 1, "", "mask"], [4, 0, 1, "", "name"], [4, 0, 1, "", "ndim"], [4, 0, 1, "", "scale"], [4, 0, 1, "", "shape"], [4, 0, 1, "", "size"], [2, 0, 1, "", "variables"]], "pncpy": [[1, 1, 1, "", "Dimension"], [2, 1, 1, "", "File"], [4, 1, 1, "", "Variable"], [3, 3, 1, "", "chartostring"], [3, 3, 1, "", "inq_default_format"], [3, 3, 1, "", "inq_file_format"], [3, 3, 1, "", "inq_malloc_max_size"], [3, 3, 1, "", "inq_malloc_size"], [3, 3, 1, "", "set_default_format"], [3, 3, 1, "", "strerrno"], [3, 3, 1, "", "strerror"], [3, 3, 1, "", "stringtochar"]], "pncpy.Dimension": [[1, 2, 1, "", "__init__"], [1, 2, 1, "", "getfile"], [1, 2, 1, "", "isunlimited"]], "pncpy.File": [[2, 2, 1, "", "__init__"], [2, 2, 1, "", "attach_buff"], [2, 2, 1, "", "begin_indep"], [2, 2, 1, "", "cancel"], [2, 2, 1, "", "close"], [2, 2, 1, "", "def_dim"], [2, 2, 1, "", "def_var"], [2, 2, 1, "", "del_att"], [2, 2, 1, "", "detach_buff"], [2, 2, 1, "", "end_indep"], [2, 2, 1, "", "enddef"], [2, 2, 1, "", "filepath"], [2, 2, 1, "", "flush"], [2, 2, 1, "", "get_att"], [2, 2, 1, "", "inq_buff_size"], [2, 2, 1, "", "inq_buff_usage"], [2, 2, 1, "", "inq_get_size"], [2, 2, 1, "", "inq_header_extent"], [2, 2, 1, "", "inq_header_size"], [2, 2, 1, "", "inq_info"], [2, 2, 1, "", "inq_nreqs"], [2, 2, 1, "", "inq_num_fix_vars"], [2, 2, 1, "", "inq_num_rec_vars"], [2, 2, 1, "", "inq_put_size"], [2, 2, 1, "", "inq_recsize"], [2, 2, 1, "", "inq_striping"], [2, 2, 1, "", "inq_unlimdim"], [2, 2, 1, "", "inq_version"], [2, 2, 1, "", "ncattrs"], [2, 2, 1, "", "put_att"], [2, 2, 1, "", "redef"], [2, 2, 1, "", "rename_att"], [2, 2, 1, "", "rename_dim"], [2, 2, 1, "", "rename_var"], [2, 2, 1, "", "set_auto_chartostring"], [2, 2, 1, "", "set_fill"], [2, 2, 1, "", "sync"], [2, 2, 1, "", "wait"], [2, 2, 1, "", "wait_all"]], "pncpy.Variable": [[4, 2, 1, "", "__init__"], [4, 2, 1, "", "bput_var"], [4, 2, 1, "", "def_fill"], [4, 2, 1, "", "del_att"], [4, 2, 1, "", "file"], [4, 2, 1, "", "fill_rec"], [4, 2, 1, "", "get_att"], [4, 2, 1, "", "get_dims"], [4, 2, 1, "", "get_var"], [4, 2, 1, "", "get_var_all"], [4, 2, 1, "", "iget_var"], [4, 2, 1, "", "inq_fill"], [4, 2, 1, "", "inq_offset"], [4, 2, 1, "", "iput_var"], [4, 2, 1, "", "ncattrs"], [4, 2, 1, "", "put_att"], [4, 2, 1, "", "put_var"], [4, 2, 1, "", "put_var_all"], [4, 2, 1, "", "rename_att"], [4, 2, 1, "", "set_auto_chartostring"], [4, 2, 1, "", "set_auto_mask"], [4, 2, 1, "", "set_auto_scale"]]}, "objtypes": {"0": "py:attribute", "1": "py:class", "2": "py:method", "3": "py:function"}, "objnames": {"0": ["py", "attribute", "Python attribute"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "function", "Python function"]}, "titleterms": {"attribut": [0, 9], "dimens": [1, 9], "file": [2, 9], "function": 3, "variabl": [4, 9], "compat": 5, "c": [5, 7], "pnetcdf": [6, 7], "python": [6, 7, 9], "document": 6, "introduct": 6, "instal": [6, 7], "tutori": 6, "api": 6, "from": [7, 9], "sourc": 7, "softwar": 7, "requir": 7, "build": 7, "librari": 7, "overview": 8, "basic": 9, "run": 9, "script": 9, "mpi": 9, "creat": 9, "open": 9, "close": 9, "netcdf": 9, "write": [9, 11, 12], "read": [9, 11, 12], "datatyp": 10, "non": 11, "block": 11, "nonblock": 11, "commit": 11, "request": 11, "buffer": 11, "parallel": 12, "numpi": 12, "slice": 12, "syntax": 12, "method": 12, "call": 12, "put": 12, "get_var": 12}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"Attribute": [[0, "attribute"]], "Dimension": [[1, "dimension"]], "File": [[2, "file"]], "Functions": [[3, "functions"]], "Variable": [[4, "variable"]], "Compatibility with C": [[5, "compatibility-with-c"]], "PnetCDF-Python Documentation": [[6, "pnetcdf-python-documentation"]], "Introduction": [[6, null]], "Installation": [[6, null]], "Tutorial": [[6, null]], "API Documentation": [[6, null]], "Install from Source": [[7, "install-from-source"]], "Software Requirements": [[7, "software-requirements"]], "Building PnetCDF C library": [[7, "building-pnetcdf-c-library"]], "Building PnetCDF-python from source": [[7, "building-pnetcdf-python-from-source"]], "Overview": [[8, "overview"]], "Basics": [[9, "basics"]], "Running Python scripts with MPI": [[9, "running-python-scripts-with-mpi"]], "Creating/Opening/Closing a netCDF file": [[9, "creating-opening-closing-a-netcdf-file"]], "Dimensions": [[9, "dimensions"]], "Variables": [[9, "variables"]], "Attributes": [[9, "attributes"]], "Writing to variable": [[9, "writing-to-variable"]], "Reading from variable": [[9, "reading-from-variable"]], "Datatype": [[10, "datatype"]], "Non-blocking Reads and Writes": [[11, "non-blocking-reads-and-writes"]], "Nonblocking Write": [[11, "nonblocking-write"]], "Nonblocking Read": [[11, "nonblocking-read"]], "Commit Read/Write Requests": [[11, "commit-read-write-requests"]], "Buffered Non-blocking Write": [[11, "buffered-non-blocking-write"]], "Parallel Read and Write": [[12, "parallel-read-and-write"]], "NumPy Slicing Syntax": [[12, "numpy-slicing-syntax"]], "Method Call of put/get_var()": [[12, "method-call-of-put-get-var"]]}, "indexentries": {"dimension (class in pncpy)": [[1, "pncpy.Dimension"]], "__init__() (pncpy.dimension method)": [[1, "pncpy.Dimension.__init__"]], "getfile() (pncpy.dimension method)": [[1, "pncpy.Dimension.getfile"]], "isunlimited() (pncpy.dimension method)": [[1, "pncpy.Dimension.isunlimited"]], "name": [[1, "name"], [4, "name"]], "size": [[1, "size"], [4, "size"]], "file (class in pncpy)": [[2, "pncpy.File"]], "__init__() (pncpy.file method)": [[2, "pncpy.File.__init__"]], "attach_buff() (pncpy.file method)": [[2, "pncpy.File.attach_buff"]], "begin_indep() (pncpy.file method)": [[2, "pncpy.File.begin_indep"]], "cancel() (pncpy.file method)": [[2, "pncpy.File.cancel"]], "close() (pncpy.file method)": [[2, "pncpy.File.close"]], "def_dim() (pncpy.file method)": [[2, "pncpy.File.def_dim"]], "def_var() (pncpy.file method)": [[2, "pncpy.File.def_var"]], "del_att() (pncpy.file method)": [[2, "pncpy.File.del_att"]], "detach_buff() (pncpy.file method)": [[2, "pncpy.File.detach_buff"]], "dimensions": [[2, "dimensions"], [4, "dimensions"]], "end_indep() (pncpy.file method)": [[2, "pncpy.File.end_indep"]], "enddef() (pncpy.file method)": [[2, "pncpy.File.enddef"]], "file_format": [[2, "file_format"]], "filepath() (pncpy.file method)": [[2, "pncpy.File.filepath"]], "flush() (pncpy.file method)": [[2, "pncpy.File.flush"]], "get_att() (pncpy.file method)": [[2, "pncpy.File.get_att"]], "inq_buff_size() (pncpy.file method)": [[2, "pncpy.File.inq_buff_size"]], "inq_buff_usage() (pncpy.file method)": [[2, "pncpy.File.inq_buff_usage"]], "inq_get_size() (pncpy.file method)": [[2, "pncpy.File.inq_get_size"]], "inq_header_extent() (pncpy.file method)": [[2, "pncpy.File.inq_header_extent"]], "inq_header_size() (pncpy.file method)": [[2, "pncpy.File.inq_header_size"]], "inq_info() (pncpy.file method)": [[2, "pncpy.File.inq_info"]], "inq_nreqs() (pncpy.file method)": [[2, "pncpy.File.inq_nreqs"]], "inq_num_fix_vars() (pncpy.file method)": [[2, "pncpy.File.inq_num_fix_vars"]], "inq_num_rec_vars() (pncpy.file method)": [[2, "pncpy.File.inq_num_rec_vars"]], "inq_put_size() (pncpy.file method)": [[2, "pncpy.File.inq_put_size"]], "inq_recsize() (pncpy.file method)": [[2, "pncpy.File.inq_recsize"]], "inq_striping() (pncpy.file method)": [[2, "pncpy.File.inq_striping"]], "inq_unlimdim() (pncpy.file method)": [[2, "pncpy.File.inq_unlimdim"]], "inq_version() (pncpy.file method)": [[2, "pncpy.File.inq_version"]], "ncattrs() (pncpy.file method)": [[2, "pncpy.File.ncattrs"]], "put_att() (pncpy.file method)": [[2, "pncpy.File.put_att"]], "redef() (pncpy.file method)": [[2, "pncpy.File.redef"]], "rename_att() (pncpy.file method)": [[2, "pncpy.File.rename_att"]], "rename_dim() (pncpy.file method)": [[2, "pncpy.File.rename_dim"]], "rename_var() (pncpy.file method)": [[2, "pncpy.File.rename_var"]], "set_auto_chartostring() (pncpy.file method)": [[2, "pncpy.File.set_auto_chartostring"]], "set_fill() (pncpy.file method)": [[2, "pncpy.File.set_fill"]], "sync() (pncpy.file method)": [[2, "pncpy.File.sync"]], "variables": [[2, "variables"]], "wait() (pncpy.file method)": [[2, "pncpy.File.wait"]], "wait_all() (pncpy.file method)": [[2, "pncpy.File.wait_all"]], "chartostring() (in module pncpy)": [[3, "pncpy.chartostring"]], "inq_default_format() (in module pncpy)": [[3, "pncpy.inq_default_format"]], "inq_file_format() (in module pncpy)": [[3, "pncpy.inq_file_format"]], "inq_malloc_max_size() (in module pncpy)": [[3, "pncpy.inq_malloc_max_size"]], "inq_malloc_size() (in module pncpy)": [[3, "pncpy.inq_malloc_size"]], "set_default_format() (in module pncpy)": [[3, "pncpy.set_default_format"]], "strerrno() (in module pncpy)": [[3, "pncpy.strerrno"]], "strerror() (in module pncpy)": [[3, "pncpy.strerror"]], "stringtochar() (in module pncpy)": [[3, "pncpy.stringtochar"]], "variable (class in pncpy)": [[4, "pncpy.Variable"]], "__init__() (pncpy.variable method)": [[4, "pncpy.Variable.__init__"]], "bput_var() (pncpy.variable method)": [[4, "pncpy.Variable.bput_var"]], "chartostring": [[4, "chartostring"]], "datatype": [[4, "datatype"]], "def_fill() (pncpy.variable method)": [[4, "pncpy.Variable.def_fill"]], "del_att() (pncpy.variable method)": [[4, "pncpy.Variable.del_att"]], "dtype": [[4, "dtype"]], "file() (pncpy.variable method)": [[4, "pncpy.Variable.file"]], "fill_rec() (pncpy.variable method)": [[4, "pncpy.Variable.fill_rec"]], "get_att() (pncpy.variable method)": [[4, "pncpy.Variable.get_att"]], "get_dims() (pncpy.variable method)": [[4, "pncpy.Variable.get_dims"]], "get_var() (pncpy.variable method)": [[4, "pncpy.Variable.get_var"]], "get_var_all() (pncpy.variable method)": [[4, "pncpy.Variable.get_var_all"]], "iget_var() (pncpy.variable method)": [[4, "pncpy.Variable.iget_var"]], "inq_fill() (pncpy.variable method)": [[4, "pncpy.Variable.inq_fill"]], "inq_offset() (pncpy.variable method)": [[4, "pncpy.Variable.inq_offset"]], "iput_var() (pncpy.variable method)": [[4, "pncpy.Variable.iput_var"]], "mask": [[4, "mask"]], "ncattrs() (pncpy.variable method)": [[4, "pncpy.Variable.ncattrs"]], "ndim": [[4, "ndim"]], "put_att() (pncpy.variable method)": [[4, "pncpy.Variable.put_att"]], "put_var() (pncpy.variable method)": [[4, "pncpy.Variable.put_var"]], "put_var_all() (pncpy.variable method)": [[4, "pncpy.Variable.put_var_all"]], "rename_att() (pncpy.variable method)": [[4, "pncpy.Variable.rename_att"]], "scale": [[4, "scale"]], "set_auto_chartostring() (pncpy.variable method)": [[4, "pncpy.Variable.set_auto_chartostring"]], "set_auto_mask() (pncpy.variable method)": [[4, "pncpy.Variable.set_auto_mask"]], "set_auto_scale() (pncpy.variable method)": [[4, "pncpy.Variable.set_auto_scale"]], "shape": [[4, "shape"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["api/attribute_api", "api/dimension_api", "api/file_api", "api/function_api", "api/variable_api", "development/compatibility", "index", "installation/install", "introduction/overview", "tutorial/basic", "tutorial/datatypes", "tutorial/non_blocking", "tutorial/read_write"], "filenames": ["api/attribute_api.rst", "api/dimension_api.rst", "api/file_api.rst", "api/function_api.rst", "api/variable_api.rst", "development/compatibility.rst", "index.rst", "installation/install.rst", "introduction/overview.rst", "tutorial/basic.rst", "tutorial/datatypes.rst", "tutorial/non_blocking.rst", "tutorial/read_write.rst"], "titles": ["Attribute", "Dimension", "File", "Functions", "Variable", "Compatibility with C", "PnetCDF-Python Documentation", "Install from Source", "Overview", "Basics", "Datatype", "Non-blocking Reads and Writes", "Parallel Read and Write"], "terms": {"In": [0, 2, 4, 9], "librari": [0, 2, 4, 6, 8, 9], "netcdf": [0, 2, 3, 4, 6, 7, 8, 10, 11, 12], "can": [0, 2, 3, 4, 7, 9, 11, 12], "creat": [0, 1, 2, 3, 4, 6], "access": [0, 1, 2, 8, 9, 12], "manipul": [0, 8], "us": [0, 1, 2, 3, 4, 7, 8, 9, 10, 11, 12], "python": [0, 2, 4, 5, 8, 10, 11, 12], "dictionari": [0, 2, 9], "like": [0, 4, 9], "syntax": [0, 4, 6, 9], "A": [0, 2, 4, 9, 11], "interfac": [0, 1, 2, 4, 8, 10], "metadata": [0, 2, 4], "oper": [0, 2, 3, 4, 12], "i": [0, 1, 2, 3, 4, 7, 8, 9, 11, 12], "provid": [0, 1, 2, 4, 9, 11, 12], "both": 0, "file": [0, 1, 3, 4, 5, 6, 8, 11, 12], "class": [0, 1, 2, 4, 9], "global": [0, 2, 9], "variabl": [0, 1, 2, 5, 6, 10, 11, 12], "defin": [1, 2, 4, 9, 10, 11, 12], "shape": [1, 3, 4, 6, 9, 11, 12], "structur": [1, 4], "store": [1, 2, 4, 9, 11, 12], "coordin": 1, "data": [1, 2, 4, 8, 9, 10, 11, 12], "multidimension": [1, 4, 9, 12], "arrai": [1, 2, 3, 4, 9, 11, 12], "The": [1, 2, 3, 4, 5, 9, 10, 11, 12], "object": [1, 2, 4, 9], "which": [1, 2, 4, 11, 12], "also": [1, 2, 4, 9], "kei": [1, 9], "compon": [1, 4, 5], "an": [1, 2, 3, 4, 7, 9, 11, 12], "instanc": [1, 2, 3, 4, 9], "should": [1, 2, 4, 11], "def_dim": [1, 2, 6, 9], "method": [1, 2, 4, 6, 9, 11], "__init__": [1, 2, 4, 6], "directli": [1, 4, 9, 12], "pncpy": [1, 2, 3, 4, 7, 9, 11], "base": [1, 2, 4, 8, 9], "arg": 1, "kwarg": [1, 2, 4], "getfil": [1, 6], "self": [1, 2, 4], "return": [1, 2, 3, 4, 9, 11, 12], "thi": [1, 2, 3, 4, 8, 9, 11, 12], "member": [1, 2, 4], "type": [1, 2, 3, 4, 9, 10], "isunlimit": [1, 2, 6, 9], "true": [1, 2, 4], "unlimit": [1, 2, 4, 9], "fals": [1, 2, 4], "otherwis": [1, 2, 4], "bool": [1, 2, 4], "attribut": [1, 2, 4, 5, 6], "follow": [1, 2, 4, 5, 9, 10, 12], "ar": [1, 2, 4, 9, 11, 12], "read": [1, 2, 4, 6], "onli": [1, 2, 4, 11], "modifi": [1, 2, 4], "user": [1, 2, 3, 4, 9, 11], "name": [1, 2, 3, 4, 6, 9], "string": [1, 2, 3, 4, 9], "To": [1, 2, 5, 9, 11], "renam": [1, 2, 4], "rename_dim": [1, 2, 6], "size": [1, 2, 3, 4, 5, 6, 9, 11, 12], "current": [1, 2, 3, 4, 7, 9, 12], "call": [1, 2, 3, 4, 6, 9, 11], "len": [1, 2, 9], "high": [2, 8], "level": [2, 5, 9, 11], "repres": [2, 4, 12], "write": [2, 4, 6], "within": [2, 4, 9], "serv": [2, 4, 12], "root": [2, 9], "contain": [2, 3, 4, 5], "dimens": [2, 3, 4, 5, 6], "togeth": [2, 12], "thei": [2, 4, 9, 12], "describ": [2, 4], "mean": [2, 4], "relat": [2, 9], "among": 2, "field": 2, "filenam": [2, 9], "format": [2, 3, 4, 9, 10], "64bit_offset": 2, "mode": [2, 3, 4, 9, 12], "w": [2, 9], "comm": [2, 9], "none": [2, 3, 4, 9, 11], "info": [2, 9], "constructor": [2, 4, 9], "paramet": [2, 3, 4, 11, 12], "str": [2, 3, 4], "new": [2, 3, 4, 9, 10], "r": [2, 9], "open": [2, 4, 6, 12], "error": [2, 3, 4, 11], "doe": 2, "exist": [2, 3, 4, 9], "same": [2, 4, 9, 11], "delet": [2, 4, 11], "x": 2, "append": [2, 11], "underli": 2, "relev": [2, 4], "when": [2, 4, 9], "cdf": [2, 4, 9, 10], "2": [2, 4, 5, 9, 10, 12], "64bit_data": [2, 9], "5": [2, 4, 9, 10, 12], "default": [2, 3, 4, 9, 12], "1": [2, 3, 4, 5, 7, 9, 10, 12], "mpi4pi": [2, 4, 7, 9], "mpi": [2, 4, 6, 7], "option": [2, 3, 4, 7, 9, 11, 12], "commun": 2, "mpi_comm_world": 2, "mpi_info_nul": 2, "attach_buff": [2, 4, 6, 11], "bufsiz": 2, "allow": [2, 3, 8, 11], "pnetcdf": [2, 3, 4, 5, 8, 9, 11, 12], "alloc": [2, 3, 4], "intern": [2, 3, 4], "buffer": [2, 4, 6, 12], "accommod": [2, 4], "request": [2, 4, 6], "prerequisit": [2, 11], "non": [2, 6], "block": [2, 4, 6], "detach_buff": [2, 6, 11], "requir": [2, 4, 6, 8, 11, 12], "longer": [2, 4], "need": [2, 4, 9, 11], "int": [2, 3, 4, 10], "unit": [2, 9], "byte": [2, 3, 4, 10], "obtain": 2, "numpi": [2, 3, 4, 6, 7, 9, 10, 11], "ndarrai": [2, 3, 4], "nbyte": [2, 11], "begin_indep": [2, 6, 12], "leav": 2, "from": [2, 3, 4, 6, 11, 12], "collect": [2, 4, 11, 12], "enter": 2, "independ": [2, 3, 4, 11, 12], "cancel": [2, 6], "num": [2, 4, 11, 12], "statu": [2, 3, 12], "list": [2, 4, 5, 11, 12], "pend": [2, 11], "nonblock": [2, 4, 6], "made": 2, "iput_var": [2, 4, 6, 11], "iget_var": [2, 4, 5, 6, 11], "bput_var": [2, 4, 6, 11], "number": [2, 3, 4, 9, 10, 11], "It": [2, 3], "next": 2, "two": [2, 4, 9], "argument": [2, 4, 9, 11, 12], "altern": [2, 9, 11], "modul": [2, 9, 11], "constant": [2, 9, 10, 11], "nc_req_al": [2, 11], "flush": [2, 4, 6, 11], "all": [2, 3, 4, 7, 9, 10, 11, 12], "nc_get_req_al": [2, 11], "get": [2, 4], "nc_put_req_al": [2, 11], "put": [2, 4, 6, 9, 11], "integ": [2, 3, 4, 9, 10], "specifi": [2, 3, 4, 9, 11, 12], "id": [2, 4, 11], "were": 2, "earlier": 2, "hold": [2, 11], "code": [2, 3, 4, 7, 9], "status": [2, 11], "correspond": [2, 3, 4, 10], "valu": [2, 4, 9, 11, 12], "strerror": [2, 3, 6], "messag": [2, 3], "either": [2, 4, 9], "close": [2, 5, 6], "dimnam": 2, "given": [2, 4, 9], "must": [2, 4, 9], "posit": [2, 4], "stand": 2, "determin": 2, "maximum": [2, 3, 9], "function": [2, 4, 6, 9], "def_var": [2, 4, 6, 9], "varnam": [2, 4], "nc_dtype": [2, 4], "fill_valu": [2, 4], "datatyp": [2, 3, 4, 6, 9, 11], "support": [2, 4, 9, 10, 12], "nc_char": [2, 4, 10], "text": [2, 4, 10], "nc_byte": [2, 4, 10], "nc_short": [2, 4, 10], "sign": [2, 4, 10], "nc_int": [2, 4, 9, 10], "4": [2, 4, 9, 10], "nc_float": [2, 4, 10], "float": [2, 4, 10], "point": [2, 4, 9, 10], "nc_doubl": [2, 4, 10], "8": [2, 3, 4, 9, 10], "real": [2, 4, 10], "doubl": [2, 4, 10], "precis": [2, 4, 10], "nc_ubyt": [2, 4, 10], "unsign": [2, 4, 10], "nc_ushort": [2, 4, 10], "nc_uint": [2, 4, 10], "nc_int64": [2, 4, 10], "nc_uint64": [2, 4, 10], "tupl": [2, 4, 9, 12], "empti": [2, 4, 11, 12], "scalar": [2, 4], "therefor": [2, 4, 9], "ha": [2, 3, 4], "fill": [2, 4, 9, 11], "accept": [2, 4], "turn": [2, 4, 12], "off": [2, 4, 9], "ani": [2, 4, 9, 11, 12], "other": [2, 3, 4], "del_att": [2, 4, 6], "you": [2, 4, 7, 9], "one": [2, 3, 4, 11], "reserv": [2, 4, 11], "while": [2, 3, 4, 9], "detach": [2, 11], "previous": 2, "attach": [2, 11], "end_indep": [2, 6, 12], "enddef": [2, 6, 11, 12], "exit": [2, 12], "place": 2, "so": [2, 11], "written": [2, 4, 12], "filepath": [2, 6], "encod": [2, 3, 4], "system": [2, 3, 7], "path": [2, 7], "wa": 2, "dataset": [2, 9, 12], "decod": [2, 4], "sy": 2, "getfilesystemencod": 2, "cach": [2, 4, 7], "memori": [2, 3, 4, 11], "get_att": [2, 4, 5, 6], "utf": [2, 3, 4], "retriev": [2, 4, 9, 12], "charact": [2, 3, 4], "inq_buff_s": [2, 6], "inq_buff_usag": [2, 6], "usag": 2, "inq_get_s": [2, 6], "report": 2, "amount": 2, "actual": 2, "been": [2, 3], "sinc": 2, "inq_header_ext": [2, 6], "header": 2, "extent": 2, "space": [2, 11], "inq_header_s": [2, 6], "note": [2, 4, 11, 12], "inq_info": [2, 6], "hint": 2, "inq_nreq": [2, 6], "inq_num_fix_var": [2, 6], "fix": [2, 3, 4], "inq_num_rec_var": [2, 6], "record": [2, 4], "inq_put_s": [2, 6], "inq_recs": [2, 6], "sum": 2, "individu": 2, "each": [2, 3, 4, 9, 11], "inq_strip": [2, 6], "inq_unlimdim": [2, 6], "dim": 2, "inq_vers": [2, 6], "ncattr": [2, 4, 6, 9], "put_att": [2, 4, 6, 9], "set": [2, 3, 4, 9], "pair": [2, 4, 9], "especi": [2, 4], "redef": [2, 5, 6], "ad": [2, 9], "rename_att": [2, 4, 6], "oldnam": [2, 4], "newnam": [2, 4], "old": [2, 4], "If": [2, 3, 4, 7, 9, 11], "than": [2, 4], "origin": [2, 4], "subroutin": [2, 3], "consist": 2, "process": [2, 3, 9, 11, 12], "rename_var": [2, 6], "set_auto_chartostr": [2, 4, 6], "affect": 2, "after": [2, 11], "behaviour": 2, "set_fil": [2, 6], "fillmod": 2, "nc_fill": 2, "nc_nofil": 2, "chang": [2, 3, 4, 11], "far": 2, "time": [2, 4, 9], "api": [2, 5, 11], "word": 2, "overwrit": 2, "addit": [2, 4, 9], "sync": [2, 6], "disk": 2, "wait": [2, 4, 6, 11], "complet": [2, 4], "o": [2, 8, 9, 11, 12], "wait_al": [2, 4, 5, 6, 11], "map": [2, 4, 5, 11, 12], "file_format": [2, 6, 9], "possibl": 2, "includ": [2, 9], "classic": [2, 9], "cdf2": 2, "64bit": 2, "cdf5": 2, "netcdf4": [2, 9], "bp": 2, "err_cod": 3, "static": 3, "refer": [3, 4, 9, 11], "presum": 3, "previou": [3, 9], "some": 3, "might": 3, "have": [3, 4, 7, 9, 10], "strerrno": [3, 6], "nc": [3, 9, 10, 11], "For": [3, 4, 9, 11, 12], "ncmpi_strerrno": [3, 5], "nc_ebadid": 3, "chartostr": [3, 4, 6], "b": [3, 4], "convert": [3, 4], "less": 3, "un": [3, 4], "sn": 3, "where": [3, 4, 12], "n": [3, 4, 9, 12], "input": [3, 11, 12], "s1": [3, 4], "u1": [3, 10], "Will": 3, "length": [3, 4, 9, 12], "np": [3, 4, 9, 10, 11, 12], "string_": 3, "btye": 3, "stringtochar": [3, 6], "extra": 3, "treat": [3, 9], "raw": 3, "set_default_format": [3, 6], "new_format": 3, "futur": [3, 11], "ncmpi_creat": [3, 5], "without": [3, 11, 12], "nc_format_class": 3, "nc_format_cdf2": 3, "nc_format_64bit": 3, "nc_format_cdf5": 3, "nc_format_64bit_data": 3, "expect": [3, 4], "intend": 3, "later": [3, 7, 9, 11], "inq_default_format": [3, 6], "inq_file_format": [3, 6], "file_nam": 3, "inq_malloc_max_s": [3, 6], "rtype": [3, 4], "inq_malloc_s": [3, 6], "core": 4, "organ": 4, "along": 4, "more": [4, 9, 11], "associ": 4, "form": [4, 9], "particularli": [4, 12], "flexibl": 4, "done": 4, "through": 4, "explicit": 4, "style": 4, "index": [4, 9, 11, 12], "analog": 4, "see": [4, 9, 11, 12], "detail": [4, 9], "_fillvalu": 4, "befor": [4, 9], "replac": 4, "start": [4, 9, 11, 12], "count": [4, 9, 11, 12], "stride": [4, 11, 12], "imap": [4, 11, 12], "bufcount": 4, "buftyp": 4, "post": [4, 11], "parallel": [4, 6, 7, 8], "behavior": [4, 11, 12], "vari": [4, 11, 12], "depend": [4, 9, 11, 12], "pattern": [4, 9, 11, 12], "select": [4, 11, 12], "execut": [4, 11], "until": [4, 11], "caller": 4, "prepar": 4, "unlik": [4, 11], "iput": 4, "onc": [4, 11], "free": [4, 11], "content": [4, 11], "prior": 4, "make": [4, 7, 8, 9], "sure": [4, 9], "entir": [4, 11, 12], "simplest": 4, "whenev": 4, "take": [4, 9, 12], "care": 4, "try": 4, "yet": 4, "henc": 4, "0": [4, 7, 9, 11, 12], "noth": 4, "similarli": [4, 9], "assum": 4, "mai": [4, 9], "suppli": 4, "result": [4, 11], "segment": 4, "violat": 4, "singl": [4, 11, 12], "element": [4, 12], "exampl": [4, 9, 11, 12], "would": 4, "10": [4, 9, 11, 12], "dimension": 4, "skip": 4, "subarrai": [4, 11, 12], "part": [4, 9], "give": [4, 9, 10], "corner": [4, 9, 12], "vector": [4, 9, 12], "edg": [4, 9, 12], "section": [4, 9, 12], "c": [4, 6, 10], "d": 4, "subsampl": [4, 11, 12], "e": [4, 9, 11, 12], "f": [4, 9, 11, 12], "g": [4, 9, 11, 12], "h": 4, "between": [4, 11], "3": [4, 5, 7, 9, 12], "butter": 4, "distanc": 4, "diagram": 4, "below": [4, 11, 12], "illustr": [4, 12], "6": [4, 9], "numer": 4, "int32": [4, 9, 10], "match": [4, 12], "": [4, 5, 8, 9, 11, 12], "long": [4, 10, 12], "multi": 4, "top": 4, "left": 4, "varaibl": 4, "first": [4, 5, 9, 11], "order": [4, 11], "2d": 4, "ndim": [4, 6], "sampl": 4, "interv": 4, "equal": 4, "locat": 4, "adjac": 4, "indic": [4, 11, 12], "deriv": 4, "layout": 4, "reqeust": [4, 11], "success": 4, "def_fil": [4, 6], "no_fil": 4, "custom": 4, "purpos": [4, 9], "ignor": 4, "fill_rec": [4, 6], "rec_no": 4, "predefin": 4, "get_dim": [4, 6], "get_var": [4, 5, 6, 9, 11], "buff": [4, 9, 11, 12], "don": [4, 7], "t": [4, 7], "how": [4, 9], "mani": 4, "caus": 4, "get_var_al": [4, 5, 6, 9, 12], "retain": 4, "handler": [4, 9], "transact": 4, "inq_fil": [4, 6], "te": 4, "els": 4, "inq_offset": [4, 6], "offset": [4, 9], "alter": [4, 11], "unexpect": [4, 11], "put_var": [4, 6, 11, 12], "put_var_al": [4, 6, 9, 12], "automat": 4, "convers": 4, "_encod": 4, "dtype": [4, 6, 9, 11, 12], "unicod": 4, "rightmost": 4, "back": 4, "indiviu": 4, "perform": [4, 8, 9, 11, 12], "set_auto_mask": [4, 6], "mask": [4, 6], "exactli": 4, "missing_valu": 4, "instead": 4, "valid_min": 4, "valid_max": 4, "outsid": 4, "rang": [4, 11], "regular": 4, "set_auto_scal": [4, 6], "scale": [4, 6, 9], "pack": 4, "unpack": 4, "scale_factor": 4, "add_offset": 4, "_unsign": 4, "present": 4, "miss": 4, "zero": [4, 9, 12], "view": 4, "appli": 4, "reset": 4, "set_auto_maskandscal": 4, "tabl": [5, 10], "implement": 5, "prioriti": 5, "ncmpi_strerror": 5, "ncmpi_open": 5, "ncmpi_enddef": 5, "ncmpi_sync": 5, "ncmpi_begin": 5, "end_indep_data": 5, "ncmpi_inq_path": 5, "ncmpi_inq": 5, "ncmpi_wait": 5, "ncmpi_wait_al": 5, "ncmpi_inq_libv": 5, "ncmpi_set_fil": 5, "ncmpi_set_default_format": 5, "ncmpi_inq_put": 5, "get_siz": 5, "ncmpi_delet": 5, "ncmpi_sync_numrec": 5, "ncmpi_inq_file_info": 5, "ncmpi_inq_files_open": 5, "ncmpi_def_dim": 5, "ncmpi_inq_ndim": 5, "ncmpi_inq_dimlen": 5, "ncmpi_inq_dim": 5, "ncmpi_inq_dimnam": 5, "ncmpi_put": 5, "get_att_text": 5, "ncmpi_inq_att": 5, "ncmpi_inq_natt": 5, "ncmpi_inq_attnam": 5, "ncmpi_rename_att": 5, "ncmpi_del_att": 5, "ncmpi_def_var": 5, "ncmpi_def_var_fil": 5, "ncmpi_inq_varndim": 5, "ncmpi_inq_varnam": 5, "get_vara": [5, 12], "get_var1": 5, "get_varn": 5, "get_varm": 5, "get_vara_al": 5, "get_vars_al": 5, "get_var1_al": 5, "get_varn_al": 5, "get_varm_al": 5, "ncmpi_iput": 5, "iget_vara": 5, "iget_var1": 5, "iget_varm": 5, "iget_varn": 5, "ncmpi_bput": 5, "bget_var": 5, "bget_var1": 5, "bget_vara": 5, "bget_varm": 5, "bget_varn": 5, "ncmpi_inq_nreq": 5, "ncmpi_inq_buffer_usag": 5, "ncmpi_cancel": 5, "ncmpi_fill_var_rec": 5, "second": 5, "third": 5, "overview": 6, "sourc": 6, "softwar": 6, "build": 6, "basic": 6, "run": 6, "script": 6, "slice": [6, 9], "commit": 6, "9": [7, 9, 12], "cython": 7, "setuptool": 7, "download": 7, "v1": 7, "12": 7, "wget": 7, "http": 7, "github": 7, "io": 7, "releas": 7, "tar": 7, "gz": 7, "xf": 7, "cd": 7, "configur": 7, "prefix": 7, "dir": 7, "enabl": [7, 11], "share": 7, "disabl": 7, "fortran": 7, "cxx": 7, "cc": 7, "mpicc": 7, "our": [7, 9], "pypi": 7, "wheel": 7, "cover": 7, "alreadi": 7, "work": 7, "compil": 7, "wrapper": 7, "your": 7, "search": 7, "pip": 7, "pnetcdf_dir": 7, "activ": 7, "virtual": 7, "environ": 7, "m": 7, "venv": 7, "env": 7, "bin": 7, "upgrad": 7, "git": 7, "clone": 7, "com": 7, "jonathanlyj": 7, "setup": 7, "py": [7, 9, 11, 12], "integr": 8, "easi": 8, "analysi": 8, "visual": 8, "rich": 8, "ecosystem": 8, "scientif": 8, "comput": 8, "valuabl": 8, "tool": 8, "applic": 8, "under": [9, 10, 11, 12], "construct": [9, 10, 11, 12], "program": [9, 11, 12], "command": 9, "mpiexec": 9, "practic": [9, 11], "look": 9, "processor": 9, "simpli": 9, "specif": [9, 12], "keyword": 9, "examin": 9, "accomplish": 9, "via": 9, "here": [9, 11, 12], "import": 9, "comm_world": 9, "testfil": 9, "equival": [9, 10, 12], "rootgrp": 9, "test": 9, "netcdf3_class": 9, "full": [9, 11, 12], "craete_open": 9, "establish": 9, "expand": 9, "omit": 9, "assign": 9, "lat_nam": 9, "lat": 9, "lat_len": 9, "50": [9, 12], "time_nam": 9, "tmp": 9, "lat_dim": 9, "time_dim": 9, "netcdf3_64bit_data": 9, "createdimens": 9, "print": [9, 12], "_dimens": 9, "inform": 9, "check": 9, "tst_dim": 9, "similar": [9, 11], "util": 9, "mandatori": [9, 11, 12], "found": 9, "var": [9, 12], "createvari": 9, "i4": [9, 10, 11, 12], "wai": [9, 12], "_variabl": 9, "up": 9, "properli": 9, "usual": 9, "whole": [9, 11], "titl": 9, "histori": 9, "properti": 9, "special": 9, "minimum": 9, "valid": 9, "factor": 9, "reenter": 9, "sequenc": 9, "floatatt": 9, "math": 9, "pi": 9, "option1": 9, "intatt": 9, "option2": 9, "seqatt": 9, "arang": 9, "int_att": 9, "group": 9, "setncattr": 9, "And": 9, "__dict__": 9, "141592653589793": 9, "7": 9, "global_attribut": 9, "now": 9, "do": 9, "firstli": 9, "Then": 9, "just": 9, "stop": 9, "step": [9, 11], "triplet": 9, "leverag": 9, "accord": 9, "specfic": 9, "20": 9, "symmetr": 9, "differ": 9, "retreiv": 9, "topleft": [9, 12], "behav": 9, "learn": 9, "about": 9, "page": 9, "extern": 10, "direct": 10, "quival": 10, "bit": 10, "intent": 10, "char": 10, "int8": 10, "i1": 10, "short": 10, "16": 10, "int16": 10, "i2": 10, "32": 10, "float32": 10, "f4": 10, "64": 10, "float64": 10, "f8": 10, "uint8": 10, "uint16": 10, "u2": 10, "uint32": 10, "u4": 10, "int64": 10, "i8": 10, "uint64": 10, "u8": 10, "multipl": [11, 12], "them": 11, "altogeth": 11, "achiev": 11, "better": 11, "common": 11, "shown": 11, "pass": 11, "req_id": 11, "write_buff": 11, "randint": 11, "xdim": 11, "ydim": 11, "zdim": 11, "astyp": 11, "num_req": 11, "v": 11, "datam": 11, "track": 11, "non_blocking_writ": 11, "again": 11, "initi": 11, "v_data": 11, "flexible_api": 11, "eventu": 11, "wise": 11, "debug": 11, "suffix": [11, 12], "_all": [11, 12], "contrast": [11, 12], "indeped": [11, 12], "req_err": 11, "One": 11, "limit": 11, "abov": 11, "allevi": 11, "ident": 11, "howev": 11, "reus": 11, "posts": 11, "As": 11, "tell": 11, "reqest": 11, "estim": 11, "buffsiz": 11, "rememb": 11, "requet": 11, "re": 12, "translat": 12, "fast": 12, "effici": 12, "recogn": 12, "NOT": 12, "mult": 12, "respect": 12, "diagramm": 12, "By": 12, "25": 12, "total": 12, "put_vara": 12, "collective_writ": 12}, "objects": {"": [[4, 0, 1, "", "chartostring"], [4, 0, 1, "", "datatype"], [4, 0, 1, "", "dimensions"], [4, 0, 1, "", "dtype"], [2, 0, 1, "", "file_format"], [4, 0, 1, "", "mask"], [4, 0, 1, "", "name"], [4, 0, 1, "", "ndim"], [4, 0, 1, "", "scale"], [4, 0, 1, "", "shape"], [4, 0, 1, "", "size"], [2, 0, 1, "", "variables"]], "pncpy": [[1, 1, 1, "", "Dimension"], [2, 1, 1, "", "File"], [4, 1, 1, "", "Variable"], [3, 3, 1, "", "chartostring"], [3, 3, 1, "", "inq_default_format"], [3, 3, 1, "", "inq_file_format"], [3, 3, 1, "", "inq_malloc_max_size"], [3, 3, 1, "", "inq_malloc_size"], [3, 3, 1, "", "set_default_format"], [3, 3, 1, "", "strerrno"], [3, 3, 1, "", "strerror"], [3, 3, 1, "", "stringtochar"]], "pncpy.Dimension": [[1, 2, 1, "", "__init__"], [1, 2, 1, "", "getfile"], [1, 2, 1, "", "isunlimited"]], "pncpy.File": [[2, 2, 1, "", "__init__"], [2, 2, 1, "", "attach_buff"], [2, 2, 1, "", "begin_indep"], [2, 2, 1, "", "cancel"], [2, 2, 1, "", "close"], [2, 2, 1, "", "def_dim"], [2, 2, 1, "", "def_var"], [2, 2, 1, "", "del_att"], [2, 2, 1, "", "detach_buff"], [2, 2, 1, "", "end_indep"], [2, 2, 1, "", "enddef"], [2, 2, 1, "", "filepath"], [2, 2, 1, "", "flush"], [2, 2, 1, "", "get_att"], [2, 2, 1, "", "inq_buff_size"], [2, 2, 1, "", "inq_buff_usage"], [2, 2, 1, "", "inq_get_size"], [2, 2, 1, "", "inq_header_extent"], [2, 2, 1, "", "inq_header_size"], [2, 2, 1, "", "inq_info"], [2, 2, 1, "", "inq_nreqs"], [2, 2, 1, "", "inq_num_fix_vars"], [2, 2, 1, "", "inq_num_rec_vars"], [2, 2, 1, "", "inq_put_size"], [2, 2, 1, "", "inq_recsize"], [2, 2, 1, "", "inq_striping"], [2, 2, 1, "", "inq_unlimdim"], [2, 2, 1, "", "inq_version"], [2, 2, 1, "", "ncattrs"], [2, 2, 1, "", "put_att"], [2, 2, 1, "", "redef"], [2, 2, 1, "", "rename_att"], [2, 2, 1, "", "rename_dim"], [2, 2, 1, "", "rename_var"], [2, 2, 1, "", "set_auto_chartostring"], [2, 2, 1, "", "set_fill"], [2, 2, 1, "", "sync"], [2, 2, 1, "", "wait"], [2, 2, 1, "", "wait_all"]], "pncpy.Variable": [[4, 2, 1, "", "__init__"], [4, 2, 1, "", "bput_var"], [4, 2, 1, "", "def_fill"], [4, 2, 1, "", "del_att"], [4, 2, 1, "", "file"], [4, 2, 1, "", "fill_rec"], [4, 2, 1, "", "get_att"], [4, 2, 1, "", "get_dims"], [4, 2, 1, "", "get_var"], [4, 2, 1, "", "get_var_all"], [4, 2, 1, "", "iget_var"], [4, 2, 1, "", "inq_fill"], [4, 2, 1, "", "inq_offset"], [4, 2, 1, "", "iput_var"], [4, 2, 1, "", "ncattrs"], [4, 2, 1, "", "put_att"], [4, 2, 1, "", "put_var"], [4, 2, 1, "", "put_var_all"], [4, 2, 1, "", "rename_att"], [4, 2, 1, "", "set_auto_chartostring"], [4, 2, 1, "", "set_auto_mask"], [4, 2, 1, "", "set_auto_scale"]]}, "objtypes": {"0": "py:attribute", "1": "py:class", "2": "py:method", "3": "py:function"}, "objnames": {"0": ["py", "attribute", "Python attribute"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "function", "Python function"]}, "titleterms": {"attribut": [0, 9], "dimens": [1, 9], "file": [2, 9], "function": 3, "variabl": [4, 9], "compat": 5, "c": [5, 7], "pnetcdf": [6, 7], "python": [6, 7, 9], "document": 6, "introduct": 6, "instal": [6, 7], "tutori": 6, "api": 6, "from": [7, 9], "sourc": 7, "softwar": 7, "requir": 7, "build": 7, "librari": 7, "overview": 8, "basic": 9, "run": 9, "script": 9, "mpi": 9, "creat": 9, "open": 9, "close": 9, "netcdf": 9, "write": [9, 11, 12], "read": [9, 11, 12], "datatyp": 10, "non": 11, "block": 11, "nonblock": 11, "commit": 11, "request": 11, "buffer": 11, "parallel": 12, "numpi": 12, "slice": 12, "syntax": 12, "method": 12, "call": 12, "put": 12, "get_var": 12}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"Attribute": [[0, "attribute"]], "Dimension": [[1, "dimension"]], "File": [[2, "file"]], "Functions": [[3, "functions"]], "Variable": [[4, "variable"]], "Compatibility with C": [[5, "compatibility-with-c"]], "PnetCDF-Python Documentation": [[6, "pnetcdf-python-documentation"]], "Introduction": [[6, null]], "Installation": [[6, null], [7, "installation"]], "Tutorial": [[6, null]], "API Documentation": [[6, null]], "Install from Source": [[7, "install-from-source"]], "Software Requirements": [[7, "software-requirements"]], "Building PnetCDF C library": [[7, "building-pnetcdf-c-library"]], "Building PnetCDF-python from source": [[7, "building-pnetcdf-python-from-source"]], "Overview": [[8, "overview"]], "Basics": [[9, "basics"]], "Running Python scripts with MPI": [[9, "running-python-scripts-with-mpi"]], "Creating/Opening/Closing a netCDF file": [[9, "creating-opening-closing-a-netcdf-file"]], "Dimensions": [[9, "dimensions"]], "Variables": [[9, "variables"]], "Attributes": [[9, "attributes"]], "Writing to variable": [[9, "writing-to-variable"]], "Reading from variable": [[9, "reading-from-variable"]], "Datatype": [[10, "datatype"]], "Non-blocking Reads and Writes": [[11, "non-blocking-reads-and-writes"]], "Nonblocking Write": [[11, "nonblocking-write"]], "Nonblocking Read": [[11, "nonblocking-read"]], "Commit Read/Write Requests": [[11, "commit-read-write-requests"]], "Buffered Non-blocking Write": [[11, "buffered-non-blocking-write"]], "Parallel Read and Write": [[12, "parallel-read-and-write"]], "NumPy Slicing Syntax": [[12, "numpy-slicing-syntax"]], "Method Call of put/get_var()": [[12, "method-call-of-put-get-var"]]}, "indexentries": {"dimension (class in pncpy)": [[1, "pncpy.Dimension"]], "__init__() (pncpy.dimension method)": [[1, "pncpy.Dimension.__init__"]], "getfile() (pncpy.dimension method)": [[1, "pncpy.Dimension.getfile"]], "isunlimited() (pncpy.dimension method)": [[1, "pncpy.Dimension.isunlimited"]], "name": [[1, "name"], [4, "name"]], "size": [[1, "size"], [4, "size"]], "file (class in pncpy)": [[2, "pncpy.File"]], "__init__() (pncpy.file method)": [[2, "pncpy.File.__init__"]], "attach_buff() (pncpy.file method)": [[2, "pncpy.File.attach_buff"]], "begin_indep() (pncpy.file method)": [[2, "pncpy.File.begin_indep"]], "cancel() (pncpy.file method)": [[2, "pncpy.File.cancel"]], "close() (pncpy.file method)": [[2, "pncpy.File.close"]], "def_dim() (pncpy.file method)": [[2, "pncpy.File.def_dim"]], "def_var() (pncpy.file method)": [[2, "pncpy.File.def_var"]], "del_att() (pncpy.file method)": [[2, "pncpy.File.del_att"]], "detach_buff() (pncpy.file method)": [[2, "pncpy.File.detach_buff"]], "dimensions": [[2, "dimensions"], [4, "dimensions"]], "end_indep() (pncpy.file method)": [[2, "pncpy.File.end_indep"]], "enddef() (pncpy.file method)": [[2, "pncpy.File.enddef"]], "file_format": [[2, "file_format"]], "filepath() (pncpy.file method)": [[2, "pncpy.File.filepath"]], "flush() (pncpy.file method)": [[2, "pncpy.File.flush"]], "get_att() (pncpy.file method)": [[2, "pncpy.File.get_att"]], "inq_buff_size() (pncpy.file method)": [[2, "pncpy.File.inq_buff_size"]], "inq_buff_usage() (pncpy.file method)": [[2, "pncpy.File.inq_buff_usage"]], "inq_get_size() (pncpy.file method)": [[2, "pncpy.File.inq_get_size"]], "inq_header_extent() (pncpy.file method)": [[2, "pncpy.File.inq_header_extent"]], "inq_header_size() (pncpy.file method)": [[2, "pncpy.File.inq_header_size"]], "inq_info() (pncpy.file method)": [[2, "pncpy.File.inq_info"]], "inq_nreqs() (pncpy.file method)": [[2, "pncpy.File.inq_nreqs"]], "inq_num_fix_vars() (pncpy.file method)": [[2, "pncpy.File.inq_num_fix_vars"]], "inq_num_rec_vars() (pncpy.file method)": [[2, "pncpy.File.inq_num_rec_vars"]], "inq_put_size() (pncpy.file method)": [[2, "pncpy.File.inq_put_size"]], "inq_recsize() (pncpy.file method)": [[2, "pncpy.File.inq_recsize"]], "inq_striping() (pncpy.file method)": [[2, "pncpy.File.inq_striping"]], "inq_unlimdim() (pncpy.file method)": [[2, "pncpy.File.inq_unlimdim"]], "inq_version() (pncpy.file method)": [[2, "pncpy.File.inq_version"]], "ncattrs() (pncpy.file method)": [[2, "pncpy.File.ncattrs"]], "put_att() (pncpy.file method)": [[2, "pncpy.File.put_att"]], "redef() (pncpy.file method)": [[2, "pncpy.File.redef"]], "rename_att() (pncpy.file method)": [[2, "pncpy.File.rename_att"]], "rename_dim() (pncpy.file method)": [[2, "pncpy.File.rename_dim"]], "rename_var() (pncpy.file method)": [[2, "pncpy.File.rename_var"]], "set_auto_chartostring() (pncpy.file method)": [[2, "pncpy.File.set_auto_chartostring"]], "set_fill() (pncpy.file method)": [[2, "pncpy.File.set_fill"]], "sync() (pncpy.file method)": [[2, "pncpy.File.sync"]], "variables": [[2, "variables"]], "wait() (pncpy.file method)": [[2, "pncpy.File.wait"]], "wait_all() (pncpy.file method)": [[2, "pncpy.File.wait_all"]], "chartostring() (in module pncpy)": [[3, "pncpy.chartostring"]], "inq_default_format() (in module pncpy)": [[3, "pncpy.inq_default_format"]], "inq_file_format() (in module pncpy)": [[3, "pncpy.inq_file_format"]], "inq_malloc_max_size() (in module pncpy)": [[3, "pncpy.inq_malloc_max_size"]], "inq_malloc_size() (in module pncpy)": [[3, "pncpy.inq_malloc_size"]], "set_default_format() (in module pncpy)": [[3, "pncpy.set_default_format"]], "strerrno() (in module pncpy)": [[3, "pncpy.strerrno"]], "strerror() (in module pncpy)": [[3, "pncpy.strerror"]], "stringtochar() (in module pncpy)": [[3, "pncpy.stringtochar"]], "variable (class in pncpy)": [[4, "pncpy.Variable"]], "__init__() (pncpy.variable method)": [[4, "pncpy.Variable.__init__"]], "bput_var() (pncpy.variable method)": [[4, "pncpy.Variable.bput_var"]], "chartostring": [[4, "chartostring"]], "datatype": [[4, "datatype"]], "def_fill() (pncpy.variable method)": [[4, "pncpy.Variable.def_fill"]], "del_att() (pncpy.variable method)": [[4, "pncpy.Variable.del_att"]], "dtype": [[4, "dtype"]], "file() (pncpy.variable method)": [[4, "pncpy.Variable.file"]], "fill_rec() (pncpy.variable method)": [[4, "pncpy.Variable.fill_rec"]], "get_att() (pncpy.variable method)": [[4, "pncpy.Variable.get_att"]], "get_dims() (pncpy.variable method)": [[4, "pncpy.Variable.get_dims"]], "get_var() (pncpy.variable method)": [[4, "pncpy.Variable.get_var"]], "get_var_all() (pncpy.variable method)": [[4, "pncpy.Variable.get_var_all"]], "iget_var() (pncpy.variable method)": [[4, "pncpy.Variable.iget_var"]], "inq_fill() (pncpy.variable method)": [[4, "pncpy.Variable.inq_fill"]], "inq_offset() (pncpy.variable method)": [[4, "pncpy.Variable.inq_offset"]], "iput_var() (pncpy.variable method)": [[4, "pncpy.Variable.iput_var"]], "mask": [[4, "mask"]], "ncattrs() (pncpy.variable method)": [[4, "pncpy.Variable.ncattrs"]], "ndim": [[4, "ndim"]], "put_att() (pncpy.variable method)": [[4, "pncpy.Variable.put_att"]], "put_var() (pncpy.variable method)": [[4, "pncpy.Variable.put_var"]], "put_var_all() (pncpy.variable method)": [[4, "pncpy.Variable.put_var_all"]], "rename_att() (pncpy.variable method)": [[4, "pncpy.Variable.rename_att"]], "scale": [[4, "scale"]], "set_auto_chartostring() (pncpy.variable method)": [[4, "pncpy.Variable.set_auto_chartostring"]], "set_auto_mask() (pncpy.variable method)": [[4, "pncpy.Variable.set_auto_mask"]], "set_auto_scale() (pncpy.variable method)": [[4, "pncpy.Variable.set_auto_scale"]], "shape": [[4, "shape"]]}}) \ No newline at end of file diff --git a/docs/source/installation/install.rst b/docs/source/installation/install.rst index 169e261..37bb7d6 100644 --- a/docs/source/installation/install.rst +++ b/docs/source/installation/install.rst @@ -22,12 +22,22 @@ Building PnetCDF C library $ cd pnetcdf-1.12.3 # configure - $ ./configure --prefix=/path/to/install-dir --enable-shared CC=mpicc + $ ./configure --prefix=/path/to/install-dir --enable-shared --disable-fortran --disable-cxx CC=mpicc # build and install $ make $ make install +Installation +=================================== + +Currently our PyPI wheels don't cover all systems. If you already have a working MPI with the mpicc compiler wrapper is on your search path and pnetcdf-C installation, you can use pip: + +.. code-block:: bash + + $ CC=mpicc PNETCDF_DIR=/path/to/pnetcdf/dir/ pip install pncpy==0.0.3 + + Building PnetCDF-python from source =================================== @@ -35,7 +45,7 @@ Building PnetCDF-python from source # activate an virtual environment (optional) # use Python 3.9 or later - $ python3 -m venv env + $ python -m venv env $ source env/bin/activate $ pip install --upgrade pip @@ -48,7 +58,7 @@ Building PnetCDF-python from source $ cd pnetcdf-python # install PnetCDF-python - env CC=mpicc python3 setup.py build - env CC=mpicc python3 setup.py install + CC=mpicc python setup.py build + CC=mpicc python setup.py install