Position Accuracy in Mountainous Terrain

STK Pro, STK Premium (Air), STK Premium (Space), or STK Enterprise
You can obtain the necessary licenses for this tutorial by contacting AGI Support at support@agi.com or 1-800-924-7244.

This lesson requires STK 12.0 or newer to run.

The results of the tutorial may vary depending on the user settings and data enabled (online operations, terrain server, dynamic Earth data, etc.). It is acceptable to have different results.

Capabilities covered

This lesson covers the following STK Capabilities:

  • STK Pro
  • Coverage

Problem statement

Engineers and operators require a quick way to determine if local terrain is affecting GPS reception for a variety of purposes such as location, navigation, tracking, mapping, and timing. In this scenario, engineers are performing a training exercise on mountainous terrain in the vicinity of Mount St. Helens. They need to determine the positional uncertainty of the GPS being used to pinpoint their location.

Solution

Using STK and STK's Coverage capability, build an STK scenario that you can use to examine the accuracy of your navigation solution within a specified area based on satellite outages and GPS position uncertainty.

This tutorial requires an internet connection.

Video guidance

Watch the following video. Then follow the steps below, which incorporate the systems and missions you work on (sample inputs provided).

Creating a new scenario

Create a new scenario.

  1. Click the Create a Scenario () button.
  2. Enter the following in the New Scenario Wizard:
  3. Option Value
    Name NavAccuracy
    Location C:\Users\<username>\Documents\STK 12\
    Start 10 Jan 2020 18:00:00.000 UTCG
    End + 1 day
  4. When you finish, click OK .
  5. When the scenario loads, click Save (). A folder with the same name as your scenario is created for you in the location specified above.
  6. Verify the scenario name and location and click Save .

Save often.

Adding analytical and visual terrain

You will use an STK Terrain File (pdtt) located in the STK install area for analysis and visualization in the 3D Graphics window.

  1. Open NavAccuracy's () properties ().
  2. Select the Basic - Terrain page.
  3. Clear the Use terrain server for analysis check box.
  4. Click OK.

View the terrain in 3D

  1. Bring the 3D Graphics window to the front.
  2. Click the Globe Manager () icon.
  3. Extend the Add Terrain/Imagery () menu on the Globe Manager toolbar.
  4. Select Add Terrain/Imagery (Add Terrain/Imagery button).
  5. Click the ellipsis () button and go to <STK Install Folder>\Data\Resources\stktraining\imagery.
  6. Select StHelens_Training.pdtt and click Add .
  7. When the Use Terrain for Analysis prompt displays, click Yes to enable terrain for analysis.

Zooming to Mt St Helens

  1. Right-click the StHelens_Training.pdtt file in the Globe Manager.
  2. Select Zoom To.

Define your analysis area

Using an Area Target () object, outline the area of operations so that you can concentrate your analysis in that area.

  1. Insert an Area Target () object using the Area Target Wizard () method.
  2. Change the Name field to ExerciseArea.
  3. In the Area Type field, select Pattern.
  4. Click Insert Point four (4) times.
  5. Enter the following coordinates for the points:
  6. Latitude Longitude
    46.15 deg -122.3 deg
    46.15 deg -122.1 deg
    46.3 deg -122.1 deg
    46.3 deg -122.3 deg
  7. Click OK to accept the changes to the Area Target Wizard.

Enable the surface lines

While the area has been defined, it would be helpful to be able to visualize the exercise area on the terrain surface. To do this, you need to turn on surface lines.

  1. Open the NavAccuracy's () properties ().
  2. Select the 3D Graphics - Global Attributes page.
  3. Change the Surface Lines - On Terrain field to On.
  4. Click OK .

Decluttering the labels

You can use Label Declutter to separate the labels on objects that are in close proximity, for better identification in small areas.

  1. Bring the 3D Graphics window to the front.
  2. Open the 3D Graphics window properties ().
  3. On the Details page, locate the Label Declutter section.
  4. Select the Enable check box.
  5. Click OK .
  6. Zoom To ExerciseArea.
  7. Zoom out a bit until you see the exercise area outline.

Draw lines on 3D Graphics window

Area target

Inserting GPS satellites

Several seismic stations are set up throughout the area. The first station is inside the volcano’s crater. Steep terrain could cause issues with accuracy. Use the Load GPS Constellation method. This method loads all satellites in the almanac(s) as Satellite objects, naming them as gps-XX_svnYY, where XX is the GPS PRN number from the almanac and YY is the GPS Satellite Vehicle Number from the almanac. It creates a GPS Constellation object named GPSConstellation along with all the GPS Satellite objects assigned to the Constellation object.

  1. Using the Insert STK Objects tool, insert a Satellite () object using the Load GPS Constellation method.
  2. Delete gps-23_svn60, as it is decommissioned.

