Wing sweep and CP position

Hello, I would like to add to a problem that I have mentioned before here and
in the forums, and that problem is how wing sweep affects the CP position. For
the two unlocked airliners coming with the sim, the 747-8 and the A320, it can
be clearly seen that for the both of them, featuring a significant amount of
wing sweep, their CPs appear to be in front of their CGs, by a significant
amount. My hypothesis is that the sim considers the longitudinal position of
the MAC to be the same as the position of the wing section located at the
centre of the fuselage. It can be seen by using the Sim Forces overlay
alongside with the Pitch overlay and the Weight window from the debug UI. When
setting the wing sweep to 0, the CG and CP positions correspond to the one set
in the config file. However, as soon as a sweep angle is introduced, the
fuselage centre section of the wing starts shifting forward, as seen using the
Sim Forces overlay, and so does the CP in the Pitch overlay. I think that to
solve this problem, the MAC and the CP longitudinal position should become
independent of the wing section at the centre of the fuselage. Please take
that into consideration as it is an important topic having big consequences
for the physics of the simulator.

Here are some screenshots illustrating my thinking:


These first two screenshots
show the default 747, without any modification. It can be seen that the CG is
at 4.56% MAC according to the weight window, and that the CG is at -6.50 ft,
while the aero centre is located at -14.00 ft. The LEMAC is at -4.83 ft and
the TEMAC is at -41.51. However, and as it can be seen in the second
screenshot, the wing pressure centre is located at -14.3% MAC, which means
outside of the MAC, which does not make sense, while the wing aero center is
located at 99% MAC, which would mean at the TE, which does not make more
sense. It can also be seen that the green vector (lift?) origin from the pitch
overlay seems to be the position of the wing pressure centre as it shows in
front of the MAC. Now if changing only the sweep parameter from the original
value of 41 to 0, here is what we obtain:

This time, it can be noticed
that the CG and aero centre have the same positions as before (-6.50ft and
-14.00 ft), the LEMAC and TEMAC as well (-4.83 ft and -41.51ft), but this time
the wing pressure centre is located at 32.1% MAC and that the wing lift centre
is located in the same spot (32.0% MAC). This time, the wing aerodynamic
centre shows 0% MAC (99% before the modification). I think this example shows
exactly the point I am trying to make. The wing sweep has dramatic
consequences on the flight model, and the current calculations are wrong.

Hi MSFS team, can you advise on this? Is the only way to have proper swept
wing logic by using a WASM module? From what Romain has mentioned, there are
some serious issues with how the swept wing behaves. In fact I am willing to
bet that PMDG and other major devs are probably using WASM for the flight
model for their swept wing models. If this is the only way can you please
expedite some documentation on using WASM for flight models? Thanks.

PMDG and “other major devs” are not using WASM for their flight model.

Hello. Just trying to collect some more info before we review this. According
to you, changing the wing sweep angle shouldn’t have any influence on the real
CP at all ? From what I understood from our FM people (assuming I understood
everything correctly :slight_smile: ), with an airliner with important wing sweep and
twist, you can have a situation where the outer part of the wing will have 0
AOA hence 0 lift, and the inner part of the wing will produce all the lift.
The inner part being in front, the true CP will be shifted forward. Regards,
Sylvain

Well I stand corrected. That is good news to hear. Thanks Sylvain.

Hello @FlyingRaccoon, Thanks for your comment. “ According to you, changing
the wing sweep angle shouldn’t have any influence on the real CP at all ?

This is not exactly what I am saying. According to my observations, adding
wing sweep in the simulator is moving the reference chord position forward,
when it should not. You can test that yourself by changing the sweep angle to
0 and comparing how the reference chord had moved aft compared to the default
case. Another clue to this happening is how the empty CG position changes in
%MAC, without changing the empty CG position in the configuration file. The
reference chord position is set in the flight_model.cfg file by using the
aero_center_lift parameter, which by positioning the aerodynamic center of the
wing (25% MAC) is also setting the MAC position alongside the aircraft
longitudinal axis. The problem is that this position should not be modified by
the simulator when adding sweep to the wing. This position is already
considering the wing sweep of the aircraft. Indeed, if you consider an
aircraft with a straight wing and a taper ratio of 1 (constant chord along the
span), the MAC position and the wing longitudinal positions will coincide.
However, if you add wing sweep to this aircraft, the MAC position will be
moved AFT compared to the first example. The MAC position is sometimes
directly given in the TCDS, as it is the case for the older variants of the
747 (1258 in aft of datum). “ From what I understood from our FM people
(assuming I understood everything correctly :slight_smile: ), with an airliner with
important wing sweep and twist, you can have a situation where the outer part
of the wing will have 0 AOA hence 0 lift, and the inner part of the wing will
produce all the lift. The inner part being in front, the true CP will be
shifted forward.
“ 0 AOA does not necessarily 0 lift unless we are talking
about a symmetrical airfoil. By the way, in the debug UIs, the AOA indicated
does not include the angle of incidence of the wing. For example, an aircraft
in level flight, with a pitch of 4° and a wing angle of incidence of 2° should
have an AOA of 6° (assuming no twist). In the simulator, with this example,
the debug UIs show an AOA of 4°. In the case of the 747, with a wing angle of
incidence of 2°, a wing twist of -3°, a pitch of 4° (level flight), the wing
root AOA should be equal to 6°, while the wing tip AOA should be equal to 3°,
hence the full wing creating positive lift. To see an AOA of 0° for the wing
tip, it would require the plane to fly level with a pitch of 1° (pitch = 1°
==> root AOA = 3° ==> tip AOA = 0°). And even then, assuming same airfoil
across the span, which I guess MSFS does, the tip would create upward positive
lift. That is a long answer, and hopefully I was clear. Let me know if that
was not the case.

