Xyce  6.1
Xyce::Analysis Namespace Reference

Circuit Analysis Definitions. More...

Classes

class  AC
 
class  AnalysisBase
 
class  AnalysisCreatorRegistry
 
struct  AnalysisEvent
 
class  AnalysisFinalTimeOp
 
struct  AnalysisFinalTimeOpBuilder
 
class  AnalysisInitialTimeOp
 
struct  AnalysisInitialTimeOpBuilder
 
class  AnalysisManager
 
class  Dakota
 
class  DCSweep
 
struct  DevelFatal
 
struct  DevelFatal0
 
struct  FactoryBlock
 The FactoryBlock contains parameters needed by the analysis creation functions. More...
 
class  HB
 
class  messageHeader
 
class  MixedSignalManager
 
class  ModelEvaluator
 
class  ModelEvaluator_Stateless
 
class  MOR
 
class  MPDE
 
class  NOISE
 
class  NoiseData
 
class  OutputAdapter
 
class  OutputMgrAdapter
 
class  ProcessorBase
 
class  ProcessorCreatorRegistry
 
class  ROL
 
class  SecondLevelManager
 
struct  StatCounts
 
class  Step
 
struct  StepEvent
 
class  SweepParam
 
class  Transient
 
struct  UserFatal
 
struct  UserFatal0
 
struct  UserWarning
 
struct  UserWarning0
 

Typedefs

typedef std::vector< Util::Factory< AnalysisBase, void > * > CreatorVector
 
typedef std::set< Util::Factory< ProcessorBase, void > * > CreatorSet
 
typedef Util::Notifier< StepEventStepEventNotifier
 
typedef Util::Notifier< AnalysisEventAnalysisEventNotifier
 
typedef Util::ListenerAutoSubscribe< StepEventStepEventListener
 
typedef Util::ListenerAutoSubscribe< AnalysisEventAnalysisEventListener
 
typedef std::vector< SweepParamSweepVector
 
typedef double RealT
 

Enumerations

enum  Mode {
  ANP_MODE_INVALID,
  ANP_MODE_DC_OP,
  ANP_MODE_DC_SWEEP,
  ANP_MODE_DC_NLPOISSON,
  ANP_MODE_TRANSIENT,
  ANP_MODE_MPDE,
  ANP_MODE_HB,
  ANP_MODE_AC,
  ANP_MODE_NOISE,
  ANP_MODE_MOR
}
 
enum  DCOPType {
  NL_POISSON,
  DRIFT_DIFFUSION,
  OFF
}
 
enum  TwoLevelMode {
  TWO_LEVEL_MODE_TRANSIENT_DCOP = 0,
  TWO_LEVEL_MODE_TRANSIENT = 1,
  TWO_LEVEL_MODE_DC_SWEEP = 2
}
 

Functions

bool registerACFactory (FactoryBlock &factory_block)
 
Util::JSON & operator<< (Util::JSON &json, const StatCounts &s)
 
StatCounts operator- (const StatCounts &s0, const StatCounts &s1)
 
void gatherStepStatistics (StatCounts &stats, Nonlinear::NonLinearSolver &nonlinear_solver, int newton_convergence_status)
 
std::ostream & operator<< (std::ostream &os, const AnalysisEvent::State &state)
 
std::ostream & operator<< (std::ostream &os, const AnalysisEvent::OutputType &type)
 
Nonlinear::AnalysisMode nonlinearAnalysisMode (Mode mode)
 Returns the nonlinear analysis mode given the analysis mode. More...
 
const char * analysisModeName (Mode mode)
 Returns the name of the analysis mode given by mode. More...
 
bool registerPkgOptionsMgr (AnalysisManager &analysis_manager, IO::PkgOptionsMgr &options_manager)
 
bool registerDCSweepFactory (FactoryBlock &factory_block)
 
bool registerHBFactory (FactoryBlock &factory_block)
 
RCP< Linear::BlockVector > convertEpetraToNLASBlockVectorView (const RCP< const Epetra_Vector > &vec, const RCP< Epetra_Map > &map)
 
RCP< Linear::Vector > convertEpetraToNLASVectorView (const RCP< const Epetra_Vector > &vec)
 
RCP< ModelEvaluator_StatelessN_ANP_modelEvaluator_Stateless ()
 
RCP< ModelEvaluator_StatelessN_ANP_modelEvaluator_Stateless (const RCP< ModelEvaluator > &xyceME)
 
