Aviary icon indicating copy to clipboard operation
Aviary copied to clipboard

BWB components in mass/flops_based subsysterms

Open xjjiang opened this issue 3 months ago • 3 comments

Summary

This PR implements the mass subsystem for BWB aircraft. The BWB components are:

  • BWBFurnishingsGroupMass (vs. TransportFurnishingsGroupMass)
  • BWBFuselageMass (vs. TransportFuselageMass)
  • BWBAftBodyMass (new for BWB)
  • BWBWingMiscMass (vs. WingMiscMass)
  • BWBDetailedWingBendingFact (vs. DetailedWingBendingFact)

Unit testings against these new components are added. All the results are compared to FLOPS Fortran code runs.

There are two features to know:

  1. In a previous PR (#872) we created the fuselage layout algorithms (simple layout and detailed layout). Other scenarios can be added if needed.
  2. For BWB, there are always detailed wings. They are either given (BWBUpdateDetailedWingDist) or created (BWBComputeDetailedWingDist). This means that number of input wing stations is always positive. If input wing stations are not provided, FLOPS adds three points. We call this case the simple wing case. Otherwise, we say that we have a detailed wing case.

So, theoretically, we should have four test cases: simple layout + simple wing, simple layout + detailed wing, detailed layout + simple wing, and detailed layout + detailed wing. In this PR, however, we only have two test cases: simple layout + simple wing (see models/aircraft/blended_wing_body/bwb_simple_FLOPS_data.py), and detailed layout + detailed wing (see models/aircraft/blended_wing_body/bwb_detailed_FLOPS_data.py).

In anti_icing.py and starter.py, nacelle average diameter (Aircraft.Nacelle.AVG_DIAMETER) is scaled by thrust ratio defined by:

Aircraft.Engine.SCALED_SLS_THRUST / Aircraft.Engine.REFERENCE_SLS_THRUST

in order to match with FLOPS runs. In the current test cases, this ratio is always 1.

Related Issues

  • Resolves #

Backwards incompatibilities

None

New Dependencies

None

xjjiang avatar Sep 27 '25 03:09 xjjiang

By now, unit testing on FLOPS based mass for simple layout and simple wing is done.

xjjiang avatar Nov 14 '25 00:11 xjjiang

By now, unit testing on FLOPS based mass for detailed layout and detailed wing is done.

xjjiang avatar Nov 19 '25 19:11 xjjiang

Convert NETAW to Aircraft.Wing.NUM_INPUT_STATION_DIST. We don't need it in general but need it for BWB.

xjjiang avatar Nov 20 '25 22:11 xjjiang