Cell ======= The cell convention used in OpenFTS is the same as LAMMPS `https://lammps.sandia.gov/doc/Howto_triclinic.html`. Where the cell shape tensor is given by .. math:: \pmb{h} = \begin{pmatrix} L_x & xy & xz \\ 0 & L_y & yz \\ 0 & 0 & L_z \\ \end{pmatrix} Arguments: * `dimension` (int) - Dimension of cell. Options:`1`, `2`, `3` * `cell_lengths` (float array) - Diagonals of cell tensor: :math:`L_x`, :math:`L_y`, :math:`L_z`. Length is equal to number of dimensions. * `tilt_factors` (float array) - Tilt factors: `xy`, `xz`, `yz`. Length depends on dimsnsion (1d = 0, 2d = 1, 3d = 3). * `cell_scale` (float) - Factor to uniformly scale the cell * `length_unit` (string) - Length units to perform the simulation in. Options: * `Rg` - in units of reference polymer radius of gyration :math:`\sqrt{b_{ref}^2 N_{ref} / 6}` (continuous chains) or :math:`\sqrt{b_{ref}^2 (N_{ref} - 1) / 6}` (discrete chains) * `b` - in units of :math:`b_{ref}` .. note:: Internally, OpenFTS always stores cell dimensions in units of `Rg`. Unit conversion are performed upon input/output. Example (python) :: import openfts fts = openfts.OpenFTS() ... fts.cell(cell_scale=1.0,cell_lengths=[4.3],dimension=1,length_unit='Rg') ... Example (json) :: "cell": { "cell_scale": 3.8, "cell_lengths": [1.0, 0.866], "tilt_factors": [0.57735], "dimension": 2, "length_unit": "Rg" },