Skip to main content

A package for complexity science research

Project description

Complexity Science Package

This package is created mainly for convenience in doing complex systems research.

The design implementation and structure of the package is motivated for scalability and ease of use. Optimization maybe limited by the design, or the language itself.

Download

pip install complexity-science


Cellular Automata

Basic usage:

import complexity_science.ca as cs

1-D CA

ca = cs.wolfram(N, 20) #creates a 1-Dimensional CA of N cells with wolfram rule number 20

ca.initialize([50]) #initializes the 50th cell of the CA

ca.run(100) #returns the resulting state of the CA for 100 iterations following the rule and plots the result with a default colormap

2-D CA

model = cs.brians_brain([128,128], toroidal=False)

Initializes a CA based on brians brain with toroidal boundary conditions

Available models

cs.game([dim], toroidal=True)

cs.applause([dim], alpha=1)

cs.mpa([dim], percent_mpa=0)

The dim parameter is the only required parameter for all models, others are optional. Parameters are set to default value if not specified.

alpha and percent_mpa are examples of model specific parameters.

See model documentation for more information.

Modifying Parameters

Models can be initialized randomly, binary, by index, using different functions e.g.

model.initialize_random()

model.initialize_random_bin(0.5)

model.initialize_random_int(0,2)

Models with specific parameters can be modified by this function.

model.modify_rule(parameter = new_value)

See model documentation for more information on available parameters

Adding rules and models

Please contact the author for more information.

Animation

model.animate(iteration=100)

If iteration is not set, animation will continue infinitely.

Animation in jupyter notebook

import complexity_science.ca as cs
import matplotlib.pyplot as plt

from matplotlib import animation, rc
from IPython.display import HTML

An example Game Of Life animation will be as follows

game = cs.game([50,50])
game.initialize_random_bin(0.5)
anim = game.jyp_anim()

HTML(anim.to_html5_video())

Network Fragmentation

COMING SOON!

Contributing:

git clone https://github.com/KristerJazz/complexity-science.git

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

complexity-science-0.0.6.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

complexity_science-0.0.6-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

Details for the file complexity-science-0.0.6.tar.gz.

File metadata

  • Download URL: complexity-science-0.0.6.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0.post20210125 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for complexity-science-0.0.6.tar.gz
Algorithm Hash digest
SHA256 0795fa64f01c1b1e7d1634a827ca77c49a24f9d4a58cbfb42b32b09b85c81f42
MD5 cb99ce8f8940c03194ed1c1722e15dbe
BLAKE2b-256 9281713596dfd9fa1a1d03477f6a08d3743c5ee07b778ab522b818a08d4a8b24

See more details on using hashes here.

File details

Details for the file complexity_science-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: complexity_science-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 25.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0.post20210125 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for complexity_science-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2ffc9279d8c6feab02f5041c754a27dda065763abe44b8be457355d6442b5a66
MD5 b3a008fa49b60cd2b37b2da6513ab57e
BLAKE2b-256 b8b621eea43fa14ba0ff1c54a04da6286cc3d4e191410c2fca8c333303cf9a35

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