ModelingToolkitStandardLibrary: Thermal Components

Index

Thermal Utilities

ModelingToolkitStandardLibrary.Thermal.HeatPortConstant
HeatPort(; name, T = 273.15 + 20.0, Q_flow = 0.0)

Port for a thermal system.

States:

  • T: [K] Temperature of the port. It accepts an initial value, which defaults to 273.15 + 20.
  • Q_flow: [W] Heat flow rate at the port. It accepts an initial value, which defaults to 0.0.
source
ModelingToolkitStandardLibrary.Thermal.Element1DConstant
Element1D(; name, dT = 0.0, Q_flow = 0.0)

This partial model contains the basic connectors and variables to allow heat transfer models to be created that do not store energy. This model defines and includes equations for the temperature drop across the element, dT, and the heat flow rate through the element from port_a to port_b, Q_flow.

States:

  • dT: [K] Temperature difference across the component a.T - b.T. It accepts an initial value, which defaults to 0.0.
  • Q_flow: [W] Heat flow rate from port a -> port b. It accepts an initial value, which defaults to 0.0.

Connectors:

port_aport_b

source

Thermal Components

ModelingToolkitStandardLibrary.Thermal.BodyRadiationConstant
BodyRadiation(; name, G)

Lumped thermal element for radiation heat transfer.

States:

  • dT: [K] Temperature difference across the component a.T - b.T
  • Q_flow: [W] Heat flow rate from port a -> port b

Connectors:

  • port_a
  • port_b

Parameters:

  • G: [m^2] Net radiation conductance between two surfaces # Stefan-Boltzmann constant TODO: extract into physical constants module or use existing one
source
ModelingToolkitStandardLibrary.Thermal.ConvectiveConductorConstant
ConvectiveConductor(; name, G)

Lumped thermal element for heat convection.

States:

  • dT: [K] Temperature difference across the component solid.T - fluid.T
  • Q_flow: [W] Heat flow rate from solid -> fluid

Connectors:

  • solid
  • fluid

Parameters:

  • G: [W/K] Convective thermal conductance
source
ModelingToolkitStandardLibrary.Thermal.ConvectiveResistorConstant
ConvectiveResistor(; name, R)

Lumped thermal element for heat convection.

States:

  • dT: [K] Temperature difference across the component solid.T - fluid.T
  • Q_flow: [W] Heat flow rate from solid -> fluid

Connectors:

  • solid
  • fluid

Parameters:

  • R: [K/W] Constant thermal resistance of material
source
ModelingToolkitStandardLibrary.Thermal.HeatCapacitorConstant
HeatCapacitor(; name, C, T = 273.15 + 20)

Lumped thermal element storing heat

States:

  • T: [K] Temperature of element. It accepts an initial value, which defaults to 273.15 + 20.
  • der_T: [K/s] Time derivative of temperature

Connectors:

  • port

Parameters:

  • C: [J/K] Heat capacity of element (= cp*m)
source
ModelingToolkitStandardLibrary.Thermal.ThermalResistorConstant
ThermalResistor(; name, R)

Lumped thermal element transporting heat without storing it.

States:

  • dT: [K] Temperature difference across the component a.T - b.T
  • Q_flow: [W] Heat flow rate from port a -> port b

Connectors:

  • port_a
  • port_b

Parameters:

  • R: [K/W] Constant thermal resistance of material
source
ModelingToolkitStandardLibrary.Thermal.ThermalCollectorFunction
ThermalCollector(; name, m = 1)

Collects m heat flows

This is a model to collect the heat flows from m heatports to one single heatport.

States:

Connectors:

  • port_a1 to port_am
  • port_b

Parameters:

  • m: Number of heat ports (e.g. m=2: port_a1, port_a2)
source

Thermal Sensors

ModelingToolkitStandardLibrary.Thermal.RelativeTemperatureSensorConstant
RelativeTemperatureSensor(; name)

Relative Temperature sensor.

The relative temperature port_a.T - port_b.T is determined between the two ports of this component and is provided as output signal in kelvin.

States:

  • T(t): [K] Relative temperature a.T - b.T

Connectors:

  • port_a
  • port_b
source
ModelingToolkitStandardLibrary.Thermal.HeatFlowSensorConstant
HeatFlowSensor(; name)

Heat flow rate sensor.

This model is capable of monitoring the heat flow rate flowing through this component. The sensed value of heat flow rate is the amount that passes through this sensor while keeping the temperature drop across the sensor zero. This is an ideal model, so it does not absorb any energy, and it has no direct effect on the thermal response of a system it is included in. The output signal is positive, if the heat flows from port_a to port_b.

States:

  • Q_flow(t): [W] Heat flow from port_a to port_b

Connectors:

  • port_a
  • port_b
source
ModelingToolkitStandardLibrary.Thermal.TemperatureSensorConstant
TemperatureSensor(; name)

Absolute temperature sensor in kelvin.

This is an ideal absolute temperature sensor which returns the temperature of the connected port in kelvin as an output signal. The sensor itself has no thermal interaction with whatever it is connected to. Furthermore, no thermocouple-like lags are associated with this sensor model.

States:

  • T(t): [K] Absolute temperature

Connectors:

  • port
source

Thermal Sources

ModelingToolkitStandardLibrary.Thermal.FixedHeatFlowConstant
FixedHeatFlow(; name, Q_flow = 1.0, T_ref = 293.15, alpha = 0.0)

Fixed heat flow boundary condition.

This model allows a specified amount of heat flow rate to be "injected" into a thermal system at a given port. The constant amount of heat flow rate Q_flow is given as a parameter. The heat flows into the component to which the component FixedHeatFlow is connected, if parameter Q_flow is positive.

Connectors:

  • port

Parameters:

  • Q_flow: [W] Fixed heat flow rate at port
  • T_ref: [K] Reference temperature
  • alpha: [1/K] Temperature coefficient of heat flow rate
source
ModelingToolkitStandardLibrary.Thermal.FixedTemperatureConstant
FixedTemperature(; name, T)

Fixed temperature boundary condition in kelvin.

This model defines a fixed temperature T at its port in kelvin, i.e., it defines a fixed temperature as a boundary condition.

Connectors:

  • port

Parameters:

  • T: [K] Fixed temperature boundary condition
source
ModelingToolkitStandardLibrary.Thermal.PrescribedHeatFlowConstant
PrescribedHeatFlow(; name, T_ref = 293.15, alpha = 0.0)

Prescribed heat flow boundary condition.

This model allows a specified amount of heat flow rate to be "injected" into a thermal system at a given port. The amount of heat is given by the input signal Q_flow into the model. The heat flows into the component to which the component PrescribedHeatFlow is connected, if the input signal is positive. If parameter alpha is > 0, the heat flow is multiplied by 1 + alpha*(port.T - T_ref) in order to simulate temperature dependent losses (which are given a reference temperature T_ref).

Connectors:

  • port
  • RealInputQ_flow Input for the heat flow

Parameters:

  • T_ref: [K] Reference temperature
  • alpha: [1/K] Temperature coefficient of heat flow rate
source
ModelingToolkitStandardLibrary.Thermal.PrescribedTemperatureConstant
PrescribedTemperature(; name)

This model represents a variable temperature boundary condition.

The temperature in kelvin is given as input signal to the RealInputT. The effect is that an instance of this model acts as an infinite reservoir, able to absorb or generate as much energy as required to keep the temperature at the specified value.

Connectors:

  • port
  • RealInputT input for the temperature
source