Skip to main content

Powerful, efficient trajectory analysis in scientific Python.

Project description

freud

DOI PyPI Anaconda-Server Badge ReadTheDocs Binder Codecov GitHub Stars

The freud Python library provides a simple, flexible, powerful set of tools for analyzing trajectories obtained from molecular dynamics or Monte Carlo simulations. High performance, parallelized C++ is used to compute standard tools such as radial distribution functions, correlation functions, and clusters, as well as original analysis methods including potentials of mean force and torque (PMFTs) and local environment matching. The freud library uses NumPy arrays for input and output, enabling integration with the scientific Python ecosystem for many typical materials science workflows.

When using freud to process data for publication, please use this citation.

freud Community

If you have a question, please post to the freud-users mailing list. Please report issues and suggest feature enhancements via the issue tracker.

Documentation

The documentation is available online at https://freud.readthedocs.io. These pages include an installation guide, examples demonstrating many of freud's modules, an API reference, and development guides for adding new features.

Examples

Many core features are demonstrated in the freud documentation. Additional example Jupyter notebooks can be found in the freud-examples repository. These notebooks may be launched interactively on Binder or downloaded and run on your own system.

Installing freud

Install via conda

conda install -c conda-forge freud

Install via pip

pip install freud-analysis

Compiling freud

Please refer to the installation documentation for help compiling freud from source.

Simple example script

The freud library is called using Python scripts.

Here is a simple example.

import freud

# create a freud compute object (rdf is the canonical example)
rdf = freud.density.rdf(rmax=5, dr=0.1)
# load in your data (freud does not provide a data reader)
box_data = np.load("path/to/box_data.npy")
pos_data = np.load("path/to/pos_data.npy")

# create freud box
box = freud.box.Box(Lx=box_data[0]["Lx"], Ly=box_data[0]["Ly"], is2D=True)
# compute RDF
rdf.compute(box, pos_data[0], pos_data[0])
# get bin centers, rdf data
r = rdf.R
y = rdf.RDF

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

freud-analysis-1.0.0.tar.gz (4.3 MB view hashes)

Uploaded Source

Built Distributions

freud_analysis-1.0.0-cp37-cp37m-manylinux1_x86_64.whl (21.9 MB view hashes)

Uploaded CPython 3.7m

freud_analysis-1.0.0-cp37-cp37m-macosx_10_12_x86_64.whl (2.5 MB view hashes)

Uploaded CPython 3.7m macOS 10.12+ x86-64

freud_analysis-1.0.0-cp36-cp36m-manylinux1_x86_64.whl (21.9 MB view hashes)

Uploaded CPython 3.6m

freud_analysis-1.0.0-cp36-cp36m-macosx_10_12_x86_64.whl (2.5 MB view hashes)

Uploaded CPython 3.6m macOS 10.12+ x86-64

freud_analysis-1.0.0-cp35-cp35m-manylinux1_x86_64.whl (21.7 MB view hashes)

Uploaded CPython 3.5m

freud_analysis-1.0.0-cp35-cp35m-macosx_10_12_x86_64.whl (2.4 MB view hashes)

Uploaded CPython 3.5m macOS 10.12+ x86-64

freud_analysis-1.0.0-cp34-cp34m-manylinux1_x86_64.whl (21.8 MB view hashes)

Uploaded CPython 3.4m

freud_analysis-1.0.0-cp27-cp27mu-manylinux1_x86_64.whl (21.3 MB view hashes)

Uploaded CPython 2.7mu

freud_analysis-1.0.0-cp27-cp27m-manylinux1_x86_64.whl (21.3 MB view hashes)

Uploaded CPython 2.7m

freud_analysis-1.0.0-cp27-cp27m-macosx_10_12_x86_64.whl (2.5 MB view hashes)

Uploaded CPython 2.7m macOS 10.12+ x86-64

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