Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Lots of new models for clean sheet aircraft design (#64)
* Add tags to the mult-div comp * Convergence improvements for the incompressible duct. Add some analytic derivatives and create a full duct model that can take an external HX model as connections * Added lower bounds on some components * various tweaks to duct test group for diagnostics * Limit throttle to 1.05 rated * Tweaks and doc updates to N3hybrid model * remove dymos * remove dymos import, reduce tol on B737 test due to differences in scipy model training behavior * Add heat sinks specific to motors and batteries * Further reduce tol of 738 test * Fix docstring indentation * WIP: N3hybrid (#21) * First dymos-based phase * add hybrid engine surrogate model * Add ISA temp offset to standard atmosphere * Add dymos to requirements * Install dymos from git * continued install problems * remove dymos test scratch folder * pin openmdao for now * identify why 737 test is failing * Fix trajectory test bugs introduced during dymos work * Add a "BasicMission" with a ground roll phase that's not a real BFL phase * Minor change to CFM56 surrogate * Add tags to the mult-div comp * Convergence improvements for the incompressible duct. Add some analytic derivatives and create a full duct model that can take an external HX model as connections * Added lower bounds on some components * various tweaks to duct test group for diagnostics * Limit throttle to 1.05 rated * Tweaks and doc updates to N3hybrid model * remove dymos * remove dymos import, reduce tol on B737 test due to differences in scipy model training behavior * Add heat sinks specific to motors and batteries * Further reduce tol of 738 test * Fix docstring indentation * Fix docstring and reference to battery heatsink model from Eytan's PR * ignore scratch folder * Battery tests done * Reg tests for the motor heat sink * First draft of the hybrid single aisle with some todos * Resize HX for lower hot side pressure drop * Thermal optimization is functional * deprecate a couple of debugging things * Add pressure losses proportional to dynamic pressure * Optimization with lossy diffuser * Add proportional losses to the compressible duct * Added refrigerator capability for the hybrid single aisle and compressible duct robustness improvements * Add refrigerator weight to hybrid single aisle and reformulate control parameter * base case * Added LiquidCooledMotor to ParallelTMS * Update hydraulic diameter computation and add regression tests against Kays and London empirical coefficients for the heat exchanger * Add a comprehensive HX reg test case * Add compressible duct reg tests vs pycycle * Add reg tests that don't depend on pycycle * Add warning when pycycle not installed * Added heat pipe model and tests * Removed duplicate vapor temp drop calc and changed defaults from 6061 to 7075 aluminum * Fix trajectories for OM 3.3+ (works on 3.7 dev) * Roll openmdao version, fix a couple examples * Heat pipe docstring fixes * Tested w/ openmdao 3.5 and still works so relaxing dependency pinning * Update duct test for latest pycycle * tweaks to nasa model * repo maintenance * Add a warning to cached surrogate * - Add tests for hose and pump comps - Add effectiveness/NTU calc for the motor heat sink comp - Refactor tms and heat sink tests - Clean up unused code in thermal.py * remove hybrid single aisle examples until conclusion of trees study * implements promote_add and promote_mult convenience funcs * refactor the empirical engine decks and update the n+3 design * missed a promote in the ducts comp * add two geom design vars to the hx group * Change name of top-level integrator comp to allow multimission problems at the top-level * lower bound on duct mass flow for convergence * Updated engine maps * New chiller component * Make case cooling coefficient a user parameter * Change bounds on duct comp * Add a muliple trajectory plot utility * Remove a print statement * Added tests for chiller * Removed eff_factor option from COPExplicit and added docstrings * Changed iv comp to set_input_defaults for steady flight phase so linear interpolator can be connected for trajectory optimization * Corrected documentation for I/O of updated HeatPumpWithIntegratedCoolantLoop * Changed default batteries per bandolier from 21 to 82 * Added hydrogen tank composite thickness estimate with netting and tests * Added liner and insulation weight components and simplified composite calc * Made some fixes and added validation * Moved hydrogen work to subfolder in components * Reorganized hydrogen folder * Prototypes (in progress) of a couple necessary parts for boil-off estimation * Added fairing to outside of insulation * Added derivatives to components * Added tests for hydrogen tank thermals * Attempt for full tank component, but still in progress * Added tests for some new components * Added components and modified to make it solve semi-robustly * Missed some parentheses, oops * Added analytic derivatives to COPVHeatFromEnvironmentIntoTankWalls * Added more tests for hydrogen thermal comps * Added LH2 tank tests and made a couple more corrections * Note about LH2 tank initial fill level * First attempt at good boil-off model (still not functional) * Failed attempt at better boil off model * Added GH2 reservoir and test * New LH2 tank looking decent, need to change a few connections still * LH2 tank more connections made but still not solving * Working LH2 tank! Now just need venting... * Removed arccos from heat into propellant to vastly increase robustness but slightly decrease accuracy * Added venting and heating features to tank, updated tests * Fixed deprecation error in ExecComp * Added validation for LH2 tank * Added ability to pull LH2 from tank in addition from GH2 * Added lower bound to ullage temperature * Added lower bound to pressure in ullage ODE * Added more bounds for physical behavior * Updated defaults of LH2 tank to better reflect real world * Updated LH2 tank tests for new default options * Small change to LH2 tank docs * Removed TMS to match mdolab/master * Ran black * Added proper validation script for MHTB boil-off * Working on new boil off model * Boil off model gets reasonable results, needs testing, cleanup, and verification of ODE * Cleaned up boil off API and improved initial guess for solver * Added tests and fixed derivatives for fill level calc * Tested boil off ODE against EBM * Added derivatives for hydrogen property functions * Analytic derivatives for half of the boil of ODE outputs * Analytic derivatives for V_dot_gas in boil off ODE * Added derivatives for T_dot_liq * Analytic partials for boil off ODE done * Fixed incorrect derivative when T_dot_liq is zeroed out * Boil off with complex step to check works great now * New structural model for vacuum tank * Added air thermal conductivity * Added viscosity * Ran black * Added vacuum wall model * Starting new thermal model * Getting thermal model together, still need to make it work * Thermal model is done-ish * First pass at final tank, needs robustness and some other stuff * Added MLI weight * Added tests for LH2 tank * Trying to improve robustness of the boil-off * Added integrated test for boil off model * Removed previous versions of files for LH2 tank * Added rubberized turbofan that can do hydrogen * Added options to LH2 tank for more customizability * Consistent radius default * Trying to figure out what's going on with the solvers and guess_nonlinear * Adjusted tolerance on LH2Tank NLBGS solver * Boil off model should now work with mission integrator linking properly * LH2 tank test was failing because there was no top level nonlinear solver after NLBGS was removed * Actually....I added back in the NLBGS solver because the Newton was getting funny results * Working on improving the tank model robustness * Added some notes for myself and corrected a docstring * Added LH2 tank without boil-off model * Added tests for new LH2 tank comps * Added LH2 tanks to based energy storage imports * Removed viscosity and conductivity comps * New boil off model, still needs robustness improvement and derivatives * Fixed error in boil off * adding SOFC fuel cell model * adding sizing functions, fuel cell PEM, and updating SOFC * Adding Venkats sizing file, does not run * Making some fixes in sizing stuff * Fixed wing weight typo in init * First pass at fixed jet transport weight model * Updated docstrings and init file * Vastly improved jet transport weight estimation * Fixing up sizing example * First pass at jet transport drag buildup * Added tests for new drag buildup * Tests for geometry comps * Cylinder wetted area component * No more approximation of tail lever arm * Added tests and docstrings for tail volume coefficient sizing * Added CL max estimation * Removing old sizing * Modified RubberizedTurbofan to take in rated thrust instead of number of engines * Moved CD_nonwing up to the VLMDragPolar and enabled it to be a vector input * Formatted and modified FullMissionWithReserve * Extended PolarDrag to accept vectorized CD0 * Changed name of CL max output * Initial pass at setting up B738 sizing run script * Done with mission analysis of Boeing 737-800 with empirical weight and drag * Ran black * Removed n2 from drag test * Changed some variables bounds * Increased upper bounds in basic mission segment durations * Note on engine model and profile variable bound setting * Added wing planform geometry utilities * Corrected docstring * Added wing weight multiplier * Modified equipment weight to make pressurized cabin geometry more general * Removed unused option * Added BWB weight model * Added BWB drag estimate that is just nacelles and dirty stuff * Tools to compute planform area of parts of the wing * Max lift coefficient estimation via the critical section method * Added todo * Ran black * Removed some unused imports * Minor changes to critical section method * Added Schur solver for critical section CL max * Reduced landing gear CD for BWB * Added output documentation for BWB weights * Removed CODEOWNERS to avoid unneccesary PR reviews while developing hyfi, ADD BACK BEFORE PUSH TO MAIN * Utility to compute mean aerodynamic chord of OpenAeroStruct section-defined wing * Forgot a summation in MAC calc * Fixed docstrings * Added comps to compute wave drag * Fix a bug in the wave drag calculation * Fix error in flap CLmax calculation * Extension to critical section method (#54) * Restructure * Extended critical section method to handle varying Clmax across span * Added thermal tests back * Corrected heat leak multiplier in thermal calcs * Removed stale code and other code that is not ready to merge * Fixed BWB test * Fixed options in BWB test * One more bit of code not ready to merge * Remove other dated code * Fixed convergence and added test for B738_sizing example * Add back CODEOWNERS file * Inconsequential rendition thump * Removed old B738 sizing data * Ran black * Fix most flake8 errors * Fixed ascii art * Try to fix remaining flake8 * Indentation fix * Documentation for new components * Fixed some errors I noticed in the documentation * Address most comments * Upper bound on OpenMDAO version * Forgot a comma * Oldest OpenMDAO version was being overridden on OpenConcept install * Try OM 3.16 * Try OM 3.17 * 3.17 it is * Bump again to 3.21 to fix spline shape problem * Add code for checking against OAS and weighted avg of cos(sweep) rather than sweep directly * Reorganized to remove duplicated code * Tightened Newton solver tolerance to make testing more consistent * Fixing black and flake8 * Make up your mind flake8 * Better descriptions of takeoff|h behavior * Even more descriptive takeoff|h behavior --------- Co-authored-by: Ben Brelje <[email protected]> Co-authored-by: Ben Brelje <[email protected]> Co-authored-by: Cody Karcher <[email protected]>
- Loading branch information