Xyce  6.1
Xyce::Device::Neuron6::Model Class Reference

#include <N_DEV_Neuron6.h>

Inheritance diagram for Xyce::Device::Neuron6::Model:
Collaboration diagram for Xyce::Device::Neuron6::Model:

Public Member Functions

 Model (const Configuration &configuration, const ModelBlock &MB, const FactoryBlock &factory_block)
 
 ~Model ()
 
virtual void forEachInstance (DeviceInstanceOp &op) const
 Apply a device instance "op" to all instances associated with this model. More...
 
virtual std::ostream & printOutInstances (std::ostream &os) const
 
bool processParams ()
 processParams More...
 
bool processInstanceParams ()
 processInstanceParams More...
 
void addInstance (Instance *instance)
 
- Public Member Functions inherited from Xyce::Device::DeviceModel
 DeviceModel (const ModelBlock &model_block, ParametricData< void > &parametric_data, const FactoryBlock &factory_block)
 
virtual ~DeviceModel ()
 
const std::string & getName () const
 
void setModParams (const std::vector< Param > &params)
 
virtual std::ostream & printName (std::ostream &os) const
 
virtual bool clearTemperatureData ()
 
void saveParams ()
 
bool interpolateTNOM (double)
 
bool interpolateDOSE (double)
 
void restoreParams ()
 
virtual bool getBinPrefixFlag ()
 
int getLevel () const
 
void setLevel (int level)
 
const std::string & getType () const
 
- Public Member Functions inherited from Xyce::Device::DeviceEntity
 DeviceEntity (ParametricData< void > &parametric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_filename, int netlist_line)
 
virtual ~DeviceEntity ()
 
virtual CompositeParamconstructComposite (const std::string &composite_name, const std::string &param_name)
 
bool setDefaultParam (double val, bool overrideOriginal=false)
 
double getDefaultParam () const
 
bool scaleParam (const std::string &paramName, double val, double val0)
 
bool scaleParam (const std::string &paramName, double val)
 
bool scaleDefaultParam (double val)
 
bool analyticSensitivityAvailable (const std::string &paramName)
 
bool getAnalyticSensitivity (const std::string &paramName, std::vector< double > &dfdpVec, std::vector< double > &dqdpVec, std::vector< double > &dbdpVec, std::vector< int > &FindicesVec, std::vector< int > &QindicesVec, std::vector< int > &BindicesVec)
 
bool setParam (const std::string &paramName, double val, bool overrideOriginal=false)
 
bool getParam (const std::string &paramName, double &result) const
 
bool getParamBreakpoints (std::vector< Util::BreakPoint > &)
 
bool updateDependentParameters (Linear::Vector &vars)
 
bool updateDependentParameters (double temp_tmp)
 
bool updateGlobalParameters (GlobalParameterMap &)
 
bool updateDependentParameters ()
 
double setDependentParameter (Util::Param &, double *, ParameterType::ExprAccess)
 
double setDependentParameter (Util::Param &, std::vector< double > *, int, ParameterType::ExprAccess)
 
void setDependentParameter (Util::Param &par, Depend &dependentParam, ParameterType::ExprAccess depend)
 
void setDefaultParams ()
 
void setParams (const std::vector< Param > &params)
 
bool given (const std::string &parameter_name) const
 
void setDefaultParamName (const std::string &default_param_name)
 
const std::vector< Depend > & getDependentParams ()
 
void addDependentParameter (const Depend &param)
 
const DeviceOptionsgetDeviceOptions () const
 
const SolverStategetSolverState () const
 
const NetlistLocation & netlistLocation () const
 
const ParameterMapgetParameterMap () const
 
- Public Member Functions inherited from Xyce::Device::ParameterBase
 ParameterBase ()
 
virtual ~ParameterBase ()
 
double getOriginalValue (int serial_number)
 
void setOriginalValue (int serial_number, double value)
 
bool wasValueGiven (int serial_number) const
 
void setValueGiven (int serial_number, bool value)
 

Private Types

typedef std::vector< Instance * > InstanceVector
 

Private Member Functions

 Model ()
 
 Model (const Model &)
 
Modeloperator= (const Model &)
 

Private Attributes

double cMem
 
double gMem
 
double vRest
 
double eNa
 
double gNa
 
double eK
 
double gK
 
double eA
 
double gA
 
double eCa
 
double gCa
 
double eKCa
 
double gKCa
 
double CaInit
 
double CaGamma
 
double CaTau
 
double rInt
 
