WSMSimulate
WSMSimulate["mmodel"]
simulates "mmodel" according to experiment settings.
WSMSimulate["mmodel",tmax]
simulates from 0 to tmax.
WSMSimulate["mmodel",{tmin,tmax}]
simulates from tmin to tmax.
WSMSimulate["mmodel",vars,{tmin,tmax}]
stores only simulation data for the variables vars.
Details and Options
- WSMSimulate returns a WSMSimulationData object.
- The "mmodel" refers to the fully qualified Modelica name.
- The shortest unique model name mmodel can be used where WSMNames["*.mmodel"] gives a unique match.
- The stored simulation variables vars can have the following values:
-
Automatic automatically choose what to store {v1,v2,…} store only variables vi All store all variables - The following options can be given:
-
InterpolationOrder Automatic continuity degree of output between events Method Automatic what simulation method to use WSMInitialValues Automatic overriding initial values WSMInputFunctions Automatic overriding input values WSMParameterValues Automatic overriding parameter values WSMProgressMonitor Automatic control display of progress - The option setting Automatic normally means that the setting is taken from "mmodel" or its experiment setting.
- Setting WSMParameterValues or WSMInitialValues to {pi->{c1,c2,…},…} runs simulations in parallel, with pi taking values cj.
- WSMInitialValues corresponds to the start property in the Modelica model.
- WSMInputFunctions->{"var1"->fun1,…} uses funi[t] as the input value for vari at time t.
- Method settings take the form Method->"method" or Method->{"method","sub1"->val1,…}.
- The following adaptive step methods can be used:
-
"DASSL" DASSL DAE solver "CVODES" CVODES ODE solver - Suboptions for adaptive-step methods include:
-
"InterpolationPoints" Automatic number of interpolation points "Tolerance" 10^-6 tolerance for adaptive step size - The following fixed-step methods can be used:
-
"Euler" explicit Euler's method of order 1 "Heun" Heun's method of order 2 "RungeKutta" explicit Runge–Kutta method of order 4 - Suboptions for fixed-step methods include:
-
"StepSize" 10^-3 fixed step size - With Method->{"NDSolve",sub1->val1,…}, NDSolve is used as the solver. Method options subi are passed to NDSolve.
Examples
open allclose allBasic Examples (4)
Scope (13)
Simulation Time (4)
Simulate with settings from the model:
Simulate for an explicit time interval:
Use a Quantity to specify the time interval:
Variables and Parameters (5)
Simulate a model with different parameters:
Compare the variable between the simulations:
Initial values for variables can be set with the WSMInitialValues option:
Parameter values can be set with the WSMParameterValues option:
Simulate a model with given input:
Simulate the model that adds two inputs:
Plot the inputs and the output:
Simulation Results (4)
Simulate a model and plot the variables x1 and x2:
Get simulation results for the variables x and x':
Plot the variables using the Plot function:
Simulate a model and find the maximum of a variable:
Get the value of the variable angle1v:
Find the maximum value of the angle:
Generalizations & Extensions (1)
Options (17)
InterpolationOrder (1)
Method (8)
Show the result in a ParametricPlot:
For stiff problems, use an adaptive-step method:
Simulating with too few interpolation points can give inexact plots:
Increasing the number of points gives a better result:
The default step size for a fixed-step solver might be smaller than needed:
Use a larger step size to speed up computation:
Let an adaptive solver choose the solver steps:
Use NDSolve for simulating a model:
The result is a WSMSimulationData object containing the simulation results:
Pass options to NDSolve:
WSMInitialValues (2)
WSMInputFunctions (2)
Simulate a model with a given input:
Simulate the model that derives the input:
Plot the input and the output:
Simulate a model with a TimeSeries as input:
WSMParameterValues (3)
WSMProgressMonitor (1)
Turn off the progress dialog with WSMProgressMonitor:
Applications (11)
Calculate the overshoot of the height in a tank system:
Get the value of the step sent in to the tank:
Calculate the rise time for the height in a tank system:
Get the required values at 10% and 90% by looking at the steady-state value for height:
Find the times at which the signal reaches these values:
Plot lines at the final value, and when the signal reaches 10% and 90% of the final value:
Calculate the settling time for the height in a tank system:
Find 5% bounds on the final value:
Find the time at which the signal stays within these values:
Plot the bounds and the found settling time:
Change parameter values interactively:
Simulate a rolling wheel for different starting inertias along the wheel axis:
Fetch the trajectories for the wheel:
Analyze resonance peaks when varying a parameter:
Simulate with varying spring constant:
Calibrate parameters in a model by comparing to measurement data:
Set up a criteria function for model fitting:
Fit parameters to the test data:
Simulate with the fitted parameters:
Show the test data and the calibrated model together:
Filter sampled data from a Tinker Forge Weather Station:
Time shift and retrieve the magnitude of the data:
Run the time series through a lowpass filter:
Simulate a lowpass filter with sound as input:
Simulate with given input sound:
Retrieve the output and play both to compare:
Fetch trajectories from the result:
Visualize simulated data with a WaveletScalogram:
Pick out the data you are interested in:
Properties & Relations (4)
The output from WSMSimulate is a WSMSimulationData object:
Use properties to get variable trajectories:
Use WSMSimulateSensitivity to also get sensitivities to parameters:
Plot the capacitor's voltage sensitivity to the frequency of "sineVoltage1":
Use WSMParametricSimulate for a function that can be evaluated for different values:
Compute solutions for different values of the frequency parameter:
Use WSMRealTimeSimulate to simulate a model in real time: