summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--combined.js496
-rw-r--r--js/Branching/DEMUX.js2
-rw-r--r--js/Branching/DEMUX_f.js2
-rw-r--r--js/Branching/MUX.js2
-rw-r--r--js/Branching/MUX_f.js2
-rw-r--r--js/Linear/CLSS.js88
-rw-r--r--js/Linear/CLSS_f.js78
-rw-r--r--js/Linear/DLSS.js87
-rw-r--r--js/Linear/DLSS_f.js77
-rw-r--r--js/Linear/TCLSS.js85
-rw-r--r--js/Linear/TCLSS_f.js85
-rw-r--r--js/MatrixOp/MATCATH.js2
-rw-r--r--js/MatrixOp/MATCATV.js2
-rw-r--r--js/NonLinear/LOOKUP2D.js3
-rwxr-xr-xsci2jsyacc.py4
16 files changed, 997 insertions, 20 deletions
diff --git a/Makefile b/Makefile
index c713643f..47a9f5d9 100644
--- a/Makefile
+++ b/Makefile
@@ -15,6 +15,8 @@ combined.js: $(JSFILES) Makefile
cat $$f; \
count=$$(( count+1 )); \
done > $@; \
+ echo >> $@; \
+ echo "/* made from $$count/$$totalcount files */" >> $@; \
echo "made $@ from $$count/$$totalcount files"
js/%.js: macros/%.sci sci2jsyacc.py parsetab.py sci2jslex.py
diff --git a/combined.js b/combined.js
index 68a7fa74..2e95bfe1 100644
--- a/combined.js
+++ b/combined.js
@@ -1088,6 +1088,82 @@ x=standard_define([2,2],model,exprs,gr_i);
DIFF_c.prototype.details = function DIFF_c() {
}
}
+/* autogenerated from "macros/Linear/DLSS_f.sci" */
+function DLSS_f() {
+DLSS_f.prototype.get = function DLSS_f() {
+}
+DLSS_f.prototype.set = function DLSS_f() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set discrete linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,None];
+} else {
+mmm=[None,None];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,None];
+}
+model.dstate=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+DLSS_f.prototype.define = function DLSS_f() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+model=scicos_model();
+model.sim=list("dsslti",1);
+model.in1=1;
+model.out=1;
+model.evtin=1;
+model.dstate=x0.slice();
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="d";
+model.dep_ut=[None,None];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+DLSS_f.prototype.details = function DLSS_f() {
+}
+}
/* autogenerated from "macros/Linear/INTEGRAL_f.sci" */
function INTEGRAL_f() {
INTEGRAL_f.prototype.get = function INTEGRAL_f() {
@@ -1202,6 +1278,90 @@ x=standard_define([3,2],model,[],gr_i);
CLINDUMMY_f.prototype.details = function CLINDUMMY_f() {
}
}
+/* autogenerated from "macros/Linear/TCLSS_f.sci" */
+function TCLSS_f() {
+TCLSS_f.prototype.get = function TCLSS_f() {
+}
+TCLSS_f.prototype.set = function TCLSS_f() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,[in1,ms],out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+if (D!=[]) {
+model.sim=list("tcslti",1);
+} else {
+model.sim=list("tcsltj",1);
+}
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+TCLSS_f.prototype.define = function TCLSS_f() {
+x0=0;
+A=0;
+B=1;
+C=1;
+D=0;
+in1=1;
+nx=size(x0,"*");
+out=1;
+model=scicos_model();
+model.sim=list("tcslti",1);
+model.in1=[in1,nx];
+model.out=out;
+model.evtin=1;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([3,2],model,exprs,gr_i);
+}
+TCLSS_f.prototype.details = function TCLSS_f() {
+}
+}
/* autogenerated from "macros/Linear/DERIV.sci" */
function DERIV() {
DERIV.prototype.get = function DERIV() {
@@ -1779,6 +1939,170 @@ x=standard_define([3,2],model,exprs,gr_i);
DELAYV_f.prototype.details = function DELAYV_f() {
}
}
+/* autogenerated from "macros/Linear/CLSS_f.sci" */
+function CLSS_f() {
+CLSS_f.prototype.get = function CLSS_f() {
+}
+CLSS_f.prototype.set = function CLSS_f() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,[],[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+CLSS_f.prototype.define = function CLSS_f() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+in1=1;
+out=1;
+model=scicos_model();
+model.sim=list("csslti",1);
+model.in1=in1;
+model.out=out;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+CLSS_f.prototype.details = function CLSS_f() {
+}
+}
+/* autogenerated from "macros/Linear/CLSS.sci" */
+function CLSS() {
+CLSS.prototype.get = function CLSS() {
+}
+CLSS.prototype.set = function CLSS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+okD=true;
+if (size(D,"*")!=size(C,1)*size(B,2)) {
+if (size(D,"*")==1) {
+D=D*ones(C*B);
+} else if (size(D,"*")==0) {
+D=zeros(C*B);
+} else {
+okD=None;
+}
+}
+if (ms!=ns||!okD) {
+message(_("Matrix A is not square or D has wrong dimension"));
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,[],[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+CLSS.prototype.define = function CLSS() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+in1=1;
+out=1;
+model=scicos_model();
+model.sim=list("csslti4",4);
+model.in1=in1;
+model.out=out;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+CLSS.prototype.details = function CLSS() {
+}
+}
/* autogenerated from "macros/Linear/SAMPHOLD_m.sci" */
function SAMPHOLD_m() {
SAMPHOLD_m.prototype.get = function SAMPHOLD_m() {
@@ -1887,6 +2211,92 @@ x=standard_define([3.5,2],model,exprs,gr_i);
TIME_DELAY.prototype.details = function TIME_DELAY() {
}
}
+/* autogenerated from "macros/Linear/DLSS.sci" */
+function DLSS() {
+DLSS.prototype.get = function DLSS() {
+}
+DLSS.prototype.set = function DLSS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set discrete linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+okD=true;
+if (size(D,"*")!=size(C,1)*size(B,2)) {
+if (size(D,"*")==1) {
+D=D*ones(C*B);
+} else if (size(D,"*")==0) {
+D=zeros(C*B);
+} else {
+okD=None;
+}
+}
+if (ms!=ns||!okD) {
+message(_("Matrix A is not square or D has wrong dimension"));
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,None];
+} else {
+mmm=[None,None];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,None];
+}
+model.dstate=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+DLSS.prototype.define = function DLSS() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+model=scicos_model();
+model.sim=list("dsslti4",4);
+model.in1=1;
+model.out=1;
+model.evtin=1;
+model.dstate=x0.slice();
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="d";
+model.dep_ut=[None,None];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+DLSS.prototype.details = function DLSS() {
+}
+}
/* autogenerated from "macros/Linear/INTEGRAL_m.sci" */
function INTEGRAL_m() {
INTEGRAL_m.prototype.get = function INTEGRAL_m() {
@@ -2100,6 +2510,90 @@ x=standard_define([2,2],model,exprs,gr_i);
DOLLAR.prototype.details = function DOLLAR() {
}
}
+/* autogenerated from "macros/Linear/TCLSS.sci" */
+function TCLSS() {
+TCLSS.prototype.get = function TCLSS() {
+}
+TCLSS.prototype.set = function TCLSS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,[in1,ms],out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+if (D!=[]) {
+model.sim=list("tcslti4",4);
+} else {
+model.sim=list("tcsltj4",4);
+}
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+TCLSS.prototype.define = function TCLSS() {
+x0=0;
+A=0;
+B=1;
+C=1;
+D=0;
+in1=1;
+nx=size(x0,"*");
+out=1;
+model=scicos_model();
+model.sim=list("tcslti4",4);
+model.in1=[in1,nx];
+model.out=out;
+model.evtin=1;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([3,2],model,exprs,gr_i);
+}
+TCLSS.prototype.details = function TCLSS() {
+}
+}
/* autogenerated from "macros/Linear/SUM_f.sci" */
function SUM_f() {
SUM_f.prototype.get = function SUM_f() {
@@ -11993,3 +12487,5 @@ x=standard_define([2,2],model,exprs,gr_i);
INVBLK_f.prototype.details = function INVBLK_f() {
}
}
+
+/* made from 213/274 files */
diff --git a/js/Branching/DEMUX.js b/js/Branching/DEMUX.js
index 8c811195..1c1bb24e 100644
--- a/js/Branching/DEMUX.js
+++ b/js/Branching/DEMUX.js
@@ -1,3 +1,3 @@
-Syntax error in input LexToken(COLON,':',1,1560)
+Syntax error in input LexToken(TRANSPOSE,"'",1,1565)
/* autogenerated from "macros/Branching/DEMUX.sci" */
None
diff --git a/js/Branching/DEMUX_f.js b/js/Branching/DEMUX_f.js
index 3299c56f..da953f94 100644
--- a/js/Branching/DEMUX_f.js
+++ b/js/Branching/DEMUX_f.js
@@ -1,3 +1,3 @@
-Syntax error in input LexToken(COLON,':',1,1559)
+Syntax error in input LexToken(TRANSPOSE,"'",1,1564)
/* autogenerated from "macros/Branching/DEMUX_f.sci" */
None
diff --git a/js/Branching/MUX.js b/js/Branching/MUX.js
index 44b17cf3..23736077 100644
--- a/js/Branching/MUX.js
+++ b/js/Branching/MUX.js
@@ -1,3 +1,3 @@
-Syntax error in input LexToken(COLON,':',1,1548)
+Syntax error in input LexToken(TRANSPOSE,"'",1,1552)
/* autogenerated from "macros/Branching/MUX.sci" */
None
diff --git a/js/Branching/MUX_f.js b/js/Branching/MUX_f.js
index 79353be5..6b55afac 100644
--- a/js/Branching/MUX_f.js
+++ b/js/Branching/MUX_f.js
@@ -1,3 +1,3 @@
-Syntax error in input LexToken(COLON,':',1,1549)
+Syntax error in input LexToken(TRANSPOSE,"'",1,1553)
/* autogenerated from "macros/Branching/MUX_f.sci" */
None
diff --git a/js/Linear/CLSS.js b/js/Linear/CLSS.js
index b0a3467d..1435350a 100644
--- a/js/Linear/CLSS.js
+++ b/js/Linear/CLSS.js
@@ -1,3 +1,87 @@
-Syntax error in input LexToken(COLON,':',1,1076)
/* autogenerated from "macros/Linear/CLSS.sci" */
-None
+function CLSS() {
+CLSS.prototype.get = function CLSS() {
+}
+CLSS.prototype.set = function CLSS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+okD=true;
+if (size(D,"*")!=size(C,1)*size(B,2)) {
+if (size(D,"*")==1) {
+D=D*ones(C*B);
+} else if (size(D,"*")==0) {
+D=zeros(C*B);
+} else {
+okD=None;
+}
+}
+if (ms!=ns||!okD) {
+message(_("Matrix A is not square or D has wrong dimension"));
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,[],[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+CLSS.prototype.define = function CLSS() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+in1=1;
+out=1;
+model=scicos_model();
+model.sim=list("csslti4",4);
+model.in1=in1;
+model.out=out;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+CLSS.prototype.details = function CLSS() {
+}
+}
diff --git a/js/Linear/CLSS_f.js b/js/Linear/CLSS_f.js
index 7e36fa6a..4ca7a818 100644
--- a/js/Linear/CLSS_f.js
+++ b/js/Linear/CLSS_f.js
@@ -1,3 +1,77 @@
-Syntax error in input LexToken(COLON,':',1,1078)
/* autogenerated from "macros/Linear/CLSS_f.sci" */
-None
+function CLSS_f() {
+CLSS_f.prototype.get = function CLSS_f() {
+}
+CLSS_f.prototype.set = function CLSS_f() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,[],[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+CLSS_f.prototype.define = function CLSS_f() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+in1=1;
+out=1;
+model=scicos_model();
+model.sim=list("csslti",1);
+model.in1=in1;
+model.out=out;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+CLSS_f.prototype.details = function CLSS_f() {
+}
+}
diff --git a/js/Linear/DLSS.js b/js/Linear/DLSS.js
index 0189f0ad..63a1dc2c 100644
--- a/js/Linear/DLSS.js
+++ b/js/Linear/DLSS.js
@@ -1,3 +1,86 @@
-Syntax error in input LexToken(COLON,':',1,1076)
/* autogenerated from "macros/Linear/DLSS.sci" */
-None
+function DLSS() {
+DLSS.prototype.get = function DLSS() {
+}
+DLSS.prototype.set = function DLSS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set discrete linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+okD=true;
+if (size(D,"*")!=size(C,1)*size(B,2)) {
+if (size(D,"*")==1) {
+D=D*ones(C*B);
+} else if (size(D,"*")==0) {
+D=zeros(C*B);
+} else {
+okD=None;
+}
+}
+if (ms!=ns||!okD) {
+message(_("Matrix A is not square or D has wrong dimension"));
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,None];
+} else {
+mmm=[None,None];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,None];
+}
+model.dstate=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+DLSS.prototype.define = function DLSS() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+model=scicos_model();
+model.sim=list("dsslti4",4);
+model.in1=1;
+model.out=1;
+model.evtin=1;
+model.dstate=x0.slice();
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="d";
+model.dep_ut=[None,None];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+DLSS.prototype.details = function DLSS() {
+}
+}
diff --git a/js/Linear/DLSS_f.js b/js/Linear/DLSS_f.js
index 17ed1938..4cc29c36 100644
--- a/js/Linear/DLSS_f.js
+++ b/js/Linear/DLSS_f.js
@@ -1,3 +1,76 @@
-Syntax error in input LexToken(COLON,':',1,1078)
/* autogenerated from "macros/Linear/DLSS_f.sci" */
-None
+function DLSS_f() {
+DLSS_f.prototype.get = function DLSS_f() {
+}
+DLSS_f.prototype.set = function DLSS_f() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+model=arg1.model;
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set discrete linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,in1,out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,None];
+} else {
+mmm=[None,None];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,None];
+}
+model.dstate=x0.slice();
+model.rpar=rpar;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+DLSS_f.prototype.define = function DLSS_f() {
+x0=0;
+A=-1;
+B=1;
+C=1;
+D=0;
+model=scicos_model();
+model.sim=list("dsslti",1);
+model.in1=1;
+model.out=1;
+model.evtin=1;
+model.dstate=x0.slice();
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="d";
+model.dep_ut=[None,None];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([4,2],model,exprs,gr_i);
+}
+DLSS_f.prototype.details = function DLSS_f() {
+}
+}
diff --git a/js/Linear/TCLSS.js b/js/Linear/TCLSS.js
index f3b9ebdf..9d9b91b4 100644
--- a/js/Linear/TCLSS.js
+++ b/js/Linear/TCLSS.js
@@ -1,3 +1,84 @@
-Syntax error in input LexToken(COLON,':',1,1103)
/* autogenerated from "macros/Linear/TCLSS.sci" */
-None
+function TCLSS() {
+TCLSS.prototype.get = function TCLSS() {
+}
+TCLSS.prototype.set = function TCLSS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,[in1,ms],out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+if (D!=[]) {
+model.sim=list("tcslti4",4);
+} else {
+model.sim=list("tcsltj4",4);
+}
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+TCLSS.prototype.define = function TCLSS() {
+x0=0;
+A=0;
+B=1;
+C=1;
+D=0;
+in1=1;
+nx=size(x0,"*");
+out=1;
+model=scicos_model();
+model.sim=list("tcslti4",4);
+model.in1=[in1,nx];
+model.out=out;
+model.evtin=1;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([3,2],model,exprs,gr_i);
+}
+TCLSS.prototype.details = function TCLSS() {
+}
+}
diff --git a/js/Linear/TCLSS_f.js b/js/Linear/TCLSS_f.js
index f70fc781..05338018 100644
--- a/js/Linear/TCLSS_f.js
+++ b/js/Linear/TCLSS_f.js
@@ -1,3 +1,84 @@
-Syntax error in input LexToken(COLON,':',1,1105)
/* autogenerated from "macros/Linear/TCLSS_f.sci" */
-None
+function TCLSS_f() {
+TCLSS_f.prototype.get = function TCLSS_f() {
+}
+TCLSS_f.prototype.set = function TCLSS_f() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+if (size(exprs,"*")==7) {
+exprs=exprs([1:4,7]);
+}
+while (true) {
+[ok,A,B,C,D,x0,exprs]=scicos_getvalue("Set continuous linear system parameters",["A matrix","B matrix","C matrix","D matrix","Initial state"],list("mat",[-1,-1],"mat",["size(%1,2)","-1"],"mat",["-1","size(%1,2)"],"mat",[-1,-1],"vec","size(%1,2)"),exprs);
+if (!ok) {
+break
+}
+out=size(C,1);
+if (out==0) {
+out=[];
+}
+in1=size(B,2);
+if (in1==0) {
+in1=[];
+}
+[ms,ns]=size(A);
+if (ms!=ns) {
+message("A matrix must be square");
+} else {
+[model,graphics,ok]=check_io(model,graphics,[in1,ms],out,1,[]);
+if (ok) {
+graphics.exprs=exprs;
+rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+if (D!=[]) {
+if (norm(D,1)!=0) {
+mmm=[true,true];
+} else {
+mmm=[None,true];
+}
+if (or(model.dep_ut!=mmm)) {
+model.dep_ut=mmm;
+}
+} else {
+model.dep_ut=[None,true];
+}
+model.state=x0.slice();
+model.rpar=rpar;
+if (D!=[]) {
+model.sim=list("tcslti",1);
+} else {
+model.sim=list("tcsltj",1);
+}
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+}
+}
+TCLSS_f.prototype.define = function TCLSS_f() {
+x0=0;
+A=0;
+B=1;
+C=1;
+D=0;
+in1=1;
+nx=size(x0,"*");
+out=1;
+model=scicos_model();
+model.sim=list("tcslti",1);
+model.in1=[in1,nx];
+model.out=out;
+model.evtin=1;
+model.state=x0;
+model.rpar=[A.slice(),B.slice(),C.slice(),D.slice()];
+model.blocktype="c";
+model.dep_ut=[None,true];
+exprs=[strcat(sci2exp(A)),strcat(sci2exp(B)),strcat(sci2exp(C)),strcat(sci2exp(D)),strcat(sci2exp(x0))];
+gr_i=[];
+x=standard_define([3,2],model,exprs,gr_i);
+}
+TCLSS_f.prototype.details = function TCLSS_f() {
+}
+}
diff --git a/js/MatrixOp/MATCATH.js b/js/MatrixOp/MATCATH.js
index 66648256..7564d627 100644
--- a/js/MatrixOp/MATCATH.js
+++ b/js/MatrixOp/MATCATH.js
@@ -1,3 +1,3 @@
-Syntax error in input LexToken(COLON,':',1,1460)
+Syntax error in input LexToken(TRANSPOSE,"'",1,1467)
/* autogenerated from "macros/MatrixOp/MATCATH.sci" */
None
diff --git a/js/MatrixOp/MATCATV.js b/js/MatrixOp/MATCATV.js
index 7a5ba1a3..445a2a75 100644
--- a/js/MatrixOp/MATCATV.js
+++ b/js/MatrixOp/MATCATV.js
@@ -1,3 +1,3 @@
-Syntax error in input LexToken(COLON,':',1,1445)
+Syntax error in input LexToken(TRANSPOSE,"'",1,1452)
/* autogenerated from "macros/MatrixOp/MATCATV.sci" */
None
diff --git a/js/NonLinear/LOOKUP2D.js b/js/NonLinear/LOOKUP2D.js
index 0df4083e..58423f3c 100644
--- a/js/NonLinear/LOOKUP2D.js
+++ b/js/NonLinear/LOOKUP2D.js
@@ -1,5 +1,4 @@
-Syntax error in input LexToken(COLON,':',1,3928)
-Syntax error in input LexToken(VAR,'xx',1,4509)
+Syntax error in input LexToken(FUNCTION,'function',1,4479)
Syntax error in input LexToken(VAR,'order',1,4893)
/* autogenerated from "macros/NonLinear/LOOKUP2D.sci" */
None
diff --git a/sci2jsyacc.py b/sci2jsyacc.py
index 2cfdc9ce..d1c387fb 100755
--- a/sci2jsyacc.py
+++ b/sci2jsyacc.py
@@ -288,6 +288,10 @@ def p_termarraylist_expression(p):
'termarraylist : expression'
p[0] = str(p[1])
+def p_termarraylist_expression_colon_expression(p):
+ 'termarraylist : expression COLON expression'
+ p[0] = str(p[1]) + ':' + str(p[3])
+
# end define termarraylist
# define list