09.12.2014, 01:26
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
DeV1doR,
вы про input ?
|
|
09.12.2014, 01:51
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
|
|
09.12.2014, 02:19
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
DeV1doR,
код как пример ... в целом нуждается в оптимизации и структурировании
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
div {
float: left;
width: 33%;
height: 100%;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/adapters/standalone-framework.js"></script>
<script type="text/javascript">
var Q, D, T, AIR, AF, AW;
var AR = new Array(8);
function myFunctionCPT(q,d) {
D = d;
Q = q;
var arr = [];
for (T = -800; T < 1601; T += 400) {
AIR = [0.238785488, -0.00900857881, 0.0193221258, 0.132711466, -0.190166916, 0.10379398, -0.0258490883, 0.00245365952];
AF = [0.367102859, 0.384334584, 0.190633867, -0.361766882, 0.263417998, -0.112618047, 0.0257271586, -0.00237417234];
AW = [0.4700077, -0.3206047, 1.196138, 1.728544, 1.55052, -0.8291961, 0.237057, -0.02773743];
for (var i = 0; i < 8; i++) {
AR[i] = (AIR[i] + Q * AF[i] + D * AW[i]) / (1 + Q + D);
}
R = T / 1000;
CPTA = 94 * Q / (1 + Q + D);
B = R * (AR[0] + R * (AR[1] / 2 + R * (AR[2] / 3 + R * (AR[3] / 4 + R * (AR[4] / 5 + R * (AR[5] / 6 + R * (AR[6] / 7 + R * AR[7] / 8)))))));
CPT = CPTA + B * 1000;
arr.push(CPT);
document.getElementById('show').innerHTML += 'CPT: ' + CPT.toFixed(3) + ' T : ' + T + 'K' + '<br>' + '<br>'; //document.write();
}
return {
data: arr,
name: 'd=' + D + '; q=' + Q,
type: 'spline'
}
}
var series = [];
function plotGraph(form) {
var q = +form.q.value, d = +form.d.value ;
form.q.value = '';
form.d.value = '';
series.push(myFunctionCPT(q,d));
$('#CPT-T').highcharts({
title: {
text: 'График CPT-T'
},
xAxis: {
categories: [-800, -400, 0, 400, 800, 1200, 1600]
},
series: series
});
return false
}
</script>
</head>
<body>
<form action="http://" onsubmit="return plotGraph(this)">
<label><input name="q">q</label>
<label><input name="d">d</label>
<input type="submit" value="ok" />
</form>
<div id="CPT-T"></div>
<div id="show"></div>
</body>
</html>
|
|
09.12.2014, 16:08
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
рони,
непонятно, буду прошариваться))) я ссылки хотел, сам сделать, а потом, спросить, если будет совсем непонятно.
Последний раз редактировалось DeV1doR, 09.12.2014 в 16:10.
|
|
09.12.2014, 18:08
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
|
|
09.12.2014, 18:11
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
DeV1doR,
дорогу осилит идущий ... не секрет что хоть считали, что график отражает?
|
|
09.12.2014, 19:28
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
рони,
это одна из подпрограмм из Фортрана, нелинейной математической модели рабочего процесса ГТУ (Газотурбинная установка), название ее TERT. Здесь, я взял только ее часть, которая описывает Энтальпию от Температуры в ГТУ. В фортране разбираться и делать графики, автоматизацию впадло, и учить его нету смысла(преподу хрен обьясниш). Препод просил график сделать, график то я сделал, а вот, как сделать автоматизированный, сделать пока для меня трудновато. Обидно, что до некоторого сам не додумался(вроде, как все просто), но...думаю прошарусь когда-то. Если будет интересно, скинул фотки от этой программы(архив не бросается(), посмотрите.
Изображения:
|
-_T2_3epjpI.jpg (118.1 Кб, 1 просмотров) |
|
aawel3RmtHg.jpg (120.0 Кб, 1 просмотров) |
|
fe6CCf4B2mc.jpg (136.2 Кб, 0 просмотров) |
|
g3IiFxb-kLQ.jpg (102.5 Кб, 1 просмотров) |
|
G5_xxLoHB_M.jpg (90.4 Кб, 0 просмотров) |
|
muzF46RGB1g.jpg (81.8 Кб, 0 просмотров) |
|
PlY0HwZ_xAk.jpg (109.2 Кб, 0 просмотров) |
|
pnGwEIrV1Mc.jpg (86.8 Кб, 0 просмотров) |
|
qKcqnmfMu9Q.jpg (110.6 Кб, 0 просмотров) |
|
RfFzCl5n-NM.jpg (134.9 Кб, 0 просмотров) |
Последний раз редактировалось DeV1doR, 09.12.2014 в 20:00.
|
|
09.12.2014, 22:57
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
рони,
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
.pr {
float: left;
width: 100%;
height: 100%;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/adapters/standalone-framework.js"></script>
<script type="text/javascript" src="http://www.highcharts.com/media/com_demo/highslide-full.min.js"></script>
<script type="text/javascript">
var Q, D, T, AIR, AF, AW;
var AR = new Array(8);
function myFunctionCPT(q,d) {
D=d;
Q=q;
var arr = [];
for (T = -800; T < 1601; T += 400) {
AIR = [0.238785488, -0.00900857881, 0.0193221258, 0.132711466, -0.190166916, 0.10379398, -0.0258490883, 0.00245365952];
AF = [0.367102859, 0.384334584, 0.190633867, -0.361766882, 0.263417998, -0.112618047, 0.0257271586, -0.00237417234];
AW = [0.4700077, -0.3206047, 1.196138, 1.728544, 1.55052, -0.8291961, 0.237057, -0.02773743];
for (var i=0; i<8; i++) {
AR[i]=(AIR[i]+Q*AF[i]+D*AW[i])/(1+Q+D);
}
R=T/1000;
CPTA=94*Q/(1+Q+D);
B=R*(AR[0]+R*(AR[1]/2+R*(AR[2]/3+R*(AR[3]/4+R*(AR[4]/5+R*(AR[5]/6+R*(AR[6]/7+R*AR[7]/8)))))));
CPT=CPTA+B*1000;
arr.push(CPT);
}
return {
data: arr,
name: 'q=' + Q + '; d=' + D,
color: RandColor(),
type: 'spline',
}
}
var series = [];
function plotGraph(form) {
var q = +form.q.value, d = +form.d.value;
form.q.value = '';
form.d.value = '';
series.push(myFunctionCPT(q,d));
$('#CPT-T').highcharts({
title: {
text: 'Graph CPT-T',
x: -20 //center
},
xAxis: {
title: {
text: 'Enthalpy'
},
categories: ['-800', '-400', '0', '400', '800', '1200', '1600'],
},
yAxis: {
title: {
text: 'Temperature (K)',
}
},
series: series
});
return false;
}
function RandColor() {
var r=Math.floor(Math.random() * (256));
var g=Math.floor(Math.random() * (256));
var b=Math.floor(Math.random() * (256));
var rgb='#' + r.toString(16) + g.toString(16) + b.toString(16);
return rgb;
}
</script>
</head>
<body>
<form action="http://" onsubmit="return plotGraph(this)">
<label>Input <b>q</b> value <input name="q"></label>
<label>Input <b>d</b> value <input name="d"></label>
<input type="submit" value="ok" />
</form>
<div id="CPT-T" class="pr"></div>
</body>
</html>
какой-то баг, иногда, вместо сплайнов строятся просто точки, в чем причина?
|
|
09.12.2014, 23:10
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
DeV1doR,
запятая лишняя 43 строка - пока это только могу сказать ... возможно неправильный генератор цвета
|
|
09.12.2014, 23:21
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
DeV1doR,
строка 78
var rgb='rgb('+r+','+g+','+b+')';
|
|
|
|