News:

Precision Simulator update 10.174 (26 April 2024) is now available.
Navburo update 13 (23 November 2022) is now available.
NG FMC and More is released.

Main Menu

Problem with VNAV in multiple constraints waypoint

Started by tango4, Mon, 16 Jan 2017 21:40

tango4

Good evening Hardy,
Sorry to bother you once again during your autostart work.

I encounter a strange behavior in VNAV computed descent profile when making an arrival at LFPG. I noticed that on a given example, don't know if it happens elsewhere of if there is a logical explanation.

Here is the situation to see the issue I am talking about:
https://www.dropbox.com/s/pqovjuy1rnirxsb/VNAV%20Problem%20STAR%20LFPG%20MATID3E%20LORNI3E%20Trans%20ILS09L.situ?dl=0
When you start this situation, just freeze the sim, make a datalink request for descent winds, let it recompute TOD, then unfreeze (I was using live WX when creating winds. LFPG was facing east, but don't worry if it is not the case, we won't go until touchdown)

I used your situ Paris offpath descent as a basis to create this one.
If I made no mistake, you find yourself at FL230, on course to MATID, the aircraft is in VNAV PTH, ACT ECON CRZ. (I made it re cruise).
You are configured for a STAR MATID6E at LFPG, followed by a LORNI3E transition, which ends by vectors on north downwind, and ILS09L next.
The constraints are "FL160 or below at DEVIM", and "FL150 or below, FL110 or above, AT 280kt precisely at LORNI".
In real life, you clear the aircraft below FL110 at the end of the downwind, around BUNOR. At this point, VNAV is unusable because you are under radar vectors.
I manually added a constraint FL110 at BUNOR to reflect that.

Now my question at last !
When configured as such, you see that at LORNI you have a "tolerance window" between FL150 and FL110.
My problem is whatever I do, the VNAV algorythm ALWAYS seems to aim for FL110 precisely. Now, as I entered the FL110 at BUNOR also, I expect it to "understand" that it should aim for FL150 at LORNI because it has all the downwind which is sufficient to get to FL110 by BUNOR.

Do you have an explanation or am I doing something wrong ?

Charles



Hardy Heinlin

Hi Charles,

your first constraint is at DEVIN with FL160B. If a "B" constraint is the first constraint, things may get a bit complicated for the FMC (that's also mentioned in Bulfer's FMC Guide). It's tricky to get a narrow idle path tunnel through multiple A, B, AB constraints. From LORNI FL150B to BUNOR FL110 you would need a descent rate of ca. 600 fpm. If you have some headwind it will be less than 500 fpm, and that's not allowed; you are not allowed to descent at 350 fpm over a distance of 37 nm. My algorithm assumes a 3° path (before it takes the wind into account) and if this path is too close to the constraints along the path, it will select the next constraint or the ensuing constraint as the target, and will ignore the third one which is BUNOR in your scenario. So it uses DEVIM or LORNI for the T/D calculation, and since it has to be below FL160B before it gets to LORNI, it won't plan a 150 fpm descent from FL160B to FL150B. It just takes FL110 to be on the safe side.

A higher or lower groundspeed may shift the T/D by many miles in such narrow constraint systems. Like here, by 37 nm. And once you are in idle descent, you stay in idle. VNAV descent algorithms are very, very complicated! There are always zillions of side effects. If you change 2 knots here, you wil change 5000 ft there, etc. pp.


Regards,

|-|ardy

Britjet

Hardy - extending that train of thought, then...to take a hypothetical case..
FIX01 250/17000B
then 60NM (maybe with significant headwind) to...
FIX02 250/10000
(Not an unusual protracted descent in the USA, e.g. JFK area).

This would be a very gradual descent, assuming the calculation would be less than 500fpm - are you saying that the FMC will aim to hit FIX01 at 10,000?

Peter.

tango4

Good morning Hardy,


Thanks as usual for the detailed explanations.
I too have a few followup questions.


Take the same situation. Erase the first constraint at DEVIM. I just made a run and it behaves in the same way.
The only constraints left are between FL150 and 110 at 280kt  at LORNI, and FL110 at BUNOR.
For info, in real life, aircraft are frequently only cleared below FL150 after LORNI so this is just a theoretical discussion to understand things better here.


