46 #ifndef Xyce_N_DEV_NeuronPop1_h
47 #define Xyce_N_DEV_NeuronPop1_h
55 #include <N_UTL_fwd.h>
60 #include <Teuchos_RCP.hpp>
66 namespace NeuronPop1 {
73 static const char *
name() {
return "NeuronPopulation";}
115 void registerLIDs(
const std::vector<int> & intLIDVecRef,
116 const std::vector<int> & extLIDVecRef );
121 const std::vector< std::vector<int> > &
jacobianStamp()
const;
122 void registerJacLIDs(
const std::vector< std::vector<int> > & jacLIDVec );
137 void varTypes( std::vector<char> & varTypeVec );
bool updateSecondaryState()
void registerJacLIDs(const std::vector< std::vector< int > > &jacLIDVec)
virtual void forEachInstance(DeviceInstanceOp &op) const
Apply a device instance "op" to all instances associated with this model.
std::vector< int > liNeuronPopState
static bool modelRequired()
std::vector< Instance * > instanceContainer
bool processInstanceParams()
processInstanceParams
const std::vector< std::vector< int > > & jacobianStamp() const
bool outputPlotFiles(bool force_final_output)
static const char * deviceTypeName()
Pure virtual class to augment a linear system.
void varTypes(std::vector< char > &varTypeVec)
static Device * factory(const Configuration &configuration, const FactoryBlock &factory_block)
void loadNodeSymbols(Util::SymbolTable &symbol_table) const
Populates and returns the store name map.
bool externalMaxConnectionsGiven
std::vector< std::string > connectionTargetPopulation
double lastNeurogenesisUpdateTime
bool populationInitialized
static void loadInstanceParameters(ParametricData< Instance > &instance_parameters)
bool processParams()
processParams
void registerStateLIDs(const std::vector< int > &staLIDVecRef)
std::vector< std::vector< int > > jacStamp
static void loadModelParameters(ParametricData< Model > &model_parameters)
bool outputPopulationVarsFlag
static bool isLinearDevice()
RCP< std::ofstream > outputFileStreamPtr
Instance(const Configuration &configuration, const InstanceBlock &IB, Model &Miter, const FactoryBlock &factory_block)
The FactoryBlock contains parameters needed by the device, instance and model creation functions...
void auxDAECalculations()
virtual std::ostream & printOutInstances(std::ostream &os) const
bool internalMaxConnectionsGiven
bool connectionTargetPopulationGiven
std::vector< Instance * > InstanceVector
double populationUpdatePeriod
double populationNeurogenesisRate
The Device class is an interface for device implementations.
bool getInstanceBreakPoints(std::vector< Util::BreakPoint > &breakPointTimes)
bool updateIntermediateVars()
bool updatePrimaryState()
Class Configuration contains device configuration data.
void initializePopulation()
bool populationNeurogenesisRateGiven
Model & operator=(const Model &)
void registerLIDs(const std::vector< int > &intLIDVecRef, const std::vector< int > &extLIDVecRef)
int externalMaxConnections
static const char * name()
bool updateTemperature(const double &temp_tmp)
void addInstance(Instance *instance)
double lastPopulationUpdateTime
ModelBlock represents a .MODEL line from the netlist.
The DeviceTraits template describes the configuration of a device.
bool populationUpdatePeriodGiven
Manages parameter binding for class C.
InstanceBlock represent a device instance line from the netlist.
int internalMaxConnections
Instance & operator=(const Instance &)