Tychos Docs
  • Tychos Documentation and Reference
  • General
  • Change Log
  • Python Demonstrations
  • MathJs Demonstrations
  • Our Team
  • Learn
    • Overview
    • Creating and Managing Scenarios
    • The Interface
    • Tychos Python Language Reference
    • Tychos MathJs Language Reference
    • Video Guides
      • Video Tutorial: An Overview
      • Video Tutorial: Settings
      • Video Tutorial: Animating Motion
      • Video Tutorial: Meters and Gauges
      • Video Tutorial: Graphs and Bar Charts
      • Video Tutorial: Arrows and Lines
      • Video Tutorial: Tables
  • For Teachers
    • Getting Started
    • Creating and Managing Classes
    • Giving Feedback: Comments
    • Tutorials (Python)
      • Python Tutorial 1: Introduction to Coding in Tychos
      • Python Tutorial 2: Circles and Rectangles
      • Python Tutorial 3: Arrows and Lines (and Poly Lines)
      • Python Tutorial 4: Simulating Change
      • Python Tutorial 5: Simulating Constant Velocity
      • Python Tutorial 6: Using Graphs
      • Python Tutorial 7: Modeling The Momentum Principle
      • Python Tutorial 8: Modeling A Projectile
      • Python Tutorial 9: Conditional Forces
    • Tutorials (MathJs)
      • MathJs Tutorial 1: Introduction to Coding in Tychos
      • MathJs Tutorial 2: Circles and Rectangles
      • MathJs Tutorial 3: Arrows and Lines
      • MathJs Tutorial 4: Simulating Change
      • MathJs Tutorial 5: Simulating Constant Velocity
      • MathJs Tutorial 6: Using Motion Graphs
      • MathJs Tutorial 7: Modeling The Momentum Principle
      • MathJs Tutorial 8: Modeling A Projectile
      • MathJs Tutorial 9: Conditional Forces
    • Writing Goals (Python)
    • Writing Goals (MathJs)
    • Canvas LTI Installation Guide
    • Lesson Worksheets (Google Docs)
Powered by GitBook
On this page
  • World View
  • Simulation "Hack" Panels
  • Description Panel
  • Goals Panel
  • Initial State Panel
  • Calculations Panel
  • Console Panel
  • Settings Panel

Was this helpful?

  1. Learn

The Interface

PreviousCreating and Managing ScenariosNextTychos Python Language Reference

Last updated 1 year ago

Was this helpful?

World View

The main application screen shows the simulated world filled with particles, and any graphs that have been defined. The main window primarily consists of a two dimensional grid that represents a limitless two dimensional euclidean space. This is the space where all simulation animations take place.

There are several key user interface elements on the screen that serve important functions for accessing different aspects of the application:

  1. Hack Panel - click on this to access the editing and settings panel for your simulations.

  2. Tools Menu - There are a number of tools that you can add to help analyze and explore your simulation. Many of these can also be added through the programming API's.

  3. Full Screen button - View the scenario in full screen mode.

  4. Share and Help Menus - Different menu options for sharing your scenario and getting help.

  5. Main Menu - click on this to access links to other content on our website, and to view your scenario library,

  6. Simulation Controls - these are the controls for running (or pausing), stepping through, or saving your simulation.

  7. Save Button - Save your scenario to your scenarios library.

Simulation "Hack" Panels

The panels shown below are accessed by clicking the small wrench icon in the upper left hand corner of the screen. Each panel has its own function with different information displayed and often editable by the user.

Description Panel

This is the description of the simulation, as well as any optional directions that can be identified by the simulation author.

Goals Panel

The instructor or whoever wrote the scenario may include specific goals that the student should accomplish with this Scenario. Each goal has a description and the goal will turn from a question mark to a green check when your program achieves that goal.

Initial State Panel

The Initial State Panel is where you program the initial conditions of the simulation, e.g. creating circles, rectangles, springs, setting their initial position, and perhaps defining initial values such as the gravity or mass.

This is also where you define functions that can then be called in the Calculations Pane.

Indentation — Indent several lines of code by selecting them and typing Cmd-] or Tab. Un-indenting is Cmd-[ or Shift-Tab.

Comments — Comment lines by selecting them and typing Cmd-/ or Ctrl-/.

Calculations Panel

In this panel, you write your program for calculating what the simulation does for every moment in time as the simulation runs - called a frame. E.g. for a simulation of objects moving in space, you might calculate a new position for them given their existing momentum.

Console Panel

This panel provides a REPL like tool so that you can execute code from the command line interface, but it also serves to print out messages to the console that you insert into your code. It's a great way to test some code, explore the current state of a running simulation, or get some help (Python only).

This panel does not appear if you are using MathJs to write your simulations.

Settings Panel

This panel allows you to change several settings of the simulation. It is actually broken into three "sub panels:

Simulation Settings:

These are general settings that control how the simulation runs:

  • Language: You can write your simulation using the Python language (default) or switch to MathJs as another coding language option!

  • Time Step (dt): Set the time interval between each calculation and simulation world update.

  • Simulation Duration: The total length of time for the simulation to run.

  • Table Record Rate: The rate at which new rows are added to the Data Table (see above).

Display Settings:

These settings control the visual look of the simulation world:

  • Background Color - The background color of the world.

  • Grid Color: The color of the grid

  • Motion Map: If any objects in the world have their motion_map flag set to true, then checking this box will enable a motion map to be displayed.

  • Motion Map Rate: This sets the rate at which each new strobe image is created (and removed) from the world.

  • Max Strobe Images: Set the total number of strobe images that will be displayed per object.

  • Zoom Extents: The World View window can either scale automatically depending on the space inhabited by any objects, or it can be set to a specific viewing size.

    • Choose automatically: The World View scales to fit the objects in the simulation.

    • Set fixed size: The World View is sized based on the Minimum value and the Maximum value.

  • Code Color Mode: This changes the color theme for the code editing panes.

Access Settings (Only viewable by Teacher accounts)

This section of the Settings Panel is only viewable if you have a teacher account. It gives teachers the ability to limit certain access to the scenarios that are created.

  • Privacy: Clicking the little lock icon changes the scenario to being publicly viewable (default) or private.

  • Hackable: This settings allows users to limit others who view their scenarios from making copies of their scenarios as well as limiting access to the different Hack Panels.

For more on Goals, and how to write them, please visit .

Graph Plot Rate: The rate at which new points are added to your widgets.

Writing Goals
Graph
The Initial State Pane
The Calculations Pane