SystemModeler and the Wolfram Language

Jan Brugård, CEO Wolfram MathCore

Join the Conversation #WolframTechConf

Spark Your Curiosity

Since 2012, SystemModeler has been used in a wide variety of fields with an even larger number of goal such as

optimizing the fuel consumption of a car

finding the optimal dosage of a drug

maximizing the lifetime of a battery system

Our goal

SystemModeler + Curiosity => Insight, innovation, and results

SystemModeler 5.1

With SystemModeler 5.1 and Mathematica 11.2 the system modeling functionality directly in the Wolfram Language.

Why does this Matter?

Any Wolfram Language user can

Simulate

Explore

Share

any model that you have created

Simulate

Before

System modeling was a package for Wolfram SystemModeler users

Example

Needs["WSMLink`"];

WSMSimulate["TemperatureStateEstimation"]

WSMPlot[%]

After

System modling natively built-in the Wolfram Language

Example

SystemModelPlot["TemperatureStateEstimation"]

Simulate and plot

SystemModelPlot[]

What to plot?

SystemModel[,"PlotNames"]//TableForm

Customize simulations

SystemModelSimulate[,<|"InitialValues"-> {"pendulum.pendulumJoint.phi"-> 0Degree}|>]

SystemModelPlot[%]

What to customize?

SystemModel[,"InputVariables"]

SystemModel[,{"ParameterNames",Except["."]..}]

SystemModel[,{"SystemVariables",Except["."]..}]

Explore

Find examples

SystemModelExamples[]

Parametric simulations

sol=SystemModelParametricSimulate[,"z",{"a"}]

Plot[Evaluate[Table[sol[a][t],{a,0,1,.1}]],{t,0,10}]

Manipulate

Manipulate[SystemModelPlot[SystemModelSimulate[,<|"ParameterValues"-> {"a"-> a}|>],"z"],{a,0,1,0.1},ContinuousAction->False]

Share — 
Australian High Schools Example

Share — 
Australian High Schools Example

Natural Selection and Environmental Selection Pressures

Goals

Teach the genetic make-up of populations:

Genetic inheritance

How it’s taught today

Individual inheritance

Limitations

Individual inheritance

Students get a limited idea of the big picture

Focus on current state

Students won’t be able to understand what could be expected in the future

Share — 
Australian High Schools Example

Method: Model the biological process

1. Build the model

The population model is dynamic

Makes it possible to see and understand the past, the present, and the future

2. Create a user interface

Makes it possible to explore, play, and understand the big picture

3. Package everything into a virtual lab

Contains explanatory texts, steps, questions and more

Share — 
Australian High Schools Example

Completed Notebook

Published so that it can be used by all teachers in the State of Victoria

Free to modify and reuse

Explore—
Concentrated Solar Power

Imagine getting much more from the sun.

Goal

Produce clean energy

The system

A concentrated solar power (CSP) system consists of some way to concentrate sun light and make use of that heat. In the case of Azelio, this is achieved by having.

a parabolic dish that concentrates the light into a cavity

the cavity is then used to power a Stirling engine

that powers a generator that produces electricity

Challenges

Where is the biggest loss of energy in the system?

What part should be modified for maximum profit?

What is the predicted profit of X number of dishes in place Y with weather Z?

How should the control system be modified to increase efficiency?

How would the system respond, in regards to efficiency, to new designs?

Very costly to build prototypes to test all this

Explore—
Concentrated Solar Power

Method: Use Model-based design

1. Model of the entire system

The entire system-of-systems was modeled in SystemModeler:

2. Synthesizing the controller

3. Simulate the system in different conditions

What would happen if we moved a system from Australia to Dubai?

Well, just change the weather data from Australia to Dubai and run the system!

4. Make changes and iterate

Explore—
Concentrated Solar Power

The result

The verdict

Thanks!