cyoda
Documentation#
This section of the documentation describes the bindings made with Pybind11
.
The internal module is called cyoda
.
PydSEAMSlib bindings#
|
A function to populate a PointCloudDouble with data from a file |
|
A Function that reads in only atoms of the desired type and ignores all atoms which are not in the slice as well. |
|
A Function for reading oxygen atom in a specified frame |
|
A Function for reading in a specified frame |
|
Reads bonds into a vector of vectors from a file with a specific format |
|
If this is 3 then the particle is inside the volume slice |
|
Erases memory for a vector of vectors for the neighbour list, Call this before creating the neighbour list for a new frame |
|
Gets a neighbour list by index, according to a pointCloud given as the input |
|
Inefficient O(n^2) implementation of neighbour lists |
|
Converts the neighbour list build with atom IDs into a neighbour list of atom indices, according to the pointCloud |
|
All these functions use atom IDs and not indices |
|
Inefficient O(n^2) implementation of neighbour lists |
|
Creates a vector of vectors containing bond connectivity information from the rings vector of vectors and cage information |
|
Calculates the distance of the hydrogen bond between O and H (of different atoms) |
|
Create a vector of vectors containing the hydrogen bond connectivity information. |
|
Create a vector of vectors (similar to the neighbour list conventions) containing the hydrogen bond connectivity information. |
|
Remove duplicate bonds |
|
Function for clearing vectors in Graph after multiple usage |
|
Creates a vector of vectors of all possible rings |
|
Main function that searches for all rings |
|
Creates a graph object and fills it with the information from a neighbour list of INDICES NOT ATOM IDs created before |
|
Creates a graph object and fills it with the information from a neighbour list and pointCloud created before |
|
Removes the non-SP rings, using the Franzblau shortest path criterion |
|
Re-fills the neighbour lists of a graph object from a neighbour list of INDICES NOT ATOM IDs created before |
|
Returns a vector of vectors containing the rings |
|
Calculates the shortest path |
|
Assign an atomType (equal to the number of nodes in the ring) given n-membered rings |
|
Assign an atomType (equal to the number of nodes in the ring) given a vector with a list of indices of rings comprising the prisms |
|
Gets the atoms in the cages of a given cluster |
|
Given a pointCloud set the inSlice bool for every atom, if the atoms are inside the specified (single) region |
|
Average the RMSD per atom |
|
Tests whether two rings are basal rings (true) or not (false) for a prism (strict criterion) |
|
Build a reference Double-Diamond cage, reading in from a template XYZ file |
|
Build a reference Hexagonal cage, reading in from a template XYZ file |
|
Erases memory for a vector of vectors for a list of rings |
|
Clustering Clusters cages using the Stillinger algorithm and prints out individual XYZ files of clusters. |
|
Common elements in 3 rings |
|
Compares two disordered vectors and checks to see if they contain the same elements |
|
Get the atom type values for deformed prisms |
|
Checks whether two 4-membered rings are parallel in one dimension or not to prevent overcounting |
|
Find out which rings are prisms. |
|
Returns the common elements of two rings |
|
Searches a particular ring for a triplet |
|
Function that loops through the PointCloud used to construct the neighbour list (used to generate primitive rings) and sets the inSlice bool values of edge atoms which belong to rings that are formed by atoms in the slice. |
|
Given a pointCloud containing certain atom types, this returns a pointCloud containing atoms of only the desired type |
|
Returns a vector of vectors of rings of a single size. |
|
Returns a vector of vectors of rings of a single size. |
|
Returns a vector of vectors of rings of a single size. |
|
Given a pointCloud set the inSlice bool for every atom, if the atoms are inside the specified (single) region |
|
Find out which rings are prisms, looping through all ring sizes upto the maxDepth The input ringsAllSizes array has rings of every size |
|
Function that loops through the PointCloud used to construct the neighbour list (used to generate primitive rings) and sets the inSlice bool values of edge atoms which belong to rings that are formed by atoms in the slice. |
|
Find out which rings are prisms, looping through all ring sizes upto the maxDepth The input ringsAllSizes array has rings of every size |
|
Two candidate basal rings of a prism block should have at least one bond between them |
|
Shift the entire ice nanotube and remove axial translations |
|
Function that loops through a given input PointCloud and sets the inSlice bool for every Point according to whether the molecule is in the specified (single) slice or not. |
|
Shape-matching for a target DDC |
|
Shape-matching for a target HC |
|
Topological network methods Finds the HCs and DDCs for the system |
|
Topological unit matching for bulk water. |
|
Calulate the RMSD for each ring, using RMSD values (rmsd) obtained from the shape-matching of each cage |
|
Calculates the in-plane RDF for quasi-two-dimensional water, when both the atoms are of the same type |
|
Find out rings in the bulk, looping through all ring sizes upto the maxDepth |
|
Does the cluster analysis of ice particles in the system. |
|
Gets c_ij and then classifies bond types according to the CHILL+ algorithm. |
|
Classifies each atom according to the CHILL+ algorithm |
|
Generic function for writing out to a dump file. |
|
q6 can distinguish between water and ice. |
|
Reclassifies atoms which may have been mis-classified as water using the averaged q6 and q3 parameters. |
|
Prints out the iceType for a particular frame onto the terminal. |
|
Recenters the largest ice cluster, by applying a transformation on the largest ice cluster coordinates. |