Skip to content

llandsmeer/simulations

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Charge

Simple simulation of charged or neutral particles. When specifying integer square as particle count a grid layout is used, otherwise particles are distributed randomly. Depending on input particles and densities different crystal lattices or even coexistance regions are generated.

Entrypoints:

  • c [particles=70] [size=5]
  • c-large [particles=100] [size=10]
  • c-neutral [particles] [size]
  • c-non [particles=99]
  • c-profile: run callgrind and produce graph

Depends on python3-matplotlib, working C compiler.

Ising

Pure OpenGL ising model. Contains small error. The shader updates the spin field in place, which under 0 field is not noticable, but creates artifacts under high fields.

Control

Up/Down / K/J Control temperature
Left/Right / H/L Control external field
q Quit
0 Reset external field and beta to 0

Change temperature with up/down

Run

Depends on libglfw3-dev, libgl1-mesa-dev, libglu1-mesa-dev.

sh c

Mandel

GPU Mandelbrot renderer, based on code from the Ising model.

Run

Depends on libglfw3-dev, libgl1-mesa-dev, libglu1-mesa-dev.

sh c

Control

H/J/K/L Move
+/- Zoom
Q Quit
[/] Warp
; Increase max iteration count

ExMedia

Really simple excitable media simulations.

Run

python3 ./simple.py
python3 ./noisy.py

Quit using Esc. Reset using Q. Click to excite cells.

Dependencies

  • PySDL2 (pip3 install pysdl2)
  • Numba (optional with a one line code change)
  • Numpy

CO

Originally a coupled oscilator simulation, now coupled models of neurons on a grid with diffusion term for interactions. Model parameterization from EM Izhikevich. Should be easily configurable to solve other PDEs.

Run

sh c

About

Simple simulation of physics and math

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published