steadycos

Syntax

Module

Description

This function finds the steady state for a given system described by a xcos diagram or sub-diagram. The diagram should have inputs and outputs.The steady state concern only the continuous-time dynamics.

Examples

// loading dataexec("SCI/modules/xcos/tests/unit_tests/PENDULUM_ANIM.sci");exec("SCI/modules/xcos/tests/unit_tests/anim_pen.sci");importXcosDiagram("SCI/modules/xcos/tests/unit_tests/pendulum_anim45.zcos");// configure the contextM=10;m=3;l=3;ph=0.1;z0=-4;th0=.02;// look for the specific sub-diagram to work onfori=1:length(scs_m.objs)iftypeof(scs_m.objs(i))=="Block"&scs_m.objs(i).gui=="SUPER_f"thenscs_m=scs_m.objs(i).model.rpar;break;endend[X,U,Y,XP]=steadycos(scs_m,[],[],[],[],1,1:$);

Arguments

scs_m : a xcos data structure

X: column vector. Continuous state. Can be set to [] if zero.

U: column vector. Input. Can be set to [] if zero.

Y: column vector. Output. Can be set to [] if zero.

Indx : index of entries of X that are not fixed. If all can vary, set to 1:$

Indu : index of entries of U that are not fixed. If all can vary, set to 1:$

Indy : index of entries of Y that are not fixed. If all can vary, set to 1:$

Indxp : index of entries of XP (derivative of x) that need not be zero. If all can vary, set to 1:$. Default [].

param : list with two elements (default list(1.d-6,0)). param(1): scalar. Perturbation level for linearization; the following variation is used del([x;u])_i = param(1)+param(1)*1d-4*abs([x;u])_i. param(2): scalar. Time t.