SECircuitCalculator.h
19 #define CIRCUIT_CALCULATOR_TEMPLATE typename CircuitType, typename NodeType, typename PathType, typename CapacitanceUnit, typename FluxUnit, typename InductanceUnit, typename PotentialUnit, typename QuantityUnit, typename ResistanceUnit
20 #define CIRCUIT_CALCULATOR_TYPES CircuitType, NodeType, PathType, CapacitanceUnit, FluxUnit, InductanceUnit, PotentialUnit, QuantityUnit, ResistanceUnit
35 ConjugateGradient };
43 SECircuitCalculator(const CapacitanceUnit& c, const FluxUnit& f, const InductanceUnit& i, const PotentialUnit& p, const QuantityUnit& q, const ResistanceUnit& r, Logger* logger);
64 virtual void PopulateAMatrix(NodeType& nKCL, PathType& p, double dMultiplier, bool hasPotentialSource = false);
SECircuitCalculator(const CapacitanceUnit &c, const FluxUnit &f, const InductanceUnit &i, const PotentialUnit &p, const QuantityUnit &q, const ResistanceUnit &r, Logger *logger)
Eigen::VectorXd m_bVector
Definition: SECircuitCalculator.h:72
const InductanceUnit & m_InductanceUnit
Definition: SECircuitCalculator.h:82
Definition: SECircuitCalculator.h:41
const ResistanceUnit & m_ResistanceUnit
Definition: SECircuitCalculator.h:85
virtual void ParseOut()
std::map< PathType *, size_t > m_potentialSources
Definition: SECircuitCalculator.h:78
const PotentialUnit & m_PotentialUnit
Definition: SECircuitCalculator.h:83
const CapacitanceUnit & m_CapacitanceUnit
Definition: SECircuitCalculator.h:80
Definition: SECircuitCalculator.h:34
Eigen::VectorXd m_xVector
Definition: SECircuitCalculator.h:71
Definition: SECircuitCalculator.h:28
virtual bool IsCurrentValveStateUnique()
virtual void SetEigenSolver(EigenCircuitSolver::Type t)
Definition: SECircuitCalculator.h:47
Definition: Logger.h:27
const QuantityUnit & m_QuantityUnit
Definition: SECircuitCalculator.h:84
Definition: SECircuitCalculator.h:24
virtual void SetEigenSolver(EigenCircuitSolver s)
Definition: SECircuitCalculator.h:46
Definition: Logger.h:75
virtual void Solve()
Definition: SECircuitCalculator.h:27
Definition: SECircuitCalculator.h:26
virtual void PostProcess(CircuitType &circuit)
Definition: SECircuitCalculator.h:31
const FluxUnit & m_FluxUnit
Definition: SECircuitCalculator.h:81
Definition: SECircuitCalculator.h:29
virtual void CalculateQuantities()
virtual void PopulateAMatrix(NodeType &nKCL, PathType &p, double dMultiplier, bool hasPotentialSource=false)
virtual void Process(CircuitType &circuit, double timeStep_s)
std::set< uint64_t > m_valveStates
Definition: SECircuitCalculator.h:77
EigenCircuitSolver m_solver
Definition: SECircuitCalculator.h:76
virtual ~SECircuitCalculator()
virtual bool CheckAndModifyValves()
Eigen::MatrixXd m_AMatrix
Definition: SECircuitCalculator.h:70
virtual void CalculateFluxes()
Definition: SEElectricalCircuit.h:18
virtual void ParseIn()
Definition: SECircuitCalculator.h:33
Definition: SECircuitCalculator.h:30
Definition: SECircuitCalculator.h:32