bool registerMORFactory (FactoryBlock &factory_block)
 
bool registerMPDEFactory (FactoryBlock &factory_block)
 
bool registerNOISEFactory (FactoryBlock &factory_block)
 
std::ostream & operator<< (std::ostream &os, const NoiseData &nd)
 
void registerOpBuilders (Util::Op::BuilderManager &builder_manager, Parallel::Machine comm, AnalysisManager &analysis_manager)
 
void registerAnalysisFactory (FactoryBlock &factory_block)
 Registers the analysis factories. More...
 
void addAnalysisFactory (FactoryBlock &factory_block, Util::Factory< AnalysisBase, void > *factory)
 
void addProcessorFactory (FactoryBlock &factory_block, Util::Factory< ProcessorBase, void > *factory)
 
bool registerROLFactory (FactoryBlock &factory_block)
 
bool registerStepFactory (FactoryBlock &factory_block)
 
std::ostream & operator<< (std::ostream &os, const SweepParam &sp)
 
SweepParam parseSweepParams (Util::ParamList::const_iterator first, Util::ParamList::const_iterator last)
 Populate the sweep params from the parameter list. More...
 
bool updateSweepParams (Loader::Loader &loader, int step_count, std::vector< SweepParam >::iterator begin, std::vector< SweepParam >::iterator end, bool overrideOriginal)
 
int setupSweepLoop (Parallel::Machine comm, Loader::Loader &loader, std::vector< SweepParam >::iterator begin, std::vector< SweepParam >::iterator end)
 
std::vector< double > computeOutputInterpolationTimes (double current_time, double next_output_time, double final_output_time, double initial_output_interval, const IO::IntervalVector &output_intervals)
 
double updateOutputTime (double current_time, double next_output_time, double final_output_time, double initial_output_interval, const IO::IntervalVector &output_intervals)
 
bool testOutputTime (double current_time, double next_output_time, double start_time)
 
bool testSaveOutputTime (Analysis::AnalysisManager &analysis_manager, IO::InitialConditionsManager &initial_conditions_manager)
 
bool testRestartSaveTime (AnalysisManager &analysis_manager, IO::RestartMgr &restart_manager, double current_time, double &next_restart_save_time)
 
bool registerTransientFactory (FactoryBlock &factory_block)
 
RCP< Linear::BlockVector > convertEpetraToNLASBlockVectorView (const RCP< const Epetra_Vector > &vec, const RCP< N_PDS_ParMap > &map)
 
void writeConductanceFile (const std::vector< std::string > &device_names, Nonlinear::ConductanceExtractor &conductance_extractor, const std::string &filename)
 

Detailed Description

Circuit Analysis Definitions.

Typedef Documentation

typedef Util::ListenerAutoSubscribe<AnalysisEvent> Xyce::Analysis::AnalysisEventListener

Definition at line 83 of file N_ANP_AnalysisManager.h.

Definition at line 81 of file N_ANP_AnalysisManager.h.

typedef std::set<Util::Factory<ProcessorBase, void> *> Xyce::Analysis::CreatorSet

Definition at line 78 of file N_ANP_AnalysisManager.h.

typedef std::vector<Util::Factory<AnalysisBase, void> *> Xyce::Analysis::CreatorVector

Definition at line 77 of file N_ANP_AnalysisManager.h.

typedef double Xyce::Analysis::RealT

Definition at line 60 of file N_ANP_ROL.h.

typedef Util::ListenerAutoSubscribe< StepEvent > Xyce::Analysis::StepEventListener

Definition at line 82 of file N_ANP_AnalysisManager.h.

Definition at line 80 of file N_ANP_AnalysisManager.h.

typedef std::vector< SweepParam > Xyce::Analysis::SweepVector

Definition at line 94 of file N_ANP_fwd.h.

Enumeration Type Documentation

Enumerator
NL_POISSON 
DRIFT_DIFFUSION 
OFF 

Definition at line 67 of file N_ANP_fwd.h.

Enumerator
ANP_MODE_INVALID 
ANP_MODE_DC_OP 
ANP_MODE_DC_SWEEP 
ANP_MODE_DC_NLPOISSON 
ANP_MODE_TRANSIENT 
ANP_MODE_MPDE 
ANP_MODE_HB 
ANP_MODE_AC 
ANP_MODE_NOISE 
ANP_MODE_MOR 

Definition at line 53 of file N_ANP_fwd.h.

