Go to the documentation of this file.
38 #ifndef __SIM_THERMAL_MODEL_HH__
39 #define __SIM_THERMAL_MODEL_HH__
43 #include "params/ThermalCapacitor.hh"
44 #include "params/ThermalModel.hh"
45 #include "params/ThermalReference.hh"
46 #include "params/ThermalResistor.hh"
62 typedef ThermalResistorParams
Params;
74 double step)
const override;
91 typedef ThermalCapacitorParams
Params;
98 double step)
const override;
127 double step)
const override;
ThermalResistorParams Params
A ThermalDomain is used to group objects under that operate under the same temperature.
void serialize(CheckpointOut &cp) const override
Serialize an object.
std::vector< ThermalCapacitor * > capacitors
std::vector< ThermalDomain * > domains
void unserialize(CheckpointIn &cp) override
Unserialize an object.
A ThermalNode is used to connect thermal entities, such as resistors, capacitors, references and doma...
void serialize(CheckpointOut &cp) const override
Serialize an object.
void addReference(ThermalReference *r)
This class describes a linear equation with constant coefficients.
void setNode(ThermalNode *n)
A ThermalReference is a thermal domain with fixed temperature.
ThermalCapacitorParams Params
LinearEquation getEquation(ThermalNode *tn, unsigned n, double step) const override
The ClockedObject class extends the SimObject with a clock and accessor functions to relate ticks to ...
ThermalResistor(const Params *p)
ThermalResistor.
std::vector< ThermalResistor * > resistors
void serialize(CheckpointOut &cp) const override
Serialize an object.
ThermalModelParams Params
LinearEquation getEquation(ThermalNode *tn, unsigned n, double step) const override
ThermalReference(const Params *p)
ThermalReference.
void addNode(ThermalNode *n)
LinearEquation getEquation(ThermalNode *tn, unsigned n, double step) const override
double _step
Step in seconds for thermal updates.
void setNodes(ThermalNode *n1, ThermalNode *n2)
A ThermalResistor is used to model a thermal resistance between two thermal domains.
void serialize(CheckpointOut &cp) const override
Serialize an object.
std::vector< ThermalNode * > nodes
A ThermalCapacitor is used to model a thermal capacitance between two thermal domains.
std::vector< ThermalNode * > eq_nodes
void addDomain(ThermalDomain *d)
EventFunctionWrapper stepEvent
Stepping event to update the model values.
ClockedObjectParams Params
Parameters of ClockedObject.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
void addCapacitor(ThermalCapacitor *c)
ThermalReferenceParams Params
void setNodes(ThermalNode *n1, ThermalNode *n2)
std::ostream CheckpointOut
void startup() override
startup() is the final initialization call before simulation.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
void addResistor(ThermalResistor *r)
An abstract class that represents any thermal entity which is used in the circuital thermal equivalen...
ThermalCapacitor(const Params *p)
ThermalCapacitor.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
std::vector< ThermalReference * > references
std::vector< ThermalEntity * > entities
Abstract superclass for simulation objects.
ThermalModel(const Params *p)
ThermalModel.
Generated on Wed Sep 30 2020 14:02:14 for gem5 by doxygen 1.8.17