46 #ifndef Xyce_N_DEV_Xygra_h
47 #define Xyce_N_DEV_Xygra_h
97 static const char *
name() {
return "Xygra";}
141 void registerLIDs(
const std::vector<int> & intLIDVecRef,
142 const std::vector<int> & extLIDVecRef );
147 const std::vector< std::vector<int> > &
jacobianStamp()
const;
148 void registerJacLIDs(
const std::vector< std::vector<int> > & jacLIDVec );
159 bool getVoltages(std::vector<double> &voltageValues);
160 bool setConductances(
const std::vector< std::vector<double> > &conductanceMatrix);
161 bool setK(
const std::vector< std::vector<double> > &kMatrix,
const double t=0);
162 bool setSources(
const std::vector<double> &sourceVector,
const double t=0);
168 void varTypes( std::vector<char> & varTypeVec );
228 std::vector< std::vector<double> >
k0_;
229 std::vector< std::vector<double> >
k1_;
258 std::vector<XygraFadType>
dV;
virtual std::ostream & printOutInstances(std::ostream &os) const
std::vector< double > theSourceVector_
friend std::ostream & operator<<(std::ostream &os, const XygraCoilData &xcd)
std::vector< XygraCoilData * > coilDataVec
std::vector< std::vector< double > > theConductanceMatrix_
std::vector< int > coilIntStart
bool updateSecondaryState()
std::string getName() const
std::map< std::string, XygraCoilData * > coilDataMap
std::vector< int > li_Nodes_
std::vector< Instance * > InstanceVector
bool setK(const std::vector< std::vector< double > > &kMatrix, const double t=0)
static void loadModelParameters(ParametricData< Model > &model_parameters)
bool setSources(const std::vector< double > &sourceVector, const double t=0)
Pure virtual class to augment a linear system.
static ParametricData< XygraCoilData > & getParametricData()
void addInstance(Instance *instance)
bool processParams()
processParams
Instance(const Configuration &configuration, const InstanceBlock &IB, Model &Miter, const FactoryBlock &factory_block)
void auxDAECalculations()
int getNumWindings() const
std::vector< std::vector< int > > jacStamp_
std::vector< XygraFadType > windingCurrents
void loadNodeSymbols(Util::SymbolTable &symbol_table) const
Populates and returns the store name map.
bool getVoltages(std::vector< double > &voltageValues)
void getCoilNames(std::vector< std::string > &coilNames)
CompositeParam * constructComposite(const std::string &, const std::string &)
std::vector< std::vector< double > > k1_
The FactoryBlock contains parameters needed by the device, instance and model creation functions...
std::vector< XygraFadType > dV
std::vector< XygraFadType > fContributions
std::vector< std::vector< double > > theKMatrix_
std::vector< std::pair< int, int > > windingNodes
bool processInstanceParams()
processInstanceParams
const std::vector< std::vector< int > > & jacobianStamp() const
std::vector< std::vector< int > > A_Equ_NodeOffsets_
static const char * deviceTypeName()
std::vector< int > coilExtStart
The Device class is an interface for device implementations.
std::vector< Instance * > instanceContainer
Model & operator=(const Model &)
virtual void forEachInstance(DeviceInstanceOp &op) const
Apply a device instance "op" to all instances associated with this model.
void getCoilWindings(std::vector< int > &coilWindings)
static Device * factory(const Configuration &configuration, const FactoryBlock &factory_block)
Class Configuration contains device configuration data.
static int numOptionalNodes()
void registerLIDs(const std::vector< int > &intLIDVecRef, const std::vector< int > &extLIDVecRef)
void registerJacLIDs(const std::vector< std::vector< int > > &jacLIDVec)
static const char * name()
Instance & operator=(const Instance &)
void processParams()
processParams post processes the parameters that have been set in the object of the derived class...
bool setConductances(const std::vector< std::vector< double > > &conductanceMatrix)
bool updatePrimaryState()
void varTypes(std::vector< char > &varTypeVec)
Sacado::Fad::DFad< double > XygraFadType
void registerStateLIDs(const std::vector< int > &staLIDVecRef)
bool updateIntermediateVars()
ModelBlock represents a .MODEL line from the netlist.
The DeviceTraits template describes the configuration of a device.
Manages parameter binding for class C.
InstanceBlock represent a device instance line from the netlist.
static void loadInstanceParameters(ParametricData< Instance > &instance_parameters)
std::vector< double > s0_
std::vector< double > s1_
std::vector< std::vector< double > > k0_
bool updateTemperature(const double &temp_tmp)
std::vector< int > nWindings
CompositeParam is the base class for classes that wish to only manage the processing of parameter dat...
static bool isLinearDevice()
std::vector< std::string > coilNames
std::vector< XygraFadType > solutionVars