Performing Trade Study Analysis with STK Analyzer & Coverage
STK SatPro, STK Professional, Coverage,STK Analyzer
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.
Additional installation: Analyzer - Contact Support at 1-800-924-7244 to request Analyzer and the Analyzer license.
Watch the following video, then follow the steps below incorporating the systems and missions you work on (sample inputs provided).Problem Statement
Your customer, the International Association of Yacht Manufacturers (IAYM), needs updated information on yacht usage. The IAYM wants to have an accurate count and location of all yachts greater than fifteen (15) meters in length operating on the open seas on any given day. Your manager has tasked you with providing a back-of-the-envelope design of a space-based system to satisfy these requirements.
Break It Down
You have some information that may be helpful. Here’s what you know:
- You need to survey all open seas on the surface of the Earth in a 24-hour period.
- You must be cost-conscious. You will consider a maximum of three (3) low-earth orbiting (LEO) satellites.
- You have some leeway with altitude of the satellites. You want to do some trade studies to determine how adjusting the altitude will impact the coverage.
- You will attach a conical sensor to each satellite that can track up to thirty (30) degrees off-boresight.
Solution
Build a scenario to determine what your coverage of the open seas will be over a 24-hour period, considering different variations of altitude on your satellites.
Create a New Scenario
- Click the Create a New Scenario button.
- Enter the following in the New Scenario Wizard:
- When you finish, click OK.
- When the scenario loads, click Save (
).
- Verify the scenario name and location and click Save.
Option | Value |
---|---|
Name | Yacht_Watch |
Start: | 1 Jun 2018 16:00:00.000 UTCG |
Stop: | 2 Jun 2018 16:00:00.000 UTCG |
Walker Constellations
The Walker Tool makes it easy to generate a Walker constellation using the Two Body, J2, J4, or SGP4 orbit propagators. First, define a satellite with the characteristics and orbit you need and then open the Walker tool by highlighting the satellite in the Object Browser and selecting Walker... from the Satellite menu.
A Walker constellation consists of a group of satellites (t) that are in circular orbits and have the same period and inclination. The pattern of the constellation consists of evenly spaced satellites (s) in each of the orbital planes (p) specified so that t=sp. The ascending nodes of the orbital planes are also evenly spaced over a range of right ascensions (RAAN).
The way in which spacing between the ascending nodes that define the orbital planes is calculated depends on the Type of Walker constellation you choose. In addition to specifying the number of satellites in each plane, you must also specify the location of the first satellite in each plane relative to the first satellite in adjacent planes. The way to specify the position of the first satellite depends on the type of Walker constellation you choose.
Type | Description |
Delta | Delta configurations have orbit planes distributed evenly over a span of 360 degrees in right ascension. Requires an integer value of f for inter-plane phasing. |
Star | Star configurations have orbit planes distributed over a span of 180 degrees. Requires an integer value of f for inter-plane phasing. |
Custom | A Custom configuration allows for explicit input of the span over which ascending nodes should be distributed and allows for the explicit specification of inter-plane phasing in terms of a true anomaly offset. |
Create a Seed Satellite
The original satellite that is used to create the Walker constellation is referred to as the “Seed” satellite, while the satellites generated using the Walker tool are referred to as children. Use the Orbit Wizard to create the “seed” satellite from which the other satellites will be derived.
- Using the Insert STK Objects Tool (
) insert a Satellite (
) object using the Orbit Wizard (
) method.
- When the Orbit Wizard opens, set the following:
- Click OK.
Option | Value |
---|---|
Type | Circular |
Satellite Name | Yacht_Watcher |
Inclination | 98 deg |
Altitude | 400 km |
RAAN | 0 deg |
Get a Better Look
Let’s animate the scenario and see how the low-earth repeating ground trace orbit that Yacht_Watcher is in covers the surface of the Earth.
- Bring the 3D Graphics window to the front.
- Play (
) the animation.
- When you finish, reset (
) the animation.
Attach The Payload
We have our parent satellite, but we must add a sensor object you can use to detect the yachts.
- Using the Insert STK Objects Tool (
) insert a sensor (
) object using the Define Properties (
) method.
- When the Select Object window appears, select Yacht_Watcher (
) and click OK.
Customize The Payload
Take a look back at the list you made in “Break it Down.” Each sensor object should slew 30 degrees off boresight.
- On the Basic - Definition page, set the following:
- Click OK.
- Rename the Sensor object "Camera."
Option | Value |
---|---|
Sensor Type | Simple Conic |
Cone Half Angle | 30 deg |
Create a Walker Constellation
Take a look at the list you made in “Break it Down.” According to what you know, there are cost constraints that limit you to three (3) satellites. Use the Walker tool to create a simple, single-plane constellation consisting of three satellites for your analysis.
- Right-click Yacht_Watcher (
) in the Object Browser.
- Extend the Satellite menu.
- Select the Walker... item.
- Enter the following values on the Walker tool dialog:
- Click Create Walker.
- Close the Walker Tool.
Option | Value |
---|---|
Seed Satellite: | Yacht_Watcher |
Type: | Delta |
Number of Sats per Plane | 3 |
Number of Planes | 1 |
Inter Place Spacing | 0 |
If the seed satellite has sub-objects such as sensors, the sub-objects are also created for each of the child satellites.
Walker Satellite Relationships
When a Walker constellation is created, each child has the same base name as the seed satellite plus two numbers. The first number identifies the plane in which the satellite resides and the second identifies the satellite's position in the plane. For instance, here we define a Walker constellation with one plane and three satellites per plane, Yacht_Watcher12 would be the second satellite in the first plane.
If you keep the seed satellite in the scenario, two identically configured satellites (the seed satellite and the first satellite in the first plane) will be considered in your analysis. To prevent duplicate analysis, let’s remove the seed satellite, now.
- Save (
) the scenario (
).
- Remove (
) Yacht_Watcher (
) from the scenario.
When you save the scenario, all objects in the scenario are also saved. It is important that you save the scenario before you remove Yacht Watcher as we need to reload it later for further analysis.
Create a Constellation
Each resulting Walker satellite has an instrument associated with it, represented by a sensor object in STK. You will be using these sensors to examine your coverage of the open seas. We need to group the sensors together in a constellation so that they can be considered as a group for analysis purposes.
- Using the Insert STK Objects Tool (
), insert a Constellation (
) object using the Define Properties (
) method.
- On the Basic - Definition page, in the Available Objects list, select all the Sensor (
) objects and move (
) them to the Assigned Objects list.
- Click OK.
- Rename the Constellation (
) object "Cameras."
World Water Coverage
You want to assess coverage over, or your ability to detect yachts in, the open seas. To do this you will assess coverage of the open seas that is based on the boundaries of a shape file (.shp) that can be pulled into your coverage grid. You will need to specify the region being examined, how each grid point should be treated, and what assets will be used to examine the region.
- Using the Insert STK Objects Tool (
), insert a Coverage Definition (
) object using the Insert Default (
) method.
- Rename the coverage definition WorldWater_Cov.
- Open WorldWater_Cov's (
) properties (
).
- On the Basic - Grid page, change the Grid Area of Interest Type: to Custom Regions.
- Click the Select Regions… button.
In the Select Regions window, you can choose to define the area using the boundary points of an existing area target, or to define it using one or more region list files (*.rl) or shapefiles (*.shp), or both. Shapefiles are common in the Geographic Information Systems (GIS) community for sharing geographic data and the format was developed by Esri (the Environmental Systems Research Institute).
Shapefiles and region list files have an advantage over STK area targets because they support defining polygons with holes. The interior of a polygon is defined to be the area to the right side of the line made by following the points defining the polygon (clockwise). You can therefore create holes in polygons by creating a polygon that overlaps another and has its points defined in the opposite (counterclockwise) order.
- Click Load Region File.
- Ensure the File of Type is set to a shape file (.shp).
- Browse to the location of the water shapefiles installed with STK (typically, <C:\Program Files\AGI\STK 11\Data\Shapefiles\Water).
- Open WorldWater_Cov.shp.
- Click OK to return to the Basic - Grid page.
- Change the Point Granularity to Lat/Lon four (4)deg.
- Click Apply.
Your grid boundary has now been directly brought into your Coverage Definition object.
Assign Assets
- Open the Basic - Assets page.
- Select Cameras (
) from the Assets list.
- Click Assign.
- Click Apply.
Manage Your Resources
Since we have a lot going on here, let’s not tie STK up recomputing access before we need it.
- Open the Basic - Advanced page.
- Disable the Automatically Recompute Accesses option.
- Click OK.
Compute Coverage
Let’s move forward and see if we’ll be able to locate yachts in the open seas.
- Right-click WorldWater_Cov (
) in the Object Browser.
- Extend the Coverage Definition menu.
- Select Compute Accesses.
For larger scale calculations, consider computing the accesses for coverage in parallel using multiprocessing. The STK Parallel Computing Extension complements STK and adds the capability to perform coverage computations in parallel using multiprocessing. The parallel computing capability can be used either with multiple cores on a single standalone machine or with multiple machines interconnected in a cluster.
It may take a moment for STK to compute coverage. The progress indicator at the bottom of the STK Workspace will indicate when computations are complete.
Measure The Quality of Coverage
While access has already been computed, we’d like to measure whether or not each point is accessible by any of the assigned assets. Add a Figure of Merit () object so that we can determine the quality of coverage.
- Using the Insert STK Objects Tool (
) insert a Figure of Merit (
) object using the Insert Default (
) method.
- When the Select Object window appears, select WorldWater_Cov (
) and click OK
- Rename the Figure of Merit (
) object "Hows_My_Cov."
The default figure of merit is Simple Coverage, so we don’t need to change the properties for Hows_My_Cov ().
As soon as you introduce the new object, figure of merit graphics will display in the 2D and 3D Graphics windows. Based on the graphics display, you can see that there are visible gaps in your coverage, but what percentage of the worlds oceans are covered?
3D View: World water coverage quality
Percent Satisfied
- In the Object Browser, right-click on Hows_My_Cov
) and select the Report & Graph Manager (
).
- In the Installed Styles list, generate a Percent Satisfied (
) report.
- When you finish, close the Percent Satisfied report.
- Close the Report & Graph Manager (
).
The Percent Satisfied report simply tells you what percent and what area of your coverage region (WorldWater_Cov) had access at some point during the defined time period to at least one sensor in Cameras ().
You can see that the Walker constellation that we created has left us short of our goal of covering the entire ocean in a day. Wouldn’t it be nice if you could determine how to get 100% coverage? For instance, would you have better coverage if you boosted the altitude of your satellites? Maybe, but what altitude would be the best? Should you adjust your satellites and redo your analysis at a variety of altitudes? It would be tedious to repeat the entire scenario time and time again for each altitude that you want to test. Fortunately, you don’t have to! STK Analyzer is a tool that can automate such a study for you.
Analyzer
Analyzer is integrated into the STK workflow to help you automate and analyze STK trade studies in order to better understand the design of your system. For purposes of this tutorial, Analyzer will be used to:
- Parametrically explore the STK design space in order to analyze your yacht detection scenario.
- Perform parameter studies that vary an input variable through a range of values and plot one or more output variables.
Clean Up
As we perform our parametric analysis, STK Analyzer will create new Walker constellation and associated sensors for us. Take a moment to remove the existing Walker satellites.
- Select all of the Yacht_Watcher satellites (
) in the Object Browser.
- Right-click, and select Delete (
).
Reload the Yacht Watcher Seed Satellite
The first thing you need to do is reload the original Yacht_Watcher satellite that you created because you will need it to create the new Walker constellation.
- Using the Insert STK Objects Tool (
) insert a Satellite (
) object using the From Satellite File (.sa) method.
- If required, locate the directory where you saved the scenario (typically, C:\Users\<user name>\Documents\STK 11 (x64)\Yacht_Watch).
- Select Yacht_Watcher.sa.
- Click Open.
- Before you go any further, save (
) your work.
Rebuild the Constellation
Since you removed the satellites, you will need to rebuild the constellation. Let’s do that now.
- Open Cameras (
) properties.
- On the Basic - Definition page, select Camera in the Available Objects list.
- Move (
) Camera to the Assigned Objects list.
- Click OK.
Assign Your Assets
Again, because you removed the satellites from the scenario, you need to ensure your assets are correct in your coverage analysis.
- Open WorldWater_Cov's (
) properties.
- Select the Basic - Assets page.
- Select the Cameras (
) constellation.
- Click Assign if required.
- Click OK.
Launch Analyzer
Now, you can launch STK Analyzer.
- Select Analysis in the menu bar.
- Extend the Analyzer menu.
- Select Analyzer...
Assign the Analyzer Variables
You first need to set up the Analyzer analysis so that you can use the appropriate variables for your analysis. You will need access to the satellite altitude and Walker parameters for your inputs, and your Coverage Definition object for your outputs. Let’s set those up now.
- Select Yacht_Watcher (
) in the STK Variables list.
- Expand Propagator (J4 Perturbation) in the STK Property Variables list.
- Drag the Semi Major Axis variable and drop it in the Analyzer variable box on the right side of the Analyzer window.
- Select Walker in the STK Property Variables General tab.
- Drag the Walker variables and drop it in the Analyzer variables box on the right side of the Analyzer window.
- Expand WorldWater_Cov in the STK Variables list.
- Select Hows_My_Cov.
- Expand the Static Satisfaction in the Data Provider Variables list.
- Drag the Percent Satisfied variable and drop it in the Analyzer variables box on the right side of the Analyzer window.
You will notice that Analyzer automatically assigns Percent Satisfied as an output variable.
The Parametric Study Tool
Now that you have entered in your variables and outputs, you need to set up the study. You only need to vary one variable, so you can use the Parametric Study to accomplish this.
- Click the Parametric Study... (
) button.
You may have to wait a few moments for Analyzer to “ingest” all of the STK objects in your scenario. When the Parametric Study tool appears, notice the left side of the interface has a components list, which outlines the objects that you defined for your parametric study. Each item in the components list can be expanded to view its details and properties. The right side of the Parametric Study window is used to modify a selected component’s parameters and specify output.
Define Your Design Variables
You need to tell Analyzer that you want to:
- Adjust the altitude of our “seed” satellite, Yacht_Watcher
- Use the resulting Yacht_Watcher to generate a Walker constellation, and
- Place the resulting Walker sensors into a constellation that can be used to calculate coverage.
Set the Propagator
- In the components list, drag the Semi-major Axis variable and drop it in the Design Variable (
) box on the right side of the Parametric Study window.
- Set the following values below the Design Variables box:
Our initial Yacht_Watcher altitude was 400 km, and we know the resulting coverage for that altitude. Let’s try adjusting the altitude up to 600 km in increments of 50 km to see what coverage is provided at various altitudes.
Option | Value |
---|---|
starting value: | 6828 (do not enter units) |
ending value; | 6978 (do not enter units) |
number of samples: | 4 |
Asking for four (4) samples will automatically set the step size to 50 (450, 500, 550 and 600 km).
The original semi-major axis displayed in Analyzer is 6778 km (the altitude of the satellite, 400 km, plus the radius of the Earth, 6378 km=6778 km). You want your first altitude sampling to be 450 km--50 km above the original semi-major axis. To set the first sampling you need to add 50 km to the original value (400 km + 50 km + 6378 km=6828 km). To determine the ending value number of samples (4) X sample size (50) = 600 km + the radius of the Earth (6378 km)=6978 km.
Set Walker as a Variable
- Return to the components list and set the following Walker variables:
Option | Value |
---|---|
Enable | true |
Walker Type | Delta |
Constellation | Cameras (you must type this exactly as it appears in your scenario) |
Constellation Type | Sensor |
numPlanes | 1 |
numSatsPerPlane | 3 |
RAAN Spread | 360 |
walkerParam | 0 |
walkerParam would be the equivalent of interplane spacing if you were using the Walker tool.
Define Your Responses
You’ve told Analyzer what to put in, now let’s tell it what data you want it to return. You decided earlier that you want to know the percent satisfied based on the simple coverage figure of merit.
The information you are looking for in Analyzer is the same data found in the Percent Satisfied report from earlier. However, you have not defined the data provider as the response yet. Let’s do that now.
- Return to the components list.
- Drag Percent_Satisfied to the Responses section on the right side of the Analyzer window.
- Click Run…
It will take several minutes to analyze the different scenarios. Take a look at the Object Browser and the 2D and 3D Graphics windows. You will see the various Walker constellations being created and the coverage calculations progressing.
Review Your Results
When the analysis is completed, you can view the results in the Data Explorer that appeared when run was initiated. The Data Explorer is a tool used by Trade Study tools to display data while they are being collected from STK. While data is being collected, the Data Explorer displays a progress meter, a halt button, and the data.
The Data Explorer will display a graph that plots the resultant data. Take a look at the 2D Scatter Plot graph in the Data Explorer. We can edit the graph to make it easier to read.
- On the left side of the graph, click the Dimensions icon.
- Change the X dimension to SemiMajorAxis.
- Click on the graph to close the Dimensions window.
- Click on the Series icon.
- In the Series window, change Lines/Markers by selecting the fourth icon which draws lines from each plot in the graph.
- Click on the graph to close the Series window.
Lines/Markers Selection
Updated 2D Scatter Plot
Table Data
If you want more specific data about the points on the graph, bring the Table window to the front. The Table view gives a summary of the parameters used for each run, and lists all the input and output values.
Table View
The numbers listed above are meant to show you want the results summary looks like and are not intended as specific Analyzer results. Your results may vary from those shown.
- Use the data provided in the Data Explorer to answer the following questions:
- Do you achieve 100% coverage of the oceans with any of the constellations created?
- If not, how close do you come to 100% coverage?
- Between which two altitudes did you gain the greatest % coverage?
- Between which two was your gain the least?
- How would you change your Analyzer set up if you wanted to see Area Satisfied instead of Percent Satisfied?
Now you are armed with some preliminary design information. You can meet with your customer and discuss the pros and cons of higher orbit insertion costs versus coverage. You could also use Analyzer to consider numerous other design options such as different types of Walker orbits, perhaps three planes of one satellite each might yield more favorable results, etc.
Save Your Work
In the event that your customer wants you to consider other design options for this scenario, you can save this Analyzer set up for future use.
- Close the Data Explorer Table view.
- Select No when asked to Save.
- In the --favorites list-- drop-down menu at the top of the Parametric Study window, select Add Current Configuration as a Favorite.
- Name this configuration Yacht Watch: Just The Data.
- Click OK.
- Close the Parametric Study tool.
- Close Analyzer.
- Save (
) your work.
- Close the scenario (
).