double radius
 
double length
 
std::string ionChannelModel
 
int nSeg
 
double I
 
std::vector< std::string > membraneCurrentEqus
 
std::vector< std::string > membraneIndpVars
 
std::vector< std::string > membraneIndpFEqus
 
std::vector< std::string > membraneIndpQEqus
 
std::vector< std::string > membraneFunctions
 
std::vector< std::string > membraneParameters
 
bool rIntGiven
 
bool radiusGiven
 
bool lengthGiven
 
bool ionChannelModelGiven
 
bool nSegGiven
 
bool cMemGiven
 
bool gMemGiven
 
bool vRestGiven
 
bool eNaGiven
 
bool gNaGiven
 
bool eKGiven
 
bool gKGiven
 
bool eAGiven
 
bool gAGiven
 
bool eCaGiven
 
bool gCaGiven
 
bool eKCaGiven
 
bool gKCaGiven
 
bool CaInitGiven
 
bool CaGammaGiven
 
bool CaTauGiven
 
bool membraneCurrentEqusGiven
 
bool membraneIndpVarsGiven
 
bool membraneIndpFEqusGiven
 
bool membraneIndpQEqusGiven
 
bool membraneFunctionsGiven
 
bool membraneParametersGiven
 
bool hodgenHuxleyOn_
 
bool ConnorStevensOn_
 
bool sodiumOn_
 
bool potassiumOn_
 
bool aCurrentOn_
 
bool calciumOn_
 
RCP< MembraneModelmembraneModel_
 
std::vector< Instance * > instanceContainer
 

Friends

class ParametricData< Model >
 
class Instance
 
class Traits
 

Additional Inherited Members

- Static Public Member Functions inherited from Xyce::Device::DeviceModel
template<class T >
static void initThermalModel (ParametricData< T > &parametric_data)
 Add the parameter "TEMPMODEL" to the parametric_data. More...
 
template<class T >
static void initDoseModel (ParametricData< T > &parametric_data)
 Add the parameter "DOSEMODEL" to the parametric_data. More...
 
- Protected Attributes inherited from Xyce::Device::DeviceEntity
std::vector< int > expVarGIDs
 
std::vector< int > expVarLIDs
 
std::vector< std::string > expVarNames
 
std::vector< double > expVarVals
 
std::vector< double > eVarVals
 

Detailed Description

Definition at line 282 of file N_DEV_Neuron6.h.

Member Typedef Documentation

Definition at line 285 of file N_DEV_Neuron6.h.

Constructor & Destructor Documentation

Xyce::Device::Neuron6::Model::Model ( const Configuration configuration,
const ModelBlock MB,
const FactoryBlock factory_block 
)

Definition at line 1301 of file N_DEV_Neuron6.C.

Xyce::Device::Neuron6::Model::~Model ( )

Definition at line 1419 of file N_DEV_Neuron6.C.

Xyce::Device::Neuron6::Model::Model ( )
private
Xyce::Device::Neuron6::Model::Model ( const Model )
private

Member Function Documentation

void Xyce::Device::Neuron6::Model::addInstance ( Instance instance)
inline

Definition at line 394 of file N_DEV_Neuron6.h.

void Xyce::Device::Neuron6::Model::forEachInstance ( DeviceInstanceOp op) const
virtual

Apply a device instance "op" to all instances associated with this model.

Parameters
[in]opOperator to apply to all instances.

Implements Xyce::Device::DeviceModel.

Definition at line 1513 of file N_DEV_Neuron6.C.

Model& Xyce::Device::Neuron6::Model::operator= ( const Model )
private
std::ostream & Xyce::Device::Neuron6::Model::printOutInstances ( std::ostream &  os) const
virtual

Implements Xyce::Device::DeviceModel.

Definition at line 1476 of file N_DEV_Neuron6.C.

bool Xyce::Device::Neuron6::Model::processInstanceParams ( )
virtual

processInstanceParams

Returns
true if parameter processing was successful

Implements Xyce::Device::DeviceModel.

Definition at line 1454 of file N_DEV_Neuron6.C.

bool Xyce::Device::Neuron6::Model::processParams ( )
virtual

processParams

Returns
true if parameter processing was successful

Implements Xyce::Device::DeviceModel.

Definition at line 1441 of file N_DEV_Neuron6.C.

Friends And Related Function Documentation

friend class Instance
friend

Definition at line 288 of file N_DEV_Neuron6.h.

friend class ParametricData< Model >
friend

Definition at line 284 of file N_DEV_Neuron6.h.

friend class Traits
friend

Definition at line 289 of file N_DEV_Neuron6.h.

Member Data Documentation

bool Xyce::Device::Neuron6::Model::aCurrentOn_
private

Definition at line 388 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::CaGamma
private

Definition at line 328 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::CaGammaGiven
private

Definition at line 370 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::CaInit
private

Definition at line 327 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::CaInitGiven
private

Definition at line 369 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::calciumOn_
private

Definition at line 389 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::CaTau
private

Definition at line 329 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::CaTauGiven
private

Definition at line 371 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::cMem
private

Definition at line 314 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::cMemGiven
private

Definition at line 356 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::ConnorStevensOn_
private

Definition at line 385 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::eA
private

Definition at line 321 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::eAGiven
private

Definition at line 363 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::eCa
private

Definition at line 323 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::eCaGiven
private

Definition at line 365 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::eK
private

Definition at line 319 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::eKCa
private

Definition at line 325 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::eKCaGiven
private

Definition at line 367 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::eKGiven
private

Definition at line 361 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::eNa
private

Definition at line 317 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::eNaGiven
private

Definition at line 359 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::gA
private

Definition at line 322 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::gAGiven
private

Definition at line 364 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::gCa
private

Definition at line 324 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::gCaGiven
private

Definition at line 366 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::gK
private

Definition at line 320 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::gKCa
private

Definition at line 326 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::gKCaGiven
private

Definition at line 368 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::gKGiven
private

Definition at line 362 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::gMem
private

Definition at line 315 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::gMemGiven
private

Definition at line 357 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::gNa
private

Definition at line 318 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::gNaGiven
private

Definition at line 360 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::hodgenHuxleyOn_
private

Definition at line 384 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::I
private

Definition at line 337 of file N_DEV_Neuron6.h.

std::vector<Instance*> Xyce::Device::Neuron6::Model::instanceContainer
private

Definition at line 400 of file N_DEV_Neuron6.h.

std::string Xyce::Device::Neuron6::Model::ionChannelModel
private

Definition at line 333 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::ionChannelModelGiven
private

Definition at line 352 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::length
private

Definition at line 332 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::lengthGiven
private

Definition at line 351 of file N_DEV_Neuron6.h.

std::vector<std::string> Xyce::Device::Neuron6::Model::membraneCurrentEqus
private

Definition at line 341 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::membraneCurrentEqusGiven
private

Definition at line 373 of file N_DEV_Neuron6.h.

std::vector<std::string> Xyce::Device::Neuron6::Model::membraneFunctions
private

Definition at line 345 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::membraneFunctionsGiven
private

Definition at line 377 of file N_DEV_Neuron6.h.

std::vector<std::string> Xyce::Device::Neuron6::Model::membraneIndpFEqus
private

Definition at line 343 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::membraneIndpFEqusGiven
private

Definition at line 375 of file N_DEV_Neuron6.h.

std::vector<std::string> Xyce::Device::Neuron6::Model::membraneIndpQEqus
private

Definition at line 344 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::membraneIndpQEqusGiven
private

Definition at line 376 of file N_DEV_Neuron6.h.

std::vector<std::string> Xyce::Device::Neuron6::Model::membraneIndpVars
private

Definition at line 342 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::membraneIndpVarsGiven
private

Definition at line 374 of file N_DEV_Neuron6.h.

RCP< MembraneModel > Xyce::Device::Neuron6::Model::membraneModel_
private

Definition at line 390 of file N_DEV_Neuron6.h.

std::vector<std::string> Xyce::Device::Neuron6::Model::membraneParameters
private

Definition at line 346 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::membraneParametersGiven
private

Definition at line 378 of file N_DEV_Neuron6.h.

int Xyce::Device::Neuron6::Model::nSeg
private

Definition at line 334 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::nSegGiven
private

Definition at line 353 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::potassiumOn_
private

Definition at line 387 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::radius
private

Definition at line 331 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::radiusGiven
private

Definition at line 350 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::rInt
private

Definition at line 330 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::rIntGiven
private

Definition at line 349 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::sodiumOn_
private

Definition at line 386 of file N_DEV_Neuron6.h.

double Xyce::Device::Neuron6::Model::vRest
private

Definition at line 316 of file N_DEV_Neuron6.h.

bool Xyce::Device::Neuron6::Model::vRestGiven
private

Definition at line 358 of file N_DEV_Neuron6.h.


The documentation for this class was generated from the following files: