Skip to main content

Synapses and cells

Project description

SynaCell

Synapses and cells.

Spiking neural network (SNN) consisted of cells with processing algorithms, connected by synapses with realistic signal transmission properties. The engine that runs the SNN is written in plain C++ with interface in Python, for simplicity and platform mobility.

Tests

Test scripts are implemented as a module. You can run them by running the following commands from python after installing synacell library:

import synacell.test as sctest
sctest.run_all()

Warning: Temporary files will be created in the directory from where the command is run.

test_spice.py

Tests from this module are not included in the sctest.run_all() command, from above.

These are meant to be compared to LTSpice output. The point is to validate the solution of the differential equation describing the synapse or cell circuit.

test_spice_1

For this test you will need files generated from LTSpice.

To create input file for LTSpice run

import synacell.test as sctest
sctest.generate_spice_input_1()

The file ./test_spice_1.pwl is generated. This is the input file for the circuit given in data/spice/test_spice_1.asc. Run the circuit for the generated input and save the resulting vi and vo signals in a file ./test_spice_1.txt.

Compare signals from the SynaRPC synapse and the LTSpice model of the circuit by running:

sctest.test_spice_1()

This test reads the file ./test_spice_1.txt generated before and plots two signals, one from the synapse and the other from LTSpice.

Requirements

For now the C++ software is compiled as a Windows shared library (.dll) for 64 bit architectures. You can recompile it as you wish, but the official PyPI package is set to use:

  • Windows 64bit
  • Python 3.7+ 64bit

versions

  • 0.0.5 Added synapses (SynaBuffer and SynaRPC with passive circuit elements. Added a LTSpice circuit for comparison.

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

synacell-0.0.5.tar.gz (44.2 kB view hashes)

Uploaded Source

Built Distribution

synacell-0.0.5-py3-none-any.whl (57.8 kB view hashes)

Uploaded Python 3

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