diff options
42 files changed, 149 insertions, 165 deletions
diff --git a/combined.js b/combined.js index eadbe93d..5c6094c8 100644 --- a/combined.js +++ b/combined.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[P0,T0,H0,option_temperature]; -model.equations.parameters[2]=list(P0,T0,H0,option_temperature); +model.equations.parameters[2-1]=list(P0,T0,H0,option_temperature); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -62,7 +62,7 @@ while (None) { if (!ok) { break } -x.model.equations.parameters[2]=list(Qini); +x.model.equations.parameters[2-1]=list(Qini); x.graphics.exprs=exprs; break } @@ -133,7 +133,7 @@ if (!ok) { break } model.rpar=[Cvmax,p_rho]; -model.equations.parameters[2]=list(Cvmax,p_rho); +model.equations.parameters[2-1]=list(Cvmax,p_rho); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -182,7 +182,7 @@ if (!ok) { break } model.rpar=[L,D,lambda,z1,z2,p_rho]; -model.equations.parameters[2]=list(L,D,lambda,z1,z2,p_rho); +model.equations.parameters[2-1]=list(L,D,lambda,z1,z2,p_rho); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -235,7 +235,7 @@ if (!ok) { break } model.rpar=[P0,T0,H0,option_temperature]; -model.equations.parameters[2]=list(P0,T0,H0,option_temperature); +model.equations.parameters[2-1]=list(P0,T0,H0,option_temperature); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -631,7 +631,7 @@ if (ok) { model.ipar=nn; model.rpar=dt; hh=model.firing; -hh[2]=0; +hh[2-1]=0; model.firing=hh; graphics.exprs=exprs; x.graphics=graphics; @@ -892,7 +892,7 @@ graphics=arg1.graphics; exprs=graphics.exprs; model=arg1.model; if (size(exprs,"*")<2) { -exprs[2]="0"; +exprs[2-1]="0"; } while (true) { [ok,a,inh,exprs]=scicos_getvalue("Set 1/z block parameters",["initial condition","Inherit (no:0, yes:1)"],list("vec",-1,"vec",-1),exprs); @@ -2128,7 +2128,7 @@ if (size(clrs,"*")>8) { clrs=clrs.slice(1-1,8); } if (size(clrs,"*")<8) { -clrs[8]=0; +clrs[8-1]=0; } ipar=[win,1,N,clrs.slice(),wpos.slice(),wdim.slice(),size(wu,"*"),wu.slice()]; model.rpar=rpar; @@ -2740,9 +2740,9 @@ message("Datatype is not supported"); ok=None; } if (ok) { -it[1]=ot; -it[2]=1; -it[3]=ot; +it[1-1]=ot; +it[2-1]=1; +it[3-1]=ot; in1=[model.in,model.in2]; out=[model.out,model.out2]; [model,graphics,ok]=set_io(model,graphics,list(in1,it),list(out,ot),[],[]); @@ -2976,10 +2976,10 @@ x=arg1; graphics=arg1.graphics; exprs=graphics.exprs; if (size(exprs,"*")==1) { -exprs[2]=string(1); +exprs[2-1]=string(1); } if (size(exprs,"*")==2) { -exprs[3]=string(0); +exprs[3-1]=string(0); } model=arg1.model; while (true) { @@ -4577,7 +4577,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set EXPM Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); @@ -4648,7 +4648,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATPINV Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); @@ -4719,7 +4719,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATDIAG Block",["Datatype (1=real double 2=Complex)"],list("vec",1),label); @@ -4824,7 +4824,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATINV Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); @@ -4895,7 +4895,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,lab]=scicos_getvalue("Set MATLU block parameters",["Datatype(1=real double 2=Complex)"],list("vec",1),label); @@ -4964,7 +4964,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATBKSL Block",["Datatype (1=real double 2=Complex)"],list("vec",1),label); @@ -5035,7 +5035,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,l1,out,lab]=scicos_getvalue("Set MATRESH block parameters",["Datatype(1=real double 2=Complex)","input size","output size desired"],list("vec",-1,"vec",-1,"vec",-1),label); @@ -5131,7 +5131,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==1) { -label[2]=sci2exp(1); +label[2-1]=sci2exp(1); } while (true) { [ok,typ,rule,exprs]=scicos_getvalue("Set MATTRAN Block",["Datatype(1=real double 2=Complex)","rule (1=.\' 2=\')"],list("vec",1,"vec",1),label); @@ -5194,7 +5194,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,tpe,mod,exprs]=scicos_getvalue("Set RICC Block",["Type (1=Cont 2=Disc)","Model(1=Schr 2=sign(cont) inv(disc))"],list("vec",1,"vec",1),label); @@ -5254,7 +5254,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATDET Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); @@ -5325,7 +5325,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATDIV Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); @@ -5396,7 +5396,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,decomptyp,lab]=scicos_getvalue("Set EXTTRI block parameters",["Datatype(1=real double 2=Complex)","extraction type (1=lower 2=upper 3=diagonal)"],list("vec",1,"vec",1),label); @@ -5569,7 +5569,7 @@ if (!ok) { break } model.rpar=[V,ph,frq,offset,start]; -model.equations.parameters[2]=list(V,ph,frq,offset,start); +model.equations.parameters[2-1]=list(V,ph,frq,offset,start); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -5680,7 +5680,7 @@ while (true) { if (!ok) { break } -model.equations.parameters[2]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); +model.equations.parameters[2-1]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -5783,7 +5783,7 @@ while (true) { if (!ok) { break } -x.model.equations.parameters[2]=list(N); +x.model.equations.parameters[2-1]=list(N); x.graphics.exprs=exprs; break } @@ -5943,7 +5943,7 @@ if (!ok) { break } model.rpar=R; -model.equations.parameters[2]=list(R); +model.equations.parameters[2-1]=list(R); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6017,7 +6017,7 @@ if (!ok) { break } model.rpar=V; -model.equations.parameters[2]=list(V); +model.equations.parameters[2-1]=list(V); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6063,7 +6063,7 @@ if (!ok) { break } model.rpar=[FR]; -model.equations.parameters[2]=list(FR); +model.equations.parameters[2-1]=list(FR); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6165,7 +6165,7 @@ while (true) { if (!ok) { break } -model.equations.parameters[2]=list(Ron,Roff); +model.equations.parameters[2-1]=list(Ron,Roff); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6236,7 +6236,7 @@ while (true) { if (!ok) { break } -model.equations.parameters[2]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); +model.equations.parameters[2-1]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6289,7 +6289,7 @@ if (!ok) { break } model.rpar=[VA,FR]; -model.equations.parameters[2]=list(VA,FR); +model.equations.parameters[2-1]=list(VA,FR); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6335,7 +6335,7 @@ while (None) { if (!ok) { break } -model.equations.parameters[2]=list(OLGain,SatH,SatL); +model.equations.parameters[2-1]=list(OLGain,SatH,SatL); graphics.exprs=exprs; x.graphics=graphics; x.model=model; @@ -6383,7 +6383,7 @@ while (true) { if (!ok) { break } -x.model.equations.parameters[2]=list(G1,G2); +x.model.equations.parameters[2-1]=list(G1,G2); x.graphics.exprs=exprs; break } @@ -6509,13 +6509,13 @@ break if (funam==" ") { break } -label[1]=lab; +label[1-1]=lab; rpar=rpar.slice(); i=int(i.slice()); ni=size(i,1); o=int(o.slice()); no=size(o,1); -tt=label.slice(2-1); +tt=label[2-1]; if (model.sim(1)!=funam||size(model.in,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { tt=[]; } @@ -6525,9 +6525,9 @@ break } [model,graphics,ok]=check_io(model,graphics,i,o,[],[]); if (ok) { -model.sim[1]=funam; +model.sim[1-1]=funam; model.rpar=rpar; -label[2]=tt; +label[2-1]=tt; x.model=model; graphics.exprs=label; x.graphics=graphics; @@ -6605,8 +6605,8 @@ graphics=arg1.graphics; exprs=graphics.exprs; model=arg1.model; if (size(exprs,"*")<9) { -exprs[8]="9.81"; -exprs[9]="0"; +exprs[8-1]="9.81"; +exprs[9-1]="0"; } while (true) { [ok,rpar1,rpar2,walls,xt,xd,y,yd,g,C,exprs]=scicos_getvalue(["Set Bounce Block"],["Mass","Radius","[xmin,xmax,ymin,ymax]","xpos","xdpos","ypos","ydpos","g (gravity)","C (aerodynamic coeff"],list("vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",1,"vec",1),exprs); @@ -6643,9 +6643,9 @@ k=1; ipar=[]; for(i=1;i<=n;i+=1) { for(j=i+1;j<=n;j+=1) { -ipar[k]=i; +ipar[k-1]=i; k=k+1; -ipar[k]=j; +ipar[k-1]=j; k=k+1; } } @@ -6668,9 +6668,9 @@ k=1; ipar=[]; for(i=1;i<=n;i+=1) { for(j=i+1;j<=n;j+=1) { -ipar[k]=i; +ipar[k-1]=i; k=k+1; -ipar[k]=j; +ipar[k-1]=j; k=k+1; } } @@ -6717,7 +6717,7 @@ while (true) { if (!ok) { break } -exprs[1]=lab; +exprs[1-1]=lab; xx=xx.slice(); z=z.slice(); rpar=rpar.slice(); @@ -6730,8 +6730,8 @@ ci=int(ci.slice()); nci=size(ci,1); co=int(co.slice()); nco=size(co,1); -[ok,tt,dep_ut]=genfunc2(exprs.slice(2-1),i,o,nci,nco,size(xx,1),size(z,1),nrp,"c"); -dep_ut[2]=(1==deptime); +[ok,tt,dep_ut]=genfunc2(exprs[2-1],i,o,nci,nco,size(xx,1),size(z,1),nrp,"c"); +dep_ut[2-1]=(1==deptime); if (!ok) { break } @@ -6752,7 +6752,7 @@ model.opar=tt; model.firing=auto; model.dep_ut=dep_ut; x.model=model; -exprs[2]=tt; +exprs[2-1]=tt; graphics.exprs=exprs; x.graphics=graphics; break @@ -6813,13 +6813,13 @@ break if (funam==" ") { break } -label[1]=lab; +label[1-1]=lab; rpar=rpar.slice(); i=int(i.slice()); ni=size(i,1); o=int(o.slice()); no=size(o,1); -tt=label.slice(2-1); +tt=label[2-1]; if (model.sim(1)!=funam||size(model.in,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { tt=[]; } @@ -6829,9 +6829,9 @@ break } [model,graphics,ok]=check_io(model,graphics,i,o,[],[]); if (ok) { -model.sim[1]=funam; +model.sim[1-1]=funam; model.rpar=rpar; -label[2]=tt; +label[2-1]=tt; x.model=model; graphics.exprs=label; x.graphics=graphics; @@ -6907,7 +6907,7 @@ x_message(["Id(i) must be either","0 when x\'(i) is not present in the feedback" break } if ((id(i)==0)) { -id[i]=-1; +id[i-1]=-1; } } } @@ -7152,12 +7152,12 @@ rpar=[xmin,xmax,ymin,ymax]; ipar=[win,imode,clrs.slice()]; z=[]; for(i=1;i<=size(clrs,"*");i+=1) { -z[6*(i-1)+1]=0; -z[6*(i-1)+2]=0; -z[6*(i-1)+3]=2*siz(i); -z[6*(i-1)+4]=2*siz(i); -z[6*(i-1)+5]=0.000; -z[6*(i-1)+6]=64.0*360.000; +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)+5-1]=0.000; +z[6*(i-1)+6-1]=64.0*360.000; } model.dstate=z; model.rpar=rpar; @@ -7186,12 +7186,12 @@ model.intyp=[1,1]; model.evtin=1; z=[]; for(i=1;i<=size(clrs,"*");i+=1) { -z[6*(i-1)+1]=0; -z[6*(i-1)+2]=0; -z[6*(i-1)+3]=2*siz(i); -z[6*(i-1)+4]=2*siz(i); -z[6*(i-1)+5]=0.000; -z[6*(i-1)+6]=64.0*360.000; +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)+5-1]=0.000; +z[6*(i-1)+6-1]=64.0*360.000; } model.dstate=z; model.rpar=[xmin,xmax,ymin,ymax]; @@ -7223,8 +7223,8 @@ break } if (ok) { graphics.exprs=exprs; -rpar[1]=ini; -rpar[2]=gap; +rpar[1-1]=ini; +rpar[2-1]=gap; if (zcr!=0) { model.nzcross=2; } else { diff --git a/js/Branching/ESELECT_f.js b/js/Branching/ESELECT_f.js index 3187bf5f..04639136 100644 --- a/js/Branching/ESELECT_f.js +++ b/js/Branching/ESELECT_f.js @@ -7,10 +7,10 @@ x=arg1; graphics=arg1.graphics; exprs=graphics.exprs; if (size(exprs,"*")==1) { -exprs[2]=string(1); +exprs[2-1]=string(1); } if (size(exprs,"*")==2) { -exprs[3]=string(0); +exprs[3-1]=string(0); } model=arg1.model; while (true) { diff --git a/js/Branching/SWITCH2_m.js b/js/Branching/SWITCH2_m.js index 662944f3..de9b99b5 100644 --- a/js/Branching/SWITCH2_m.js +++ b/js/Branching/SWITCH2_m.js @@ -34,9 +34,9 @@ message("Datatype is not supported"); ok=None; } if (ok) { -it[1]=ot; -it[2]=1; -it[3]=ot; +it[1-1]=ot; +it[2-1]=1; +it[3-1]=ot; in1=[model.in,model.in2]; out=[model.out,model.out2]; [model,graphics,ok]=set_io(model,graphics,list(in1,it),list(out,ot),[],[]); diff --git a/js/Electrical/ConstantVoltage.js b/js/Electrical/ConstantVoltage.js index 9820e4fc..81c487b5 100644 --- a/js/Electrical/ConstantVoltage.js +++ b/js/Electrical/ConstantVoltage.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=V; -model.equations.parameters[2]=list(V); +model.equations.parameters[2-1]=list(V); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/Gyrator.js b/js/Electrical/Gyrator.js index 908e755c..942a9ac5 100644 --- a/js/Electrical/Gyrator.js +++ b/js/Electrical/Gyrator.js @@ -14,7 +14,7 @@ while (true) { if (!ok) { break } -x.model.equations.parameters[2]=list(G1,G2); +x.model.equations.parameters[2-1]=list(G1,G2); x.graphics.exprs=exprs; break } diff --git a/js/Electrical/IdealTransformer.js b/js/Electrical/IdealTransformer.js index cfaec540..f92463f7 100644 --- a/js/Electrical/IdealTransformer.js +++ b/js/Electrical/IdealTransformer.js @@ -14,7 +14,7 @@ while (true) { if (!ok) { break } -x.model.equations.parameters[2]=list(N); +x.model.equations.parameters[2-1]=list(N); x.graphics.exprs=exprs; break } diff --git a/js/Electrical/NMOS.js b/js/Electrical/NMOS.js index d33e5cd1..dad1e53a 100644 --- a/js/Electrical/NMOS.js +++ b/js/Electrical/NMOS.js @@ -12,7 +12,7 @@ while (true) { if (!ok) { break } -model.equations.parameters[2]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); +model.equations.parameters[2-1]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/OpAmp.js b/js/Electrical/OpAmp.js index f5863a92..375ed583 100644 --- a/js/Electrical/OpAmp.js +++ b/js/Electrical/OpAmp.js @@ -12,7 +12,7 @@ while (None) { if (!ok) { break } -model.equations.parameters[2]=list(OLGain,SatH,SatL); +model.equations.parameters[2-1]=list(OLGain,SatH,SatL); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/PMOS.js b/js/Electrical/PMOS.js index 22293854..7353f0aa 100644 --- a/js/Electrical/PMOS.js +++ b/js/Electrical/PMOS.js @@ -12,7 +12,7 @@ while (true) { if (!ok) { break } -model.equations.parameters[2]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); +model.equations.parameters[2-1]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/Resistor.js b/js/Electrical/Resistor.js index f002cc18..d2f297d8 100644 --- a/js/Electrical/Resistor.js +++ b/js/Electrical/Resistor.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=R; -model.equations.parameters[2]=list(R); +model.equations.parameters[2-1]=list(R); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/SineVoltage.js b/js/Electrical/SineVoltage.js index 69a9c73e..a2584b97 100644 --- a/js/Electrical/SineVoltage.js +++ b/js/Electrical/SineVoltage.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[V,ph,frq,offset,start]; -model.equations.parameters[2]=list(V,ph,frq,offset,start); +model.equations.parameters[2-1]=list(V,ph,frq,offset,start); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/Switch.js b/js/Electrical/Switch.js index a19145a4..aeda600f 100644 --- a/js/Electrical/Switch.js +++ b/js/Electrical/Switch.js @@ -12,7 +12,7 @@ while (true) { if (!ok) { break } -model.equations.parameters[2]=list(Ron,Roff); +model.equations.parameters[2-1]=list(Ron,Roff); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/VVsourceAC.js b/js/Electrical/VVsourceAC.js index e380f412..a383f6fa 100644 --- a/js/Electrical/VVsourceAC.js +++ b/js/Electrical/VVsourceAC.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[FR]; -model.equations.parameters[2]=list(FR); +model.equations.parameters[2-1]=list(FR); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Electrical/VsourceAC.js b/js/Electrical/VsourceAC.js index 37b70b89..fbe379c9 100644 --- a/js/Electrical/VsourceAC.js +++ b/js/Electrical/VsourceAC.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[VA,FR]; -model.equations.parameters[2]=list(VA,FR); +model.equations.parameters[2-1]=list(VA,FR); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Events/MFCLCK_f.js b/js/Events/MFCLCK_f.js index ab428ea9..ba118054 100644 --- a/js/Events/MFCLCK_f.js +++ b/js/Events/MFCLCK_f.js @@ -12,7 +12,7 @@ if (ok) { model.ipar=nn; model.rpar=dt; hh=model.firing; -hh[2]=0; +hh[2-1]=0; model.firing=hh; graphics.exprs=exprs; x.graphics=graphics; diff --git a/js/Hydraulics/Flowmeter.js b/js/Hydraulics/Flowmeter.js index d091b617..ab99cf36 100644 --- a/js/Hydraulics/Flowmeter.js +++ b/js/Hydraulics/Flowmeter.js @@ -14,7 +14,7 @@ while (None) { if (!ok) { break } -x.model.equations.parameters[2]=list(Qini); +x.model.equations.parameters[2-1]=list(Qini); x.graphics.exprs=exprs; break } diff --git a/js/Hydraulics/PerteDP.js b/js/Hydraulics/PerteDP.js index cdfb81e0..7a65f6fd 100644 --- a/js/Hydraulics/PerteDP.js +++ b/js/Hydraulics/PerteDP.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[L,D,lambda,z1,z2,p_rho]; -model.equations.parameters[2]=list(L,D,lambda,z1,z2,p_rho); +model.equations.parameters[2-1]=list(L,D,lambda,z1,z2,p_rho); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Hydraulics/PuitsP.js b/js/Hydraulics/PuitsP.js index 72a937f3..af031dee 100644 --- a/js/Hydraulics/PuitsP.js +++ b/js/Hydraulics/PuitsP.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[P0,T0,H0,option_temperature]; -model.equations.parameters[2]=list(P0,T0,H0,option_temperature); +model.equations.parameters[2-1]=list(P0,T0,H0,option_temperature); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Hydraulics/SourceP.js b/js/Hydraulics/SourceP.js index c6cc08fc..6d0dfaaa 100644 --- a/js/Hydraulics/SourceP.js +++ b/js/Hydraulics/SourceP.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[P0,T0,H0,option_temperature]; -model.equations.parameters[2]=list(P0,T0,H0,option_temperature); +model.equations.parameters[2-1]=list(P0,T0,H0,option_temperature); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Hydraulics/VanneReglante.js b/js/Hydraulics/VanneReglante.js index f31e794d..030932df 100644 --- a/js/Hydraulics/VanneReglante.js +++ b/js/Hydraulics/VanneReglante.js @@ -13,7 +13,7 @@ if (!ok) { break } model.rpar=[Cvmax,p_rho]; -model.equations.parameters[2]=list(Cvmax,p_rho); +model.equations.parameters[2-1]=list(Cvmax,p_rho); graphics.exprs=exprs; x.graphics=graphics; x.model=model; diff --git a/js/Linear/DOLLAR_f.js b/js/Linear/DOLLAR_f.js index 7c77a9a0..893131f1 100644 --- a/js/Linear/DOLLAR_f.js +++ b/js/Linear/DOLLAR_f.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; exprs=graphics.exprs; model=arg1.model; if (size(exprs,"*")<2) { -exprs[2]="0"; +exprs[2-1]="0"; } while (true) { [ok,a,inh,exprs]=scicos_getvalue("Set 1/z block parameters",["initial condition","Inherit (no:0, yes:1)"],list("vec",-1,"vec",-1),exprs); diff --git a/js/MatrixOp/EXTTRI.js b/js/MatrixOp/EXTTRI.js index 3fd1deca..bcba10de 100644 --- a/js/MatrixOp/EXTTRI.js +++ b/js/MatrixOp/EXTTRI.js @@ -8,7 +8,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,decomptyp,lab]=scicos_getvalue("Set EXTTRI block parameters",["Datatype(1=real double 2=Complex)","extraction type (1=lower 2=upper 3=diagonal)"],list("vec",1,"vec",1),label); diff --git a/js/MatrixOp/MATBKSL.js b/js/MatrixOp/MATBKSL.js index 38fc6deb..e9e4f4a7 100644 --- a/js/MatrixOp/MATBKSL.js +++ b/js/MatrixOp/MATBKSL.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATBKSL Block",["Datatype (1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATDET.js b/js/MatrixOp/MATDET.js index d474a542..a27c586b 100644 --- a/js/MatrixOp/MATDET.js +++ b/js/MatrixOp/MATDET.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATDET Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATDIAG.js b/js/MatrixOp/MATDIAG.js index 131ed59c..8e4755b4 100644 --- a/js/MatrixOp/MATDIAG.js +++ b/js/MatrixOp/MATDIAG.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATDIAG Block",["Datatype (1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATDIV.js b/js/MatrixOp/MATDIV.js index 1b053653..9a7fcec4 100644 --- a/js/MatrixOp/MATDIV.js +++ b/js/MatrixOp/MATDIV.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATDIV Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATEXPM.js b/js/MatrixOp/MATEXPM.js index 6d65a499..3a9b117f 100644 --- a/js/MatrixOp/MATEXPM.js +++ b/js/MatrixOp/MATEXPM.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set EXPM Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATINV.js b/js/MatrixOp/MATINV.js index 7ceb5342..04fc617c 100644 --- a/js/MatrixOp/MATINV.js +++ b/js/MatrixOp/MATINV.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATINV Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATLU.js b/js/MatrixOp/MATLU.js index 0c7a77cb..fa4425bc 100644 --- a/js/MatrixOp/MATLU.js +++ b/js/MatrixOp/MATLU.js @@ -8,7 +8,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,lab]=scicos_getvalue("Set MATLU block parameters",["Datatype(1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATPINV.js b/js/MatrixOp/MATPINV.js index 573f11de..29e54589 100644 --- a/js/MatrixOp/MATPINV.js +++ b/js/MatrixOp/MATPINV.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,exprs]=scicos_getvalue("Set MATPINV Block",["Datatype(1=real double 2=Complex)"],list("vec",1),label); diff --git a/js/MatrixOp/MATRESH.js b/js/MatrixOp/MATRESH.js index 1a15f8df..ea7fc79d 100644 --- a/js/MatrixOp/MATRESH.js +++ b/js/MatrixOp/MATRESH.js @@ -8,7 +8,7 @@ model=arg1.model; graphics=arg1.graphics; label=graphics.exprs; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,typ,l1,out,lab]=scicos_getvalue("Set MATRESH block parameters",["Datatype(1=real double 2=Complex)","input size","output size desired"],list("vec",-1,"vec",-1,"vec",-1),label); diff --git a/js/MatrixOp/MATTRAN.js b/js/MatrixOp/MATTRAN.js index 970a386a..893d48f8 100644 --- a/js/MatrixOp/MATTRAN.js +++ b/js/MatrixOp/MATTRAN.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==1) { -label[2]=sci2exp(1); +label[2-1]=sci2exp(1); } while (true) { [ok,typ,rule,exprs]=scicos_getvalue("Set MATTRAN Block",["Datatype(1=real double 2=Complex)","rule (1=.\' 2=\')"],list("vec",1,"vec",1),label); diff --git a/js/MatrixOp/RICC.js b/js/MatrixOp/RICC.js index d1cb1c7d..876389ca 100644 --- a/js/MatrixOp/RICC.js +++ b/js/MatrixOp/RICC.js @@ -8,7 +8,7 @@ graphics=arg1.graphics; label=graphics.exprs; model=arg1.model; if (size(label,"*")==14) { -label[9]=[]; +label[9-1]=[]; } while (true) { [ok,tpe,mod,exprs]=scicos_getvalue("Set RICC Block",["Type (1=Cont 2=Disc)","Model(1=Schr 2=sign(cont) inv(disc))"],list("vec",1,"vec",1),label); diff --git a/js/Misc/BACKLASH.js b/js/Misc/BACKLASH.js index ac433e91..a854b837 100644 --- a/js/Misc/BACKLASH.js +++ b/js/Misc/BACKLASH.js @@ -15,8 +15,8 @@ break } if (ok) { graphics.exprs=exprs; -rpar[1]=ini; -rpar[2]=gap; +rpar[1-1]=ini; +rpar[2-1]=gap; if (zcr!=0) { model.nzcross=2; } else { diff --git a/js/Misc/BOUNCE.js b/js/Misc/BOUNCE.js index f310eed3..b1cf7c07 100644 --- a/js/Misc/BOUNCE.js +++ b/js/Misc/BOUNCE.js @@ -8,8 +8,8 @@ graphics=arg1.graphics; exprs=graphics.exprs; model=arg1.model; if (size(exprs,"*")<9) { -exprs[8]="9.81"; -exprs[9]="0"; +exprs[8-1]="9.81"; +exprs[9-1]="0"; } while (true) { [ok,rpar1,rpar2,walls,xt,xd,y,yd,g,C,exprs]=scicos_getvalue(["Set Bounce Block"],["Mass","Radius","[xmin,xmax,ymin,ymax]","xpos","xdpos","ypos","ydpos","g (gravity)","C (aerodynamic coeff"],list("vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",1,"vec",1),exprs); @@ -46,9 +46,9 @@ k=1; ipar=[]; for(i=1;i<=n;i+=1) { for(j=i+1;j<=n;j+=1) { -ipar[k]=i; +ipar[k-1]=i; k=k+1; -ipar[k]=j; +ipar[k-1]=j; k=k+1; } } @@ -71,9 +71,9 @@ k=1; ipar=[]; for(i=1;i<=n;i+=1) { for(j=i+1;j<=n;j+=1) { -ipar[k]=i; +ipar[k-1]=i; k=k+1; -ipar[k]=j; +ipar[k-1]=j; k=k+1; } } diff --git a/js/Misc/BOUNCEXY.js b/js/Misc/BOUNCEXY.js index 278bff63..2ac6ccce 100644 --- a/js/Misc/BOUNCEXY.js +++ b/js/Misc/BOUNCEXY.js @@ -37,12 +37,12 @@ rpar=[xmin,xmax,ymin,ymax]; ipar=[win,imode,clrs.slice()]; z=[]; for(i=1;i<=size(clrs,"*");i+=1) { -z[6*(i-1)+1]=0; -z[6*(i-1)+2]=0; -z[6*(i-1)+3]=2*siz(i); -z[6*(i-1)+4]=2*siz(i); -z[6*(i-1)+5]=0.000; -z[6*(i-1)+6]=64.0*360.000; +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)+5-1]=0.000; +z[6*(i-1)+6-1]=64.0*360.000; } model.dstate=z; model.rpar=rpar; @@ -71,12 +71,12 @@ model.intyp=[1,1]; model.evtin=1; z=[]; for(i=1;i<=size(clrs,"*");i+=1) { -z[6*(i-1)+1]=0; -z[6*(i-1)+2]=0; -z[6*(i-1)+3]=2*siz(i); -z[6*(i-1)+4]=2*siz(i); -z[6*(i-1)+5]=0.000; -z[6*(i-1)+6]=64.0*360.000; +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)+5-1]=0.000; +z[6*(i-1)+6-1]=64.0*360.000; } model.dstate=z; model.rpar=[xmin,xmax,ymin,ymax]; diff --git a/js/Misc/CONSTRAINT2_c.js b/js/Misc/CONSTRAINT2_c.js index 704a0f8d..ee58ef12 100644 --- a/js/Misc/CONSTRAINT2_c.js +++ b/js/Misc/CONSTRAINT2_c.js @@ -35,7 +35,7 @@ x_message(["Id(i) must be either","0 when x\'(i) is not present in the feedback" break } if ((id(i)==0)) { -id[i]=-1; +id[i-1]=-1; } } } diff --git a/js/Misc/c_block.js b/js/Misc/c_block.js index a975433e..f3fe984e 100644 --- a/js/Misc/c_block.js +++ b/js/Misc/c_block.js @@ -15,13 +15,13 @@ break if (funam==" ") { break } -label[1]=lab; +label[1-1]=lab; rpar=rpar.slice(); i=int(i.slice()); ni=size(i,1); o=int(o.slice()); no=size(o,1); -tt=label.slice(2-1); +tt=label[2-1]; if (model.sim(1)!=funam||size(model.in,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { tt=[]; } @@ -31,9 +31,9 @@ break } [model,graphics,ok]=check_io(model,graphics,i,o,[],[]); if (ok) { -model.sim[1]=funam; +model.sim[1-1]=funam; model.rpar=rpar; -label[2]=tt; +label[2-1]=tt; x.model=model; graphics.exprs=label; x.graphics=graphics; diff --git a/js/Misc/fortran_block.js b/js/Misc/fortran_block.js index f9949646..4bc445c8 100644 --- a/js/Misc/fortran_block.js +++ b/js/Misc/fortran_block.js @@ -15,13 +15,13 @@ break if (funam==" ") { break } -label[1]=lab; +label[1-1]=lab; rpar=rpar.slice(); i=int(i.slice()); ni=size(i,1); o=int(o.slice()); no=size(o,1); -tt=label.slice(2-1); +tt=label[2-1]; if (model.sim(1)!=funam||size(model.in,"*")!=size(i,"*")||size(model.out,"*")!=size(o,"*")) { tt=[]; } @@ -31,9 +31,9 @@ break } [model,graphics,ok]=check_io(model,graphics,i,o,[],[]); if (ok) { -model.sim[1]=funam; +model.sim[1-1]=funam; model.rpar=rpar; -label[2]=tt; +label[2-1]=tt; x.model=model; graphics.exprs=label; x.graphics=graphics; diff --git a/js/Misc/scifunc_block_m.js b/js/Misc/scifunc_block_m.js index b56691d3..7f7d543e 100644 --- a/js/Misc/scifunc_block_m.js +++ b/js/Misc/scifunc_block_m.js @@ -13,7 +13,7 @@ while (true) { if (!ok) { break } -exprs[1]=lab; +exprs[1-1]=lab; xx=xx.slice(); z=z.slice(); rpar=rpar.slice(); @@ -26,8 +26,8 @@ ci=int(ci.slice()); nci=size(ci,1); co=int(co.slice()); nco=size(co,1); -[ok,tt,dep_ut]=genfunc2(exprs.slice(2-1),i,o,nci,nco,size(xx,1),size(z,1),nrp,"c"); -dep_ut[2]=(1==deptime); +[ok,tt,dep_ut]=genfunc2(exprs[2-1],i,o,nci,nco,size(xx,1),size(z,1),nrp,"c"); +dep_ut[2-1]=(1==deptime); if (!ok) { break } @@ -48,7 +48,7 @@ model.opar=tt; model.firing=auto; model.dep_ut=dep_ut; x.model=model; -exprs[2]=tt; +exprs[2-1]=tt; graphics.exprs=exprs; x.graphics=graphics; break diff --git a/js/Sinks/CFSCOPE.js b/js/Sinks/CFSCOPE.js index f2ccfc14..eb0a23d6 100644 --- a/js/Sinks/CFSCOPE.js +++ b/js/Sinks/CFSCOPE.js @@ -56,7 +56,7 @@ if (size(clrs,"*")>8) { clrs=clrs.slice(1-1,8); } if (size(clrs,"*")<8) { -clrs[8]=0; +clrs[8-1]=0; } ipar=[win,1,N,clrs.slice(),wpos.slice(),wdim.slice(),size(wu,"*"),wu.slice()]; model.rpar=rpar; diff --git a/sci2jsyacc.py b/sci2jsyacc.py index f2f680bc..1ba1d84b 100755 --- a/sci2jsyacc.py +++ b/sci2jsyacc.py @@ -392,19 +392,17 @@ def p_function_function(p): # define lterm -# A[1:3] # B(2:$-1) def p_lterm_slice(p): - '''lterm : ltermvar OPENBRACKET expression COLON expression CLOSEBRACKET - | ltermvar OPENSQBRACKET expression COLON expression CLOSESQBRACKET''' + 'lterm : ltermvar OPENBRACKET expression COLON expression CLOSEBRACKET' addtoarray(p[1]) - p[0] = str(p[1]) + '[' + str(p[3]) + str(p[4]) + str(p[5]) + ']' + p[0] = p[1] + '.slice(' + str(p[3]) + '-1,' + str(p[5]) + ')' +# B(2) def p_lterm_index(p): - '''lterm : ltermvar OPENBRACKET expression CLOSEBRACKET - | ltermvar OPENSQBRACKET expression CLOSESQBRACKET''' + 'lterm : ltermvar OPENBRACKET expression CLOSEBRACKET' addtoarray(p[1]) - p[0] = str(p[1]) + '[' + str(p[3]) + ']' + p[0] = str(p[1]) + '[' + str(p[3]) + '-1]' # [A,B,C] def p_lterm_ltermarraylist(p): @@ -437,46 +435,32 @@ def p_ltermvar_in(p): # define term -# A[1:3] # B(2:$-1) def p_term_slice(p): - '''term : termvar OPENBRACKET expression COLON expression CLOSEBRACKET - | termvar OPENSQBRACKET expression COLON expression CLOSESQBRACKET''' + 'term : termvar OPENBRACKET expression COLON expression CLOSEBRACKET' p[0] = p[1] + '.slice(' + str(p[3]) + '-1,' + str(p[5]) + ')' -# A[:3] # B(:$-1) def p_term_left_slice(p): - '''term : termvar OPENBRACKET COLON expression CLOSEBRACKET - | termvar OPENSQBRACKET COLON expression CLOSESQBRACKET''' + 'term : termvar OPENBRACKET COLON expression CLOSEBRACKET' p[0] = p[1] + '.slice(' + str(p[3]) + '-1)' -# A[1:] # B(2:) def p_term_right_slice(p): - '''term : termvar OPENBRACKET expression COLON CLOSEBRACKET - | termvar OPENSQBRACKET expression COLON CLOSESQBRACKET''' + 'term : termvar OPENBRACKET expression COLON CLOSEBRACKET' p[0] = str(p[1]) + '.slice(0,' + str(p[4]) + ')' -# A[:] # B(:) def p_term_full_slice(p): - '''term : termvar OPENBRACKET COLON CLOSEBRACKET - | termvar OPENSQBRACKET COLON CLOSESQBRACKET''' + 'term : termvar OPENBRACKET COLON CLOSEBRACKET' p[0] = p[1] + '.slice()' -# A[3] # B($-2) # C('function parameter') def p_term_index(p): - '''term : termvar OPENBRACKET expression CLOSEBRACKET - | termvar OPENSQBRACKET expression CLOSESQBRACKET''' + 'term : termvar OPENBRACKET expression CLOSEBRACKET' if isarray(p[1]): - p[0] = p[1] + '.slice(' + str(p[3]) + '-1)' - elif isfunction(p[1]): - p[0] = p[1] + '(' + str(p[3]) + ')' - elif p[2] == '[': - p[0] = p[1] + '.slice(' + str(p[3]) + '-1)' + p[0] = p[1] + '[' + str(p[3]) + '-1]' else: p[0] = p[1] + '(' + str(p[3]) + ')' |