Team:Groningen/Modelling/model/calc.js
From 2009.igem.org
(Difference between revisions)
(Refresh graph) |
m |
||
Line 107: | Line 107: | ||
} | } | ||
- | + | setOutput(ModelAnswer, AsIn[4]); | |
var modelDataNode = document.getElementById("modelData"); | var modelDataNode = document.getElementById("modelData"); | ||
modelDataNode.data = data; | modelDataNode.data = data; |
Revision as of 10:25, 26 August 2009
function calc(){
// gets input var growthFactorNode = document.getElementById("growthFactor");
// reads input var growthFactor = Number(growthFactorNode.value); // begin variable var time = 0; var x = 0; var y = 0; arrValueX = new Array(); arrValueY = new Array();
// process var growthFactor = growthFactor + 1; for (var time = 0; time < 30; time++) { var y = growthFactor*x*x; var x = x + 1; arrValueX.push(x); arrValueY.push(y); }
// Set outputs setOutput(growthFactorAnswer, growthFactor ); document.getElementById('growthFactorGraph').refresh();
}
function setOutput(node,v) {
node.innerHTML = formatNumberToHTML(v); node.value = v;
}
function formatNumberToHTML(v,p) {
if (p===undefined) p = 5; return v.toPrecision(p) .replace(/e\+([0-9]+)$/i,'·10$1') .replace(/e\-([0-9]+)$/i,'·10-$1');
}
// ------ Annelies timer functie ---------
// function tijd(){ // setTimeout( "doSomething()", 3000 ); // }
// function doSomething(){ // if (doSomething.time === undefined) { // doSomething.time = 0; // } // // // Set outputs // setOutput(tijdAnswer, doSomething.time); // doSomething.time += 1; // // if (doSomething.time<=100) setTimeout( "doSomething()", 3000 ); // }
// -------- transport ----------
// var myCars=new Array();
function transport(){
// variablen var data = {time: [0], AsIn: [0], ArsB: [5], AsEx: [5], GlpF: [5], GlpFAs: [0], ArsBAs: [0]};
// constanten
var totalTime = 300; var stepSize = 3; var K5on = 1; var K5off =2; var K6 = 3; var Vc = 4; var Vs = 5; var K7on = 6; var K7off = 7; var K8 = 8;
var N = totalTime / stepSize ;
for (var i=1;i<=N;i++){ data.GlpFAs[i] = data.GlpFAs[i-1] + stepSize * (K5on * data.AsEx[i-1] * data.GlpF[i-1] - (K5off + K6) * data.GlpFAs[i-1]); data.AsEx[i] = data.AsEx[i-1] + stepSize * (-K5on * data.AsEx[i-1] * data.GlpF[i-1] + K5off * data.GlpFAs[i-1] + (Vc/Vs) * K8 * data.ArsBAs[i-1]); data.GlpF[i] = data.GlpF[i-1] + stepSize * (-(K5on * data.AsEx[i-1] * data.GlpF[i-1] - (K5off + K6) * data.GlpFAs[i-1])); data.ArsBAs[i] = data.ArsBAs[i-1] + stepSize * (K7on * data.AsIn[i-1] * data.ArsB[i-1] - (K7off+K8) * data.ArsBAs[i-1]); data.AsIn[i] = data.AsIn[i-1] + stepSize * (-K7on * data.AsIn[i-1] * data.ArsB[i-1] - (K7off + K8) * data.ArsBAs[i-1] - K8 * data.ArsBAs[i-1] + (Vs/Vc) * K6 * data.GlpFAs[i-1]); data.ArsB[i] = data.ArsB[i-1] + stepSize * (-(K7on * data.AsIn[i-1] * data.ArsB[i-1] - (K7off + K8) * data.ArsBAs[i-1])); data.time[i] = data.time[i-1] + stepSize; }
setOutput(ModelAnswer, AsIn[4]); var modelDataNode = document.getElementById("modelData"); modelDataNode.data = data;
document.getElementById("growthFactorGraph").refresh();
}