Skip to content

Latest commit

 

History

History
49 lines (35 loc) · 1.23 KB

center_of_mass_plugin.rst

File metadata and controls

49 lines (35 loc) · 1.23 KB

CenterOfMass Plugin

CenterOfMass plugin monitors changes n the lattice and updates centroids of the cell:

\begin{align*}
   x_{CM}^{centroid} &= \sum_{i}x_{i} \\
   y_{CM}^{centroid} &= \sum_{i}y_{i} \\
   z_{CM}^{centroid} &= \sum_{i}z_{i}
\end{align*}

where i denotes pixels belonging to a given cell. To obtain coordinates of a center of mass of a given cell we divide centroids by cell volume:

\begin{align*}
   x_{CM} &= \frac{x_{CM}^{centroid}}{V}  \\
   y_{CM} &= \frac{y_{CM}^{centroid}}{V}  \\
   z_{CM} &= \frac{z_{CM}^{centroid}}{V}
\end{align*}

This plugin is aware of boundary conditions and centroids are calculated properly regardless which boundary conditions are used. The CC3DML syntax is very simple:

<Plugin Name="CenterOfMass"/>

To access center of mass coordinates from Python we use the following syntax:

print('x-component of COM is:', cell.xCOM)
print ('y-component of COM is:', cell.yCOM)
print ('z-component of COM is:', cell.zCOM)

Warning

Center of mass parameters in Python are read only. Any attempt to modify them will likely mess up the simulation.