# {py:mod}`simvx.core.particle_trail` ```{py:module} simvx.core.particle_trail ``` ```{autodoc2-docstring} simvx.core.particle_trail :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ParticleTrailData ` - ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.core.particle_trail.__all__ :summary: ``` * - {py:obj}`TRAIL_VERTEX_FLOATS ` - ```{autodoc2-docstring} simvx.core.particle_trail.TRAIL_VERTEX_FLOATS :summary: ``` ```` ### API ````{py:data} __all__ :canonical: simvx.core.particle_trail.__all__ :value: > ['ParticleTrailData'] ```{autodoc2-docstring} simvx.core.particle_trail.__all__ ``` ```` ````{py:data} TRAIL_VERTEX_FLOATS :canonical: simvx.core.particle_trail.TRAIL_VERTEX_FLOATS :value: > 9 ```{autodoc2-docstring} simvx.core.particle_trail.TRAIL_VERTEX_FLOATS ``` ```` `````{py:class} ParticleTrailData(max_particles: int, trail_length: int = 5, trail_width: float = 0.1) :canonical: simvx.core.particle_trail.ParticleTrailData ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.__init__ ``` ````{py:attribute} __slots__ :canonical: simvx.core.particle_trail.ParticleTrailData.__slots__ :value: > ('_max_particles', '_trail_length', '_trail_width', '_history', '_head', '_counts') ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.__slots__ ``` ```` ````{py:property} trail_length :canonical: simvx.core.particle_trail.ParticleTrailData.trail_length :type: int ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.trail_length ``` ```` ````{py:property} trail_width :canonical: simvx.core.particle_trail.ParticleTrailData.trail_width :type: float ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.trail_width ``` ```` ````{py:property} history :canonical: simvx.core.particle_trail.ParticleTrailData.history :type: numpy.ndarray ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.history ``` ```` ````{py:property} counts :canonical: simvx.core.particle_trail.ParticleTrailData.counts :type: numpy.ndarray ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.counts ``` ```` ````{py:method} clear() :canonical: simvx.core.particle_trail.ParticleTrailData.clear ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.clear ``` ```` ````{py:method} update(alive_particles: numpy.ndarray) :canonical: simvx.core.particle_trail.ParticleTrailData.update ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.update ``` ```` ````{py:method} get_ordered_positions(particle_idx: int) -> numpy.ndarray :canonical: simvx.core.particle_trail.ParticleTrailData.get_ordered_positions ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.get_ordered_positions ``` ```` ````{py:method} get_trail_vertices(alive_particles: numpy.ndarray | None = None) -> numpy.ndarray | None :canonical: simvx.core.particle_trail.ParticleTrailData.get_trail_vertices ```{autodoc2-docstring} simvx.core.particle_trail.ParticleTrailData.get_trail_vertices ``` ```` `````