Creating a Coverage Definition object

Create a Coverage Definition () object to analyze coverage inside the defined exercise area.

  1. Insert a Coverage Definition () object using the Insert Default () method.
  2. Rename the Coverage Definition () object to "PosAccCov".
  3. Open PosAccCov's () properties.
  4. Go to the Basic - Grid page.
  5. Select Type as Custom Regions in the Grid Area of Interest panel.
  6. Select Area Targets in the drop-down menu under Custom Regions.
  7. Move () the target ExerciseArea to the Selected Regions list.
  8. Set the following Grid Definition options:
    OptionValue
    Point GranularityDistance - 0.5 km
    Point AltitudeAltitude above Terrain - default (0 km)
  9. Click OK to save and close the Properties Browser.

If it is difficult to see the grid points after following the steps above, change the color of the Coverage Definition object to something brighter (e.g., white).

Constraining the coverage

Your coverage grid is situated in some pretty rugged terrain. For your analysis to be accurate, each point in your coverage grid needs to take the local terrain into account when computing GPS network access. Create an object with constraints that you can apply to the points in the Coverage Definition. Use a facility object as a constraint template.

  1. Insert a Facility () object using the Insert Default method.
  2. Rename the facility to "ConstraintTemplate".
  3. You can move the facility object in one of two ways:

    Use the 3D Object Editing tool to move the facility object inside the boundaries of the area target object.Closed

    1. Select ConstraintTemplate () in the 3D Object Editing toolbar.
    2. Click the Object Edit Start () icon to start the object editor.
    3. Hold the Shift key down + click within the ExerciseArea to move the ConstraintTemplate location within the area target.
    4. Click the Object Edit Accept () icon.

    Type the latitude and longitude values to move the facility object inside the boundaries of the area target object.Closed

    1. Right-click ConstraintTemplate () in the Object Browser and select Properties.
    2. On the Basic - Position page, enter the following latitude and longitude values:
    3. OptionValue
      Latitude46.2deg
      Longitude-122.2 deg
    4. Click Apply to apply changes.

The location of the constraints template is unimportant so long as it is somewhere on the terrain within the area target boundary.

 

Constraint Template

Enabling the constraints for the Template object

  1. If you used the 3D Object Editing tool, open ConstraintTemplate's () properties.
  2. For either method, select the Basic - AzElMask page and set the following:
  3. Option Value
    Use Terrain Data
    Use Mask for Access Constraint Enabled
  4. Click OK to apply changes and dismiss the Properties Browser.
  5. You don't need to see the facility object on the 2D or 3D Graphics windows.

  6. In the Object Browser, clear the check box to the left of ConstraintTemplate to disable graphics for the Facility () object.

Applying constraint to the Coverage Definition object

You have a constraint source and you have a defined coverage area. You need to associate the constraint with the points in the grid to which the constraint will be applied.

  1. Open PosAccCov's () properties ().
  2. On the Basic - Grid page, click Grid Constraint Options... .
  3. Select Facility from the Reference Constraint Class drop-down menu.
  4. Select the Use Object Instance check box.
  5. Select ConstraintTemplate.
  6. Click OK to close the Grid Constraint Options window.
  7. Click Apply to accept your changes.

Identifying assets

You’ve defined and constrained the area within which you’d like to analyze coverage. The next step is to identify your assets. The GPSConstellation is the asset with which you want to assess the quality of your coverage. Prior to assigning the GPSConstellation as your asset, you need to check for any outages. The GPS Satellite Outage Tool can bring in GPS satellite outage information and update the satellite interval files to exclude the satellites from your analysis during the outage.

  1. Right-click GPSConstellation () in the Object Browser.
  2. Expand the Constellation Plugins context menu.
  3. Select the Add GPS Satellite Outages check box.
  4. When the Add GPS Satellite Outage tool appears, in the Select GPS Satellite Outage Data section, click Download and wait until you see the message "Satellite Outage Data Loaded".
  5. In the Apply to Which GPS Constellation? field, verify the GPSConstellation is highlighted and click Apply .
  6. Look at the Outage Results Applied section. PRN 4 has the following outages: Out from: 23 Dec 2018 13:51:0.0 to 13 Jan 2020 17:34:0.0. If there are no outages to apply, it will say "No outages found." STK will apply PRN 4's outage date and time to the satellite as a temporal constraint.
  7. Click OK to close the Update Complete message window and then OK to close the Add GPS Satellite Outages dialog box.
  8. Add GPS Satellite Outages Plugin

