summaryrefslogtreecommitdiff
path: root/js/Electrical
diff options
context:
space:
mode:
authorSunil Shetye2018-06-16 02:25:21 +0530
committerSunil Shetye2018-06-16 02:25:21 +0530
commit1c39ed809c3870b5922bf9b66938b6346eeaa318 (patch)
tree42312190d9bf7092d1232359647f387b31828238 /js/Electrical
parentca2285f5d4f7acbd4b19ea4d8d685b3d21db0743 (diff)
downloadsci2js-1c39ed809c3870b5922bf9b66938b6346eeaa318.tar.gz
sci2js-1c39ed809c3870b5922bf9b66938b6346eeaa318.tar.bz2
sci2js-1c39ed809c3870b5922bf9b66938b6346eeaa318.zip
support numbers of format 1.0d10
Diffstat (limited to 'js/Electrical')
-rw-r--r--js/Electrical/Inductor.js47
-rw-r--r--js/Electrical/NPN.js73
-rw-r--r--js/Electrical/PNP.js73
3 files changed, 187 insertions, 6 deletions
diff --git a/js/Electrical/Inductor.js b/js/Electrical/Inductor.js
index 4a696abd..bbd0e95c 100644
--- a/js/Electrical/Inductor.js
+++ b/js/Electrical/Inductor.js
@@ -1,3 +1,46 @@
-Syntax error in input LexToken(VAR,'d',1,1574)
/* autogenerated from "macros/Electrical/Inductor.sci" */
-None
+function Inductor() {
+Inductor.prototype.get = function Inductor() {
+}
+Inductor.prototype.set = function Inductor() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,L,exprs]=scicos_getvalue("Set Inductor block parameter","L (H)",list("vec",1),exprs);
+if (!ok) {
+break
+}
+model.rpar=L;
+model.equations.parameters[2-1]=list(L);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+Inductor.prototype.define = function Inductor() {
+model=scicos_model();
+model.in1=[1];
+model.out=[1];
+L=1.e-5;
+model.rpar=L;
+model.sim="Inductor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="Inductor";
+mo.inputs="p";
+mo.outputs="n";
+mo.parameters=list("L",list(L));
+model.equations=mo;
+exprs=string(L);
+gr_i=[];
+x=standard_define([2,0.9],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+Inductor.prototype.details = function Inductor() {
+}
+}
diff --git a/js/Electrical/NPN.js b/js/Electrical/NPN.js
index d44e9310..18dd01a7 100644
--- a/js/Electrical/NPN.js
+++ b/js/Electrical/NPN.js
@@ -1,3 +1,72 @@
-Syntax error in input LexToken(VAR,'D',1,2509)
/* autogenerated from "macros/Electrical/NPN.sci" */
-None
+function NPN() {
+NPN.prototype.get = function NPN() {
+}
+NPN.prototype.set = function NPN() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+x=arg1;
+exprs=x.graphics.exprs;
+while (true) {
+[ok,Bf,Br,Is,Vak,Tauf,Taur,Ccs,Cje,Cjc,Phie,Me,Phic,Mc,Gbc,Gbe,Vt,EMinMax,exprs]=scicos_getvalue(["Set NPN block parameters:",""],["Bf : Forward beta","Br : Reverse beta","Is : Transport saturation current","Vak : Early voltage (inverse), 1/Volt","Tauf: Ideal forward transit time","Taur: Ideal reverse transit time","Ccs : Collector-substrat(ground) cap.","Cje : Base-emitter zero bias depletion cap.","Cjc : Base-coll. zero bias depletion cap.","Phie: Base-emitter diffusion voltage","Me : Base-emitter gradation exponent","Phic: Base-collector diffusion voltage","Mc : Base-collector gradation exponent","Gbc : Base-collector conductance","Gbe : Base-emitter conductance","Vt : Voltage equivalent of temperature","EMinmax: if x > EMinMax, the exp(x) is linearized"],list("vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+x.model.equations.parameters[2-1]=list(Bf,Br,Is,Vak,Tauf,Taur,Ccs,Cje,Cjc,Phie,Me,Phic,Mc,Gbc,Gbe,Vt,EMinMax);
+x.graphics.exprs=exprs;
+break
+}
+}
+NPN.prototype.define = function NPN() {
+ModelName="NPN";
+PrametersValue=[50,0.1,0,0.02,1.200e-10,5.000e-09,1.000e-12,4.000e-13,5.000e-13,0.8,0.4,0.8,0.333,1.000e-15,1.000e-15,0.02585,40];
+ParametersName=["Bf","Br","Is","Vak","Tauf","Taur","Ccs","Cje","Cjc","Phie","Me","Phic","Mc","Gbc","Gbe","Vt","EMinMax"];
+model=scicos_model();
+Typein=[];
+Typeout=[];
+MI=[];
+MO=[];
+P=[100,90,-2,0,0,50,2,0,100,10,-2,0];
+PortName=["C","B","E"];
+for(i=1;i<=size(P,"r");i+=1) {
+if (P(i,3)==1) {
+Typein=[Typein,"E"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==2) {
+Typein=[Typein,"I"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==-1) {
+Typeout=[Typeout,"E"];
+MO=[MO,PortName(i)];
+}
+if (P(i,3)==-2) {
+Typeout=[Typeout,"I"];
+MO=[MO,PortName(i)];
+}
+}
+model=scicos_model();
+mo=modelica();
+model.sim=ModelName;
+mo.inputs=MI;
+mo.outputs=MO;
+model.rpar=PrametersValue;
+mo.parameters=list(ParametersName,PrametersValue,zeros(ParametersName));
+exprs=["50","0.1","1.e-16","0.02","0.12e-9","5e-9","1e-12","0.4e-12","0.5e-12","0.8","0.4","0.8","0.333","1e-15","1e-15","0.02585","40"];
+gr_i=[];
+model.blocktype="c";
+model.dep_ut=[None,true];
+mo.model=ModelName;
+model.equations=mo;
+model.in1=ones(size(MI,"*"),1);
+model.out=ones(size(MO,"*"),1);
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=Typein;
+x.graphics.out_implicit=Typeout;
+}
+NPN.prototype.details = function NPN() {
+}
+}
diff --git a/js/Electrical/PNP.js b/js/Electrical/PNP.js
index 3afdf184..a6201f02 100644
--- a/js/Electrical/PNP.js
+++ b/js/Electrical/PNP.js
@@ -1,3 +1,72 @@
-Syntax error in input LexToken(VAR,'D',1,2520)
/* autogenerated from "macros/Electrical/PNP.sci" */
-None
+function PNP() {
+PNP.prototype.get = function PNP() {
+}
+PNP.prototype.set = function PNP() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+x=arg1;
+exprs=x.graphics.exprs;
+while (true) {
+[ok,Bf,Br,Is,Vak,Tauf,Taur,Ccs,Cje,Cjc,Phie,Me,Phic,Mc,Gbc,Gbe,Vt,EMinMax,exprs]=scicos_getvalue(["Set PNP block parameters:",""],["Bf : Forward beta","Br : Reverse beta","Is : Transport saturation current","Vak : Early voltage (inverse), 1/Volt","Tauf: Ideal forward transit time","Taur: Ideal reverse transit time","Ccs : Collector-substrat(ground) cap.","Cje : Base-emitter zero bias depletion cap.","Cjc : Base-coll. zero bias depletion cap.","Phie: Base-emitter diffusion voltage","Me : Base-emitter gradation exponent","Phic: Base-collector diffusion voltage","Mc : Base-collector gradation exponent","Gbc : Base-collector conductance","Gbe : Base-emitter conductance","Vt : Voltage equivalent of temperature","EMinMax: if x > EMinMax, the exp(x) function is linearized"],list("vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+x.model.equations.parameters[2-1]=list(Bf,Br,Is,Vak,Tauf,Taur,Ccs,Cje,Cjc,Phie,Me,Phic,Mc,Gbc,Gbe,Vt,EMinMax);
+x.graphics.exprs=exprs;
+break
+}
+}
+PNP.prototype.define = function PNP() {
+ModelName="PNP";
+PrametersValue=[50,0.1,0,0.02,1.200e-10,5.000e-09,1.000e-12,4.000e-13,5.000e-13,0.8,0.4,0.8,0.333,1.000e-15,1.000e-15,0.02585,40];
+ParametersName=["Bf","Br","Is","Vak","Tauf","Taur","Ccs","Cje","Cjc","Phie","Me","Phic","Mc","Gbc","Gbe","Vt","EMinMax"];
+model=scicos_model();
+Typein=[];
+Typeout=[];
+MI=[];
+MO=[];
+P=[100,90,-2,0,0,50,2,0,100,10,-2,0];
+PortName=["C","B","E"];
+for(i=1;i<=size(P,"r");i+=1) {
+if (P(i,3)==1) {
+Typein=[Typein,"E"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==2) {
+Typein=[Typein,"I"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==-1) {
+Typeout=[Typeout,"E"];
+MO=[MO,PortName(i)];
+}
+if (P(i,3)==-2) {
+Typeout=[Typeout,"I"];
+MO=[MO,PortName(i)];
+}
+}
+model=scicos_model();
+mo=modelica();
+model.sim=ModelName;
+mo.inputs=MI;
+mo.outputs=MO;
+model.rpar=PrametersValue;
+mo.parameters=list(ParametersName,PrametersValue,zeros(ParametersName));
+exprs=["50","0.1","1.e-16","0.02","0.12e-9","5e-9","1e-12","0.4e-12","0.5e-12","0.8","0.4","0.8","0.333","1e-15","1e-15","0.02585","40"];
+gr_i=[];
+model.blocktype="c";
+model.dep_ut=[None,true];
+mo.model=ModelName;
+model.equations=mo;
+model.in1=ones(size(MI,"*"),1);
+model.out=ones(size(MO,"*"),1);
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=Typein;
+x.graphics.out_implicit=Typeout;
+}
+PNP.prototype.details = function PNP() {
+}
+}