/* autogenerated from "macros/NonLinear/MAXMIN.sci" */ function MAXMIN() { MAXMIN.prototype.define = function MAXMIN() { this.model = scicos_model(); this.model.sim = list("minmax",4); this.model.out = new ScilabDouble(1); this.model.in1 = new ScilabDouble(-1); this.model.blocktype = new ScilabString("c"); this.model.dep_ut = [true,false]; this.model.ipar = new ScilabDouble(0); exprs = [string(transpose([2,1,1]))]; gr_i = []; this.x = standard_define([2,2],this.model,exprs,gr_i); this.x.graphics.style = "MAXMIN;displayedLabel=MAX"; return new BasicBlock(this.x); } MAXMIN.prototype.details = function MAXMIN() { return this.x; } MAXMIN.prototype.get = function MAXMIN() { var options = { mm:["Min (1) or Max (2) ",this.mm], nin:["Number of input vectors (1 or 2)",this.nin], zcr:["zero-crossing (1: yes, 0;no)",this.zcr], } return options; } MAXMIN.prototype.set = function MAXMIN() { this.mm = parseFloat(arguments[0]["mm"]) this.nin = arguments[0]["nin"] this.zcr = parseFloat(arguments[0]["zcr"]) this.x = arg1; graphics = arg1.graphics; exprs = graphics.exprs; this.model = arg1.model; while (true) { [ok,this.mm,this.nin,this.zcr,exprs] = scicos_getvalue("Set Max/Min block parameters",["Min (1) or Max (2) ","Number of input vectors (1 or 2)","zero-crossing (1: yes, 0;no)"],list("vec",1,"vec",1,"vec",1),exprs); if (!ok) { break; } if (this.zcr!=0) { this.zcr = -1; } if (this.mm!=1) { this.mm = 2; } if (this.nin!=1&&this.nin!=2) { message("Wrong number of inputs, only 1 and 2 allowed"); ok = false; } if (ok) { if (this.nin==1) { [model,graphics,ok] = check_io(this.model,graphics,-1,1,[],[]); } else { [model,graphics,ok] = check_io(this.model,graphics,[-1,-1],-1,[],[]); } } if (ok) { this.model.nzcross = new ScilabDouble(this.zcr); if (this.nin==1) { this.model.nmode = new ScilabDouble(abs(this.zcr)); } else { this.model.nmode = new ScilabDouble(this.zcr); } this.model.ipar = new ScilabDouble(this.mm); if (this.mm==1) { label = "MIN"; } else { label = "MAX"; } graphics.style = "MAXMIN;displayedLabel="+label; graphics.exprs = exprs; this.x.graphics = graphics; this.x.model = this.model; break; } } return new BasicBlock(this.x); } }