Now you can assign the GPSConstellation as your Coverage Definition asset.

Assigning the assets

  1. Return to PosAccCov's () properties ().
  2. Select the Basic - Assets page.
  3. Select GPSConstellation () in the Assets list and click Assign .
  4. Click Apply .

Disabling the Automatically Recompute Access option

  1. Select the Basic - Advanced page.
  2. Clear the Automatically Recompute Access check box.
  3. Click OK to accept changes and dismiss the Properties Browser.

Compute coverage

Now that the Coverage Definition is defined, you can compute access to points in the grid.

  1. Right-click PosAccCov () in the Object Browser.
  2. Expand the CoverageDefinition context menu.
  3. Select Compute Accesses.

Assessing navigation accuracy

STK's Coverage capability tells you where you have access to GPS satellites from inside the exercise area boundary, but you need to determine just how accurate the GPS position information is at any given time. Uncertainty exists in any navigation solution. You cannot eliminate uncertainty; you can, however, account for it.

  1. Insert a Figure Of Merit () object using the Insert Default () method.
  2. Select the PosAccCov () object in the Select Object dialog box.
  3. Click OK .
  4. Rename the Figure Of Merit () object to "NavAcc".
  5. Open NavAcc's () properties.
  6. On the Basic - Definition page, set the following options:
  7. Option Value
    Type Navigation Accuracy
    Compute Maximum
    Method PACC
    Type Over Determined
    Time Step 60 sec
  8. Click Apply .
  9. Click Uncertainties... to view the Asset Range Uncertainty and Receiver Range Uncertainty for your GPS Satellites.
  10. STK defaults the Asset and Receiver Range Uncertainties to one meter and zero meters.

    Uncertainties

  11. Close the Figure of Merit NA Uncertainties Model dialog box.
  12. Click OK .

Checking asset range uncertainty

The GPS constellation experiences errors in its ephemeris (position in space) and clock data that translate into positioning errors in GPS receivers.

  1. Right-click NavAcc () in the Object Browser.
  2. Select FigureOfMerit Plugins.
  3. Select Add Navigation Uncertainties to determine range uncertainties.

Using the Add Navigation Uncertainties tool

Use the Navigation Files Plugin to model the actual uncertainties for the analysis time period of this scenario.

Add Navigation Uncertainties Tool


  1. If you are using STK 12.6 and later, skip this step and go to step 2. For STK 12.5 and earlier, download the uncertainties file (2020_008_234500_v01.psf) for the scenario time period here: https://analyticalgraphics.my.site.com/faqs/articles/Knowledge/Uncertainties-File.
  2. Click the ellipsis button () beside the Or browse for a local Prediction Support File (PSF) field.
  3. For STK 12.6 and later, go to <STK install folder>\Data\Resources\stktraining\samples\. For STK 12.5 and earlier, go to your download folder.
  4. Select the uncertainties file (uncertainties.psf).
  5. Click Open.
  6. Click Apply in the Navigation Uncertainties Tool.
  7. The Asset Anomalies message refers to gps-04_svn74. This is the satellite with the reported outage. Click OK.
  8. Click OK to close Update Complete.
  9. Click OK to close the Add Navigation Uncertainties tool.

Checking your work

  1. Return to the NavAcc's () properties ().
  2. Click Uncertainties.
  3. Look in the Asset Range Uncertainty. You will notice the constant value for each satellite has been updated for the PSF file. Also, you can see the Receiver Range Uncertainty Value has been adjusted.
  4. Updated Uncertainties

  5. Click OK to close the Figure of Merit NA Uncertainties Model window.
  6. Click OK to close the properties window.

Assessing position accuracy in a custom report

The Grid Stats Over Time report summarizes the minimum, maximum, and average of the figure of merit’s dynamic value over the entire grid as a function of time.

  1. Right-click NavAcc () in the Object Browser and select the Report & Graph Manager ().
  2. Right-click the Grid Stats Over Time report and select Properties ().

Setting the minimum

Set up the minimum value output.

  1. In the Report Contents list, select Overall Value by Time - Minimum.
  2. Click Options... .
  3. In the Summary Options-Statistics section, select the Min check box.
  4. This will display the Minimum value of the Minimum column of FOM data.

  5. Click OK .

Setting the maximum

Set up the maximum value output.

  1. Select Overall Value by Time - Maximum.
  2. Click Options... .
  3. In the Summary Options-Statistics section, select the Max check box,
  4. This will display the Maximum value of the Maximum column of FOM data.

  5. Click OK .
  6. Click OK to accept the property changes.
  7. Click OK  to close the warning message.

Running the report