And then we come to the extreme case - Concorde (which I am currently working
on and the inbuilt behaviours are potentially going to see the project
shelved). There appears to be no way to actually create a delta wing, nor a
wing with multiple sweep angles. However, the closest we can get is a highly-
swept wing of 55 degrees. Combine this with a CG%MAC range also in the 50s
(52.5% for take off, moving aft during flight) and the potential problems can
already be seen. It flies reasonably ‘okay’ if you dive it first to high speed
/ low angles of attack but if you bring it down to circuit speeds (at which
you could be looking for AoAs of between 7 and 12.5 degrees) the forward
movement of the CP causes backflips, absolutely uncontrollable. At those high
angles of attack, most of Concorde’s lift comes from the vortex created on the
upper surface of the wing, which is stronger the further aft you get.
Obviously, this has not been simulated in the core flight model (I accept it
would be a lot of work for very little return) but when so much else which is
Concorde-specific has been modelled (intake ramps and the control of Mach
number of air entering the intake, for example) it is doubly frustrating to
see the entire balance of the aircraft being ruined with seemingly no way for
us to take control of this behaviour.

Have you tried setting the compute_aero_center parameter to 1? It will move
the “wing” (the one drawn by the sim forces debug UI) to the back and it will
no longer match the 3D model, but it should be able to fly. It works for the
747, however Concorde being a tail-less design, I do not know if it would work
in your case.

Hello, Did you have a chance to review this topic? Thanks!

Hello again, Any news on that topic? Thanks.

Hello @FlyingRaccoon, I keep investigating this issue and I have to disagree
partly with the explanation of your people. Here is a scheme showing the span-
wise lift distribution for different wing shapes:

As you can see, the higher lift
coefficients are generated around mid-span for the wing, and that would
explain why the CP doesn’t get shifted FWD, but AFT. It looks to me that when
inducing sweep, in the sim, the CP is moved FWD with the chord section located
at the centre line of the fuselage. To reflect the above figure, nothing
should happen to CP position. I hope I am clear. Again, I am free and
available to explain this directly via a Teams or any other way.

Hello @boufogre From what you show here and the
explanations I got from the FM devs, I think the difference is the wing twist
your scheme is not considering. I am paraphrasing the FM devs: When you add
sweep to a twisted wing, there’s more positive lift towards the front, and
more negative lift towards the back (especially at high speed). So the CP
actually moves. In addition, on a high sweep angle wing, CP position will move
a lot depending on twist and incidence. Our method is to align wing surfaces
depending on a CP position we explicitly set in the cfg. But that CP is
averaged on the chord, independently from sweep and incidence . Otherwise,
every time incidence or sweep would be changed, you’d have to readjust the CP
position to realign the wing geometry. It would be hard to tweak. So instead,
the real CP in the sim will match the one in the cfg only at a certain
incidence, and that will change depending on twist and sweep. Does that make
sense? New debug information will appear with SU9 regarding this: We display
the CP position in a local chord reference for several wing sections. It
should always be around 25%, let’s say in a 15% to 35% bracket. This is the
case in this example on all sections. We also display the CP position in %MAC.
It will show that everything happens between 0 and 100% MAC when there’s no
sweep, as the mean chord matches each section chord. But if you have a high
sweep angle, the local chord is not aligned at all with the mean chord so we
go from -25%MAC to 135%MAC. And if you add twist to that model, you can have
negative lift at the tip of the wing (135%MAC) causing a big displacement of
the CP. I hope this helps you understanding how the current model works.
Please take advantage of the upcoming SU9 to check out those new debug values
and come back to us if there’s more explanations needed or you if you have
more feedback. Regards, Sylvain

Would it not have been easier and more practical to give us the ability (as in
previous sims) to directly position the centre of pressure? A position which,
if left blank, could have left it entirely to your code but if used could
offset the calculated position by the amount entered? This would have solved
the delta wing issue and allowed us to define correctly a delta wing rather
than having a high sweep and a tailplane (which is how it currently having to
be set, and presumably will cause problems with the upcoming CFD?) It would
also solve the similar issue we are currently having with a straight-wing GA
aircraft, which appears to be rooted in the lack of any airfoil section data
being taken into account.