Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Manipulate parameters or initial values in plots of model simulation results
ResourceFunction["SystemModelManipulate"][model] creates a Manipulate object from model showing the resulting plots of a simulation with controllers for parameters and initial values. | |
ResourceFunction["SystemModelManipulate"][model,{u}] creates a control only for the top-level parameter or variable u. | |
ResourceFunction["SystemModelManipulate"][model,{u,umin,umax}] allows the value for u to vary between umin and umax. | |
ResourceFunction["SystemModelManipulate"][model,{{u,uinit},umin,umax,…}] takes the initial value of u to be uinit. | |
ResourceFunction["SystemModelManipulate"][model,{u,{u1,u2,…}}] allows u to take on discrete values u1,u2,…. | |
ResourceFunction["SystemModelManipulate"][model,{u,func}] creates a control from the function func. | |
ResourceFunction["SystemModelManipulate"][model,{u,…},{v,…},…] provides controls to manipuate each u,v,…. |
SystemModel[…] | general system model |
StateSpaceModel[…] | state-space model |
TransferFunctionModel[…] | transfer function model |
AffineStateSpaceModel[…] | affine state-space model |
NonlinearStateSpaceModel[…] | nonlinear state-space model |
DiscreteInputOutputModel[…] | discrete input-output model |
"ParameterValues" | {p1→val1,…} | set parameter pi to value vali |
"InitialValues" | {v1→val1,…} | set initial value of variable vi to vali |
"Inputs" | {in1→fun1,…} | set input ini to value funi[t] at time t |
Appearance | "Open" | appearance of controls for real and integer values |
ContinuousAction | False | whether to update continuously when controls are changed |
SynchronousInitialization | False | whether to perform initialization synchronously |
SynchronousUpdating | False | whether to update synchronously |
Create a dynamic interface for a model simulation:
In[1]:= | ![]() |
Out[1]= | ![]() |
Manipulate an initial value in a simulation:
In[2]:= | ![]() |
Out[2]= | ![]() |
Specify the model by name and manipulate a specific parameter value in a simulation:
In[3]:= | ![]() |
Out[3]= | ![]() |
Control initial values in an AffineStateSpaceModel:
In[4]:= | ![]() |
Out[4]= | ![]() |
Control initial and parameter values in a NonlinearStateSpaceModel:
In[5]:= | ![]() |
Out[5]= | ![]() |
Control parameter and initial values in a StateSpaceModel with a given input:
In[6]:= | ![]() |
Out[6]= | ![]() |
Control a parameter value in a TransferFunctionModel with a given input:
In[7]:= | ![]() |
Out[7]= | ![]() |
Control a parameter value in a DiscreteInputOutputModel with a given input:
In[8]:= | ![]() |
Out[8]= | ![]() |
In[9]:= | ![]() |
Out[9]= | ![]() |
Reproduce control annotations for a SystemModel:
In[10]:= | ![]() |
Out[10]= | ![]() |
For a SystemModel all default plots are shown by default:
In[11]:= | ![]() |
Out[11]= | ![]() |
Manipulate all plots individually with a "Plots" control:
In[12]:= | ![]() |
Out[12]= | ![]() |
Select which plots to make available:
In[13]:= | ![]() |
Out[13]= | ![]() |
Use variables or list of variables to specify plots:
In[14]:= | ![]() |
Out[14]= | ![]() |
Specify a custom simulation interval:
In[15]:= | ![]() |
Out[15]= | ![]() |
Pick minimum and maximum values for the control of a parameter value:
In[16]:= | ![]() |
Out[16]= | ![]() |
Pick minimum, maximum and jump values for the control of a parameter value:
In[17]:= | ![]() |
Out[17]= | ![]() |
Pick an initial value for the control of a parameter value:
In[18]:= | ![]() |
Out[18]= | ![]() |
Pick a list of discrete values for the control of a parameter:
In[19]:= | ![]() |
Out[19]= | ![]() |
Pick a function for the control of a parameter:
In[20]:= | ![]() |
Out[20]= | ![]() |
Pick a label for the control of an initial value:
In[21]:= | ![]() |
Out[21]= | ![]() |
Pick a list of discrete values and their labels for the control of a parameter:
In[22]:= | ![]() |
Out[22]= | ![]() |
Controls for booleans and enumerations use PopupMenu as ControlType if they are not specified:
In[23]:= | ![]() |
Out[23]= | ![]() |
If provided in the model, the base unit is displayed next to the name of the variable or parameter and the description is shown with Tooltip:
In[24]:= | ![]() |
Out[24]= | ![]() |
Set a fixed initial value:
In[25]:= | ![]() |
Out[25]= | ![]() |
Set a fixed parameter value:
In[26]:= | ![]() |
Out[26]= | ![]() |
Set an input:
In[27]:= | ![]() |
Out[27]= | ![]() |
Real and integer values are displayed by default:
In[28]:= | ![]() |
Out[28]= | ![]() |
Remove displayed values:
In[29]:= | ![]() |
Out[29]= | ![]() |
Study the trajectory of a classical charged particle under the effect of the Lorentz force:
In[30]:= | ![]() |
Out[30]= | ![]() |
Visualize trajectories in the configuration space of a Duffing oscillator:
In[31]:= | ![]() |
Out[31]= | ![]() |
Visualize trajectories and mass loss of a rocket with exhaust velocity of constant magnitude:
In[32]:= | ![]() |
Out[32]= | ![]() |
Study the model of a thumb-wheel potentiometer connected in a rheostat configuration:
In[33]:= | ![]() |
Out[33]= | ![]() |
Use Setting on the output to access the displayed plots:
In[34]:= | ![]() |
Out[34]= | ![]() |
Observe the trajectories of 5 balls released inside a room, varying the size of the room using parameters:
In[35]:= | ![]() |
Out[35]= | ![]() |
This work is licensed under a Creative Commons Attribution 4.0 International License