Coder Social home page Coder Social logo

pjflan / nplab Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nanophotonics/nplab

0.0 0.0 0.0 21.86 MB

Core functions and instrument scripts for the Nanophotonics lab experimental scripts

License: GNU General Public License v3.0

Python 88.88% Shell 0.01% C 10.66% Batchfile 0.01% C++ 0.45%

nplab's Introduction

nplab

Core functions and instrument scripts for the Nanophotonics lab experimental scripts. This is designed to be one Python module, which provides both the various support functions (saving to file, running experiments in a thread, etc.) and the core instrument scripts in nplab.instruments.*.

Experimental data is managed by the class DataFile, a wrapper for h5py that manages HDF5 files with auto-incrementing names and a graphical browser, which also maintains a "current" data file to which data should be saved, accessible as nplab.datafile.current(). For convenience, there is a function nplab.current_datafile() that returns the same object.

Instrument scripts should be subclasses of nplab.instrument.Instrument, though usually this is done indirectly. Most instruments will be subclasses of either or both of a generic instrument class (defining an instrument for standard instrument types such as stages, spectrometers, etc.) and also a bus-specific class (e.g. SerialInstrument). The Instrument base class takes care of a number of generic boilerplate things, such as keeping track of instances of a given class, and being able to retrieve active instances with the instance() and instances() methods. The nplab module also defines some decorators to make threading tasks easier, commonly used by instrument classes.

When installing:

install pyqtgraph before trying to open_browser_cmd.bat or open_browser_cmd.py

nplab's People

Contributors

wdeacon avatar rwb27 avatar yagodel avatar eoinell avatar j-griffo avatar mjh250 avatar imanyakin avatar chrisgrosse avatar gd392 avatar ermannomiele avatar felixbenz avatar anaandresarroyo avatar bd355 avatar np-hera avatar kh-w27 avatar demelzaw avatar ab701 avatar alexcdep avatar femioja avatar bm412 avatar marie-elena avatar omid37 avatar cloudycarnegie avatar gorlando1234567890 avatar pizzacutter10 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.