diff options
Diffstat (limited to 'js/Misc')
-rw-r--r-- | js/Misc/AUTOMAT.js | 135 | ||||
-rw-r--r-- | js/Misc/BOUNCEXY.js | 8 | ||||
-rw-r--r-- | js/Misc/CBLOCK.js | 6 | ||||
-rw-r--r-- | js/Misc/CBLOCK4.js | 6 | ||||
-rw-r--r-- | js/Misc/DEBUG.js | 2 | ||||
-rw-r--r-- | js/Misc/DEBUG_SCICOS.js | 4 | ||||
-rw-r--r-- | js/Misc/DSUPER.js | 14 | ||||
-rw-r--r-- | js/Misc/EDGETRIGGER.js | 4 | ||||
-rw-r--r-- | js/Misc/EDGE_TRIGGER.js | 14 | ||||
-rw-r--r-- | js/Misc/ENDBLK.js | 14 | ||||
-rw-r--r-- | js/Misc/HYSTHERESIS.js | 2 | ||||
-rw-r--r-- | js/Misc/MBLOCK.js | 50 | ||||
-rw-r--r-- | js/Misc/MPBLOCK.js | 52 | ||||
-rw-r--r-- | js/Misc/PAL_f.js | 4 | ||||
-rw-r--r-- | js/Misc/c_block.js | 4 | ||||
-rw-r--r-- | js/Misc/fortran_block.js | 4 | ||||
-rw-r--r-- | js/Misc/func_block.js | 2 | ||||
-rw-r--r-- | js/Misc/generic_block3.js | 4 | ||||
-rw-r--r-- | js/Misc/scifunc_block.js | 2 | ||||
-rw-r--r-- | js/Misc/scifunc_block_m.js | 2 |
20 files changed, 232 insertions, 101 deletions
diff --git a/js/Misc/AUTOMAT.js b/js/Misc/AUTOMAT.js index 735e3581..32a3a3e9 100644 --- a/js/Misc/AUTOMAT.js +++ b/js/Misc/AUTOMAT.js @@ -1,3 +1,134 @@ -Syntax error in input LexToken(ASSIGNMENT,'=',1,3935) /* autogenerated from "macros/Misc/AUTOMAT.sci" */ -None +function AUTOMAT() { + AUTOMAT.prototype.define = function AUTOMAT() { +NMode=2; +Minitial=1; +NX=1; +X0=[0.0]; +XP=[[1],[1]]; +C1=[2]; +C2=[1]; +exprs=[[string(NMode)],[string(Minitial)],[string(NX)],[sci2exp(X0)],[sci2exp(XP)],[sci2exp(C1)],[sci2exp(C2)]]; +ipar=[[NMode],[Minitial],[NX],[XP],[C1],[C2]]; +rpar=[X0]; +model=scicos_model(); +model.sim=list("automat",10004); +model.in1=[[2*NX+1],[2*NX+1]]; +model.out=[[2],[2*NX]]; +model.state=ones(2*NX,1); +model.nzcross=1; +model.blocktype="c"; +model.evtout=1; +model.firing=-1; +model.dep_ut=[false,true]; +model.ipar=ipar; +model.rpar=rpar; +gr_i=[]; +x=standard_define([4,2],model,exprs,gr_i); + } + AUTOMAT.prototype.details = function AUTOMAT() { + } + AUTOMAT.prototype.get = function AUTOMAT() { + } + AUTOMAT.prototype.set = function AUTOMAT() { +x=arg1; +graphics=arg1.graphics; +exprs=graphics.exprs; +model=arg1.model; +ipar=model.ipar; +NMode=ipar[1-1]; +NX=ipar[3-1]; +while (true) { +CX="C1"; +MSG0="\'Jump from Mode "; +MSG2=":[..;M_final(Guard=In("; +MSG3=").i);..]\'"; +MSG=MSG0+"1"+MSG2+"1"+MSG3; +VEC="\'mat\',[-1,1]"; +for (i=2;i<=NMode;i+=1) { +CX=CX+","+"C"+string(i); +MSG=MSG+";"+MSG0+string(i)+MSG2+string(i)+MSG3; +VEC=VEC+","+"\'mat\',[-1,1]"; +} +GTV="[ok,NMode,Minitial,NX,X0,XP,"+CX+",exprs]=scicos_getvalue(\'Set Finite state machine model\', [\'Number (finite-state) Modes\';\'Initial Mode\';\'Number of continuous-time states\';\'Continuous-time states intial values\';\'Xproperties of continuous-time states in each Mode\';"+MSG+"], list(\'vec\',1,\'vec\',1,\'vec\',1,\'mat\',[-1,-1],\'mat\',[-1,-1],"+VEC+"),exprs)"; +execstr(GTV); +if (!ok) { +break; +} +NMode_old=size(exprs,"*")-5; +ModifEncore=false; +if ((NMode_old>NMode)) { +exprs.slice(NMode+6-1,NMode_old+5)=[]; +ModifEncore=true; +} +if ((NMode_old<NMode)) { +exprs.slice(NMode_old+6-1,NMode+5)=exprs[NMode_old+4-1]; +ModifEncore=true; +} +if ((NX!=size(X0,"*"))) { +messagebox("the size of intial continuous-time states should be NX="+string(NX),"modal","error"); +ModifEncore=true; +} +[rXP,cXP]=size(XP); +if (cXP!=NX) { +messagebox("Xproperty matrix is not valid: it should have NX="+string(NX)+" columns","modal","error"); +ModifEncore=true; +} else if (((rXP!=NMode)&&(rXP>1))) { +messagebox("Xproperty matrix is not valid: it should have NMode="+string(NMode)+" or 1 row(s)","modal","error"); +ModifEncore=true; +} else if ((rXP==1)) { +for (i=1;i<=NMode-1;i+=1) { +XP=[[XP],[XP[1-1].slice()]]; +} +} +if ((NMode_old==NMode)&&(!ModifEncore)) { +XP=matrix(transpose(XP),NMode*NX,1); +ipar=[[NMode],[Minitial],[NX],[XP]]; +rpar=matrix(X0,NX,1); +INP=ones(NMode,1); +if (NX>0) { +OUT=[[2],[2*NX]]; +} else { +OUT=[2]; +} +MaxModes=1; +nzcross=0; +for (i=1;i<=NMode;i+=1) { +Ci=evstr(exprs[5+i-1]); +ipar=[[ipar],[Ci]]; +INP[i-1][1-1]=2*NX+length(Ci); +if ((nzcross<length(Ci))) { +nzcross=length(Ci); +} +if ((MaxModes<max(Ci))) { +MaxModes=max(Ci); +imax=i; +} +} +if (MaxModes>NMode) { +messagebox([["Number of Modes should be "+string(MaxModes)],["A destination Mode in Mode#"+string(imax)+"\'s targets is invalid!"]],"modal","error"); +ModifEncore=true; +} +if (MaxModes<NMode) { +messagebox(["There is an unused Mode or the Number of Modes should be "+string(MaxModes)],"modal","error"); +ModifEncore=true; +} +} +if (!ModifEncore) { +[model,graphics,ok]=check_io(model,graphics,INP,OUT,[],[1]); +if (!ok) { +break; +} +model.nzcross=nzcross; +model.state=ones(2*NX,1); +graphics.gr_i[1-1][1-1]="txt=[\'Automaton\';\'nM="+string(NMode)+",nX="+string(NX)+"\'];"; +graphics.exprs=exprs; +x.graphics=graphics; +model.ipar=ipar; +model.rpar=rpar; +x.model=model; +break; +} +} + } +} diff --git a/js/Misc/BOUNCEXY.js b/js/Misc/BOUNCEXY.js index 554c4adb..18a0174c 100644 --- a/js/Misc/BOUNCEXY.js +++ b/js/Misc/BOUNCEXY.js @@ -19,8 +19,8 @@ z=[]; for (i=1;i<=size(clrs,"*");i+=1) { z[6*(i-1)+1-1]=0; z[6*(i-1)+2-1]=0; -z[6*(i-1)+3-1]=2*siz(i); -z[6*(i-1)+4-1]=2*siz(i); +z[6*(i-1)+3-1]=2*siz[i-1]; +z[6*(i-1)+4-1]=2*siz[i-1]; z[6*(i-1)+5-1]=0.000; z[6*(i-1)+6-1]=64.0*360.000; } @@ -75,8 +75,8 @@ z=[]; for (i=1;i<=size(clrs,"*");i+=1) { z[6*(i-1)+1-1]=0; z[6*(i-1)+2-1]=0; -z[6*(i-1)+3-1]=2*siz(i); -z[6*(i-1)+4-1]=2*siz(i); +z[6*(i-1)+3-1]=2*siz[i-1]; +z[6*(i-1)+4-1]=2*siz[i-1]; z[6*(i-1)+5-1]=0.000; z[6*(i-1)+6-1]=64.0*360.000; } diff --git a/js/Misc/CBLOCK.js b/js/Misc/CBLOCK.js index f967053d..78bd0696 100644 --- a/js/Misc/CBLOCK.js +++ b/js/Misc/CBLOCK.js @@ -41,7 +41,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; while (true) { -[ok,function_name,impli,i,o,ci,co,xx,ng,z,rpar,ipar,auto0,depu,dept,lab]=scicos_getvalue("Set C-Block2 block parameters",[["simulation function"],["is block implicit? (y,n)"],["input ports sizes"],["output ports sizes"],["input event ports sizes"],["output events ports sizes"],["initial continuous state"],["number of zero crossing surfaces"],["initial discrete state"],["Real parameters vector"],["Integer parameters vector"],["initial firing vector (<0 for no firing)"],["direct feedthrough (y or n)"],["time dependence (y or n)"]],list("str",1,"str",1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",1,"vec",-1,"vec",-1,"vec",-1,"vec","sum(%6)","str",1,"str",1),label(1)); +[ok,function_name,impli,i,o,ci,co,xx,ng,z,rpar,ipar,auto0,depu,dept,lab]=scicos_getvalue("Set C-Block2 block parameters",[["simulation function"],["is block implicit? (y,n)"],["input ports sizes"],["output ports sizes"],["input event ports sizes"],["output events ports sizes"],["initial continuous state"],["number of zero crossing surfaces"],["initial discrete state"],["Real parameters vector"],["Integer parameters vector"],["initial firing vector (<0 for no firing)"],["direct feedthrough (y or n)"],["time dependence (y or n)"]],list("str",1,"str",1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",1,"vec",-1,"vec",-1,"vec",-1,"vec","sum(%6)","str",1,"str",1),label[1-1]); if (!ok) { break; } @@ -87,12 +87,12 @@ dep_ut=[depu,dept]; if (funam==" ") { break; } -if (model.sim(1)!=funam||sign(size(model.state,"*"))!=sign(nx)||sign(size(model.dstate,"*"))!=sign(nz)||model.nzcross!=ng||sign(size(model.evtout,"*"))!=sign(nevout)) { +if (model.sim[1-1]!=funam||sign[size(model.state,"*")-1]!=sign[nx-1]||sign[size(model.dstate,"*")-1]!=sign[nz-1]||model.nzcross!=ng||sign[size(model.evtout,"*")-1]!=sign[nevout-1]) { tt=[]; } tt=label[2-1]; while (true) { -[ok,tt,cancel]=CFORTR2(funam,tt); +[ok,tt,cancel]=CFORTR2[funam-1][tt-1]; if (!ok) { if (cancel) { break; diff --git a/js/Misc/CBLOCK4.js b/js/Misc/CBLOCK4.js index 4e22b2f6..bdd0232f 100644 --- a/js/Misc/CBLOCK4.js +++ b/js/Misc/CBLOCK4.js @@ -25,7 +25,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; while (true) { -[ok,function_name,impli,in1,it,out,ot,ci,co,xx,z,oz,rpar,ipar,opar,nmode,nzcr,auto0,depu,dept,lab]=scicos_getvalue("Set C-Block4 block parameters",[["Simulation function"],["Is block implicit? (y,n)"],["Input ports sizes"],["Input ports type"],["Output port sizes"],["Output ports type"],["Input event ports sizes"],["Output events ports sizes"],["Initial continuous state"],["Initial discrete state"],["Initial object state"],["Real parameters vector"],["Integer parameters vector"],["Object parameters list"],["Number of modes"],["Number of zero crossings"],["Initial firing vector (<0 for no firing)"],["Direct feedthrough (y or n)"],["Time dependence (y or n)"]],list("str",1,"str",1,"mat",[-1,2],"vec",-1,"mat",[-1,2],"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"lis",-1,"vec",-1,"vec",-1,"lis",-1,"vec",1,"vec",1,"vec","sum(%8)","str",1,"str",1),label(1)); +[ok,function_name,impli,in1,it,out,ot,ci,co,xx,z,oz,rpar,ipar,opar,nmode,nzcr,auto0,depu,dept,lab]=scicos_getvalue("Set C-Block4 block parameters",[["Simulation function"],["Is block implicit? (y,n)"],["Input ports sizes"],["Input ports type"],["Output port sizes"],["Output ports type"],["Input event ports sizes"],["Output events ports sizes"],["Initial continuous state"],["Initial discrete state"],["Initial object state"],["Real parameters vector"],["Integer parameters vector"],["Object parameters list"],["Number of modes"],["Number of zero crossings"],["Initial firing vector (<0 for no firing)"],["Direct feedthrough (y or n)"],["Time dependence (y or n)"]],list("str",1,"str",1,"mat",[-1,2],"vec",-1,"mat",[-1,2],"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"lis",-1,"vec",-1,"vec",-1,"lis",-1,"vec",1,"vec",1,"vec","sum(%8)","str",1,"str",1),label[1-1]); if (!ok) { break; } @@ -69,7 +69,7 @@ dep_ut=[depu,dept]; if (funam==" ") { break; } -if (model.sim(1)!=funam||sign(size(model.state,"*"))!=sign(nx)||sign(size(model.dstate,"*"))!=sign(nz)||model.nzcross!=nzcr||sign(size(model.evtout,"*"))!=sign(nevout)) { +if (model.sim[1-1]!=funam||sign[size(model.state,"*")-1]!=sign[nx-1]||sign[size(model.dstate,"*")-1]!=sign[nz-1]||model.nzcross!=nzcr||sign[size(model.evtout,"*")-1]!=sign[nevout-1]) { tt=[]; } tt=label[2-1]; @@ -77,7 +77,7 @@ tt=label[2-1]; } if (ok) { while (true) { -[ok,tt,cancel]=CC4(funam,tt); +[ok,tt,cancel]=CC4[funam-1][tt-1]; if (!ok) { if (cancel) { break; diff --git a/js/Misc/DEBUG.js b/js/Misc/DEBUG.js index 0368a759..9aa7813d 100644 --- a/js/Misc/DEBUG.js +++ b/js/Misc/DEBUG.js @@ -19,7 +19,7 @@ exprs=graphics.exprs; textmp=exprs[2-1]; ok=true; while (1==1) { -[txt]=dialog([["Enter scilab instructions for debugging."],[" Inputs are block and flag, output is block"]],textmp); +[txt]=dialog[[["Enter scilab instructions for debugging."],[" Inputs are block and flag, output is block"]]-1][textmp-1]; if (txt!=[]) { tt=["block=debug_scicos(block,flag)"]; if (execstr("deff(tt,txt)","errcatch")==0) { diff --git a/js/Misc/DEBUG_SCICOS.js b/js/Misc/DEBUG_SCICOS.js index fdc690a8..4186fc9f 100644 --- a/js/Misc/DEBUG_SCICOS.js +++ b/js/Misc/DEBUG_SCICOS.js @@ -1,7 +1,7 @@ /* autogenerated from "macros/Misc/DEBUG_SCICOS.sci" */ function DEBUG_SCICOS() { DEBUG_SCICOS.prototype.define = function DEBUG_SCICOS() { -x=DEBUG("define"); +x=DEBUG["define"-1]; } DEBUG_SCICOS.prototype.details = function DEBUG_SCICOS() { } @@ -9,6 +9,6 @@ x=DEBUG("define"); } DEBUG_SCICOS.prototype.set = function DEBUG_SCICOS() { arg1.gui="DEBUG"; -[x,y,typ]=DEBUG("set",arg1); +[x,y,typ]=DEBUG["set"-1][arg1-1]; } } diff --git a/js/Misc/DSUPER.js b/js/Misc/DSUPER.js index c7519c99..857c2199 100644 --- a/js/Misc/DSUPER.js +++ b/js/Misc/DSUPER.js @@ -15,10 +15,10 @@ warnBlockByUID(arg1.model.label,gettext("Invalid masked block.")); x=arg1; return; } -exprs=graphics.exprs(1); -exprs0=graphics.exprs(2)(1); -btitre=graphics.exprs(2)(2)(1); -bitems=graphics.exprs(2)(2).slice(2-1,$); +exprs=graphics.exprs[1-1]; +exprs0=graphics.exprs[2-1][1-1]; +btitre=graphics.exprs[2-1][2-1][1-1]; +bitems=graphics.exprs[2-1][2-1].slice(2-1,$); if (exprs0==[]) { x=arg1; return; @@ -29,11 +29,11 @@ if (ierr!=0) { x=arg1; return; } -tt="scicos_context."+exprs0(1); +tt="scicos_context."+exprs0[1-1]; for (i=2;i<=size(exprs0,1);i+=1) { -tt=tt+",scicos_context."+exprs0(i); +tt=tt+",scicos_context."+exprs0[i-1]; } -ss=graphics.exprs(2)(3); +ss=graphics.exprs[2-1][3-1]; scicos_context=PREVAR_scicos_context; execstr("[ok,"+tt+",exprs]=scicos_getvalue(btitre,bitems,ss,exprs)"); if (ok) { diff --git a/js/Misc/EDGETRIGGER.js b/js/Misc/EDGETRIGGER.js index e8cbd733..0d85569d 100644 --- a/js/Misc/EDGETRIGGER.js +++ b/js/Misc/EDGETRIGGER.js @@ -8,7 +8,7 @@ model.in1=1; model.out=1; model.dstate=0; model.nzcross=1; -model.ipar=sign(edge); +model.ipar=sign[edge-1]; model.blocktype="c"; model.dep_ut=[true,false]; exprs=[string(edge)]; @@ -29,7 +29,7 @@ while (true) { if (!ok) { break; } -model.ipar=sign(edge); +model.ipar=sign[edge-1]; graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Misc/EDGE_TRIGGER.js b/js/Misc/EDGE_TRIGGER.js index 3462f5e7..bb2418b5 100644 --- a/js/Misc/EDGE_TRIGGER.js +++ b/js/Misc/EDGE_TRIGGER.js @@ -2,7 +2,7 @@ function EDGE_TRIGGER() { EDGE_TRIGGER.prototype.define = function EDGE_TRIGGER() { scs_m_1=scicos_diagram(); -scs_m_1.objs[1-1]=EDGETRIGGER("define"); +scs_m_1.objs[1-1]=EDGETRIGGER["define"-1]; scs_m_1.objs[2-1]=IFTHEL_f("define"); scs_m_1.objs[3-1]=IN_f("define"); scs_m_1.objs[4-1]=CLKOUTV_f("define"); @@ -86,7 +86,7 @@ x=standard_define([3,2],model,[],gr_i); } EDGE_TRIGGER.prototype.set = function EDGE_TRIGGER() { for (i=1;i<=length(arg1.model.rpar.objs);i+=1) { -o=arg1.model.rpar.objs(i); +o=arg1.model.rpar.objs[i-1]; if (typeof(o)=="Block"&&o.gui=="EDGETRIGGER") { ppath=list(i); break; @@ -101,9 +101,9 @@ for (k=1;k<=np;k+=1) { spath[$+1-1]="model"; spath[$+1-1]="rpar"; spath[$+1-1]="objs"; -spath[$+1-1]=path(k); +spath[$+1-1]=path[k-1]; } -xx=arg1(spath); +xx=arg1[spath-1]; execstr("xxn="+xx.gui+"(\'set\',xx)"); if (diffobjs(xxn,xx)) { model=xx.model; @@ -130,9 +130,9 @@ needcompile=4; if ((model.nzcross!=model_n.nzcross)||(model.nmode!=model_n.nmode)) { needcompile=4; } -if (prod(size(model_n.sim))>1) { -if (model_n.sim(2)>1000) { -if (model.sim(1)!=model_n.sim(1)) { +if (prod[size(model_n.sim)-1]>1) { +if (model_n.sim[2-1]>1000) { +if (model.sim[1-1]!=model_n.sim[1-1]) { needcompile=4; } } diff --git a/js/Misc/ENDBLK.js b/js/Misc/ENDBLK.js index f2ad14af..65bd7268 100644 --- a/js/Misc/ENDBLK.js +++ b/js/Misc/ENDBLK.js @@ -14,7 +14,7 @@ x=standard_define([2,2],model,[],gr_i); } ENDBLK.prototype.set = function ENDBLK() { for (i=1;i<=length(arg1.model.rpar.objs);i+=1) { -o=arg1.model.rpar.objs(i); +o=arg1.model.rpar.objs[i-1]; if (typeof(o)=="Block"&&o.gui=="END_c") { ppath=list(i); break; @@ -29,11 +29,11 @@ for (k=1;k<=np;k+=1) { spath[$+1-1]="model"; spath[$+1-1]="rpar"; spath[$+1-1]="objs"; -spath[$+1-1]=path(k); +spath[$+1-1]=path[k-1]; } -xx=arg1(spath); +xx=arg1[spath-1]; execstr("xxn="+xx.gui+"(\'set\',xx)"); -if (!isequalbitwise(xxn,xx)) { +if (!isequalbitwise[xxn-1][xx-1]) { model=xx.model; model_n=xxn.model; if (!is_modelica_block(xx)) { @@ -58,9 +58,9 @@ needcompile=4; if ((model.nzcross!=model_n.nzcross)||(model.nmode!=model_n.nmode)) { needcompile=4; } -if (prod(size(model_n.sim))>1) { -if (model_n.sim(2)>1000) { -if (model.sim(1)!=model_n.sim(1)) { +if (prod[size(model_n.sim)-1]>1) { +if (model_n.sim[2-1]>1000) { +if (model.sim[1-1]!=model_n.sim[1-1]) { needcompile=4; } } diff --git a/js/Misc/HYSTHERESIS.js b/js/Misc/HYSTHERESIS.js index 6083d128..c4c750b3 100644 --- a/js/Misc/HYSTHERESIS.js +++ b/js/Misc/HYSTHERESIS.js @@ -14,7 +14,7 @@ model.nzcross=nzz; model.nmode=1; model.blocktype="c"; model.dep_ut=[true,false]; -exprs=[[string(rpar)],[string(sign(nzz))]]; +exprs=[[string(rpar)],[string(sign[nzz-1])]]; gr_i=[]; x=standard_define([2,2],model,exprs,gr_i); } diff --git a/js/Misc/MBLOCK.js b/js/Misc/MBLOCK.js index a557c31c..4d5f6201 100644 --- a/js/Misc/MBLOCK.js +++ b/js/Misc/MBLOCK.js @@ -14,7 +14,7 @@ model=scicos_model(); model.blocktype="c"; model.dep_ut=[false,true]; model.rpar=[]; -for (i=1;i<=lstsize(paramv);i+=1) { +for (i=1;i<=lstsize[paramv-1];i+=1) { model.rpar=[[model.rpar],[paramv[i-1].slice()]]; } mo=modelica(); @@ -40,14 +40,14 @@ x=arg1; model=arg1.model; graphics=arg1.graphics; exprs=graphics.exprs; -if (type(exprs)==15) { +if (type[exprs-1]==15) { paramv=list(); pprop=[]; for (i=1;i<=size(model.rpar,"*");i+=1) { -paramv[$+1-1]=string(model.rpar(i)); +paramv[$+1-1]=string(model.rpar[i-1]); pprop[$+1-1]=0; } -exprs=tlist(["MBLOCK","in","intype","out","outtype","param","paramv","pprop","nameF","funtxt"],exprs[1-1](1),exprs[1-1](2),exprs[1-1](3),exprs[1-1](4),exprs[1-1](5),paramv,sci2exp(pprop.slice()),exprs[1-1](7),exprs[2-1]); +exprs=tlist(["MBLOCK","in","intype","out","outtype","param","paramv","pprop","nameF","funtxt"],exprs[1-1][1-1],exprs[1-1][2-1],exprs[1-1][3-1],exprs[1-1][4-1],exprs[1-1][5-1],paramv,sci2exp(pprop.slice()),exprs[1-1][7-1],exprs[2-1]); } lab_1=list(exprs.in1,exprs.intype,exprs.out,exprs.outtype,exprs.param,exprs.pprop,exprs.nameF); lab_2=exprs.paramv; @@ -71,7 +71,7 @@ break; } } if (!ok) { -messagebox([["Invalid variable name for the input "+string(i)+"."],["\""+in1(i)+"\""],["Please choose another variable name."]],"modal","error"); +messagebox([["Invalid variable name for the input "+string(i)+"."],["\""+in1[i-1]+"\""],["Please choose another variable name."]],"modal","error"); } } if (ok) { @@ -84,7 +84,7 @@ break; } } if (!ok) { -messagebox([["Invalid variable name for the output "+string(i)+"."],["\""+out(i)+"\""],["Please choose another variable name."]],"modal","error"); +messagebox([["Invalid variable name for the output "+string(i)+"."],["\""+out[i-1]+"\""],["Please choose another variable name."]],"modal","error"); } } if (ok) { @@ -103,7 +103,7 @@ messagebox([["Invalid variable name for the parameter "+string(i)+"."],["\""+par } if (ok) { for (i=1;i<=size(intype,"*");i+=1) { -if (intype(i)!="E"&&intype(i)!="I") { +if (intype[i-1]!="E"&&intype[i-1]!="I") { messagebox("Input type should be \'E\' or \'I\'!","modal","error"); ok=false; break; @@ -112,7 +112,7 @@ break; } if (ok) { for (i=1;i<=size(outtype,"*");i+=1) { -if (outtype(i)!="E"&&outtype(i)!="I") { +if (outtype[i-1]!="E"&&outtype[i-1]!="I") { messagebox("Output type should be \'E\' or \'I\'!","modal","error"); ok=false; break; @@ -165,14 +165,14 @@ outtypex=find(outtype=="I"); if (ok) { Tparam_lab=evstr(Tparam); Tparam_sz=size(Tparam_lab,"*"); -if (Tparam_sz>lstsize(lab_2)) { -for (i=1;i<=(Tparam_sz-lstsize(lab_2));i+=1) { +if (Tparam_sz>lstsize[lab_2-1]) { +for (i=1;i<=(Tparam_sz-lstsize[lab_2-1]);i+=1) { lab_2[$+1-1]="0"; } -} else if (Tparam_sz<lstsize(lab_2)) { +} else if (Tparam_sz<lstsize[lab_2-1]) { lab_2_tmp=list(); if (Tparam_sz!=0) { -for (i=1;i<=(lstsize(lab_2)-Tparam_sz);i+=1) { +for (i=1;i<=(lstsize[lab_2-1]-Tparam_sz);i+=1) { lab_2_tmp[i-1]=lab_2[i-1]; } } @@ -185,11 +185,11 @@ rhs_txt=""; for (i=1;i<=Tparam_sz;i+=1) { lhs_txt=lhs_txt+"%v"+string(i)+","; if (pprop[i-1]==0) { -lab_txt=lab_txt+"\'"+Tparam_lab(i)+"\';"; +lab_txt=lab_txt+"\'"+Tparam_lab[i-1]+"\';"; } else if (pprop[i-1]==1) { -lab_txt=lab_txt+"\'"+Tparam_lab(i)+" (state) \';"; +lab_txt=lab_txt+"\'"+Tparam_lab[i-1]+" (state) \';"; } else if (pprop[i-1]==2) { -lab_txt=lab_txt+"\'"+Tparam_lab(i)+" (fixed state) \';"; +lab_txt=lab_txt+"\'"+Tparam_lab[i-1]+" (fixed state) \';"; } rhs_txt=rhs_txt+"\'vec\',-1,"; } @@ -236,19 +236,19 @@ mo.parameters=list(transpose(param),paramv); } model.equations=mo; model.rpar=[]; -for (i=1;i<=lstsize(paramv);i+=1) { +for (i=1;i<=lstsize[paramv-1];i+=1) { model.rpar=[[model.rpar],[paramv[i-1].slice()]]; } model.sim[1-1]=funam; -exprs.in1=lab_1(1); -exprs.intype=lab_1(2); -exprs.out=lab_1(3); -exprs.outtype=lab_1(4); -exprs.param=lab_1(5); +exprs.in1=lab_1[1-1]; +exprs.intype=lab_1[2-1]; +exprs.out=lab_1[3-1]; +exprs.outtype=lab_1[4-1]; +exprs.param=lab_1[5-1]; exprs.paramv=list(); if (Tparam_sz!=0) { -if (type(lab_2)==15) { -for (i=1;i<=lstsize(lab_2);i+=1) { +if (type[lab_2-1]==15) { +for (i=1;i<=lstsize[lab_2-1];i+=1) { exprs.paramv[i-1]=lab_2[i-1]; } } else { @@ -257,8 +257,8 @@ exprs.paramv[i-1]=lab_2[i-1]; } } } -exprs.pprop=lab_1(6); -exprs.nameF=lab_1(7); +exprs.pprop=lab_1[6-1]; +exprs.nameF=lab_1[7-1]; exprs.funtxt=tt; x.model=model; graphics.gr_i[1-1][1-1]="txt=[\'Modelica\';\' "+nameF+" \'];"; diff --git a/js/Misc/MPBLOCK.js b/js/Misc/MPBLOCK.js index d9048ac5..83ed4ff3 100644 --- a/js/Misc/MPBLOCK.js +++ b/js/Misc/MPBLOCK.js @@ -14,7 +14,7 @@ model=scicos_model(); model.blocktype="c"; model.dep_ut=[true,true]; model.rpar=[]; -for (i=1;i<=lstsize(paramv);i+=1) { +for (i=1;i<=lstsize[paramv-1];i+=1) { model.rpar=[[model.rpar],[paramv[i-1].slice()]]; } mo=modelica(); @@ -40,14 +40,14 @@ x=arg1; model=arg1.model; graphics=arg1.graphics; exprs=graphics.exprs; -if (type(exprs)==15) { +if (type[exprs-1]==15) { paramv=list(); pprop=[]; for (i=1;i<=size(model.rpar,"*");i+=1) { -paramv[$+1-1]=string(model.rpar(i)); +paramv[$+1-1]=string(model.rpar[i-1]); pprop[$+1-1]=0; } -exprs=tlist(["MPBLOCK","in","intype","out","outtype","param","paramv","pprop","nameF","funtxt"],exprs[1-1](1),exprs[1-1](2),exprs[1-1](3),exprs[1-1](4),exprs[1-1](5),paramv,sci2exp(pprop.slice()),exprs[1-1](7),exprs[2-1]); +exprs=tlist(["MPBLOCK","in","intype","out","outtype","param","paramv","pprop","nameF","funtxt"],exprs[1-1][1-1],exprs[1-1][2-1],exprs[1-1][3-1],exprs[1-1][4-1],exprs[1-1][5-1],paramv,sci2exp(pprop.slice()),exprs[1-1][7-1],exprs[2-1]); } lab_1=list(exprs.in1,exprs.intype,exprs.out,exprs.outtype,exprs.param,exprs.pprop,exprs.nameF); lab_2=exprs.paramv; @@ -71,7 +71,7 @@ break; } } if (!ok) { -x_message([["Invalid variable name for the input "+string(i)+"."],["\""+in1(i)+"\""],["Please choose another variable name."]]); +x_message([["Invalid variable name for the input "+string(i)+"."],["\""+in1[i-1]+"\""],["Please choose another variable name."]]); } } if (ok) { @@ -84,7 +84,7 @@ break; } } if (!ok) { -x_message([["Invalid variable name for the output "+string(i)+"."],["\""+out(i)+"\""],["Please choose another variable name."]]); +x_message([["Invalid variable name for the output "+string(i)+"."],["\""+out[i-1]+"\""],["Please choose another variable name."]]); } } if (ok) { @@ -103,7 +103,7 @@ x_message([["Invalid variable name for the parameter "+string(i)+"."],["\""+para } if (ok) { for (i=1;i<=size(intype,"*");i+=1) { -if (intype(i)!="E"&&intype(i)!="I") { +if (intype[i-1]!="E"&&intype[i-1]!="I") { x_message("Input type should be \'E\' or \'I\'!"); ok=false; break; @@ -112,7 +112,7 @@ break; } if (ok) { for (i=1;i<=size(outtype,"*");i+=1) { -if (outtype(i)!="E"&&outtype(i)!="I") { +if (outtype[i-1]!="E"&&outtype[i-1]!="I") { x_message("Output type should be \'E\' or \'I\'!"); ok=false; break; @@ -165,17 +165,17 @@ outtypex=find(outtype=="I"); if (ok) { Tparam_lab=evstr(Tparam); Tparam_sz=size(Tparam_lab,"*"); -if (Tparam_sz>lstsize(lab_2)) { -for (i=1;i<=(Tparam_sz-lstsize(lab_2));i+=1) { +if (Tparam_sz>lstsize[lab_2-1]) { +for (i=1;i<=(Tparam_sz-lstsize[lab_2-1]);i+=1) { lab_2[$+1-1]="0"; } -} else if (Tparam_sz<lstsize(lab_2)) { +} else if (Tparam_sz<lstsize[lab_2-1]) { lab_2_tmp=list(); if (Tparam_sz!=0) { for (i=1;i<=Tparam_sz;i+=1) { ee=evstr(exprs.param); for (j=1;j<=size(ee,"r");j+=1) { -if (ee(j)==Tparam_lab(i)) { +if (ee[j-1]==Tparam_lab[i-1]) { lab_2_tmp[i-1]=lab_2[j-1]; } } @@ -190,11 +190,11 @@ rhs_txt=""; for (i=1;i<=Tparam_sz;i+=1) { lhs_txt=lhs_txt+"%v"+string(i)+","; if (pprop[i-1]==0) { -lab_txt=lab_txt+"\'"+Tparam_lab(i)+"\';"; +lab_txt=lab_txt+"\'"+Tparam_lab[i-1]+"\';"; } else if (pprop[i-1]==1) { -lab_txt=lab_txt+"\'"+Tparam_lab(i)+" (state) \';"; +lab_txt=lab_txt+"\'"+Tparam_lab[i-1]+" (state) \';"; } else if (pprop[i-1]==2) { -lab_txt=lab_txt+"\'"+Tparam_lab(i)+" (fixed state) \';"; +lab_txt=lab_txt+"\'"+Tparam_lab[i-1]+" (fixed state) \';"; } rhs_txt=rhs_txt+"\'vec\',-1,"; } @@ -228,19 +228,19 @@ mo.parameters=list(transpose(param),paramv); } model.equations=mo; model.rpar=[]; -for (i=1;i<=lstsize(paramv);i+=1) { -model.rpar=[[model.rpar],[double(paramv[i-1].slice())]]; +for (i=1;i<=lstsize[paramv-1];i+=1) { +model.rpar=[[model.rpar],[double[paramv[i-1].slice()-1]]]; } model.sim[1-1]=funam; -exprs.in1=lab_1(1); -exprs.intype=lab_1(2); -exprs.out=lab_1(3); -exprs.outtype=lab_1(4); -exprs.param=lab_1(5); +exprs.in1=lab_1[1-1]; +exprs.intype=lab_1[2-1]; +exprs.out=lab_1[3-1]; +exprs.outtype=lab_1[4-1]; +exprs.param=lab_1[5-1]; exprs.paramv=list(); if (Tparam_sz!=0) { -if (type(lab_2)==15) { -for (i=1;i<=lstsize(lab_2);i+=1) { +if (type[lab_2-1]==15) { +for (i=1;i<=lstsize[lab_2-1];i+=1) { exprs.paramv[i-1]=lab_2[i-1]; } } else { @@ -249,8 +249,8 @@ exprs.paramv[i-1]=lab_2[i-1]; } } } -exprs.pprop=lab_1(6); -exprs.nameF=lab_1(7); +exprs.pprop=lab_1[6-1]; +exprs.nameF=lab_1[7-1]; exprs.funtxt=""; x.model=model; graphics.gr_i[1-1][1-1]="txt=[\' "+nameF+" \'];"; diff --git a/js/Misc/PAL_f.js b/js/Misc/PAL_f.js index 207c706c..6a75f8c7 100644 --- a/js/Misc/PAL_f.js +++ b/js/Misc/PAL_f.js @@ -12,7 +12,7 @@ model.blocktype="h"; model.dep_ut=[false,false]; gr_i=[]; x=standard_define([2,2],model,[],gr_i); -x.graphics.id=scs.props.title(1); +x.graphics.id=scs.props.title[1-1]; } PAL_f.prototype.details = function PAL_f() { } @@ -20,7 +20,7 @@ x.graphics.id=scs.props.title(1); } PAL_f.prototype.set = function PAL_f() { [x,newparameters,needcompile,edited]=scicos(arg1.model.rpar); -arg1.graphics.id=x.props.title(1); +arg1.graphics.id=x.props.title[1-1]; arg1.model.rpar=x; x=arg1; y=[]; diff --git a/js/Misc/c_block.js b/js/Misc/c_block.js index fb6ba118..e3e5252c 100644 --- a/js/Misc/c_block.js +++ b/js/Misc/c_block.js @@ -38,7 +38,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; while (true) { -[ok,i,o,rpar,funam,lab]=scicos_getvalue("Set C_block parameters",[["input ports sizes"],["output port sizes"],["System parameters vector"],["function name"]],list("vec",-1,"vec",-1,"vec",-1,"str",-1),label(1)); +[ok,i,o,rpar,funam,lab]=scicos_getvalue("Set C_block parameters",[["input ports sizes"],["output port sizes"],["System parameters vector"],["function name"]],list("vec",-1,"vec",-1,"vec",-1,"str",-1),label[1-1]); if (!ok) { break; } @@ -52,7 +52,7 @@ ni=size(i,1); o=int(o.slice()); no=size(o,1); tt=label[2-1]; -if (model.sim(1)!=funam||size(model.in1,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { +if (model.sim[1-1]!=funam||size(model.in1,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { tt=[]; } [ok,tt]=CFORTR(funam,tt,i,o); diff --git a/js/Misc/fortran_block.js b/js/Misc/fortran_block.js index 2fcb385d..ee371811 100644 --- a/js/Misc/fortran_block.js +++ b/js/Misc/fortran_block.js @@ -29,7 +29,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; while (true) { -[ok,i,o,rpar,funam,lab]=scicos_getvalue("Set fortran_block parameters",[["input ports sizes"],["output port sizes"],["System parameters vector"],["function name"]],list("vec",-1,"vec",-1,"vec",-1,"str",-1),label(1)); +[ok,i,o,rpar,funam,lab]=scicos_getvalue("Set fortran_block parameters",[["input ports sizes"],["output port sizes"],["System parameters vector"],["function name"]],list("vec",-1,"vec",-1,"vec",-1,"str",-1),label[1-1]); if (!ok) { break; } @@ -43,7 +43,7 @@ ni=size(i,1); o=int(o.slice()); no=size(o,1); tt=label[2-1]; -if (model.sim(1)!=funam||size(model.in1,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { +if (model.sim[1-1]!=funam||size(model.in1,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { tt=[]; } [ok,tt]=FORTR(funam,tt,i,o); diff --git a/js/Misc/func_block.js b/js/Misc/func_block.js index 9280580b..d7e4b6f0 100644 --- a/js/Misc/func_block.js +++ b/js/Misc/func_block.js @@ -21,7 +21,7 @@ graphics=arg1.graphics; exprs=graphics.exprs; x=arg1; model=x.model; -[ok,mac,exprs]=genfunc(exprs); +[ok,mac,exprs]=genfunc[exprs-1]; if (ok) { model.sim=mac; graphics.exprs=exprs; diff --git a/js/Misc/generic_block3.js b/js/Misc/generic_block3.js index 57f37e7e..54eee1ef 100644 --- a/js/Misc/generic_block3.js +++ b/js/Misc/generic_block3.js @@ -52,11 +52,11 @@ message("vector event links not supported"); ok=false; } } -if (type(opar)!=15) { +if (type[opar-1]!=15) { message("object parameter must be a list"); ok=false; } -if (type(oz)!=15) { +if (type[oz-1]!=15) { message("discrete object state must be a list"); ok=false; } diff --git a/js/Misc/scifunc_block.js b/js/Misc/scifunc_block.js index 12da9da6..4938c66f 100644 --- a/js/Misc/scifunc_block.js +++ b/js/Misc/scifunc_block.js @@ -50,7 +50,7 @@ exprs[1-1]=lab; xx=xx.slice(); z=z.slice(); rpar=rpar.slice(); -nrp=prod(size(rpar)); +nrp=prod[size(rpar)-1]; i=int(i.slice()); ni=size(i,1); o=int(o.slice()); diff --git a/js/Misc/scifunc_block_m.js b/js/Misc/scifunc_block_m.js index e9d6bd44..aaf8724f 100644 --- a/js/Misc/scifunc_block_m.js +++ b/js/Misc/scifunc_block_m.js @@ -54,7 +54,7 @@ z=z.slice(); rpar=rpar.slice(); it=ones(1,size(i,1)); ot=ones(1,size(o,1)); -nrp=prod(size(rpar)); +nrp=prod[size(rpar)-1]; ni=size(i,1); no=size(o,1); ci=int(ci.slice()); |