Skip to main content

Application Programming Interface (API) for Thermal Desktop

Are you ready to move beyond the limits of the Thermal Desktop GUI and try your hand at coding? Welcome to OpenTD.

We have made the vast capabilities of Thermal Desktop as user-friendly as possible. We have included the ability to add Fortran code that is solved along with the models to expand those capabilities. We are frequently impressed with the various ways our users expand Thermal Desktop's capabilities using the existing tools, often in ways we never anticipated. OpenTD, the Application Programming Interface (API) for Thermal Desktop, is the next step in this evolution. We give you control over Thermal Desktop so you can automate many of the tasks that can become repetitive and tedious. We are eager to see what you can do with it.

Using your own programming, OpenTD will allow you to make your own interface, automate model creation, query existing models, update existing models, customize your post processing tools, and much more. Watch our introductory webinar to see if this OpenTD is right for you.

Create classic snake game

 Demo to create curved elements in a spiral using OpenTD

                     Create curved elements in a spiral using OpenTD

                     Create classic snake game

We cannot make a comprehensive list of things you could do when combining your own programming with OpenTD because there are too many possibilities, so here are some ideas to get your imagination started:

Working within Thermal Desktop

  • Translate other thermal model formats to Thermal Desktop
  • Read a configuration text file of your own design and create a thermal model
  • Create a simple interface for positioning parts of an articulated model
  • Run cases overnight and email the engineer when each run is complete
  • Create orbits with data from external sources and add them directly to the cases
  • Generate screenshots of a frequently-updated model for inclusion in a report
  • Create simple-geometry curved finite elements
  • Make classic arcade games (not necessarily recommended)

Working with Results

  • Use weighted average, max/min, or create your own formula for post processing data
  • Create temperature envelope plots and tables for components from multiple case sets
  • Locate the highest heat flow through a model in many cases and plot the value as a transient
  • Identify which component in which cases violate allowable limits and plot the results
  • Make your own comprehensive plotting tools

Create your own formula of existing data to plot side by side

Create your own formula of existing data to plot side by side

Working with Thermal Desktop and Results

  • Update the geometry of one model based on the results of a different model
  • Return color contour plots for at the max and minimum temperatures for each component
  • Adjust a simplified model so it provides the same key results as the detailed model

Reduce a detailed model and ensure the results match

Reduce a detailed model and ensure the results match

Linking SINDA and other software

OpenTD includes OpenTD.CoSolver, which allows you to link a SINDA solution with other software. Thermal Desktop's Boundary Condition Mapper (BCM) is very helpful for applying CFD results to a model, but what if the temperatures affect the CFD solution? You can link the CFD with SINDA to find the solution.

Demo interface to configure a satellite and orbit, run a case, and view SINDA results

About OpenTD

OpenTD, originally called TD API, was first released  in version 6.1 to help advanced users expand Thermal Desktop's capability. It was widely expanded in versions 6.2 and 6.3.

OpenTD is available free to our existing Thermal Desktop customers who maintain active support subscriptions. However, we recommend using C# in Microsoft Visual Studio, which has a variety of licensing options. Depending on your situation, you may be able to use C# for free, or it may require a paid license. Visual Studio is recommended but not required; many users have also used MATLAB or Python. Your chosen language must be able to load .NET assemblies. CRTech's examples and support are provided in C#, so that language is highly recommended.

OpenTD requires a good understanding of Thermal Desktop and .NET object-oriented programming. We highly recommend using C# since it is the language that we support. There are many excellent books and videos for learning C#. You can use any .NET language (C#, VB.NET, F#) or any system that can load .NET assemblies (MATLAB, Python). OpenTD is version-controlled, which means your code will still work when we release future versions.

Getting Started with OpenTD

We have a detailed Getting Started Guide that is the best place for anyone to begin. It covers a variety of topics and explains where to go for more resources. We have many demos, tips, and tricks on our website. And as with all of our product, we are always here to help at

The demo pack is available to download and see many simple programs. These demos give some indication of the overall capability, but are primarily intended to help you get familiar with the syntax, methods, and classes.