Giter Site home page Giter Site logo

huxin0221 / n2a Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sandialabs/n2a

0.0 0.0 0.0 6.22 MB

An object-oriented language for modeling large-scale neural systems, along with an IDE for writing and simulating models.

Batchfile 0.02% Shell 0.01% Java 92.60% C++ 7.37%

n2a's Introduction

Overview

"Neurons to Algorithms" (N2A) is a language for modeling neural systems, along with a software tool for editing models and simulating them. For an introduction to the concepts behind N2A, see the paper N2A: a computational tool for modeling from neurons to algorithms. For the current definition of the language, see the Language Reference page on our wiki.

N2A conceives of each neural component ("part" or "model") as a bundle of attributes, which include constants and equations. All attributes and dynamics are name-value pairs. In the case of equations, the name is a variable and the value tells how that variable relates to other variables and changes through time.

Because models are specified as data rather than code (declarative rather than imperative), it is easy for one model to inherit from another and extend it. In particular, there is no distinction between part definitions (such as an Izhikevich Neuron) and parameters used in a specific configuration. You simply inherit the model and make any necessary changes.

A model may contain other models. For example, a cerebellum model may contain population models for Purkinje cells, inferior-olive cells, and so on. The cerebellum model could be further incorporated into a model of smooth pursuit involving multiple brain regions. The goal of N2A, of course, is to eventually model the entire brain.

Some things N2A is NOT:

  • Not a simulator. Rather, the tool compiles the language for a given target (NEURON, NEST, C++, Python, etc.).
  • Not deep learning, nor machine learning in general. The goal of N2A is to build an integrated understanding of the whole brain, in a form that can be both analyzed and computed.

Download

Installation -- How to download and install N2A, and set up at least one simulator.

Getting Started -- Run a simple "Hello World" example: the Hodgkin-Huxley cable equations.

Contributing Code -- How to set up a development environment, if you would like to volunteer on this project or simply wish to build from source.

n2a's People

Contributors

frothga avatar fywang avatar cewarr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.