Enumerator
TWO_LEVEL_MODE_TRANSIENT_DCOP 
TWO_LEVEL_MODE_TRANSIENT 
TWO_LEVEL_MODE_DC_SWEEP 

Definition at line 73 of file N_ANP_fwd.h.

Function Documentation

void Xyce::Analysis::addAnalysisFactory ( FactoryBlock factory_block,
Util::Factory< AnalysisBase, void > *  factory 
)
inline

Definition at line 200 of file N_ANP_RegisterAnalysis.h.

void Xyce::Analysis::addProcessorFactory ( FactoryBlock factory_block,
Util::Factory< ProcessorBase, void > *  factory 
)
inline

Definition at line 205 of file N_ANP_RegisterAnalysis.h.

const char * Xyce::Analysis::analysisModeName ( Mode  mode)

Returns the name of the analysis mode given by mode.

Returns a const char pointer to a name representing the mode.

Parameters
modeAnalysis mode
Returns
name of the mode
Parameters
modeAnalysis mode to get name of
Returns
Name corresponding to the mode

Definition at line 102 of file N_ANP_AnalysisManager.C.

std::vector< double > Xyce::Analysis::computeOutputInterpolationTimes ( double  current_time,
double  next_output_time,
double  final_output_time,
double  initial_output_interval,
const IO::IntervalVector &  output_intervals 
)

Definition at line 2798 of file N_ANP_Transient.C.

RCP<Linear::BlockVector> Xyce::Analysis::convertEpetraToNLASBlockVectorView ( const RCP< const Epetra_Vector > &  vec,
const RCP< N_PDS_ParMap > &  map 
)

Definition at line 62 of file N_ANP_ModelEvaluator.C.

RCP<Linear::BlockVector> Xyce::Analysis::convertEpetraToNLASBlockVectorView ( const RCP< const Epetra_Vector > &  vec,
const RCP< Epetra_Map > &  map 
)
RCP< Linear::Vector > Xyce::Analysis::convertEpetraToNLASVectorView ( const RCP< const Epetra_Vector > &  vec)

Definition at line 79 of file N_ANP_ModelEvaluator.C.

void Xyce::Analysis::gatherStepStatistics ( StatCounts stats,
Nonlinear::NonLinearSolver nonlinear_solver,
int  newton_convergence_status 
)

Definition at line 311 of file N_ANP_AnalysisBase.C.

RCP< ModelEvaluator_Stateless > Xyce::Analysis::N_ANP_modelEvaluator_Stateless ( )

Definition at line 57 of file N_ANP_ModelEvaluator_Stateless.C.

RCP< ModelEvaluator_Stateless > Xyce::Analysis::N_ANP_modelEvaluator_Stateless ( const RCP< ModelEvaluator > &  xyceME)

Definition at line 63 of file N_ANP_ModelEvaluator_Stateless.C.

Nonlinear::AnalysisMode Xyce::Analysis::nonlinearAnalysisMode ( Mode  mode)

Returns the nonlinear analysis mode given the analysis mode.

Parameters
modeAnalysis mode
Returns
Nonlinear analysis mode

Definition at line 130 of file N_ANP_AnalysisManager.C.

StatCounts Xyce::Analysis::operator- ( const StatCounts s0,
const StatCounts s1 
)

Definition at line 248 of file N_ANP_AnalysisBase.C.

std::ostream & Xyce::Analysis::operator<< ( std::ostream &  os,
const AnalysisEvent::State state 
)

Definition at line 48 of file N_ANP_AnalysisEvent.C.

std::ostream & Xyce::Analysis::operator<< ( std::ostream &  os,
const AnalysisEvent::OutputType type 
)

Definition at line 75 of file N_ANP_AnalysisEvent.C.

Util::JSON & Xyce::Analysis::operator<< ( Util::JSON &  json,
const StatCounts s 
)

Definition at line 96 of file N_ANP_AnalysisBase.C.

std::ostream & Xyce::Analysis::operator<< ( std::ostream &  os,
const SweepParam sp 
)
Invariant
Parameters
os
sp
Returns

Definition at line 138 of file N_ANP_SweepParam.C.

std::ostream& Xyce::Analysis::operator<< ( std::ostream &  os,
const NoiseData nd 
)
inline

Definition at line 173 of file N_ANP_NoiseData.h.

SweepParam Xyce::Analysis::parseSweepParams ( Util::ParamList::const_iterator  first,
Util::ParamList::const_iterator  last 
)

Populate the sweep params from the parameter list.

Invariant
Parameters
sweep_paramsweep parameters objec t populate
firstbegin iterator of the parameter list
lastend iterator of the parameter list

Definition at line 156 of file N_ANP_SweepParam.C.

bool Xyce::Analysis::registerACFactory ( FactoryBlock factory_block)

Definition at line 1062 of file N_ANP_AC.C.

void Xyce::Analysis::registerAnalysisFactory ( FactoryBlock factory_block)

Registers the analysis factories.

In the future this is intended to become a pluggable factory allowing new analysis type to be added with no invasion into the rest of the analysis code. Whether anyone will actually create an analysis outside the system is academic and creating this interface will result in defining the roles and interactions between the various analyses.

Invariant
Parameters
netlist_filename
options_manager
analysis_manager
linear_system
nonlinear_manager
device_manager
builder
topology

Definition at line 84 of file N_ANP_RegisterAnalysis.C.

bool Xyce::Analysis::registerDCSweepFactory ( FactoryBlock factory_block)

Definition at line 981 of file N_ANP_DCSweep.C.

bool Xyce::Analysis::registerHBFactory ( FactoryBlock factory_block)

Definition at line 2340 of file N_ANP_HB.C.

bool Xyce::Analysis::registerMORFactory ( FactoryBlock factory_block)

Definition at line 2292 of file N_ANP_MOR.C.

bool Xyce::Analysis::registerMPDEFactory ( FactoryBlock factory_block)

Definition at line 612 of file N_ANP_MPDE.C.

bool Xyce::Analysis::registerNOISEFactory ( FactoryBlock factory_block)

Definition at line 1920 of file N_ANP_NOISE.C.

void Xyce::Analysis::registerOpBuilders ( Util::Op::BuilderManager &  builder_manager,
Parallel::Machine  comm,
AnalysisManager analysis_manager 
)

Definition at line 135 of file N_ANP_OpBuilders.C.

bool Xyce::Analysis::registerPkgOptionsMgr ( AnalysisManager analysis_manager,
IO::PkgOptionsMgr &  options_manager 
)

Definition at line 1393 of file N_ANP_AnalysisManager.C.

bool Xyce::Analysis::registerROLFactory ( FactoryBlock factory_block)

Definition at line 2151 of file N_ANP_ROL.C.

bool Xyce::Analysis::registerStepFactory ( FactoryBlock factory_block)

Definition at line 550 of file N_ANP_Step.C.

bool Xyce::Analysis::registerTransientFactory ( FactoryBlock factory_block)

Definition at line 3206 of file N_ANP_Transient.C.

int Xyce::Analysis::setupSweepLoop ( Parallel::Machine  comm,
Loader::Loader loader,
std::vector< SweepParam >::iterator  begin,
std::vector< SweepParam >::iterator  end 
)

Definition at line 232 of file N_ANP_SweepParam.C.

bool Xyce::Analysis::testOutputTime ( double  current_time,
double  next_output_time,
double  start_time 
)

Definition at line 2609 of file N_ANP_Transient.C.

bool Xyce::Analysis::testRestartSaveTime ( AnalysisManager analysis_manager,
IO::RestartMgr &  restart_manager,
double  current_time,
double &  next_restart_save_time 
)

Definition at line 2697 of file N_ANP_Transient.C.

bool Xyce::Analysis::testSaveOutputTime ( Analysis::AnalysisManager analysis_manager,
IO::InitialConditionsManager &  initial_conditions_manager 
)

Definition at line 2572 of file N_ANP_Transient.C.

double Xyce::Analysis::updateOutputTime ( double  current_time,
double  next_output_time,
double  final_output_time,
double  initial_output_interval,
const IO::IntervalVector &  output_intervals 
)

Definition at line 2637 of file N_ANP_Transient.C.

bool Xyce::Analysis::updateSweepParams ( Loader::Loader loader,
int  step_count,
std::vector< SweepParam >::iterator  begin,
std::vector< SweepParam >::iterator  end,
bool  overrideOriginal 
)

Definition at line 353 of file N_ANP_SweepParam.C.

void Xyce::Analysis::writeConductanceFile ( const std::vector< std::string > &  device_names,
Nonlinear::ConductanceExtractor conductance_extractor,
const std::string &  filename 
)

Definition at line 2867 of file N_ANP_Transient.C.