diff options
author | Adhitya Kamakshidasan | 2016-07-12 18:33:02 +0530 |
---|---|---|
committer | GitHub | 2016-07-12 18:33:02 +0530 |
commit | b7e951d8a2804d412be534518c31f3ad54ee9971 (patch) | |
tree | e374b3319c6a8c2b9f4f1263a10fa80995da6e91 /data_structures_correct | |
parent | cfd04adb1e56b1338a5ea388527a6df0fce66919 (diff) | |
parent | 388ef4f6ff975e4dcd1604788d6c34613827381c (diff) | |
download | xcos-on-web-b7e951d8a2804d412be534518c31f3ad54ee9971.tar.gz xcos-on-web-b7e951d8a2804d412be534518c31f3ad54ee9971.tar.bz2 xcos-on-web-b7e951d8a2804d412be534518c31f3ad54ee9971.zip |
Merge pull request #173 from ASP1234/master
Implement VoltageSensor Block
Diffstat (limited to 'data_structures_correct')
-rw-r--r-- | data_structures_correct/LOGIC.js | 30 | ||||
-rw-r--r-- | data_structures_correct/Switch.js | 42 | ||||
-rw-r--r-- | data_structures_correct/VoltageSensor.js | 29 |
3 files changed, 101 insertions, 0 deletions
diff --git a/data_structures_correct/LOGIC.js b/data_structures_correct/LOGIC.js new file mode 100644 index 0000000..0c1db7e --- /dev/null +++ b/data_structures_correct/LOGIC.js @@ -0,0 +1,30 @@ +function LOGIC() { + + LOGIC.prototype.define = function LOGIC() { + this.mat = [[0],[0],[0],[1]]; + + var model = scicos_model(); + model.sim = list(new ScilabString(["logic"]), new ScilabDouble([4])); + model.in = new ScilabDouble([1], [1]); + model.in2 = new ScilabDouble([1], [1]); + model.out = new ScilabDouble([1]); + model.out2 = new ScilabDouble([1]); + model.evtin = new ScilabDouble([1]); + model.intyp = new ScilabDouble([5, 5]); + model.outtyp = new ScilabDouble([5]); + model.opar = list(int8(...this.mat)); + model.blocktype = new ScilabString(["c"]); + model.firing = new ScilabBoolean([false]); + model.dep_ut = new ScilabBoolean([true, false]); + + var exprs = new ScilabString([sci2exp(this.mat)], [sci2exp(0)]); + + var gr_i = new ScilabString(["xstringb(orig(1),orig(2),\"LOGIC\",sz(1),sz(2));"]); + this.x = new standard_define(new ScilabDouble([2, 2]), model, exprs, gr_i); + return new BasicBlock(this.x); + } + + LOGIC.prototype.details = function LOGIC() { + return this.x; + } +} diff --git a/data_structures_correct/Switch.js b/data_structures_correct/Switch.js new file mode 100644 index 0000000..79c5736 --- /dev/null +++ b/data_structures_correct/Switch.js @@ -0,0 +1,42 @@ +function Switch() { + + Switch.prototype.define = function Switch() { + var model = scicos_model(); + + this.Ron = 0.01; + this.Roff = 1e5; + this.S = [["Ron"], ["Roff"]]; + + var scope = { + Ron: 0.01, + Roff: 1e5 + } + this.Z = math.eval('[ Ron ; Roff ]', scope)._data; + + model.sim = new ScilabString(["Switch"]); + model.blocktype = new ScilabString(["c"]); + model.dep_ut = new ScilabBoolean([true, false]); + + var mo = new modelica_function(); + mo.model = model.sim; + mo.inputs = new ScilabString(["p"], ["inp"]); + mo.outputs = new ScilabString(["n"]); + mo.parameters = list(new ScilabString(...this.S), new ScilabDouble(...this.Z)); + model.equations = mo; + model.in = new ScilabDouble(...ones(size(getData(mo.inputs), "*"), 1)); + model.out = new ScilabDouble(...ones(size(getData(mo.outputs), "*"), 1)); + model.rpar = new ScilabDouble(...this.Z); + + var exprs = new ScilabString(...this.Z); + + var gr_i = new ScilabString(["xstringb(orig(1),orig(2),\"Switch\",sz(1),sz(2));"]); + this.x = standard_define(new ScilabDouble([2, 2]), model, exprs, list(gr_i, new ScilabDouble(0))); + this.x.graphics.in_implicit = new ScilabString([["I"], ["E"]]); + this.x.graphics.out_implicit = new ScilabString(["I"]); + return new BasicBlock(this.x); + } + + Switch.prototype.details = function Switch() { + this.x; + } +} diff --git a/data_structures_correct/VoltageSensor.js b/data_structures_correct/VoltageSensor.js new file mode 100644 index 0000000..0d00317 --- /dev/null +++ b/data_structures_correct/VoltageSensor.js @@ -0,0 +1,29 @@ +function VoltageSensor() { + + VoltageSensor.prototype.define = function VoltageSensor() { + var model = scicos_model(); + model.in = new ScilabDouble([1]); + model.out = new ScilabDouble([1], [, 1]); + model.sim = new ScilabString(["VoltageSensor"]); + model.blocktype = new ScilabString(["c"]); + model.dep_ut = new ScilabBoolean([true, false]); + + var mo = new modelica_function(); + mo.model = new ScilabString(["VoltageSensor"]); + mo.inputs = new ScilabString(["p"]); + mo.outputs = new ScilabString(["n"], ["v"]); + model.equations = mo; + + var exprs = new ScilabDouble(); + + var gr_i = new ScilabString(["xstringb(orig(1),orig(2),\"VoltageSensor\",sz(1),sz(2));"]);; + this.x = standard_define([2, 2], model, exprs, list(gr_i, new ScilabDouble([0]))); + this.x.graphics.in_implicit = new ScilabString(["I"]); + this.x.graphics.out_implicit = new ScilabString(["I"], ["E"]); + return new VoltageSensorBlock(this.x); + } + + VoltageSensor.prototype.details = function VoltageSensor() { + return this.x; + } +} |