The SimBrief XML file fir_crossing elements do not specific DIS nor RDIS. An attempt at calculating these values resulted in a discrepancy between derived numbers and those shown by the SimBrief website. For example consider this segment of an OFP:
The SimBrief OFP indicates an RDIS at this point of 67 (not 64) and the distance to the FIR is reported as 34 (not 37). I would like to know how these values are calculated or if they could be added as elements to the XML file to simplify processing the XML into a Flight Plan.
For reference this is the equation that was used (in C++) to arrive at the distances posted:
FWIW, I’ve been using the formula here in my own projects: Aviation Formulary V1.47 — specifically the “mathematically equivalent formula, which is less subject to rounding error for short distances”.
That being said I’ve never attempted to compare the distances produced this way to the simBrief navlog.
Updated code to use Vincenty’s formulae with the same result. Not sure what equations (or presumptions) SimBrief is using to calculate the values that are in the OFP. It might be more than simple round-off error since using the time elapsed and converting to distance based on ground speed results in a similar discrepancy.
Distance between S2300.0 E00000.0 and S2154.9 W00131.7 is 106.93 nautical miles (not 115). This is a difference of 8 nautical miles. The question is does this mean the SimBrief generated OFP is incorrect or is there something that needs to be factored in other than a simple coordinate-to-coordinate distance calculation.
I’m not sure why I had the distances (incorrectly) coded the way I did previously, possibly it was an oversight but it’s also possible I did it this way to avoid discrepancies elsewhere.
Please let me know if you notice anything else that doesn’t match going forward!
ETOPS scenarios are normally generated using current weather. On some days, certain airports will be suitable for diversion while others will not. Depending on which airports SimBrief chooses, you might have many ETPs or no ETPs at all.
If you need the ETOPS scenario to remain static across multiple days for your testing, you should expand the “ETOPS Scenario” option and click “Calculate”:
That is a useful suggestion. Thanks again for your help and ruling out an unintended consequence of the navlog fixes. It should have occurred to me that the flight plan conditions weren’t exactly identical. I will need to add some unit tests with some static XML files to ensure code integrity. There are so many possibilities: multiple FIR/UIR interspersed between fixes and ETOPS points for instance. In hindsight it might have been simpler to parse the OFP->text->plan_html XML element.
If an ETOPS point occurs just prior to a FIR/UIR crossing I presume it would still have all these parameters from the next fix unlike the FIR/UIR which will only have DIS and RDIS
FL IMT MN WIND OAT EFOB PBRN
MORA ITT TAS COMP TDV
DIS RDIS GS SHR TRP AFOB ABRN
Apologies in advance for the scope creep as the initial query is already resolved.
For what it is worth the project that prompted my initial query is closer to completion. There are some very useful tools available already except I wanted to make one that is a bit more like the SimBrief website without having to open a browser while running a simulator. I’ll probably get a tablet eventually for that purpose, though I still like this idea and will continue developing it.