Now, as there are plenty Miles to descend from FL150 to FL110 at BUNOR, if there is no further ATC request, I would expect to see 3 possible scenarios in that case in real life.
*First one is what I see in PSX and the least fuel efficient(I guess...): Hard descent to be at FL110 ar LORNI and level flight on the whole downwind. Not many pilots will choose this option
*Second one: aircraft wil aim FL150 at LORNI, fly level, then wait for another TOD to BUNOR
*Third one: aircraft will aim for FL150 at LORNI, and continue with a shallow descent that will possibly get it to FL110 before BUNOR


I was able to get the third option by dialing FL150 in the MCP, then waiting after LORNI to dial 110 and hit altsel.


Is there any way to get scenario 2 while using VNAV without using a recruise ?


Charles




Hardy Heinlin

I'm sorry, I don't know what the real FMC exactly does under the suggested conditions; and whether it aims at descent rates less than 500 fpm over long distances (unless for E/O DD). Logical fact is that the idle descent calculation must be started with a zero wind path angle (ca. 3°), not with a yet unknown idle descent rate, because constraint clearance interdepends with groundspeed, hence with descent rate; and the groundspeed can only be computed when the geographic area is determined, and that can only be determined when the T/D is computed which is based on groundspeed. What comes first? Chicken or egg? Whether an A/B/AB constraint intersects the idle path depends on groundspeed (wind), and if it does, the T/D is moved back, and if moved back, the whole thing is to be recalculated, and then the winds at that location have to be applied, and if it turns out that this T/D occurs too early, it would recheck the next constraint system and an infinite recalculation flip-flop would start; that's why at that point the flip-flop must be stopped, and the current, early T/D is to be used. This is how my model works; I don't know the original FMC code; it's hidden. But these mathematical problems do exist. That's all I can tell. Sorry again, I can't provide any further comments on this subject (especially these days as I'm very busy with some other new features).


Cheers,

|-|ardy


Quote from: Britjet on Tue, 17 Jan 2017 09:27
Hardy - extending that train of thought, then...to take a hypothetical case..
FIX01 250/17000B
then 60NM (maybe with significant headwind) to...
FIX02 250/10000
(Not an unusual protracted descent in the USA, e.g. JFK area).

This would be a very gradual descent, assuming the calculation would be less than 500fpm - are you saying that the FMC will aim to hit FIX01 at 10,000?

My FMC would hit FIX01 at 17000. Charles' problem is that there is a third constraint, and the 2nd is an AB.

tango4

Quote from: Hardy Heinlin on Tue, 17 Jan 2017 11:58
Sorry again, I can't provide any further comments on this subject (especially these days as I'm very busy with some other new features).


Are you joking ?
I don't know ANY other developer that would take the time and effort to give customers such a detailed answer into the problem. I promise I won't bother you with that one again !


Good luck with the current updates and thanks a lot once again for letting me catch a glimpse into the intricacies of these VNAV computations.


Charles




Britjet


tango4

