# Neural Fractal
Create Fractals Using Complex-Valued Neural Networks!

[Home Page](https://amirabbasasadi.github.io/neural-fractal/)

## Features
- Define Dynamical Systems Using Complex-Valued Neural Networks
- GPU Support for Accelerated Sampling and Rendering
- Built on Top of PyTorch

## About the package
Fractals are visualizations of Chaos. They have infinite self-similar patterns. One way to generate fractals is by applying a complex function repeatedly on a set of points and keeping the points that do not diverge to infinity. Interestingly, Even dynamical systems constructed by simple functions in this way can generate amazing fractals. But what happens if instead of a simple function we use a complex valued neural network? Repeatedly applying a neural network is equivalent to a recurrent neural network which is able to model complicated non-linear dynamical systems. Reservoir computing has demonstrated even completely random RNNs can construct strange and interesting dynamics. Neural Fractal has been developed for creating fractals using CVNNs.

## Installation
```
pip install nfractal
```

## Quick Start
See the [Home Page](https://amirabbasasadi.github.io/neural-fractal/)


## Features Under Development
- Automatic pseudo-coloring
- Gnerating zoom animations
