var GDZone = [ { "text": "一级地区有套管穿越三、四级公路的管道", "ID": "0.72" }, { "text": "一级地区无套管穿越三、四级公路的管道", "ID": "0.6" }, { "text": "一级地区有套管穿越一、二级公路、高速公路、铁路的管道", "ID": "0.6" }, { "text": "一级地区输气站内及其200米内,截断阀室及其50米内的管道", "ID": "0.5" }, { "text": "一级地区人群聚集场所的管道", "ID": "0.5" }, { "text": "二级地区有套管穿越三、四级公路的管道", "ID": "0.6" }, { "text": "二级地区无套管穿越三、四级公路的管道", "ID": "0.5" }, { "text": "二级地区有套管穿越一、二级公路、高速公路、铁路的管道", "ID": "0.6" }, { "text": "二级地区输气站内及其200米内,截断阀室及其50米内的管道", "ID": "0.5" }, { "text": "二级地区人群聚集场所的管道", "ID": "0.5" }, { "text": "三级地区有套管穿越三、四级公路的管道", "ID": "0.5" }, { "text": "三级地区无套管穿越三、四级公路的管道", "ID": "0.5" }, { "text": "三级地区有套管穿越一、二级公路、高速公路、铁路的管道", "ID": "0.5" }, { "text": "三级地区输气站内及其200米内,截断阀室及其50米内的管道", "ID": "0.5" }, { "text": "三级地区人群聚集场所的管道", "ID": "0.5" }, { "text": "四级地区有套管穿越三、四级公路的管道", "ID": "0.4" }, { "text": "四级地区无套管穿越三、四级公路的管道", "ID": "0.4" }, { "text": "四级地区有套管穿越一、二级公路、高速公路、铁路的管道", "ID": "0.4" }, { "text": "四级地区输气站内及其200米内,截断阀室及其50米内的管道", "ID": "0.4" }, { "text": "四级地区人群聚集场所的管道", "ID": "0.4" } ] var HjgyXS = [ { "text": "手工电弧焊", "ID": "0.7" }, { "text": "有垫环对焊焊接", "ID": "0.9" }, { "text": "无垫环对焊焊接", "ID": "0.7" }, { "text": "手工双面加强焊接", "ID": "0.95" }, { "text": "自动双面焊接", "ID": "1.0" }, { "text": "自动单面焊接", "ID": "0.8" }] var TZXS = [ { "text": "干沙土", "ID": "1.0" }, { "text": "很湿的沙土", "ID": "3.0" }, { "text": "潮湿的粘土", "ID": "1.35" }, { "text": "无法确定", "ID": "1.5" }, ] var TZXS = [ { "text": "10#钢", "ID": "205" }, { "text": "20#钢", "ID": "245" }, { "text": "16Mn钢", "ID": "345" }, { "text": "09MnV钢", "ID": "295" }, { "text": "A3F钢", "ID": "240" }, ] var SQGYJSCS = [ { "text": "输气能力(m³/d)", "ID": "0" }, { "text": "管道内径(mm)", "ID": "1" }, { "text": "管道长度(km)", "ID": "2" }, { "text": "起点表压力(MPa)", "ID": "3" }, { "text": "终点表压力(MPa)", "ID": "4" }, { "text": "管存量(m³)", "ID": "5" }, ] var SQGYJSGS = [ { "text": "威莫斯公式", "ID": "0" }, { "text": "潘汉德尔修正公式", "ID": "1" }, { "text": "前苏联早期公式", "ID": "2" }, { "text": "前苏联近期公式", "ID": "3" }, //{ "text": "终点压力", "ID": "4" }, ] var SQGLX = [ { "text": "水平输气管", "ID": "0" }, { "text": "地形起伏输气管", "ID": "1" }, //{ "text": "管道长度", "ID": "2" }, //{ "text": "起点压力", "ID": "3" }, //{ "text": "终点压力", "ID": "4" }, ] //pipeDw //pipeBH //pipeL //startP //endP //flowSQ //XDMD //Zf //Tavg function SQGYJS(jsCS, JSGS, par) { //alert(JSON.stringify(par)); var Dn = (parseFloat(par.pipeDw) - 2 * parseFloat(par.pipeBH)) / 10; var result = 0; try { var Ps = parseFloat(par.startP) + 0.101325; } catch (e) { } try { var Pe = parseFloat(par.endP) + 0.101325; } catch (e) { } var RD = parseFloat(par.XDMD); var T = parseFloat(par.Tavg) + 273.15; var L = parseFloat(par.pipeL); var Z = parseFloat(par.Zf); var Zn = parseFloat(par.Zn); var Q = parseFloat(par.flowSQ); var Exlxs = XLXS(parseFloat(par.pipeDw)); //alert(Ps + "_" + Pe + "_" + RD + "_" + T + "_" + L + "_" + Z + "_" + Dn+ "_" + Q); switch (jsCS) { case "0": //输气能力 var ZRDTL = Z * RD * T * L; var ZRDTL051 = Z * Math.pow(RD, 0.961) * T * L; var PowZRDTL05 = Math.pow(ZRDTL, 0.5); var PowZRDTL051 = Math.pow(ZRDTL051, 0.51); var powDn83 = Math.pow(Dn, 8 / 3); var powDn253 = Math.pow(Dn, 2.53); var powDn27 = Math.pow(Dn, 2.7); var powDn26 = Math.pow(Dn, 2.6); var powPsPe05 = Math.pow((Ps * Ps - Pe * Pe), 0.5); var powPsPe051 = Math.pow((Ps * Ps - Pe * Pe), 0.51); switch (JSGS) { case "0": //10.8432=5033/10^(8/3) result = 5033 * powDn83 * powPsPe05 / PowZRDTL05; break; case "1": //24.8244=11522/10^(8/3) //alert(Exlxs + "_" + powDn253 + "_" + powPsPe051 + "_" + PowZRDTL051 + "_" + L + "_" + Z + "_" + Dn + "_" + Q); result = 11522 * Exlxs * powDn253 * powPsPe051 / PowZRDTL051; break; case "2": //24.8244=11522/10^(8/3) result = 4464.2 * powDn27 * powPsPe05 / PowZRDTL05; break; case "3": //24.8244=11522/10^(8/3) result = 6775.6 * Exlxs * 1 * powDn26 * powPsPe05 / PowZRDTL05; break; default: } break; case "1": //管道内径计算 var ZRDTL = Z * RD * T * L; var ZRDTL051 = Z * Math.pow(RD, 0.961) * T * L; var PowZRDTL05 = Math.pow(ZRDTL, 0.5); var PowZRDTL051 = Math.pow(ZRDTL051, 0.51); var powPsPe05 = Math.pow((Ps * Ps - Pe * Pe), 0.5); var powPsPe051 = Math.pow((Ps * Ps - Pe * Pe), 0.51); switch (JSGS) { case "0": //10.8432=5033/10^(8/3) result = Math.pow(Q / (5033 * powPsPe05 / PowZRDTL05), 3 / 8) * 10; //* Math.pow(Dn, 8 / 3) break; case "1": //24.8244=11522/10^(8/3) //result = Math.pow(Q / (11522 * powPsPe051 / PowZRDTL051), 1 / 2.53)*10; //* Math.pow(Dn, 2.53) //Exlxs = XLXS(parseFloat(result)); result = Math.pow(Q / (11522 * Exlxs * powPsPe051 / PowZRDTL051), 1 / 2.53) * 10; //* Math.pow(Dn, 2.53) break; case "2": //24.8244=11522/10^(8/3) result = Math.pow(Q / (4464.2 * powPsPe05 / PowZRDTL05), 1 / 2.7) * 10; //* Math.pow(Dn, 2.7) break; case "3": //24.8244=11522/10^(8/3) result = Math.pow(Q / (6775.6 * Exlxs * 1 * powPsPe05 / PowZRDTL05), 1 / 2.6) * 10; //* Math.pow(Dn, 2.6) break; default: } break; case "2": //管道长度 var ZRDTL = Z * RD * T; var ZRDTL051 = Z * Math.pow(RD, 0.961) * T; var PowZRDTL05 = Math.pow(ZRDTL, 0.5); var PowZRDTL051 = Math.pow(ZRDTL051, 0.51); var powDn83 = Math.pow(Dn, 8 / 3); var powDn253 = Math.pow(Dn, 2.53); var powDn27 = Math.pow(Dn, 2.7); var powDn26 = Math.pow(Dn, 2.6); var powPsPe05 = Math.pow((Ps * Ps - Pe * Pe), 0.5); var powPsPe051 = Math.pow((Ps * Ps - Pe * Pe), 0.51); switch (JSGS) { case "0": //10.8432=5033/10^(8/3) result = Math.pow(5033 * powDn83 * powPsPe05 / PowZRDTL05 / Q, 2); break; case "1": //24.8244=11522/10^(8/3) result = Math.pow(11522 * Exlxs * powDn253 * powPsPe051 / PowZRDTL051 / Q, 1 / 0.51); break; case "2": //24.8244=11522/10^(8/3) result = Math.pow(4464.2 * powDn27 * powPsPe05 / PowZRDTL05 / Q, 2); break; case "3": //24.8244=11522/10^(8/3) result = Math.pow(6775.6 * Exlxs * 1 * powDn26 * powPsPe05 / PowZRDTL05 / Q, 2); break; default: } break; case "3": //起点压力 var ZRDTL = Z * RD * T * L; var ZRDTL051 = Z * Math.pow(RD, 0.961) * T * L; var PowZRDTL05 = Math.pow(ZRDTL, 0.5); var PowZRDTL051 = Math.pow(ZRDTL051, 0.51); var powDn83 = Math.pow(Dn, 8 / 3); var powDn253 = Math.pow(Dn, 2.53); var powDn27 = Math.pow(Dn, 2.7); var powDn26 = Math.pow(Dn, 2.6); //var powPsPe05 = Math.pow((Ps * Ps - Pe * Pe), 0.5); //var powPsPe051 = Math.pow((Ps * Ps - Pe * Pe), 0.51); switch (JSGS) { case "0": //10.8432=5033/10^(8/3) result = Math.sqrt(Math.pow(Q / (5033 * powDn83 / PowZRDTL05), 2) + Pe * Pe); break; case "1": //24.8244=11522/10^(8/3) result = Math.sqrt(Math.pow(Q / (11522 * Exlxs * powDn253 / PowZRDTL051), 1 / 0.51) + Pe * Pe);; break; case "2": //24.8244=11522/10^(8/3) result = Math.sqrt(Math.pow(Q / (4464.2 * powDn27 / PowZRDTL05), 2) + Pe * Pe); break; case "3": //24.8244=11522/10^(8/3) result = Math.sqrt(Math.pow(Q / (6775.6 * Exlxs * 1 * powDn26 / PowZRDTL05), 2) + Pe * Pe); break; default: } result = result - 0.101325; break; case "4": //终点压力 var ZRDTL = Z * RD * T * L; var ZRDTL051 = Z * Math.pow(RD, 0.961) * T * L; var PowZRDTL05 = Math.pow(ZRDTL, 0.5); var PowZRDTL051 = Math.pow(ZRDTL051, 0.51); var powDn83 = Math.pow(Dn, 8 / 3); var powDn253 = Math.pow(Dn, 2.53); var powDn27 = Math.pow(Dn, 2.7); var powDn26 = Math.pow(Dn, 2.6); //var powPsPe05 = Math.pow((Ps * Ps - Pe * Pe), 0.5); //var powPsPe051 = Math.pow((Ps * Ps - Pe * Pe), 0.51); switch (JSGS) { case "0": //10.8432=5033/10^(8/3) result = Math.sqrt(Ps * Ps - Math.pow(Q / (5033 * powDn83 / PowZRDTL05), 2)); break; case "1": //24.8244=11522/10^(8/3) result = Math.sqrt(Ps * Ps - Math.pow(Q / (11522 * Exlxs * powDn253 / PowZRDTL051), 1 / 0.51)); break; case "2": //24.8244=11522/10^(8/3) result = Math.sqrt(Ps * Ps - Math.pow(Q / (4464.2 * powDn27 / PowZRDTL05), 2)); break; case "3": //24.8244=11522/10^(8/3) result = Math.sqrt(Ps * Ps - Math.pow(Q / (6775.6 * Exlxs * 1 * powDn26 / PowZRDTL05), 2)); break; default: } result = result - 0.101325; break; case "5": //管存量 var V = 3.1415926 * Dn * Dn * L * 1000 / 40000; //alert(Dn +"_"+V); result = V * ((Ps + Pe) / 2) * Zn * 293.15 / Z / T / 0.101325; default: } //alert(result); return result; } function XLXS(pipeDNJ) { var pD = parseFloat(pipeDNJ); //alert(pD); if (pD > 0 & pD < 300) { return 0.84; } else if (pD >= 300 & pD < 400) { return 0.85; } else if (pD >= 400 & pD < 500) { return 0.84; } else if (pD >= 500 & pD < 600) { return 0.87; } else if (pD >= 700 & pD < 800) { return 0.9; } else if (pD >= 800 & pD < 1000) { return 0.91; } else { return 0.85; } }