Hi again,
I know you will probably want to kill me, but I really have the feeling there is something strange going on here.
The idea of this post is just to give you the information to have a look LATER (I do insist, it's only when you have time for it).
The reason I sent it right now is first, because I am afraid I will forget it later (I am not as organised as you...) and the other one is that I created another situ that uses a CDA procedure that will disappear in the next AIRAC cycle (1703).


Here is the situ I created:
https://www.dropbox.com/s/6xect2dz4jtnp6l/VNAV%20Problem%20STAR%20LFPG%20MATID3E%20DEVIM3G%20CDA%20ILS09L.situ?dl=0


It is basically the same as before, but with an important difference:
After the STAR MATID3E, the aircraft is configured to fly the DEVIM3E transition to ILS09L instead of the LORNI3E. The difference is that the DEVIM3E is a CDA, so it is a closed procedure. The path is published up to the ILS, it does not end by "vectors" which could complicate things in the first one. The waypoint LORNI does not exist in this one (you fly over it but it is not part of the procedure). So the FIRST constraint is at DEVIM: between FL190 and FL140. Next, you only have ABOVE constraints at a few waypoints. Every single time, it aims for FL140 at DEVIM. In real life, we did not fly that procedure a lot, but every single time I saw it flown, I have NEVER seen an aircraft be at FL140 at DEVIM. They were all way above that.


So the only BELOW constraint along the path (meaning, the only one that would "force" a descent) is the below 190 at DEVIM. And between DEVIM and BUNOR, I do not see ANY scenario where you would NEED to be at FL140 in order to respect the idle descent path.


This type of "double" constraint being clearly not the most common one, this is a TOTALLY NOT URGENT topic.


I'd just be glad if you could have a look when you are done with your other work.


Charles


tango4

And as a follow-up, for future reference,


Take the last situation with DEVIM CDA, and just change the "double constraint" at DEVIM to a single one with just FL140A. The FMC computes a TOD after DEVIM !
So if there is a FL190B at DEVIM, it wants me AT FL140 at DEVIM "just to be sure", but if I remove it, it is OK with me flying over DEVIM at FL230 and descending after. I really think there is something strange with the double constraint here.




Hardy Heinlin

When I have found a solution I will post it here.


|-|ardy

tango4

Just two more small facts.
*in the situ I created I use an ILS09L after the transition and there is a mistake in the database. The Fap for this ILS has a constraint at 5000 when it should be 4000. I double checked by flying the ILS and the GS places you spot on at 4000 over this point. And I also edited the constraint manually to get 4000. This does not  change the problem at hand ( I just wanted to make sure).


*And I remember when the DEVIM CDA was created this 190 or below constraint was created because we want the aircraft below that level and I remember discussions where it was said that if you did not add that constraint in most cases idle profile would get you frequently higher than that at DEVIM (which PSX reflects correctly when you remove,that constraint). So that is another clue (obviously not a proof) that would say that it seems strange that the aircraft does not use the tolerance at all and aims for the lower constraints.


Charles

Hardy Heinlin

That 5000 error is a relict from the first version and is stored in that old situation file. The database actually has the correct 4000 constraint. If you reselect ILS09L on the ARRIVAL page you will get 4000.

(To be precise: All approach transitions set 4000 at CI09L, except for the DEV3G transition which sets 5000. Strange. This, coincidentally, looks like a database error indeed.)


|-|ardy

tango4

Well, indeed we've never intercepted this ILS at 5000ft. Our interception altitudes are already way too high thanks to our wonderful politicians... Don't get me started on this it tends to get me in a bad mood  >:(


And I'm leaving for work now so good night !

tango4

Hi again,
As a follow up to the rest of this discussions, here is another situ to look at.


https://www.dropbox.com/s/tniu2zq1i4uljye/Test%20Before%20TOD.situ?dl=0


I don't think it is entirely related, but it is still a VNAV issue.
Just when loading this situ, dial in 16000 in the MCP altitude window and wait.
The aircraft will aim FL190 at ABDIL (First constraint 190B at ABDIL), and then will aim to be at 160 before AMFOU (this is logical as you have to be FL160B at AMFOU, and FL120 at the next waypoint, which seems to become the "target").


Now, the problem:
*What I expect:  the aircraft should go from SPD VNAV PTH, to SPD VNAV ALT when hitting FL160.
*What I see: the aircraft slides between 100 and 200ft below FL160 before swithing to VNAV ALT, and remains at the altitude at which it engaged. So I have my aircraft at 15800ft approximately.


Tell me if I'm wrong but I don't think it should be allowed to go below the MCP selected altitude in that situation.


Charles


PS: Thanks for the autostart update !

Hardy Heinlin

Hi,

yes, it should level off at MCP ALT. The FMC is confused because it's a "B", i.e. it's not a descent obstacle, but at the same time equal to the MCP ALT; it first focuses the FMC constraint, then after 50 ft it focuses the MCP. This is a side effect of zillions of other VNAV conditions. It occurs seldom because you normally set the MCP ALT below a "B" constraint, as you must be below that altitude.

The VNAV mode is correct, however. VNAV ALT only engages when the MCP ALT differs from the FMC constraint by more than 50 ft. If the difference is less than 50 ft, VNAV PTH remains engaged.


|-|ardy

tango4

Then in that case, is it normal that the aircraft does not try to get back to FL160 ?
I am probably wrong, but I thought VNAV ALT meant the AP was tracking the ALT selected in the MCP, and not the altitude the aircraft had when VNAV ALT got active (as if I press ALT HOLD).


Even if that configuration is not frequent, you will definitely get a remark from ATC (unless he is asleep...).


Thanks as usual for your supersonic support ! Hope you did not have any autostart nightmares !

Hardy Heinlin

It's not normal; it should level off at MCP ALT.

Re pitch mode: Well, it could be that the 50 ft rule isn't valid for B constraints in descent and for A constraints in climb. I need to rethink about this ...

It's not documented, unfortunately. And I guess you will hardly see any scenarios in real life where you level off in an area where you shouldn't level off. How's that in Paris? Would you level off at FL160 in a "descend below FL160B" area?

Anyway, if you have an active FMC constraint that will stop your descent (or climb for that matter) and the MCP ALT lies within 50 ft of that FMC constraint, the constraint will be flown with VNAV PTH, not VNAV ALT. VNAV ALT is only used when the MCP ALT interferes with the FMC. If the difference doesn't exceed 50 ft, the FMC considers the MCP ALT to agree with the FMC profile.

tango4

Quote from: Hardy Heinlin on Tue, 31 Jan 2017 13:26
How's that in Paris? Would you level off at FL160 in a "descend below FL160B" area?


I'm afraid yes !


Actually, on the published charts for pilots, you don't have everything.
For example, when you arrive from the north east, airport facing east. Let's say you fly the MATIX6E STAR followed by the LORNI3E transition. You will see at LORNI the constraints FL150BFL110A.
What you do not see is that Paris ACC is supposed to send aircraft to deGaulle approach enroute to DEVIM, cleared to FL150. Frequently after coordinating, they will send the aircraft direct LORNI, but still cleared to FL150.
Depending on the situation, we might not clear the aircraft below FL150 on first contact. Or perhaps Paris ACC forgot to transfer the plane, and we don't want it below FL150 unless they are specifically cleared to that level.
The resaon for the FL150B is because there might be some overhead transit at FL160, so we want them AT FL150 at LORNI (we might have someone at FL140 sometimes). And if we clear them to FL110 directly, it means they can descend directely to FL110 at discretion.


Now, on my screen, if I see the aircraft that is cleared to FL150 display on the radar FL149...FL148... I might still think it is descending and will ask him to climb back to FL150 (IF I see it of course, which is not guaranteed, and if I was about to clear it to FL110 anyway, I'll just mention it to the pilot).
Just to say that this situation where you are cleared precisely to a "below" constraint is pretty common.

Hardy Heinlin

Question for Boeing pilots:

Examples:

In climb, the active FMC constraint is 7000A, the MCP ALT is 7000, and the aircraft is climbing to 7000.
In descent, the active FMC constraint is 7000B, the MCP ALT is 7000, and the aircraft is descending to 7000.
In other words, the active FMC constraint can never be a level-off constraint. Only the MCP ALT will cause a level-off.

In such a case, when reaching 7000, will you get VNAV PTH or VNAV ALT?


The background of this question is this:

Examples:

In climb, the active FMC constraint is 7000B, the MCP ALT is 7000, and the aircraft is climbing to 7000.
In descent, the active FMC constraint is 7000A, the MCP ALT is 7000, and the aircraft is descending to 7000.
In other words, both the active FMC constraint and the MCP ALT are level-off commands.

In that case, when reaching 7000, you get VNAV PTH, not VNAV ALT, because the VNAV PTH level-off command agrees with the MCP ALT level-off command. If they agree, VNAV PTH keeps the control, and a transition to VNAV ALT is not necessary. Otherwise you would fly every level-off segment and the whole cruise in VNAV ALT just because the MCP ALT agrees with the FMC target.


Thanks,

|-|ardy

Britjet