NEURON
nrndae.h File Reference

Supports modifying voltage equations and adding new equations. More...

#include "ivocvect.h"
#include "matrixmap.h"
#include "neuron/container/data_handle.hpp"
#include <list>
#include <vector>

Go to the source code of this file.

Classes

class  NrnDAE
 NEURON Differential Algebraic Equations. More...
 

Typedefs

typedef std::list< NrnDAE * > NrnDAEPtrList
 
typedef NrnDAEPtrList::const_iterator NrnDAEPtrListIterator
 

Functions

void nrndae_register (NrnDAE *n)
 Add a NrnDAE object to the system. More...
 
void nrndae_deregister (NrnDAE *n)
 Remove a NrnDAE object from the system. More...
 

Detailed Description

Supports modifying voltage equations and adding new equations.

Author
Michael Hines, Robert McDougal
Remarks
Subclasses of NrnDAE can work with equations of the form

\[$C \frac{dy}{dt} = f(y)$\]

. LinearModelAddition, defined in linmod.h and linmod.cpp is an example that supports linear dynamics of the form

\[$C \frac{dy}{dt} = A y + b$\]

.

Definition in file nrndae.h.

Typedef Documentation

◆ NrnDAEPtrList

typedef std::list<NrnDAE*> NrnDAEPtrList

Definition at line 221 of file nrndae.h.

◆ NrnDAEPtrListIterator

typedef NrnDAEPtrList::const_iterator NrnDAEPtrListIterator

Definition at line 222 of file nrndae.h.

Function Documentation

◆ nrndae_deregister()

void nrndae_deregister ( NrnDAE n)

Remove a NrnDAE object from the system.

Parameters
nThe NrnDAE object (ie the dynamics) to remove.

Definition at line 22 of file nrndae.cpp.

◆ nrndae_register()

void nrndae_register ( NrnDAE n)

Add a NrnDAE object to the system.

Parameters
nThe NrnDAE object (ie the dynamics) to add.

Definition at line 18 of file nrndae.cpp.