Class Voro.voronoicell

  • Enclosing class:
    Voro

    class Voro.voronoicell
    extends Voro.voronoicell_base
    \brief Extension of the voronoicell_base class to represent a Voronoi cell without neighbor information. This class is an extension of the voronoicell_base class, in cases when is not necessary to track the IDs of neighboring particles associated with each face of the Voronoi cell.
    • Method Detail

      • operatorEquals

        public void operatorEquals​(Voro.voronoicell c)
        Copies the information from another voronoicell class into this class, extending memory allocation if necessary. \param[in] c the class to copy.
      • nplane

        public boolean nplane​(double x,
                              double y,
                              double z,
                              double rsq,
                              int p_id)
        Cuts a Voronoi cell using by the plane corresponding to the perpendicular bisector of a particle. \param[in] (x,y,z) the position of the particle. \param[in] rsq the modulus squared of the vector. \param[in] p_id the plane ID, ignored for this case where no neighbor tracking is enabled. \return False if the plane cut deleted the cell entirely, true otherwise.
      • nplane

        public boolean nplane​(double x,
                              double y,
                              double z,
                              int p_id)
        Cuts a Voronoi cell using by the plane corresponding to the perpendicular bisector of a particle. \param[in] (x,y,z) the position of the particle. \param[in] p_id the plane ID, ignored for this case where no neighbor tracking is enabled. \return False if the plane cut deleted the cell entirely, true otherwise.
      • plane

        public boolean plane​(double x,
                             double y,
                             double z,
                             double rsq)
        Cuts a Voronoi cell using by the plane corresponding to the perpendicular bisector of a particle. \param[in] (x,y,z) the position of the particle. \param[in] rsq the modulus squared of the vector. \return False if the plane cut deleted the cell entirely, true otherwise.
      • plane

        public boolean plane​(double x,
                             double y,
                             double z)
        Cuts a Voronoi cell using by the plane corresponding to the perpendicular bisector of a particle. \param[in] (x,y,z) the position of the particle. \return False if the plane cut deleted the cell entirely, true otherwise.
      • init

        public void init​(double xmin,
                         double xmax,
                         double ymin,
                         double ymax,
                         double zmin,
                         double zmax)
        Initializes the Voronoi cell to be rectangular box with the given dimensions. \param[in] (xmin,xmax) the minimum and maximum x coordinates. \param[in] (ymin,ymax) the minimum and maximum y coordinates. \param[in] (zmin,zmax) the minimum and maximum z coordinates.
      • init_octahedron

        public void init_octahedron​(double l)
        Initializes the cell to be an octahedron with vertices at (l,0,0), (-l,0,0), (0,l,0), (0,-l,0), (0,0,l), and (0,0,-l). \param[in] l a parameter setting the size of the octahedron.
      • init_tetrahedron

        public void init_tetrahedron​(double x0,
                                     double y0,
                                     double z0,
                                     double x1,
                                     double y1,
                                     double z1,
                                     double x2,
                                     double y2,
                                     double z2,
                                     double x3,
                                     double y3,
                                     double z3)
        Initializes the cell to be a tetrahedron. \param[in] (x0,y0,z0) the coordinates of the first vertex. \param[in] (x1,y1,z1) the coordinates of the second vertex. \param[in] (x2,y2,z2) the coordinates of the third vertex. \param[in] (x3,y3,z3) the coordinates of the fourth vertex.
      • init_l_shape

        public void init_l_shape()
        Initializes an L-shaped Voronoi cell of a fixed size for testing the convexity robustness.
      • n_allocate

        private void n_allocate​(int i,
                                int m)
      • n_add_memory_vertices

        private void n_add_memory_vertices​(int i)
      • n_add_memory_vorder

        private void n_add_memory_vorder​(int i)
      • n_set_pointer

        private void n_set_pointer​(int p,
                                   int n)
      • n_copy

        private void n_copy​(int a,
                            int b,
                            int c,
                            int d)
      • n_set

        private void n_set​(int a,
                           int b,
                           int c)
      • n_set_aux1

        private void n_set_aux1​(int k)
      • n_copy_aux1

        private void n_copy_aux1​(int a,
                                 int b)
      • n_copy_aux1_shift

        private void n_copy_aux1_shift​(int a,
                                       int b)
      • n_set_aux2_copy

        private void n_set_aux2_copy​(int a,
                                     int b)
      • n_copy_pointer

        private void n_copy_pointer​(int a,
                                    int b)
      • n_set_to_aux1

        private void n_set_to_aux1​(int j)
      • n_set_to_aux2

        private void n_set_to_aux2​(int j)
      • n_allocate_aux1

        private void n_allocate_aux1​(int i)
      • n_switch_to_aux1

        private void n_switch_to_aux1​(int i)
      • n_copy_to_aux1

        private void n_copy_to_aux1​(int i,
                                    int m)
      • n_set_to_aux1_offset

        private void n_set_to_aux1_offset​(int k,
                                          int m)
      • n_neighbors

        private void n_neighbors​(java.util.Vector<java.lang.Integer> v)