/* autogenerated from "macros/NonLinear/DLRADAPT_f.sci" */ function DLRADAPT_f() { DLRADAPT_f.prototype.define = function DLRADAPT_f() { p=[[0],[1]]; rn=[]; rd=[[math.complex(0.2,0.8),math.complex(0.2,-0.8)],[math.complex(0.3,0.7),math.complex(0.3,-0.7)]]; g=[[1],[1]]; last_u=[]; last_y=[[0],[0]]; model=scicos_model(); model.sim="dlradp"; model.in1=[[1],[1]]; model.out=1; model.evtin=1; model.dstate=[[last_u],[last_y]]; model.rpar=[[p.slice()],[real(rn.slice())],[imag(rn.slice())],[real(rd.slice())],[imag(rd.slice())],[g.slice()]]; model.ipar=[[0],[2],[2]]; model.blocktype="d"; model.firing=[]; model.dep_ut=[true,false]; exprs=[[sci2exp(p)],[sci2exp(rn)],[sci2exp(rd,0)],[sci2exp(g)],[sci2exp(last_u)],[sci2exp(last_y)]]; gr_i=[]; x=standard_define([2,2],model,exprs,gr_i); } DLRADAPT_f.prototype.details = function DLRADAPT_f() { } DLRADAPT_f.prototype.get = function DLRADAPT_f() { } DLRADAPT_f.prototype.set = function DLRADAPT_f() { x=arg1; graphics=arg1.graphics; exprs=graphics.exprs; model=arg1.model; while (true) { [ok,p,rn,rd,g,last_u,last_y,exprs]=scicos_getvalue("Set block parameters",[["Vector of p mesh points"],["Numerator roots (one line for each mesh)"],["Denominator roots (one line for each mesh)"],["Vector of gain at mesh points"],["past inputs (Num degree values)"],["past outputs (Den degree values)"]],list("vec",-1,"mat",[-1,-1],"mat",["size(%1,\'*\')","-1"],"vec","size(%1,\'*\')","vec","size(%2,2)","vec","size(%3,2)"),exprs); if (!ok) { break; } m=size(rn,2); [npt,n]=size(rd); if (m>=n) { message("Transfer must be strictly proper"); } else if (size(rn,1)!=0&&size(rn,1)!=size(p,"*")) { message("Numerator roots matrix row size\'s is incorrect"); } else { rpar=[[p.slice()],[real(rn.slice())],[imag(rn.slice())],[real(rd.slice())],[imag(rd.slice())],[g.slice()]]; ipar=[[m],[n],[npt]]; model.dstate=[[last_u.slice()],[last_y.slice()]]; model.rpar=rpar; model.ipar=ipar; graphics.exprs=exprs; x.graphics=graphics; x.model=model; break; } } } }