Skip to content

Commit

Permalink
Remove IndepVarComp from heat exchanger model so users can connect th…
Browse files Browse the repository at this point in the history
…ings to the DV values (#61)

* Remove IndepVarComp from heat exchanger model so users can connect things to the DV values

* Remove copied HXGroup internals from tests
  • Loading branch information
eytanadler authored Feb 14, 2024
1 parent 9dc5d69 commit 6fc0a1c
Show file tree
Hide file tree
Showing 2 changed files with 124 additions and 175 deletions.
64 changes: 32 additions & 32 deletions openconcept/thermal/heat_exchanger.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import numpy as np
from openmdao.api import ExplicitComponent, IndepVarComp, Group
from openmdao.api import ExplicitComponent, Group
from openconcept.utilities import DVLabel


Expand Down Expand Up @@ -1393,37 +1393,37 @@ def initialize(self):
def setup(self):
nn = self.options["num_nodes"]

iv = self.add_subsystem("dv", IndepVarComp(), promotes_outputs=["*"])
iv.add_output("case_thickness", val=2.0, units="mm")
iv.add_output("fin_thickness", val=0.102, units="mm")
iv.add_output("plate_thickness", val=0.2, units="mm")
iv.add_output("material_k", val=190, units="W/m/K")
iv.add_output("material_rho", val=2700, units="kg/m**3")

# iv.add_output('mdot_cold', val=np.ones(nn)*1.5, units='kg/s')
# iv.add_output('rho_cold', val=np.ones(nn)*0.5, units='kg/m**3')
# iv.add_output('mdot_hot', val=0.075*np.ones(nn), units='kg/s')
# iv.add_output('rho_hot', val=np.ones(nn)*1020.2, units='kg/m**3')

# iv.add_output('T_in_cold', val=np.ones(nn)*45, units='degC')
# iv.add_output('T_in_hot', val=np.ones(nn)*90, units='degC')
# iv.add_output('n_long_cold', val=3)
# iv.add_output('n_wide_cold', val=430)
# iv.add_output('n_tall', val=19)

iv.add_output("channel_height_cold", val=14, units="mm")
iv.add_output("channel_width_cold", val=1.35, units="mm")
iv.add_output("fin_length_cold", val=6, units="mm")
iv.add_output("cp_cold", val=1005, units="J/kg/K")
iv.add_output("k_cold", val=0.02596, units="W/m/K")
iv.add_output("mu_cold", val=1.789e-5, units="kg/m/s")

iv.add_output("channel_height_hot", val=1, units="mm")
iv.add_output("channel_width_hot", val=1, units="mm")
iv.add_output("fin_length_hot", val=6, units="mm")
iv.add_output("cp_hot", val=3801, units="J/kg/K")
iv.add_output("k_hot", val=0.405, units="W/m/K")
iv.add_output("mu_hot", val=1.68e-3, units="kg/m/s")
# Set the default values for promoted variables
self.set_input_defaults("case_thickness", val=2.0, units="mm")
self.set_input_defaults("fin_thickness", val=0.102, units="mm")
self.set_input_defaults("plate_thickness", val=0.2, units="mm")
self.set_input_defaults("material_k", val=190, units="W/m/K")
self.set_input_defaults("material_rho", val=2700, units="kg/m**3")

# self.set_input_defaults('mdot_cold', val=np.ones(nn)*1.5, units='kg/s')
# self.set_input_defaults('rho_cold', val=np.ones(nn)*0.5, units='kg/m**3')
# self.set_input_defaults('mdot_hot', val=0.075*np.ones(nn), units='kg/s')
# self.set_input_defaults('rho_hot', val=np.ones(nn)*1020.2, units='kg/m**3')

# self.set_input_defaults('T_in_cold', val=np.ones(nn)*45, units='degC')
# self.set_input_defaults('T_in_hot', val=np.ones(nn)*90, units='degC')
# self.set_input_defaults('n_long_cold', val=3)
# self.set_input_defaults('n_wide_cold', val=430)
# self.set_input_defaults('n_tall', val=19)

self.set_input_defaults("channel_height_cold", val=14, units="mm")
self.set_input_defaults("channel_width_cold", val=1.35, units="mm")
self.set_input_defaults("fin_length_cold", val=6, units="mm")
self.set_input_defaults("cp_cold", val=1005, units="J/kg/K")
self.set_input_defaults("k_cold", val=0.02596, units="W/m/K")
self.set_input_defaults("mu_cold", val=1.789e-5, units="kg/m/s")

self.set_input_defaults("channel_height_hot", val=1, units="mm")
self.set_input_defaults("channel_width_hot", val=1, units="mm")
self.set_input_defaults("fin_length_hot", val=6, units="mm")
self.set_input_defaults("cp_hot", val=3801, units="J/kg/K")
self.set_input_defaults("k_hot", val=0.405, units="W/m/K")
self.set_input_defaults("mu_hot", val=1.68e-3, units="kg/m/s")

dvlist = [
["ac|propulsion|thermal|hx|n_wide_cold", "n_wide_cold", 430, None],
Expand Down
Loading

0 comments on commit 6fc0a1c

Please sign in to comment.