Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - Русский - 日本語

Please note that the recommended version of Scilab is 6.0.0. This page might be outdated.
See the recommended documentation of this function

Aide de Scilab >> Xcos > Batch functions > scicos_simulate

scicos_simulate

Function for running xcos simulation in batch mode

Calling Sequence

Info=scicos_simulate(scs_m)
Info=scicos_simulate(scs_m,Info)
Info=scicos_simulate(scs_m,context)
Info=scicos_simulate(scs_m,flag)
Info=scicos_simulate(scs_m ,Info [, context] [,flag])

Arguments

scs_m: A diagram data structure (see scs_m structure).

Info: A list. It must be set to list() at the first call, then use output Info as input Info for the next calls. Info contains compilation and simulation information and is used to avoid recompilation when not needed.

ContextValues: A Scilab struct containing values of symbolic variables used in the context and xcos blocks.

flag: A string. If it equals 'nw' (no window), then blocks using graphical windows are not executed. Note that the list of such blocks must be updated as new blocks are added.

Module

Description

This function is used to simulate xcos diagrams in batch mode. It requires the scs_m structure which can be obtained by loading in Scilab the .zcos file (see importXcosDiagram ).

Note that before being able to simulate you should first load the block library using loadXcosLibs().

The ContextValues may be used to change the main parameters value set in the main diagram context. example: if the variable A is set to 1 in the main context of the diagram. One can change the A value for a scicos_simulate simulation by setting

ContextValues.A=2

It is also possible to use variables defined inside Scilab directly without using the ContextValues argument, but for such a use the context definition must allow this: example, if one wants to allow simulation use the A Scilab variable value for the parameter A the diagram context definition should contain

if ~exists('A') then  A=1,end
Note that this second solution is fragile because it rely on the current value of A in Scilab.

File content

  • SCI/modules/scicos/macros/scicos_auto/scicos_simulate.sci

Examples

The xcos diagram in SCI/modules/xcos/demos/batch_simulation.zcos.

// load the blocks library and the simulation engine
loadXcosLibs(); loadScicos();

importXcosDiagram("SCI/modules/xcos/demos/batch_simulation.zcos")

typeof(scs_m) //The diagram data structure

//This diagram uses 3 context variables : 
//  Amplitude : the sin function amplitude
//  Pulsation : the sin function pulsation
//  Tf        : the final simulation time
scs_m.props.context; //the embedded definition

//first batch simulation with the parameters embedded in the diagram 
scicos_simulate(scs_m);
// Change the final time value
Context.Tf=10;
scicos_simulate(scs_m,Context);
// without display
Context.Tf=10;
Context.Pulsation=9;
scicos_simulate(scs_m,list(),Context,'nw');
//get the variable created by the "from workspace block"
counter
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 02 13:54:44 CEST 2014