ORIGINAL: emsoy
Which is why we need to split the project into manageable pieces. First up is basic flight planning in AMP v1.0. Then add targeteering, weaponeering, tanker stuff, etc, etc, in v2.0, v3.0, v4.0.
A few ideas that might help:
1) Missions could be divided into mission
segments, each consisting of a number of waypoints & legs. If the time at the last waypoint is known, then the aircraft speed can be used to calculate times at all earlier waypoints.
Say a flight is to take off off at A, then fly to waypoints B, C and D. It is required to be at D at a given time. The times at all earlier waypoints can be established by back-propagation, hence takeoff time is established. If D is the target, ToT is simply the time at D.
2) Mission segments could be chained, so that a new segment can commence from an earlier segment. Back-propagation of times works backwards along the chain.
Example 1:
Flight F1 flies segment ABCD, arriving at D at a given time. Here D is not the target, just a useful action point e.g. a split. Flight F1 splits into F2 & F3. F2 now flies chained segment DEFG, while F3 flies segment DXYG. G is the target. As ToT (time at G) is defined, then the required times at earlier waypoints can be established by back-propagation, including the split and takeoff times.
The bizlogic handling ABCD is the same as that handling DEFG, so adding segments can simplify multi-path missions with desired ToTs and other action points.
Example 2:
Similarly a cruise missile could be launched at D, following its own path DEFG as a chained segment. This would treat WToT the same way as as aircraft arriving at a timed waypoint. Possibly other weapons could be handled in a related way, with WToT propagating back all the way to takeoff.
3) This is all complicated by the fact that the target and carrier may be moving. Essentially the first and last legs are variable. The good news is that these will have exact solutions (assuming predictable movement), though as my linear algebra is very rusty, I'll not provide any here just now
