Part 7:
Customize Analysis with Analysis Workbench
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 tutorial requires STK 12.9 or newer to complete in its entirety. If you have an earlier version of STK, you can view a legacy version of this lesson.
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
- Analysis Workbench
Problem statement
Engineers and technicians require additional capabilities when using STK to create custom functions and calculations relative to times, positions, and reference frames. You work at a ground station that tracks a recently launched satellite. The ground station's sensor must be turned off when its boresight is within 10 degrees of the Sun. You need a report that tells you when it's safe to track the satellite.
Solution
Use a combination of STK Pro and STK's Analysis Workbench capability to create vectors, custom angles, calculations, time components and temporal constraints to determine when the sensor can safely track the satellite.
What you will learn
Upon completion of this tutorial, you will understand the following Analysis Workbench Tools:
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.
- Launch STK ().
- Click Create a Scenario ().
- Enter the following in the New Scenario Wizard:
- Click when you finish.
- Click Save () when the scenario loads. A folder with the same name as your scenario is created for you in the location specified above.
- Verify the scenario name and location.
- Click .
Option | Value |
---|---|
Name | STK_AnalysisWorkbench |
Location | Default |
Start | 1 Mar 2024 16:00:00.000 UTCG |
Stop | + 2 days |
Disabling Terrain Server
Terrain is not required for this analysis. Disable the Terrain Server.
- Right- click on STK_AnalysisWorkbench () in the Object Browser.
- Select Properties ().
- Select the Basic - Terrain page.
- Clear the Use terrain server for analysis check box.
- Click to accept the changes and close the Properties Browser.
Inserting a satellite tracking station
Insert a Facility object which will act as a satellite tracking station.
- Select Facility () in the Insert STK Objects tool.
- Select the Insert Default () method.
- Click .
- Right-click on Facility1 () in the Object Browser.
- Select Rename.
- Rename Facility1 () Tracking_Station.
Inserting a recently launched satellite
Insert a Satellite object which will be tracked by the tracking station.
- Insert a Satellite () using the Orbit Wizard () method.
- Set the following in the Orbit Wizard:
- Click .
Option | Value |
---|---|
Type | Circular |
Satellite Name | New_Sat |
Inclination | 50 deg |
Altitude | 800 km |
RAAN | -85 deg |
Calculating Access
Calculate the times the tracking station can access or see the satellite using the Access tool. This access will be used as a component when using the Analysis Workbench.
- Right-click on Tracking_Station () in the Object Browser.
- Select Access... ().
- Select New_Sat () Associated Objects list in the Access Tool.
- Click ().
- Look at the Timeline View. By default the Timeline View is docked at the bottom of the STK GUI.
- Note the multiple accesses between Tracking_Station () and New_Sat ().
- Click to close the Access tool.
Using the Vector Geometry Tool
The Vector Geometry Tool (VGT) offers the ability to build custom geometric models from any combination of out-of-the box or user-created Vector (), Axes (), Point (), System (), Angle () and Plane () components. We will display predefined vectors in the 3D Graphics window.
Opening the Tracking Station's Properties
Open Tracking_Station's () 3D Graphics - Vector Properties page. We will select vectors to display in the 3D Graphics window.
- Open Tracking_Station's () properties ().
- Select the 3D Graphics - Vector page.
- Select the Vectors tab.
Displaying Sun Vector
You will display the Sun Vector. In this scenario, the Sun Vector is anchored to tracking station's center point and targets the Sun.
- Select the Sun Vector Show check box.
- Click to accept the changes and keep the Properties Browser open.
Viewing the Sun Vector
View the Sun Vector in the 3D Graphics window.
- Bring the 3D Graphics window to the front.
- Right-click on Tracking_Station () in the Object Browser.
- Select Zoom To.
- Zoom out far enough so that you can see the Sun vector.
- Click Start () in the Animation toolbar to animate the scenario. The Sun Vector follows the Sun.
- Click the Reset () when you are finished.
Displaying the To Vector
A To Vector is a displacement vector between origin and destination object points. To Vectors are automatically generated by STK for all objects in your scenario. The vectors are stored in a separate folder labeled, To Vectors, unless a vector with the same name already exists (Earth or Sun). In scenarios with many objects, the To Vectors folder can be very large for each object. View the New_Sat's () To Vector.
- Return to Tracking_Station's () 3D Graphics - Vector properties () page.
- Select the Vectors tab.
- Click .
- Notice Tracking_Station () is selected in the Object list on the left of the Add Components window.
- Click the Expand () button beside To Vectors () in the Components for: Tracking_Station list on the right.
- Select New_Sat ().
- Click to add the New_Sat vector to the Vectors list and close the Add Components dialog box.
- Notice that Show is selected for the New_Sat Vector.
Showing Magnitude
If Show Magnitude is selected, the magnitude value is displayed on the selected vector. This is only available for vectors (). Show the magnitude for New_Sat's () To Vector.
- Return to the 3D Graphics - Vector page.
- Ensure New_Sat Vector is selected in the Vectors list.
- Select the Show Magnitude check box.
- Click .
Viewing the To Vector
View the To Vector and the Magnitude in the 3D Graphics window.
- Bring the 3D Graphics window to the front.
- Click Start () to animate the scenario.
- Click the Reset () when you are finished.
The New_Sat Vector may be below the surface of the central body because the satellite is below the horizon, but will eventually surface. The vector follows the satellite. Show Magnitude provides a constant distance between the tracking station and the satellite, dynamically, in the 3D Graphics window.
Creating a Custom Angle
Create an angle () between the Sun Vector and the New_Sat To Vector. For the purposes of this scenario, whenever the angle is 10 degrees or less, the satellite tracking system needs to be shut down.
Opening Analysis Workbench Tools
Open the Analysis Workbench Tools, and select the Vector Geometry tab.
- Right-click on Tracking_Station () in the Object Browser.
- Select Analysis Workbench... ().
- Select the Vector Geometry tab in Analysis Workbench window.
Creating a Between Vectors Angle
Create a Between Vectors angle type. Then, create an angle between the Sun Vector and the New_Sat Vector.
- Select Tracking_Station () in the Object list.
- Click Create new Angle () to open the Add Geometry Component dialog box.
- Ensure the Type: is set to Between Vectors. This is the default Type.
- Type TrackingAngle in the Name: field.
Selecting the From Vector
Select New_Sat's () To Vector as the From Vector. The custom angle, TrackingAngle, will be measured starting from New_Sat's To Vector.
- Click the From Vector: ellipsis ().
- Select Tracking_Station () in the Objects list in the Select Reference Vector dialog box.
- Expand () To Vectors () in the Vectors for: Tracking_Station list.
- Select New_Sat ().
- Click to close the Select Reference Vector window.
Selecting the To Vector
Select the Sun Vector as the To Vector. The custom angle, TrackingAngle, will be measured between the New_Sat's To Vector and the Sun vector.
- Note that To Vector: already has the Tracking_Station Sun vector selected in the Add Geometry Component dialog box.
- Click to close the Add Geometry Component dialog box.
- Keep Analysis Workbench () open.
Displaying the Custom Angle
Custom angles can be viewed in the 3D Graphics window. Add the custom tracking angle to Tracking_Station's () 3D Graphics - Vector Properties page.
- Return to Tracking_Station's () properties ().
- Select the 3D Graphics - Vector page.
- Select the Angles tab.
- Click .
- Select Tracking_Station () in the Objects list in the Add Components dialog box.
- Select TrackingAngle () in My Components () in the Components for: Tracking_Station list.
- Click to add the TrackingAngle angle to the Angles list and close the Add Components dialog box.
- Click .
Viewing Tracking Angle
View the tracking angle in the 3D Graphics window.
- Bring the 3D Graphics window to the front.
- Click Start () to animate the scenario.
- Note as the scenario animates, the angle increases and decreases, updating dynamically.
- Click the Reset () when you are finished.
Vectors and Angle View
Using the Calculation Tool
The Calculation Tool includes components of the following basic types: Scalar (), Condition () and Parameter Set (). Use the Calculation Tool to determine when the tracking angle is 10 degrees or less.
Creating a Scalar
You will create a Scalar to return the tracking angle values. A scalar defines components that produce scalar time-varying calculations. Scalar calculation components also have the ability to return minimum, maximum, mean, and standard deviation values. You will start by creating a new Scalar Calculation ().
Opening the Calculation Tool
Open the Calculation Tool.
- Return to Analysis Workbench.
- Select the Calculation tab to open the Calculation Tool.
Defining a Scalar Calculation
The default scalar calculation type is Angle. The Angle type is an angular displacement specified by an Angle component from the Vector Geometry Tool.
- Select Tracking_Station () in the Object list.
- Click Create new Scalar Calculation ().
- Ensure Type: is set to Angle in the Add Calculation Component dialog box. This is the default Type.
- Type Scalar_TrackingAngle in the Name: field.
- Click the Input Angle: ellipsis ().
- Select Tracking_Station () in the Objects list in the Select Reference Angle dialog box.
- Select TrackingAngle () in the Angles for: Tracking_Station list.
- Click to close the Select Reference Vector dialog box.
- Click to close the Add Calculation Component dialog box.
Defining a Condition
Conditions define a scalar calculation which is considered to be satisfied when it is positive and not satisfied when it is negative. Create a Condition () to report when the tracking angle is 10 degrees or less.
Creating a Condition
Create a new Condition ().
- Return to the Calculation Tool.
- Select Tracking_Station () in the Object list.
- Click Create new Condition ().
Defining Calculation Condition Type
The default Calculation type is Scalar Bounds. Scalar Bounds defines a condition by combining a specified Scalar component with scalar bounds.
- Ensure the Type: is set to Scalar Bounds in the Add Calculation Component dialog box. This is the default Scalar Bounds.
- Type Below_10_Degrees in the Name: field.
Defining the Scalar
Set the Scalar Calculation, Scalar_TrackingAngle, as the Reference Scalar Calculation.
- Click the Scalar ellipsis ().
- Select Tracking_Station () in the Object list.
- Select Scalar_TrackingAngle () in the Scalar_TrackingAngle for: Tracking_Station list.
- Click to close the Select Reference Scalar Calculation dialog box.
Defining the Calculation Conditions
Define the calculation conditions to be 10 deg or less.
- Open the Operation: shortcut menu.
- Select Below Maximum.
- Type 10 deg in the Maximum: field.
- Click to close the Add Calculation Component dialog box.
Creating a Report
You can create reports and graphs directly inside the Calculation Tool. Create a report showing when the tracking angle is below 10 degrees.
- Return to the Calculation Tool.
- Select Tracking_Station () in the Object list.
- Expand () Below_10_Degrees () in the Components for: Tracking_Station list.
- Right-click on SatisfactionIntervals ().
- Select Report...
- Close () the report.
- Keep Analysis Workbench open.
The report shows when the tracking angle is 10 degrees or less during the entire scenario interval. However, it doesn't restrict the report to those times when there are accesses between the tracking station and the satellite.
Viewing Accesses and Satisfaction Intervals in the Timeline View
The Timeline View can be used to visualize a variety of time intervals within your scenario. Use the Timeline View to visualize the times Tracking_Station () has access to New_Sat () and the times the tracking angle is less than 10 degrees.
- Return to the Calculation Tool.
- Drag and drop SatisfactionIntervals () into the Timeline View's Time Display.
- Observe the Timeline View.
Accesses and Below 10 Degree Satisfaction Intervals
Can you see any times when the tracking angle is below 10 degrees and might interrupt accesses?
Using the Time Tool
Use the Time Tool to create and manage any time instant(), interval (), interval list (), collection of interval lists () or time array (). Create an interval list to show when Tracking_Station () has access to New_Sat () while the tracking angle is above 10 degrees.
Creating an Interval List
Using the Time Tool, you will create an Interval List () by merging access times and the below 10 degree satisfaction intervals. Subtract the below 10 degree satisfaction intervals from the accesses to define tracking opportunities.
- Return to Analysis Workbench.
- Select the Time tab.
- Select Tracking_Station () in the Object list.
- Click Create new Interval List () to open the Add Time Component dialog box.
- Type Optimal_Tracking_Times in the Name: field.
Defining the Interval List Type
Create a Merged Interval List. Merged Interval Lists are intervals merged from multiple Interval or Interval List Time Components using a merge operation.
- Click beside the Type: field.
- Expand () Interval List.
- Select Merged () in the Select Component Type list in the Select Component Type dialog box.
- Click to close the Select Component Type dialog box.
Defining the Operation
Define the merge operation as Minus. Subtract the below 10 degree satisfaction intervals from the accesses to define tracking opportunities. The Minus operation is available when there are only two Time Components in the merge list.
- Return to the Add Time Component dialog box.
- Select MINUS for the Operation.
Removing Time Components
Remove default time components.
- Select the first time component in the Time Components: list.
- Click .
- Repeat the above steps until all time components are removed.
Defining the Time Components
In this instance, there are two time components: the accesses between the tracking station and the satellite and the below 10 degree satisfaction intervals.
- Click .
- Select Facility-Tracking_Station-To-Satellite-New_Sat () in the Object list in the Select Time Intervals dialog box.
- Select AccessIntervals () in the Components for: Facility-Tracking_Station-To-Satellite-New_Sat list.
- Click to close the Select Time Intervals dialog box and add the access intervals to the Time Components list.
- Click .
- Select Tracking_Station () in the Object list in the Select Time Intervals dialog box.
- Expand () Below_10_Degrees () in the Components for: Tracking_Station list.
- Select SatisfactionIntervals ().
- Click to close the Select Time Intervals dialog box and add the below 10 degree satisfaction intervals to the Components list.
- Click to close the Add Time Component dialog box.
Viewing Intervals in the Timeline View
You now have all the components for your analysis completed. View them in the Timeline View.
- Drag and drop Optimal_Tracking_Times () into the Timeline View's Time Display.
- Observe the Timeline View to see the merged intervals.
- Return to Analysis Workbench.
- Click .
Timeline View Showing All Time Components
Modeling a Tracking Station Sensor
Attach a Sensor object () to the tracking station to track the satellite. Then, using the custom components created in this lesson, model an outage on the sensor when the tracking angle goes below 10 degrees.
Inserting a Sensor on Tracking Station
Insert a sensor object on the tracking station.
- Insert a Sensor () object using the Define Properties () method.
- Select Tracking_Station () in the Select Object dialog box.
- Click .
- Rename Sensor1 () to Tracking_Sensor.
Modeling Limited Field-of-View
Set a limited field of view for the sensor to provide situational awareness.
- Select the Basic - Definition page.
- Keep the default Simple Conic Sensor Type.
- Enter 2 deg in the Cone Half Angle: field.
- Click .
Targeting the Sensor
Use the Targeted pointing type to point the sensor at the satellite.
- Select the Basic - Pointing page.
- Select Targeted for the Pointing Type.
- Select New_Sat () in the Available Targets list.
- Move () New_Sat () to the Assigned Objects list.
- Click .
Calculating Access
Compute an access between the sensor () and the satellite ().
- Right-click on Tracking_Sensor () in the Object Browser.
- Select Access... ().
- Select New_Sat () in the Associated Objects list when the Access Tool opens.
- Click Compute ().
- Click in the Reports frame.
- Note the multiple accesses between Tracking_Station () and New_Sat ().
- Keep the Access tool and the report open.
Adding Temporal Constraints
You want to know when the tracking station's sensor accesses the satellite, but restrict access when the sensor's boresight is within 10 degrees of the Sun. You can do this by adding a Temporal Constraint to your sensor object using the custom components created earlier in this lesson.
Adding a Temporal Intervals Constraint
First you need to add the Temporal Intervals constraint to the active constraints list.
- Open Tracking_Sensor's () properties ().
- Select the Constraints - Active page.
- Click Add new constraints ().
- Clear the All Categories check box in the Filter by Categories list in the Select Constraints to Add dialog box.
- Select the Temporal check box.
- Select Intervals in the Constraint Name list.
- Click .
- Click to close the Select Constraints to Add dialog box.
Setting Constraint Properties
Set the constraint to merged interval list.
- Choose Select time component as the Source in the Constraint Properties section.
- Click .
- Select Tracking_Station () in the Object list in the Select Interval, Interval List or Interval Collection dialog box.
- Select Optimal_Tracking_Times () in the Components for: Tracking_Station list.
- Click to close the Select Interval, Interval List or Interval Collection dialog box.
- Note that the Exclude Time Intervals option is clear. This means you are only including the merged interval times. The Access tool will only report accesses during the optimal tracking times.
- Click .
Creating a New Access Report
Create a new access report to compare the original access report with the constrained report.
- Return to the Access tool ().
- Click in the Reports section.
- Compare your original access report's Total Duration with the constrained access report's Total Duration.
- Note the temporal constraint shortens your access time.
- Note the times in the access report are the times your sensor can safely access the satellite.
temporal constraint total duration comparison
Saving your work
- Close any open reports, properties and tools which are still open.
- Save () your work.
Summary
This tutorial focused on three tools that are available in the Analysis Workbench:
- Vector Geometry Tool
- Time Tool
- Calculation Tool
In this lesson:
- You inserted a tracking station and a low earth orbit (LEO) satellite.
- Created an access between the tracking station and the satellite.
- Displayed the tracking station's Sun and satellite's To Vector in the 3D Graphics window.
- Used the Vector Geometry tool to create a custom angle between the vectors.
- Used the Calculation tool to create a scalar using the tracking angle, and then a condition which reported when the angle was 10 degrees or less.
- Used the Time tool to create an interval list by merging the access intervals with the below 10 degrees satisfaction intervals. Subtracting the below 10 degrees satisfaction intervals from the access intervals created the optimal tracking times for your system.
- Attached a sensor to the tracking station and targeted the sensor to the satellite.
- Created a constrained interval by importing the optimal tracking times into the sensor's properties. This caused the Access tool to only report accesses during the optimal tracking times. The final report can be used to know when it is safe to tracking the satellite with the sensor.
On your own
Throughout the tutorial, hyperlinks were provided that pointed to in depth information. Now's a good time to go back through this tutorial and view that information.
Further training using the Analysis Workbench:
- STK Training: Look at the License Required column. All lessons with Analysis Workbench are lessons which use the Analysis Workbench.