Source code for RCAIDE.Library.Plots.Thermal_Management.plot_thermal_management_performance

# RCAIDE/Library/Plots/Thermal_Management/plot_thermal_management_performance.py
# 
# 
# Created:  Sep 2024, S. Shekar
# ----------------------------------------------------------------------------------------------------------------------
#   plot_thermal_management_performance
# ----------------------------------------------------------------------------------------------------------------------   
[docs] def plot_thermal_management_performance(results, save_figure = False, show_legend = True, file_type =".png", width = 12, height = 7): """ Checks and plots all components of a thermal management system. Parameters ---------- results : Results RCAIDE results data structure containing: - segments[i].analyses.energy.vehicle.networks Network data containing: - coolant_lines List of coolant circuits with: - battery_modules List of battery thermal management systems - heat_exchangers List of heat exchanger components - reservoirs List of thermal reservoir components - identical_battery_modules : bool Flag indicating if batteries are identical save_figure : bool, optional Flag for saving the figure (default: False) show_legend : bool, optional Flag to display component legends (default: True) file_type : str, optional File extension for saved figures (default: ".png") width : float, optional Figure width in inches (default: 12) height : float, optional Figure height in inches (default: 7) Returns ------- None Function generates and displays/saves plots for each component Notes ----- Creates visualizations showing: * Battery thermal management system performance * Heat exchanger operating conditions * Reservoir thermal states * Overall system behavior For each component type: * Calls appropriate plotting function * Passes component-specific data * Maintains consistent formatting * Handles identical/unique components **Definitions** 'Thermal Management System' Network of components managing heat transfer 'Battery Module' Battery with thermal management system 'Heat Exchanger' Component transferring heat between fluids 'Reservoir' Component storing thermal energy See Also -------- RCAIDE.Library.Plots.Thermal_Management.plot_air_cooled_conditions : Air-cooled system analysis RCAIDE.Library.Plots.Thermal_Management.plot_cross_flow_heat_exchanger_conditions : Heat exchanger analysis RCAIDE.Library.Plots.Thermal_Management.plot_reservoir_conditions : Reservoir analysis """ for network in results.segments[0].analyses.energy.vehicle.networks: for coolant_line in network.coolant_lines: for tag, item in coolant_line.items(): if coolant_line.identical_battery_modules: if tag == 'battery_modules': for i, battery in enumerate(item): for btms in (battery): if i == 0: btms.plot_operating_conditions(results,coolant_line,save_figure,show_legend,btms.tag,file_type,width, height) else: for _, battery in enumerate(item): for btms in (battery): btms.plot_operating_conditions(results,coolant_line,save_figure,show_legend,btms.tag,file_type,width, height) if tag == 'heat_exchangers': for heat_exchanger in item: heat_exchanger.plot_operating_conditions(results,coolant_line,save_figure,show_legend,heat_exchanger.tag,file_type,width, height) if tag == 'reservoirs': for reservoir in item: reservoir.plot_operating_conditions(results,coolant_line,save_figure,show_legend,reservoir.tag,file_type,width, height) return