summaryrefslogtreecommitdiff
path: root/data_structures_correct
diff options
context:
space:
mode:
authorAdhitya Kamakshidasan2016-07-12 18:33:02 +0530
committerGitHub2016-07-12 18:33:02 +0530
commitb7e951d8a2804d412be534518c31f3ad54ee9971 (patch)
treee374b3319c6a8c2b9f4f1263a10fa80995da6e91 /data_structures_correct
parentcfd04adb1e56b1338a5ea388527a6df0fce66919 (diff)
parent388ef4f6ff975e4dcd1604788d6c34613827381c (diff)
downloadxcos-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.js30
-rw-r--r--data_structures_correct/Switch.js42
-rw-r--r--data_structures_correct/VoltageSensor.js29
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;
+ }
+}