genesis: Particle initialisation

genesisR Documentation

Particle initialisation

Description

These functions are passed to the simulation and defines how the position and velocity of the particles are initiated. The default is to lay out the nodes in a phyllotactic arrangement (think sunflower seeds) and with no velocity, which is also the default in d3-force.

Usage

phyllotactic_genesis(radius = 10, angle = pi * (3 - sqrt(5)))

predefined_genesis(x, y, x_vel = 0, y_vel = 0)

bigbang_genesis(vel_min = 0, vel_max = 1)

aquarium_genesis(width = 10, height = 10, vel_min = 0, vel_max = 1)

petridish_genesis(max_radius = 10, vel_min = 0, vel_max = 1)

Arguments

radius

The radius modifier (will be multiplied by the square root of the index of the particle)

angle

The angular difference between two adjacent particles

x, y

The columns holding (or value of) the position coordinates

x_vel, y_vel

The columns holding (or value of) the velocity verlets

vel_min, vel_max

The bounds of the uniformly distributed velocities

width, height

The size of the rectangle holding the particles

max_radius

The size of the disc.

Value

A function that takes the particle graph and returns a list with a position and velocity element, each holding a matrix with two columns and a row for each particle giving the x and y position and velocity respectively.

Functions

  • phyllotactic_genesis(): Initiates particles in a phyllotactic arrangement with zero velocity

  • predefined_genesis(): Uses information from the node data to set position and velocity.

  • bigbang_genesis(): Initiates particles at center position and a random velocity

  • aquarium_genesis(): Places particles randomly in a rectangle and gives them a random velocity

  • petridish_genesis(): Places particles randomly on a disc and gives them a random velocity

Examples

# A contrieved example
graph <- tidygraph::create_notable('bull')
genesis <- phyllotactic_genesis()
genesis(graph)

# Usually used as an argument to simulate
graph |>
  simulate(setup = phyllotactic_genesis())


particles documentation built on Aug. 19, 2022, 5:06 p.m.