<!--
	//Windowオブジェクト
	var myWin;
	//ドキュメントオブジェクト
	var obj = document;
	// 右クリック禁止
	document.oncontextmenu=invalidRButton;
	function invalidRButton() { return false; }
	// 一部のキー操作を無効にする
	document.onkeydown = checkFunc;
	function checkFunc(){
		var cd = event.keyCode;
		if (											//BackSpace
			((event.altKey)&&(cd >= 37)&&(cd <= 40)))	//Alt+矢印
			window.event.returnValue = false;
	}
	/********************************************************************************
		日阪製作所　Web-Simulator
			public JavaScript Function
		<< 指定URLを子画面表示 >>
			function  : void win_op(str,int,int)
			Author    : DSK O.Fujiwara
			Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function win_op(url,w,h){
		if(myWin && myWin.closed == false){
			myWin.close();
		}
		myWin = window.open(url,"mywin",'location=no,resizable=no,scrollbars=yes,toolbar=no,width=' + w + ',height=' + h);
	}
	/********************************************************************************
		日阪製作所　Web-Simulator
			public JavaScript Function
		<< 指定URLを子画面表示 >>
			function  : void win_op(str,int,int)
			Author    : DSK O.Fujiwara
			Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function sendwin_op(url,w,h){
		if(myWin && myWin.closed == false){
			myWin.close();
		}
		myWin = window.open(url,"mywin",'location=no,resizable=no,scrollbars=yes,toolbar=no,top=300,left=300,width=' + w + ',height=' + h);
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
			public JavaScript Function
		<< 計算エラー時確認プロンプト表示 >>
			function  : void help3confirm()
			Author    : DSK O.Fujiwara
			Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function help3confirm(){
		if(confirm('「Web-Simulatorでは計算できません」\r\n\r\n「見積依頼」ボタンにて日阪に依頼を行うか、設計条件を再度チェックして下さい。\r\n\r\nエラーの詳細を確認しますか？')){
//			win_op('EstimatedHelp.php#err3?3',800,400);
			win_op('EstimatedHelp3.php',800,400);
		}
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
			public JavaScript Function
		<< 入力値を逐次表示 >>
			function  : void crossArrw(str,obj)
			Author    : DSK O.Fujiwara
			Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function crossArrw(thisval,nextobj){
		obj.getElementById(nextobj).value=thisval;
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
			public JavaScript Function
		<< 表示させるヘルプの振り分け >>
			function  : void div_help_controll(int)
			Author    : DSK O.Fujiwara
			Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function div_help_controll(num){
		if(num=="?1"){
			obj.getElementById('help2').style.display = "none";
			obj.getElementById('help3').style.display = "none";
		}
		else if(num=="?2"){
			obj.getElementById('help1').style.display = "none";
			obj.getElementById('help3').style.display = "none";
		}
		else if(num=="?3"){
			obj.getElementById('help1').style.display = "none";
			obj.getElementById('help2').style.display = "none";
		}
	
	}
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << スクリプト上での計算誤差修正 >>
	      function  : float demicalFloat(float,float,char)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function demicalFloat(numberA,numberB,type)
	{
		var h=(type=="*")? "+":"-";
		var c=[get(numberA),get(numberB)];
		var A=c[0][1];
		var B=c[1][1];
		var pointA=c[0][0];
		var pointB=c[1][0];
		
		if (type=="*" || type=="/")
		{
			var k1=eval("numberA"+type+"numberB");
			var k2=eval("(A"+type+"B)");
			if (get(k1)[1]==k2) return k1;
			else return (pointA+pointB==0? k1:eval(k2+"/Math.pow(10,pointA"+h+"pointB)"));
		}
		else if (type=="+" || type=="-")
		{
			var pointL=pointA;
			if (pointA<pointB) pointL=pointB;
			numberA=demicalFloat(numberA,Math.pow(10,pointL),"*");
			numberB=demicalFloat(numberB,Math.pow(10,pointL),"*");
			return eval("numberA"+type+"numberB")/Math.pow(10,pointL);
		}
		else return "[ Can't calculate! ]"
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << スクリプト上での計算誤差修正 >>
	      function  : float get(float)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function get(number)
	{
		number=""+number;
		if (number.indexOf(".")==-1) return [0,parseInt(number)];
		var po=number.split(".")[1].length;
		var st=number.split(".").join("");
		for (var i=0;i<st.length;i++) if (st.charAt(0)=="0") st=st.substr(1,st.length);
		return [po,parseInt(st)];
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 数値チェック >>
	      function  : bool number_chk(char)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function number_chk(str){
		if(str == ""){
			return false;
		}
		
		if(isNaN(str) == true){
			return false;
		}

		return true;
	}


	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 交換熱量計算 >>
	      function  : float demicalFloat()
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function Kw_calculate(){
		H1 = obj.getElementById('heigh_in').value;	//高温　入口温度
		H2 = obj.getElementById('heigh_out').value;	//高温　出口温度
		HW = obj.getElementById('heigh_m3').value;	//高温　流量
		LO1 = obj.getElementById('low_in').value;		//低温　入口温度
		LO2 = obj.getElementById('low_out').value;		//低温　出口温度
		LOW = obj.getElementById('low_m3').value;		//低温　流量

		HFLOW = obj.getElementById('height_flow').value;	//高温　流体
		LFLOW = obj.getElementById('low_flow').value;		//低温　流体

		HHI = new Array();
		LCI = new Array();
		HHI = HFLOW.split(",");
		LCI = LFLOW.split(",");

		GHI = demicalFloat(HHI[1],1000,'*');
		CHI = HHI[2];
		GCI = demicalFloat(LCI[1],1000,'*');
		CCI = LCI[2];

		if(H1 != "" && H2 != "" && HW != "" && LO1 != "" && LO2 != "" && LOW != ""){
			Q1f = demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),HW,'*'),GHI,'*'),CHI,'*'),3600,'/');
			Q1 = Math.round(Q1f);
			//Q1 = (H1-H2)*HW*1000*4.186/3600;
			Q2f = demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(LO2,LO1,'-'),LOW,'*'),GCI,'*'),CCI,'*'),3600,'/');
			Q2 = Math.round(Q2f);
			//Q2 = (LO2-LO1)*LW*1000*4.186/3600;
			obj.getElementById('heigh_kw_f').value=Q1f;
			obj.getElementById('low_kw_f').value=Q2f;
			obj.getElementById('heigh_kw').value=Q1;
			obj.getElementById('low_kw').value=Q2;
		}
		else{
			obj.getElementById('heigh_kw_f').value="";
			obj.getElementById('low_kw_f').value="";
			obj.getElementById('heigh_kw').value="";
			obj.getElementById('low_kw').value="";
		}
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 圧力損失設定 >>
	      function  :
	        Author    : H.Kobayashi
	        Date      : 2008/07
			Update    :
	**********************************************************************************/	
	function Mpa_set(kbn){
		
		//--交換熱量計算--
		Kw_calculate()
		
		var ITEM	//選択されている流体名
		var CONTROL	//値を変更するコントロール名
		
		switch(kbn){
			case 1:
				ITEM = obj.f1.height_flow.options[obj.f1.height_flow.selectedIndex].text;
				CONTROL = 'heigh_mpa';
				break;
			case 2:
				ITEM = obj.f1.low_flow.options[obj.f1.low_flow.selectedIndex].text;
				CONTROL = 'low_mpa';
				break;
			default:
				return;
		}
		
		//--選択した流体で圧力損失を設定する--
		if(ITEM.search(/vg/i) == 0){
			//流体名にVGがあれば圧力損失 = 0.1Mpa
			//但し入力値 < 0.1の場合のみ
			if(obj.getElementById(CONTROL).value.length == 0){
				obj.getElementById(CONTROL).value="0.1";
			}
			else{
				HMPA = eval(obj.getElementById(CONTROL).value);
				if(HMPA < 0.1){
					obj.getElementById(CONTROL).value="0.1";
				}
			}
		}
		else{
			//その他 圧力損失 = 0.05
			obj.getElementById(CONTROL).value="0.05";
		}
	
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 交換熱量差（絶対値） >>
	      function  : float netsuryo_sa(float,float);
		  return	: true/false
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function netsuryo_sa(qh,qc){
		ret= Math.abs(demicalFloat(demicalFloat(qh,qc,'-'),qh,'/'));
		return ret;
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 計算条件妥当性チェック >>
	      function  : bool EstimatedCal()
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function EstimatedCal(){
		FormArray = new Array;
		if(document.f1.height_name.value=='スチーム'){
			H1 = obj.getElementById('heigh_in_s').value*1;	//高温　入口温度
			H2 = obj.getElementById('heigh_out_s').value*1;	//高温　出口温度
			FH = obj.getElementById('heigh_m3_s').value*1;	//高温　流量
			DH = obj.getElementById('heigh_mpa_s').value*1;	//高温　圧力損失
			H1_obj = obj.getElementById('heigh_in_s');	//高温　入口温度
			H2_obj = obj.getElementById('heigh_out_s');	//高温　出口温度
			FH_obj = obj.getElementById('heigh_m3_s');	//高温　流量
			DH_obj = obj.getElementById('heigh_mpa_s');	//高温　圧力損失

		}
		else{
			H1 = obj.getElementById('heigh_in').value*1;	//高温　入口温度
			H2 = obj.getElementById('heigh_out').value*1;	//高温　出口温度
			FH = obj.getElementById('heigh_m3').value*1;	//高温　流量
			DH = obj.getElementById('heigh_mpa').value*1;	//高温　圧力損失
			H1_obj = obj.getElementById('heigh_in');	//高温　入口温度
			H2_obj = obj.getElementById('heigh_out');	//高温　出口温度
			FH_obj = obj.getElementById('heigh_m3');	//高温　流量
			DH_obj = obj.getElementById('heigh_mpa');	//高温　圧力損失
		}

		L1 = obj.getElementById('low_in').value*1;		//低温　入口温度
		L2 = obj.getElementById('low_out').value*1;		//低温　出口温度
		FL = obj.getElementById('low_m3').value*1;		//低温　流量
		DL = obj.getElementById('low_mpa').value*1;		//低温　圧力損失
		L1_obj = obj.getElementById('low_in');		//低温　入口温度
		L2_obj = obj.getElementById('low_out');		//低温　出口温度
		FL_obj = obj.getElementById('low_m3');		//低温　流量
		DL_obj = obj.getElementById('low_mpa');		//低温　圧力損失
		EMP_obj = obj.getElementById('empty_name');		//


		
		HOPE_H = obj.getElementById('heigh_hope').value;	//高温　希望流体名
		HOPE_L = obj.getElementById('low_hope').value;		//低音　希望流体名
		HOPE_H_obj = obj.getElementById('heigh_hope');		//高温　希望流体名
		HOPE_L_obj = obj.getElementById('low_hope');		//低音　希望流体名

//20050330 add
		HFLOW = obj.getElementById('height_flow').value;	//高温　流体
		LFLOW = obj.getElementById('low_flow').value;		//低温　流体
		HHI = new Array();
		LCI = new Array();
		HHI = HFLOW.split(",");
		LCI = LFLOW.split(",");
		obj.getElementById('height_flowId').value = HHI[0];
		obj.getElementById('low_flowId').value = LCI[0];
		GHI = demicalFloat(HHI[1],1000,'*');
		HI = demicalFloat(GHI,HHI[2],'*');

		GCI = demicalFloat(LCI[1],1000,'*');
		CI = demicalFloat(GCI,LCI[2],'*');

//20050330 add

		HI_NM = obj.getElementById('height_name').value;
		FormArray[0]=H1;
		FormArray[1]=H2;
		FormArray[2]=FH;
		FormArray[3]=L1;
		FormArray[4]=L2;
		FormArray[5]=FL;
		j=0;
		for(i=0;i<=5;i++){
			if(FormArray[i]==""){
				j++;
			}
		}
		if(j>=2){
			alert('設計条件が不足しています。');
			return false;
		}
		
		//自動計算
		if(HI_NM!='スチーム'){
			//高温入口が空白時
			if(H1 == "" && H2 != "" && FH != "" && L1 != "" && L2 != "" && FL != ""){
//				H1 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(L2,L1,'-'),FL,'*'),demicalFloat(FH,H2,'*'),'+'),FH,'/'),100,'*')),100,'/');
				//H1={(L2-L1)*FL+(FH*H2)}/FH
				H1 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(L2,L1,'-'),CI,'*'),FL,'*'),demicalFloat(demicalFloat(HI,FH,'*'),H2,'*'),'+'),demicalFloat(HI,FH,'*'),'/'),100,'*')),100,'/');
				//H1={CI*(L2-L1)*FL+(HI*FH*H2)}/(FH*HI)
				H1_obj.value = H1;
				EMP_obj.value = H1_obj.name;
			}
			//高温出口が空白時
			if(H1 != "" && H2 == "" && FH != "" && L1 != "" && L2 != "" && FL != ""){
//				H2 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(L2,L1,'-'),FL,'*'),demicalFloat(FH,H1,'*'),'-'),FH,'/'),-1,'*'),100,'*')),100,'/');
				//H2={(L2-L1)*FL-(FH*H1)}/FH*-1
				H2 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(L2,L1,'-'),CI,'*'),FL,'*'),demicalFloat(demicalFloat(HI,FH,'*'),H1,'*'),'-'),demicalFloat(HI,FH,'*'),'/'),-1,'*'),100,'*')),100,'/');
				//H2={CI*(L2-L1)*FL-(HI*FH*H1)}/(FH*HI*-1)
				H2_obj.value = H2;
				EMP_obj.value = H2_obj.name;
			}
			//低温出口が空白時
			if(H1 != "" && H2 != "" && FH != "" && L1 != "" && L2 == "" && FL != ""){
//				L2 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),FH,'*'),demicalFloat(FL,L1,'*'),'+'),FL,'/'),100,'*')),100,'/');
				//L2={(H1-H2)*FH+(FL*L1)}/FL
				L2 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),HI,'*'),FH,'*'),demicalFloat(demicalFloat(CI,FL,'*'),L1,'*'),'+'),demicalFloat(CI,FL,'*'),'/'),100,'*')),100,'/');
				//L2={HI*(H1-H2)*FH+(CI*FL*L1)}/(FL*CI)
				L2_obj.value = L2;
				EMP_obj.value = L2_obj.name;
			}
			//低温入口が空白時
			if(H1 != "" && H2 != "" && FH != "" && L1 == "" && L2 != "" && FL != ""){
//				L1 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),FH,'*'),demicalFloat(FL,L2,'*'),'-'),FL,'/'),-1,'*'),100,'*')),100,'/');
				//L1={(H1-H2)*FH-(FL*L2)}/FL*-1
				L1 = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),HI,'*'),FH,'*'),demicalFloat(demicalFloat(CI,FL,'*'),L2,'*'),'-'),demicalFloat(CI,FL,'*'),'/'),-1,'*'),100,'*')),100,'/');
				//L1={HI*(H1-H2)*FH-(CI*FL*L2)}/(FL*CI*-1)
				L1_obj.value = L1;
				EMP_obj.value = L1_obj.name;
			}
			//高温流量が空白時
			if(H1 != "" && H2 != "" && FH == "" && L1 != "" && L2 != "" && FL != ""){
//				FH = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(L2,L1,'-'),FL,'*'),demicalFloat(H1,H2,'-'),'/'),100,'*')),100,'/');
				//FH={(L2-L1)*FL}/(H1-H2)
				FH = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(L2,L1,'-'),CI,'*'),FL,'*'),demicalFloat(demicalFloat(H1,H2,'-'),HI,'*'),'/'),100,'*')),100,'/');
				//FH={CI*(L2-L1)*FL}/(HI*(H1-H2))
				FH_obj.value = FH;
				EMP_obj.value = FH_obj.name;
			}
			//低温流量が空白時
			if(H1 != "" && H2 != "" && FH != "" && L1 != "" && L2 != "" && FL == ""){
//				FL = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),FH,'*'),demicalFloat(L2,L1,'-'),'/'),100,'*')),100,'/');
				//FL={(H1-H2)*FH}/(L2-L1)
				FL = demicalFloat(Math.round(demicalFloat(demicalFloat(demicalFloat(demicalFloat(demicalFloat(H1,H2,'-'),HI,'*'),FH,'*'),demicalFloat(demicalFloat(L2,L1,'-'),CI,'*'),'/'),100,'*')),100,'/');
				//FL={HI*(H1-H2)*FH}/(CI*(L2-L1))
				FL_obj.value = FL;
				EMP_obj.value = FL_obj.name;
			}
		}
		
		//熱交換量計算
		Kw_calculate();
		Q1 = obj.getElementById('heigh_kw_f').value*1;	//高温　交換熱量
		Q2 = obj.getElementById('low_kw_f').value*1;		//低温　交換熱量
		FormArray[0]=H1;
		FormArray[1]=H2;
		FormArray[2]=FH;
		FormArray[3]=L1;
		FormArray[4]=L2;
		FormArray[5]=FL;
		j=0;
		for(i=0;i<=5;i++){
			if(FormArray[i]==""){
				j++;
			}
		}
		
		//エラーメッセージ
		mes_str1='数値のみ入力できます。';
