Skip to content

Convert Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL to variable - #1273

Open
xjjiang wants to merge 14 commits into
OpenMDAO:mainfrom
xjjiang:Var_LOAD_DISTRIBUTION_CONTROL
Open

Convert Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL to variable#1273
xjjiang wants to merge 14 commits into
OpenMDAO:mainfrom
xjjiang:Var_LOAD_DISTRIBUTION_CONTROL

Conversation

@xjjiang

@xjjiang xjjiang commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Summary

Option Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL is converted to an Aviary variable.

This is part of issue #598.

Related issue: #911.

Related Issues

  • Resolves #

Backwards incompatibilities

None

AI Usage

A quartic polynomial interpolation is generated by ChatGPT to get a smooth version of load_intensity_by_factor(). It interpolates at 1, 1.5, 2, 2.5, and 3.

@cmbenne3

cmbenne3 commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

How much of this issue is addressed by this PR:
#911
Let's descope this issue if some of it is addressed by this PR!

@xjjiang

xjjiang commented Aug 24, 2026

Copy link
Copy Markdown
Contributor Author

How much of this issue is addressed by this PR: #911 Let's descope this issue if some of it is addressed by this PR!

Only bullet number 3 of Issue #911 is addressed. Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL is allowed to be in the interval [1, 3].

Bullets number 1 and 2 are related (for Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL = 0). I didn't implement it in this PR.

@cmbenne3

Copy link
Copy Markdown
Contributor

How much of this issue is addressed by this PR: #911 Let's descope this issue if some of it is addressed by this PR!

Only bullet number 3 of Issue #911 is addressed. Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL is allowed to be in the interval [1, 3].

Bullets number 1 and 2 are related (for Aircraft.Wing.LOAD_DISTRIBUTION_CONTROL = 0). I didn't implement it in this PR.

Thanks @xjjiang - I have made a note on the Issue that part 3 has already been done in this PR.

Comment thread aviary/subsystems/mass/flops_based/wing_detailed.py Outdated
Comment thread aviary/subsystems/mass/flops_based/wing_detailed.py
@cmbenne3

cmbenne3 commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

I used AI to help create a visualization of the change in intensity methods showing the differences in value, gradient and the smoothed discontinuity in gradient.
It's different to what FLOPS did, it's going to be better for gradient based optimization. I don't have a feeling for overall how much difference this is going to have, but it looks like a good change to me at this point!

Load_Intensity_Smoothing

load_intensity_smoothing_test.txt

I think we could do with some 2nd opinions from @jkirk5 and @Kenneth-T-Moore on this change!

@xjjiang

xjjiang commented Sep 2, 2026

Copy link
Copy Markdown
Contributor Author

2nd opinions from @jkirk5 and @Kenneth-T-Moore on this change

FLOPS does a simple linear interpolation. It will fail for gradient. I can wait for Jason and Ken. Before we discuss, I will keep function load_intensity_by_factor() even though it is replaced by smooth_load_intensity_by_factor().

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants