This is the Elixir code that defines the actor simulation model:
simulation =
ActorSimulation.new(trace: true)
|> ActorSimulation.add_actor(:sender,
send_pattern: {:periodic, 100, :tick},
targets: [:receiver]
)
|> ActorSimulation.add_actor(:receiver)
|> ActorSimulation.run(duration: 300)
# Generate with timestamps enabled
mermaid = ActorSimulation.trace_to_mermaid(simulation, timestamps: true)