// ===>> upd 2004/01/05
//		mes_str2='入口、出口温度は０から９９[℃]の範囲で入力して下さい。\r\n\r\n範囲から外れる場合は日阪へ計算を依頼してください。';
		mes_str2='Web-Simulatorでは９９℃を越える仕様でのシミュレーションはできません。\r\n\r\n範囲から外れる場合は日阪へ計算を依頼してください。';
// <<=== upd 2004/01/05

// ===>>  for BHE ,  hisaka 2011/09/07
//		mes_str3='流量は１から３４０．０[m3/h]の範囲で入力して下さい\r\n\r\n範囲から外れる場合は日阪へ計算を依頼してください。';
		mes_str3='流量は０．１から３４０．０[m3/h]の範囲で入力して下さい\r\n\r\n範囲から外れる場合は日阪へ計算を依頼してください。';
// <<===  for BHE ,  hisaka 2011/09/07
		mes_str4='圧力損失は０．０１から０．１５[Mpa]の範囲で入力して下さい\r\n\r\n範囲から外れる場合は日阪へ計算を依頼してください。';
		mes_str5='文字数が多すぎます';

			if(HI_NM!='スチーム'){
					if(H1!="" && !number_chk(H1)){
						alert(mes_str1);
						H1_obj.select();
						return false;
					}
// ===>> upd 2005/04/04 温度範囲のゼロ未満不可を削除【H1<0 || H1>99】→【H1>99】
					if(H1!="" && (H1>99)){
						alert(mes_str2);
						H1_obj.select();
						return false;
					}
					if(H2!="" && !number_chk(H2)){
						alert(mes_str1);
						H2_obj.select();
						return false;
					}
					if(H2!="" && (H2>99)){
						alert(mes_str2);
						H2_obj.select();
						return false;
					}
			}
					if(L1!="" && !number_chk(L1)){
						alert(mes_str1);
						L1_obj.select();
						return false;
					}
					if(L1!="" && (L1>99)){
						alert(mes_str2);
						L1_obj.select();
						return false;
					}
					if(L2!="" && !number_chk(L2)){
						alert(mes_str1);
						L2_obj.select();
						return false;
					}
					if(L2!="" && (L2>99)){
						alert(mes_str2);
						L2_obj.select();
						return false;
					}
