Skip to main content

A package to visualize elementary 2D cellular automata with multiple starting indicies

Project description

2D Cellular Automaton

This project was inspired by discussions in MATH 340 Mathematical Excursions. While we visualized multiple starting indicies for 2D cellular automata in Excel, I knew a Python script would allow greater functioniality and easier usage.

I came across a respository on GitHub by Zhiming Wang titled rule30. Nearly all the code is borrowed from there and made it unnecessary for me to start from scratch. All the functionalities from Wang's solution exist in this project, with the only additions being supporting multiple starting indicies.

Table of Contents

  1. Installation
  2. Usage
  3. Credit
  4. License

Installation

pip install 2DCellularAutomaton

Usage

from CellularAutomaton import Automaton

rows = 100 #Any positive number
rule = 30 #From 1-256. More can be seen here https://mathworld.wolfram.com/ElementaryCellularAutomaton.html
starting_indicies = [20, 60] #Note this refers to the columns and columns = 2 * rows - 1, which is why rows - 1 yields center.
block_size = 1

automata = Automaton(rows=rows, rule=rule, starting_indicies=starting_indicies)
image = automata.image(block_size=block_size)
image.save('Rule 30 | Column 20 and 60.jpeg')

Output

drawing

Credit

  1. Zhiming Wang's rule30

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

2D-cellular-automaton-0.0.1.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

2D_cellular_automaton-0.0.1-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file 2D-cellular-automaton-0.0.1.tar.gz.

File metadata

  • Download URL: 2D-cellular-automaton-0.0.1.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.9

File hashes

Hashes for 2D-cellular-automaton-0.0.1.tar.gz
Algorithm Hash digest
SHA256 5c3e908402bc0eb7964838fb8a113dae08220410d6853850978a4aa33c0be4fa
MD5 0300a286f3d015392dbe742f7e777dd9
BLAKE2b-256 2fcf3652fe194d35c95b06b81b579c2a8055c2fc414bb02cb188dd55bf3fc381

See more details on using hashes here.

File details

Details for the file 2D_cellular_automaton-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for 2D_cellular_automaton-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1809a8680ae70346c600c533ebe10788d5bbd984199e7ba005d5336dc0fd4fd0
MD5 96021b7fb5160fcc9be374bac7b9b789
BLAKE2b-256 dfe4af998a0d18fdb137158ddf8bf9595b6e11092db319756cab519563833a19

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page