Code Monkey home page Code Monkey logo

pyvisos's Introduction

pyVisOS is a collection of lightweight utilities for manipulating HDF5 files

pyVisOS is designed to be simple to use and easy to understand. The primary goal is to provide an in-memory representation of the HDF5 output generated by PIC code OSIRIS. It also provides some functions to automate MPI parallelism.

The H5Data class for mesh grid quantities

H5Data is a subclass of numpy ndarray with following additional attributes:

  • name and timestamp: inferred from the filename. These two also serve as default output filename.
  • run_attrs: a dictionary inferred from the root directory of the HDF5 output. It provides information about the simulation.
  • data_attrs: a dictionary inferred from the dataset directory. It provides information about the quantity. One quantity for each dataset for the grid type output.
  • axes: a list inferred from the /AXIS directory. It provides information about the axes. It is always consistent with the data array.

Function wrappers

A common workflow for data analysis would look like this:

  1. load a few quantities into memory
  2. distribute the workload across MPI processes
  3. data analysis
  4. (optionally) gather results from each MPI process and some more analysis (but without redistributing the workload)

Step 3 and 4 are the actual work we should be focusing on and pyVisOS provides a wrapper to automate step 1 and 2 (and partially, step 4).

independent_timeframe_pptm: can be used if the analysis can be done in a way that data at different timestamps are independent. see pynting_flux_example.py for details.

The codes are tested under python 3.5

pyvisos's People

Contributors

wen-han avatar benjum avatar tsung1029 avatar romanlee avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.