// <<=== upd 2005/04/04
			if(HI_NM!='スチーム'){
					if(FH!="" && !number_chk(FH)){
						alert(mes_str1);
						FH_obj.select();
						return false;
					}
//   for BHE ,  hisaka 2011/09/07
//					if(FH!="" && (FH<1 || FH>340)){
					if(FH!="" && (FH<0.1 || FH>340)){
						alert(mes_str3);
						FH_obj.select();
						return false;
					}
			}
					if(FL!="" && !number_chk(FL)){
						alert(mes_str1);
						FL_obj.select();
						return false;
					}
//   for BHE ,  hisaka 2011/09/07
//					if(FL!="" && (FL<1 || FL>340)){
					if(FL!="" && (FL<0.1 || FL>340)){
						alert(mes_str3);
						FL_obj.select();
						return false;
					}
			if(HI_NM!='スチーム'){
					if(DH!="" && !number_chk(DH)){
						alert(mes_str1);
						DH_obj.select();
						return false;
					}
					if(DH!="" && (DH<0.01 || DH>0.15)){
						alert(mes_str4);
						DH_obj.select();
						return false;
					}
			}
					if(DL!="" && !number_chk(DL)){
						alert(mes_str1);
						DL_obj.select();
						return false;
					}
					if(DL!="" && (DL<0.01 || DL>0.15)){
						alert(mes_str4);
						DL_obj.select();
						return false;
					}
			if(HI_NM!='スチーム'){
					if(H1!="" && H2!="" && (parseInt(H1) <= parseInt(H2))){
						alert('「高温側入口温度＞高温側出口温度」が成立するように入力してください。');
						H1_obj.select();
						return false;
					}
			}
					if(L1!="" && L2!="" && (parseInt(L2) <= parseInt(L1))){
						alert('「低温側出口温度＞低温側入口温度」が成立するように入力してください。');
						L1_obj.select();
						return false;
					}
		if(strlenByte(HOPE_H)>36 && HOPE_H!=""){
			alert(mes_str5);
			HOPE_H_obj.select();
			return false;
		}
		if(strlenByte(HOPE_L)>36 && HOPE_L!=""){
			alert(mes_str5);
			HOPE_L_obj.select();
			return false;
		}
		if(Q1 != "" && Q2 != "" && HI_NM=='水相当' && j==0){
			if(number_chk(Q1) && number_chk(Q2)){
				ret = netsuryo_sa(Q1,Q2);
				if(ret>0.01){
						if(confirm('交換熱量が違います。\r\n\r\n詳細を確認しますか？')){
// ===>> upd 2004/01/05
							//win_op('EstimatedHelp.php#err1?1',900,700);
//							win_op('EstimatedHelp.php#err1?1',640,400);
							win_op('EstimatedHelp1.php',640,400);
// <<=== upd 2004/01/05
						}
				}
				else if(parseFloat(H1)<=parseFloat(L2)){
					if(confirm('温度交差しています。\r\n\r\n詳細を確認しますか？')){
//						win_op('EstimatedHelp.php#err2?2',750,500);
						win_op('EstimatedHelp2.php',750,500);
					}
				}
				else if(parseFloat(H2)<=parseFloat(L1)){
					if(confirm('温度交差しています。\r\n\r\n詳細を確認しますか？')){
//						win_op('EstimatedHelp.php#err2?2',750,500);
						win_op('EstimatedHelp2.php',750,500);
					}
				}
				else{
					chkMpa();
					progressbar_call();
				}
			}
			else{
				alert('計算結果が数値ではありません。');
			}
		}
		else{
			chkMpa();
			progressbar_call();
		}
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << プログレスバー制御 >>
	      function  : void progressbar_call();
		  return	: true/false
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function progressbar_call(){
		for(i=0;i<=100;i++){
			progressbar(i,i,i);
		}
		//setTimeout("document.f1.submit();",2000);
		document.f1.submit();
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << プログレスバー描画 >>
	      function  : float progressbar(float,float,char);
		  return	: true/false
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function progressbar(vstr,pv,va){
	    var w = 100 - va;
	    var bar = "<table width=498 border=0 cellpadding=0 cellspacing=0><tr><td height=15 width=" + va + "% bgcolor=red align=center>" + va + "%</td><td width=" + w + "%></td></tr></table>";
	    if(document.layers)
	    {
	        //document.pbarlabel.document.open();
	        //document.pbarlabel.document.write(pv＋vstr);
	        //document.pbarlabel.document.close();
	        document.pbar.document.open();
	        document.pbar.document.write(bar);
	        document.pbar.document.close();
	    }
	    else if(document.all)
	    {
	        //document.all.pbarlabel.innerHTML = pv＋vstr;
	        document.all.pbar.innerHTML = bar;
	    }
	    else if(document.getElementById)
	    {
	        //document.getElementById('pbarlabel').innerHTML = pv＋vstr;
	        document.getElementById('pbar').innerHTML = bar;
	    }
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << スクリプト上での計算誤差修正 >>
	      function  : float demicalFloat(float,float,char);
		  return	: true/false
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function changeProp(theProp) { 
	  window.open(theProp,'pdf','location=no,resizable=yes,scrollbars=no,toolbar=no');
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << スクリプト上での計算誤差修正 >>
	      function  : float demicalFloat(float,float,char);
		  return	: true/false
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function MailOnOff(obj,kbn){
		if(kbn){
			obj.getElementById('email').style.color='crimson';
			obj.getElementById('name').style.color='crimson';
			obj.getElementById('tanto').style.color='crimson';
			obj.getElementById('tel').style.color='crimson';
			obj.getElementById('adrress_num').style.color='crimson';
			obj.getElementById('adrress_1').style.color='crimson';
			obj.getElementById('ID_mitsu').checked=true;
			//obj.getElementById('ID_kakunin').checked=true;
			obj.getElementById('ID_mitsu').disabled=false;
			//obj.getElementById('ID_kakunin').disabled=false;
		}
		else {
			obj.getElementById('email').style.color='white';
			obj.getElementById('name').style.color='white';
			obj.getElementById('tanto').style.color='white';
			obj.getElementById('tel').style.color='white';
			obj.getElementById('adrress_num').style.color='white';
			obj.getElementById('adrress_1').style.color='white';
			obj.getElementById('ID_mitsu').checked=false;
			//obj.getElementById('ID_kakunin').checked=false;
			obj.getElementById('ID_mitsu').disabled=true;
			//obj.getElementById('ID_kakunin').disabled=true;
		}
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 顧客情報妥当性チェック >>
	      function  : bool chkPersonal()
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function chkPersonal(){
		company = document.f1.company;
		usernm = document.f1.usernm;
		useremail = document.f1.useremail;
		busho = document.f1.busho;
		yakushoku = document.f1.yakushoku;
		tel = document.f1.tel;
		fax = document.f1.fax;
		post1 = document.f1.post1;
		post2 = document.f1.post2;
		addr1 = document.f1.addr1;
		addr2 = document.f1.addr2;
		listen = document.f1.listen;
		
		mes_str='文字数が多すぎます';
		if(!nonnullchk(company.value)){
			alert('会社名は必ず入力して下さい。');
			company.focus();
			return false;
		}
		else if(strlenByte(company.value)>128){
			alert(mes_str);
			company.select();
			return false;
		}
		if(!nonnullchk(usernm.value)){
			alert('御担当者名は必ず入力して下さい。');
			usernm.focus();
			return false;
		}
		else if(strlenByte(usernm.value)>64){
			alert(mes_str);
			usernm.select();
			return false;
		}
		if(!nonnullchk(useremail.value)){
			alert('御担当者E-MAILは必ず入力して下さい。');
			useremail.focus();
			return false;
		}
		else if(strlenByte(useremail.value)>128){
			alert(mes_str);
			useremail.select();
			return false;
		}
		if(strlenByte(busho.value)>128){
			alert(mes_str);
			busho.select();
			return false;
		}
		if(strlenByte(yakushoku.value)>36){
			alert(mes_str);
			yakushoku.select();
			return false;
		}
		if(!nonnullchk(tel.value)){
			alert('電話番号は必ず入力して下さい。');
			tel.focus();
			return false;
		}
		else if(!isTelNumber(tel.value)){
			alert('0から9及び-のみ入力できます。');
			tel.select();
			return false;
		}
		else if(strlenByte(tel.value)>36){
			alert(mes_str);
			tel.select();
			return false;
		}
		if(!isTelNumber(fax.value)){
			alert('0から9及び-のみ入力できます。');
			fax.select();
			return false;
		}
		else if(strlenByte(fax.value)>36){
			alert(mes_str);
			fax.select();
			return false;
		}
		poststr = post1.value.concat(post2.value);
		if(!nonnullchk(poststr)){
			alert('郵便番号は必ず入力して下さい。');
			post1.focus();
			return false;
		}
		else if(!number_chk(post1.value) && post1.value != ''){
			alert('数値のみ入力できます。');
			post1.focus();
			return false;
		}
		else if(!number_chk(post2.value) && post2.value != ''){
			alert('数値のみ入力できます。');
			post2.focus();
			return false;
		}
		else if(strlenByte(poststr)>7){
			alert(mes_str);
			post1.select();
			return false;
		}
		if(!nonnullchk(addr1.value)){
			alert('住所１は必ず入力して下さい。');
			addr1.focus();
			return false;
		}
		else if(strlenByte(addr1.value)>64){
			alert(mes_str);
			addr1.select();
			return false;
		}
		if(strlenByte(addr2.value)>64){
			alert(mes_str);
			addr2.select();
			return false;
		}
		if(strlenByte(listen.value)>256){
			alert(mes_str);
			listen.select();
			return false;
		}
		document.f1.submit();
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    <<電話番号チェック >>
	      指定以外の文字が存在すれば false;
	      function  : bool isTelNumber(char)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    :
	*********************************************************************************/
	function isTelNumber(telstr){
		oktelstr = '0123456789-';
		err = 0;
		for (i=0;i<telstr.length;i++){
			if (oktelstr.indexOf(telstr.charAt(i)) == -1){
				 err++;
			}
		}
		if (err!=0){
	//		alert("電話番号は0から9及び-のみです");
			return false;
		}
		else{
			return true;
		}
	}
	
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 入力値文字数チェック（バイト数） >>
	      function  : int strlenByte(char)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function strlenByte(str) {
	    var len = str.length;
	    var n = 0;
	    var i;
	    
	    for(i = 0; i < len; i++)
	        n += is_ie_zenkaku(str.charAt(i)) ? 2 : 1;
	    return(n);
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 全角チェック >>
	      function  : bool is_ie_zenkaku(char)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function is_ie_zenkaku(c) { 
		return (escape(c).charAt(1) == "u"); 
	}

	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << NULLチェック >>
	      function  : bool nonnullchk(char)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function nonnullchk(str){
		
		if(str ==""){
			return false;	
		}
		else{
			return true;
		}
	}


	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << ラジオボタン選択による画面表示変化 >>
	      function  : void ValueChange(char,int)
	        Author    : DSK O.Fujiwara
	        Date      : 2003/10/
			Update    : 
	**********************************************************************************/
	function ValueChange(val,kbn){
		obj.getElementById('height_name').value = val;
//		obj.getElementById('height_flow').value = val;
//		obj.getElementById('low_flow').value = val;
		
		if(kbn==1){
			obj.getElementById('h_in1').style.display = "none";
			obj.getElementById('h_in2').style.display = "";
			obj.getElementById('h_out1').style.display = "none";
			obj.getElementById('h_out2').style.display = "";
			obj.getElementById('h_m31').style.display = "none";
			obj.getElementById('h_m32').style.display = "";
			obj.getElementById('h_mpa1').style.display = "none";
			obj.getElementById('h_mpa2').style.display = "";
			obj.getElementById('div_kw').style.display = "none";
			obj.getElementById('est_disponly_warter').style.display = "none";
			obj.getElementById('est_disponly_steam').style.display = "";
			
			obj.getElementById('r_heigh_out').value = obj.getElementById('heigh_out_s').value;
			obj.getElementById('r_heigh_in').value = obj.getElementById('heigh_in_s').value;
			
			obj.getElementById('tani').style.display = "none";
			obj.getElementById('tani_s').style.display = "";
// ===>> add 2004/01/05
			obj.getElementById('img_warter').style.display = "none";
			obj.getElementById('img_steam').style.display = "";
// <<=== add 2004/01/05
// ===>> add 2005/03/18
			obj.getElementById('h_name1').style.display = "none";
			obj.getElementById('h_name2').style.display = "";
			obj.getElementById('l_name1').style.display = "none";
			obj.getElementById('l_name2').style.display = "";
// ===>> add 2005/03/18
		}
		else{
			obj.getElementById('h_in1').style.display = "";
			obj.getElementById('h_in2').style.display = "none";
			obj.getElementById('h_out1').style.display = "";
			obj.getElementById('h_out2').style.display = "none";
			obj.getElementById('h_m31').style.display = "";
			obj.getElementById('h_m32').style.display = "none";
			obj.getElementById('h_mpa1').style.display = "";
			obj.getElementById('h_mpa2').style.display = "none";
			obj.getElementById('div_kw').style.display = "";
			obj.getElementById('est_disponly_warter').style.display = "";
			obj.getElementById('est_disponly_steam').style.display = "none";
			
// ===>> add 2004/01/05
//			obj.getElementById('r_heigh_out').value = '';
//			obj.getElementById('r_heigh_in').value = '';
			obj.getElementById('r_heigh_out').value = obj.getElementById('heigh_out').value;
			obj.getElementById('r_heigh_in').value = obj.getElementById('heigh_in').value;
// <<=== add 2004/01/05

			obj.getElementById('tani').style.display = "";
			obj.getElementById('tani_s').style.display = "none";
// ===>> add 2004/01/05
			obj.getElementById('img_warter').style.display = "";
			obj.getElementById('img_steam').style.display = "none";
// <<=== add 2004/01/05
// ===>> add 2005/03/18
			obj.getElementById('h_name1').style.display = "";
			obj.getElementById('h_name2').style.display = "none";
			obj.getElementById('l_name1').style.display = "";
			obj.getElementById('l_name2').style.display = "none";
// ===>> add 2005/03/18

		}
	}

// ===>> add 2005/03/16
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 交換熱量計算 >>
	      function  : ()
	        Author    : 
	        Date      : 
		Update    : 
	**********************************************************************************/
	function chkMpa(){
		HW = obj.getElementById('heigh_m3').value;		//高温　流量
		LOW = obj.getElementById('low_m3').value;		//低温　流量
		DH = obj.getElementById('heigh_mpa').value;		//高温　圧力損失
		DL = obj.getElementById('low_mpa').value;		//低温　圧力損失
		HI_NM = obj.getElementById('steam').value;	//

		if(document.forms[0].steam[0].checked == true){
			if(HW != "" && LOW != "" && number_chk(HW) == true && number_chk(LOW) == true && DH == 0.05 && DL == 0.05){
				if(demicalFloat(HW,LOW,'-') > 0){
					ANS = demicalFloat(HW,LOW,'/');
				}else{
					ANS = demicalFloat(LOW,HW,'/');
				}
				if(ANS > 3.0){
					if(confirm('圧力損失(MPa)を0.1(MPa)に変更して計算しますか？')){
						obj.getElementById('heigh_mpa').value='0.1';
						obj.getElementById('low_mpa').value='0.1';
					}
				}
			}
		}
	}

	function checkFlow(flowNm){
//		lowFlow = obj.getElementById('low_flow').value;			//低温側計算流体名
//		heightFlow = obj.getElementById('height_flow').value;	//高温側計算流体名

		HFLOW = obj.getElementById('low_flow').value;			//低温側計算流体名
		LFLOW = obj.getElementById('height_flow').value;		//高温側計算流体名
		HHI = new Array();
		LCI = new Array();
		HHI = HFLOW.split(",");
		LCI = LFLOW.split(",");
		heightFlow = HHI[0];
		lowFlow = LCI[0];

		if(lowFlow == flowNm || heightFlow == flowNm){
			if(document.forms[0].plate[0].checked == true){
				alert("海水時は、チタン(TP270)にて計算します。");
				document.forms[0].plate[1].checked = true;
			}
		}
	}

// <<=== add 2005/03/16

// 20110803 INS START GROOVER
	/********************************************************************************
		日阪製作所　Web-Simulator
		  public JavaScript Function
	    << 熱交の種類ラジオボタン選択による画面表示変化 >>
	      function  : void heatValueChange(int)
	        Author    : GROOVER
	        Date      : 2011/08/
			Update    : 
	**********************************************************************************/
	function heatValueChange(kbn){
		citan = obj.getElementsByName('plate');		// プレート材質
		sutimu = obj.getElementsByName('steam');	// 計算条件
		
		if(kbn==1){
			// ロウ付式
			
			// プレート材質 チタン、計算条件 スチーム-水相当　無効化
			citan[1].disabled=true;
			sutimu[1].disabled=true;
			
			// プレート材質 ステンレス、計算条件 流体-流体 クリック処理
			// クリック押下時処理が存在する場合、実行させるため
			citan[0].click();
			sutimu[0].click();
		}
		else{
			// ガスケット式
			
			// プレート材質 チタン、計算条件 スチーム-水相当　有効化
			citan[1].disabled=false;
			sutimu[1].disabled=false;
		}
	}
// 20110803 INS END GROOVER

//-->

