Examples¶
Examples are provided as Jupyter notebooks in a separate freud-examples repository. These notebooks may be launched interactively on Binder or downloaded and run on your own system. Visualization of data is done via Matplotlib and Bokeh, unless otherwise noted.
Key concepts¶
There are a few critical concepts, algorithms, and data structures that are central to all of freud.
The freud.box.Box
class defines the concept of a periodic simulation box, and the freud.locality
module defines methods for finding nearest neighbors of particles.
Since both of these are used throughout freud, we recommend reading the Tutorial first, before delving into the workings of specific freud analysis modules.
Analysis Modules¶
These introductory examples showcase the functionality of specific modules in freud, showing how they can be used to perform specific types of analyses of simulations.
- freud.cluster.Cluster and freud.cluster.ClusterProperties
- freud.density.CorrelationFunction
- freud.density.GaussianDensity
- freud.density.LocalDensity
- freud.density.RDF: Accumulating g(r) for a Fluid
- freud.density.RDF: Choosing Bin Widths
- freud.diffraction.DiffractionPattern
- freud.diffraction.StaticStructureFactorDirect and freud.diffraction.StaticStructureFactorDebye
- freud.environment.AngularSeparation
- freud.environment.BondOrder
- freud.environment.EnvironmentCluster
- freud.environment.LocalDescriptors: Steinhardt Order Parameters from Scratch
- freud.interface.Interface
- freud.order.Hexatic: Hard Hexagons
- freud.order.Hexatic: 2D Minkowski Structure Metrics
- freud.order.Nematic: Nematic Order Parameter and the Nematic Tensor
- The Nematic Order Parameter
- Calculating the Nematic Order Parameter
- Example 1: A Disordered System
- Example 3: Different Degrees of Orientational Order
- freud.order.Steinhardt
- freud.pmft.PMFTXY
- freud.pmft.PMFTXYZ: Shifting Example
Example Analyses¶
The examples below go into greater detail about specific applications of freud and use cases that its analysis methods enable, such as user-defined analyses, machine learning, and data visualization.
- Implementing Common Neighbor Analysis as a custom method
- Analyzing simulation data from HOOMD-blue at runtime
- Analyzing GROMACS data with freud and MDTraj: Computing an RDF for Water
- Analyzing data from LAMMPS
- Using Machine Learning for Structural Identification
- Handling Multiple Particle Types (A-B Bonds)
- Calculating the Radial Distribution Function (RDF) from Simulation Data
- Calculating Strain via Voxelization
- Visualizing analyses with fresnel
- Visualization with plato
- Visualizing 3D Voronoi and Voxelization
Benchmarks¶
Performance is a central consideration for freud. Below are some benchmarks comparing freud to other tools offering similar analysis methods.