Skip to main content

No project description provided

Project description

# pydvma

A Python package for dynamics and vibration measurements and analysis.

## About pydvma

This is a modular library for data-measurement and analysis in the context of dynamics and vibration, for use in student laboratory experiments as well as for research projects, developed at Cambridge University Engineering Department.

A high-level interface allows straightforward application for common use-cases and a low-level interface provides more control when needed.

The aim is for a library that is simple to use and simple to maintain. It is not a full-featured GUI, but when used in conjunction with Jupyter Notebooks it is intended to provide the best of both worlds: interactive tools for common tasks and command line interface for customisation.

## Getting started

### Installation

The logger requires Python 3.7 or above to work with soundcard acquisition.

On Windows:

` conda install pyaudio pip install pydvma `

Or clone this repository and install using: ` python setup.py install `

On Mac OS X: install PortAudio. If you use Homebrew, just run this: `shell $ brew install portaudio ` On Linux: TBC

Alternatively you can use the environment yml file provided: ` conda env create -f logger_env.yml activate logger `

### Running the logger

To get started, open the file: ` pydvma_template.ipynb `

or within a Jupyter Notebook or Python console: `python %gui qt import pydvma as dvma settings = dvma.MySettings() osc = dvma.Oscilloscope(settings) logger = dvma.Logger(settings) `

## Roadmap

At present the library has basic functionality for:

  • logging data using soundcards or National Instrument DAQs (requires NiDAQmx to be installed from NI, windows only)

  • logging with pre-trigger for impulse response measurements

  • logging with pc generated output (soundcard and NIDAQ)

  • computing frequency domain data

  • computing transfer function data

  • computing sonograms/spectrograms

  • basic modal analysis tools (mode-fitting)

  • saving and plotting data

  • export to Matlab

  • interactive tools for standard acquisition and analysis

  • oscilloscope view of input signals

The plan is to include the following functionality:

  • wider support for import/export

  • more advanced modal analysis tools (e.g. global fitting)

  • extend the range of hardware that can be accessed from this library

## Contributer guidelines

Contributions to this project are welcomed, keeping in mind the project aims above:

  • If you find a bug, please report using GitHub’s issue tracker

  • For bug-fixes and refinements: please feel free to clone the repository, make edits and create a pull request with a clear description of changes made.

  • If you would like to make a more significant contribution or change, then please be in contact to outline your suggestion.

Please see the documentation for details of the code structure and templates for anticipated applications.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydvma-0.8.4.tar.gz (64.4 kB view details)

Uploaded Source

File details

Details for the file pydvma-0.8.4.tar.gz.

File metadata

  • Download URL: pydvma-0.8.4.tar.gz
  • Upload date:
  • Size: 64.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for pydvma-0.8.4.tar.gz
Algorithm Hash digest
SHA256 03e7979f81d2d22506161b1845f95dfc8c304641d96d700d0576955e550528b2
MD5 05419a494ca1ffa3f9b6901bc4eee449
BLAKE2b-256 48498d2d98931ed002818a6b8f43f483aecc61532bc29d8b86012a2ecee338aa

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page