Now that you set up the minimum and maximum reporting, run the report.

  1. Expand the MyStyles directory in the Styles list.
  2. Rename the new report "My Grid Stats Over Time."
  3. Select the My Grid Stats Over Time report.
  4. Click Generate... .
  5. As you scroll through the report, note the different sections. First is the Coverage properties, which simply shows values from the Coverage Definition object. Next is the FOM properties section. This is a good place to view the asset range uncertainties. Finally, you will see the minimum, maximum, and average uncertainties in meters. You can use the minimum and maximum uncertainty values to define the display of color contours.

    Grid Stats Over Time

     

    Global Statistics

    For the purposes of this exercise, any range uncertainty greater than 10 meters is unacceptable. You can use minimum and maximum uncertainty values to define the display of color contours.

  6. Close the report and the Report & Graph Manager.

Specifying contour graphics

Specify how levels of coverage quality display in both the 2D and 3D Graphics windows using contours graphics. Contour levels represent the gradations in coverage quality and can be displayed for both static and animation values of the figure of merit. Since these values change over the 24 hour period, you'll focus on animation values.

  1. Open the NavAcc's () properties ().
  2. Open the 2D Graphics - Animation page.
  3. Change the Filled Area - % Translucency to 20.
  4. In the Display Metric section, enable the Show Contours option.
  5. In the Level Attributes section, click Remove All .
  6. Set the following options in the Levels section:
  7. Option Value
    Level Adding - Start 0 m
    Level Adding - Stop 10 m
    Level Adding - Step 1 m
  8. Click Add Levels .
  9. Set the following values in the Levels section:
  10. Option Value
    Color Method Color Ramp
    Start Color Blue
    End Color Red
  11. In Contour Interpolation (points must be filled), select Natural Neighbor.
  12. Click Apply .

Displaying the Legend window

Next, set up the legend window.

  1. Click Legend... .
  2. Click Layout... .
  3. Select the 2D Graphics Window Show at Pixel Location check box.
  4. Select the 3D Graphics Window Show at Pixel Location check box.
  5. Change Text Options Title to Uncertainty in Meters.
  6. Set Number Of Decimal Digits to zero (0).
  7. Set Color Square Width (pixels) to 50 in the Range Color Options section.
  8. Click OK to dismiss the Figure of Merit Legend Layout dialog box.
  9. Close the Animation Legend for NavAcc window.
  10. Bring the 3D Graphics window to the front.
  11. Animate () your scenario.

During the 24 hour period, you can visualize, based on color contours, how your range uncertainty is changing. Any time an area turns red, you are at or above your cutoff uncertainty of ten meters.

Range Uncertainties

Inspecting regions and points

If you know exactly where a seismic station is located, you can use the Grid Inspector tool, which enables you to focus more closely on a region or point within a coverage grid, furthering your analysis efforts.

  1. Bring the 2D Graphics window to the front.
  2. Zoom In () to the exercise area.
  3. In the Object Browser, disable the Figure of Merit graphics.
  4. This enables you to see the grid points inside the area target.

  5. Right-click NavAcc () and expand the FigureOfMerit context menu.
  6. Select Grid Inspector... .
  7. Grid Inspector

  8. Click a grid point in the 2D Graphics window. In the Messages section, you will receive Point Location, Point Area, how long the Point is Covered by a maximum number of assets, and the value of Maximum Navigation Accuracy at that location.
  9. In the Graphs section, click Point FOM... .
  10. This graph is very useful. Assume that ten (10) meters is your accuracy cutoff. You simply place your cursor at the top of any spikes in your graph and you can read the date and time that accuracy is out of limits.

  11. If desired, try different points.

Save your work

  1. When you are finished, close the graph, Grid Inspector, and the Figure Of Merit object's properties.
  2. Save () your work.

Summary

You began by adding a local terrain file (.pdtt) to be used both analytically and visually. Next, you defined the area of interest (ExerciseArea) by inserting an Area Target object. After inserting the GPS satellites, you created a Coverage Definition object that focused on ExerciseArea. Prior to assigning assets, you used the Add GPS Satellite Outages plugin to download a satellite outage file and create a temporal constraint on one of the GPS satellites. After assigning the GPS Constellation as a coverage asset and computing coverage, you inserted a Figure of Merit object and set it up to report on Navigation Accuracy using Position Accuracy. To add realism to the analysis, you downloaded the actual range uncertainty file for the analysis time period and used the Add Navigation Uncertainties plugin to quickly update the asset range and receiver range uncertainties. Next you created a custom report that added minimum and maximum global statistics to an existing report style. After adding contour colors specific to positional accuracy to both the 2D and 3D Graphic windows, you explored the function of the Grid Inspector Tool.