Particles is a web-based simulation platform designed to explore and visualize the dynamics of graphs and particles. The project consists of two main sub-projects: Graph Playground and Particle Life. Both sub-projects share the same base simulation code and are built using JavaScript, HTML, Bootstrap, and CSS.
Graph Playground is an educational tool for learning about graph theory and graphing algorithms. It allows users to:
- Create Graphs: Generate graphs from premade templates or define your own custom graph.
- Simulate Interactions: Play around with various simulation parameters like forces between nodes, friction, gravity, and more.
- Force-Directed Layout: Visualize graphs using a force-directed approach.
- Pause and Analyze: Pause the simulation to run and visualize k-means clustering and Dijkstra’s algorithm on the graph.
Particle Life is a simulation that explores the emergent behavior of particles under simple interaction rules. The key features include:
- Diverse Particle Types: Particles are categorized by different types (colors), each with specified forces of attraction or repulsion to other particles.
- Non-Newtonian Dynamics: The simulation does not adhere to Newton’s 3rd law; for example, Particle A can attract Particle B, while Particle B repels Particle A, leading to unique and interesting behaviors.
- Emergent Phenomena: These rules create dynamic interactions where “life-like” behavior seems to emerge from the particles.
Particle life is not an original idea. More can be found on particle life here