The JuliaSim software is available for preview only. Please contact us for access, by emailing [email protected], if you are interested in evaluating JuliaSim.

JuliaSimStdLib contains basic thermal components for modeling heat transfer and fluid heat flow.

**Function**: `ThermalGround(;name)`

**Description**: Thermal port for 1-dimensional heat transfer with temperature set to zero. Note that specifying the macro `@named sys = ThermalGround()`

is equivalent to setting `sys = ThermalGround(;name, sys)`

. Either method will suffice, and there is no need to type the name twice. The same principle applies to the other thermal components.

**Function**: `HeatCapacitor(;name, C = 1.0)`

**Observables**:

`C`

: heat capacity (zero or positive)

**State**:

temperature (in Kelvin)

**Connectors**:

heat port

**Function**: `ThermalConductor(;name, G = 1.0)`

**Observables**:

`G`

: thermal conductance

**Connectors**:

two heat ports

**Function**: `ThermalResistor(;name, R = 1.0)`

**Description**: The model operates on the same principle as `ThermalConductor`

, but relies on thermal resistance instead of thermal conductance.

**Observables**:

`R`

: thermal resistance

**Connectors**:

two heat ports

**Function**: `ConvectiveConductor(;name; G = 1.0)`

**Description**: Model of linear heat convection.

**Observables**:

`G`

: convective thermal conductance

**Connectors**:

two heat ports (for modeling of the fluid flow over the solid)

**Function**: `ConvectiveResistor(;name; R = 1.0)`

**Description**: Model of linear heat convection. Works analogously to the above model, but relies on convective thermal resistance instead of convenctive thermal conductance.

**Observables**:

`R`

: convective thermal resistance

**Connectors**:

two heat ports (for modeling of the fluid flow over the solid)

**Function**: `BodyRadiation(;name; G = 1.0)`

**Description**: Thermal radiation model.

**Observables**:

`G`

: net radiation conductance between two surfacesStefan-Boltzmann constant

**Connectors**:

two heat ports

**Function**: `TemperatureSensor(;name)`

**Description**: Ideal absolute temperature sensor which outputs the temperature (in Kelvin) of the connected port.

**Connectors**:

heat port

**Function**: `RelativeTemperatureSensor(;name)`

**Description**: The output of the sensor is the relative temperature, i.e., the difference of the two ports, given in Kelvin.

**Connectors**:

two heat ports

**Function**: `HeatFlowSensor(;name)`

**Description**: The model monitors the heat flow rate of the component. Its output is positive when the direction the heat flow is from the first port to the second one.

**Connectors**:

two heat ports

**Function**: `FixedHeatFlow(;name, Q_flow=1.0, T₀=293.15, α=0.0)`

**Observables**:

`Q_flow`

: the constant amount of heat flow rate`T₀`

: the reference temperature`α`

: this parameter simulates temperature-dependent loss (if the specified value is not 0)

**Connectors**:

heat port

**Function**: `FixedTemperature(;name, T = 0.0)`

**Description**: The model defines a fixed temperature (in Kelvin) at a given port.

**Observables**:

`T`

: temperature (in Kelvin)

**Connectors**:

heat port