This change adds active thermal components to OpenConcept. Additionally, components to help better interface the new components with aircraft models and usage examples have been added. The following components and examples are the notable additions:
SimpleHeatPump in thermal.py: heat pump with efficiency based on fraction of Carnot efficiency
HeatPumpWithIntegratedCoolantLoop in thermal.py: SimpleHeatPump integrated into hot side and cold side coolant heat transfer components for easy integration directly into coolant loops
TwinSeriesHybridElectricPropulsionRefrigerated in thermal_series_hybrid.py: an example of HeatPumpWithIntegratedCoolantLoop implemented into a propulsion model to add active cooling for the battery and electric motor
HybridTwin_active_thermal.py: an example of the refrigerated propulsion system integrated into a working aircraft model; shows usage of the hot and cold side set temperatures along with the refrigerator bypass switch to control the refrigerator
To implement the above, general purpose utilities were added. Of the ones added, the following are the most generally useful:
SelectorComp in selector.py: takes in any number of user-specified inputs and routes one to the single output depending on the value of the selector input; used to control the refrigerator bypass
MaxComp and MinComp in max_min_comp.py: takes a vector input and returns a scalar output that is the max/min of the input
Type of change
What types of change is it?
Select the appropriate type(s) that describe this PR
New feature (non-breaking change which adds functionality)
Testing
Tests have been added for the new components and an integration test was added for the new example aircraft, HybridTwin_active_thermal.
Checklist
Put an x in the boxes that apply.
[x] I have run unit and regression tests which pass locally with my changes
[x] I have added new tests that prove my fix is effective or that my feature works
Purpose
This change adds active thermal components to OpenConcept. Additionally, components to help better interface the new components with aircraft models and usage examples have been added. The following components and examples are the notable additions:
SimpleHeatPump
in thermal.py: heat pump with efficiency based on fraction of Carnot efficiencyHeatPumpWithIntegratedCoolantLoop
in thermal.py:SimpleHeatPump
integrated into hot side and cold side coolant heat transfer components for easy integration directly into coolant loopsTwinSeriesHybridElectricPropulsionRefrigerated
in thermal_series_hybrid.py: an example ofHeatPumpWithIntegratedCoolantLoop
implemented into a propulsion model to add active cooling for the battery and electric motorTo implement the above, general purpose utilities were added. Of the ones added, the following are the most generally useful:
SelectorComp
in selector.py: takes in any number of user-specified inputs and routes one to the single output depending on the value of the selector input; used to control the refrigerator bypassMaxComp
andMinComp
in max_min_comp.py: takes a vector input and returns a scalar output that is the max/min of the inputType of change
What types of change is it? Select the appropriate type(s) that describe this PR
Testing
Tests have been added for the new components and an integration test was added for the new example aircraft,
HybridTwin_active_thermal
.Checklist
Put an
x
in the boxes that apply.