I was recently asked why Dymola/Modelica simulations are so prevalent in Motorsport, which made me think back to 2008 when I first started using this simulation package. You may be expecting an answer about symbolic manipulation, object oriented behavior, short learning curves or a number of other things. After all, there are a lot of clever or even cool things in how the Dymola/Modelica combination empowers non software engineers to develop efficient simulations quickly. But when it comes to prevalence in Motorsport, none of these would be the real reason. The answer is simple; value. With the correct Dymola development license feature, you get license free deployment of your simulation models within your company!
In Motorsport, vehicle dynamics simulations must be two things: dynamic (i.e. can evolve rapidly) and inexpensively distributable. Simulation models and tools are updated regularly, every month or even week, rather than one or two times per year. Pressure to get the most speed out of your race vehicle is high and the stakes are even higher!
Strategy: Not just for fuel and tires
The types of approaches I’ve seen across Motorsport generally fall into one of three categories.
The first is what I would refer to as the fabulously frugal approach. In this scenario, only one seat of a particular piece of software is purchased. There is only one person who can run this software, and they are responsible for running all of the simulations requested by others (primarily) due to licensing limitations. Software is generally developed slowly by a third party. If this was your implementation in a time when rule changes happen each week, you’d almost certainly be finishing at the back of the field.
The second is what I would refer to as the make it rain approach. Based on my experience, this is mostly a thing of the past. In this scenario there are many people who need to run simulations. The company simply throws money at the problem, purchasing however many seats of a pre-developed simulation package necessary relative to the organizational headcount. While the evolution of the simulation is slightly quicker in this scheme than the first approach, (due to the number of cubic dollars being spent), evolution still is done by a third party and thus slower versus in-house.
The third is what I would refer to as the in-house setup. Winners want the ball in their hands when the game is on the line. Motorsport is no different. Well funded organizations often decide to take their simulation development in-house. In this scenario, rather than pay someone else for their intellectual property (IP), the organization chooses to pay an employee or a few employees and begin to develop their own IP. Simulations in this scenario are often written in a native language such as C, C# or C++ etc, requiring a very unique skillset (vehicle dynamics and software engineering).
For many years, Motorsports simulation configurations fell into the second category of make it rain. This was the only choice for teams and manufacturers who had to run hundreds or even thousands of simulations per day. Astronomical amounts of money would be spent on a seat-by-seat basis to allow many users to use / run simulations in parallel. Economics of Motorsport continually evolve, with this approach seemingly going the way of the dinosaurs.
As the fabulously frugal first option won’t win you any races, the third option needs to work. Dymola/Modelica fits nicely into the in-house scenario. A much flatter learning curve allied with the fact that accurate simulation models can be created by any reasonably competent mechanical engineer, makes Dymola/Modelica the simulation package of choice. With Dymola, the only license fees that are applicable are the number of development seats purchased. The key point here is that the number of end users of the developed simulation is effectively unlimited, i.e. license free deployment!
License free deployment
Base Dymola License Functionality
With the base level licensing, Dymola converts the model, written in the Modelica language, to C code and compiles this C code into an executable (.exe) which is then executed. This .exe has inbuilt licensing restrictions which means that it can only be run on a machine with a valid Dymola license. The user can also choose to build an FMU rather than an .exe, but the same licensing restriction is in place.
From a Dymola/Modelica perspective, there are two key license features that enable license free deployment.
- Binary Code Export
- Source Code Export
Binary Code Export
With the Binary Code Export license feature, Dymola converts the model, written in the Modelica language, to raw C code and then compiles this code into one of a few pre-defined binary forms without inbuilt licensing restrictions (exe, FMU etc.). While the developer is relatively tied to a fixed type of binary, the generated binary can be copied to multiple computers and will run license free.
Source Code Export
The least restrictive license feature is called Source Code Export. Dymola converts the model, written in the Modelica language, to raw C code without inbuilt licensing restrictions. Users can then compile this code (along with whatever customizations they want to embed) into whatever form they desire for use by their end users. Some prefer .dlls, some prefer .exes and some prefer objects that can be run on hard or soft real-time platforms such as Concurrent, dSpace, vTag, PTWinSim etc. The most flexible option, a plethora of options for license free deployment is provided. Claytex offers the BuildTools Library, for the export and compilation of Dymola models as easily customizable apps for PTWinSim, vTAG. and .exe. Debugging and customizable optimization settings are also available using the BuildTools library.
License free deployment is a huge benefit to anyone who is running simulations across a large number of computers or across a large in-house user base. Such computers could be in a lab, virtual machines in the cloud, or any other distributed computing scenario you can envision. I’ve often wondered why this approach hasn’t caught on in very many areas outside of Motorsport. Maybe the information shared in this blog post will help change that?
Nate Horn – Vice President