
//
//	Calculating scripts between G, rpm, and Rmax[mm]
//	TOMYS SEIKO co.,Ltd.
//


//	Clear answer field

function clear_rpm() {
	document.formcal.ans_rpm.value = '';
}


function clear_G() {
	document.formcal.ans_G.value = '';
}


function clear_Rmax() {
	document.formcal.ans_R.value = '';
}


//	Check arguments, Calculate, and Set answer

function calc_rpm() {

	clear_rpm();
	var G = document.formcal.G_for_rpm.value;
	var Rmax = document.formcal.R_for_rpm.value;

	if ((G == '') || (Rmax == '')) {
		return;
	}
	if (isNaN(G)) {
		alert('「遠心加速度」が半角数値ではありません。再入力してください。');
		document.formcal.G_for_rpm.focus();
		return;
	}
	if (isNaN(Rmax)) {
		alert('「半径」が半角数値ではありません。再入力してください。');
		document.formcal.R_for_rpm.focus();
		return;
	}

	var rpm = calc_rpm_main(eval(G), eval(Rmax));
	document.formcal.ans_rpm.value = rpm;

	return;
}


function calc_G() {

	clear_G();
	var Rmax = document.formcal.R_for_G.value;
	var rpm = document.formcal.rpm_for_G.value;

	if ((Rmax == '') || (rpm == '')) {
		return;
	}
	if (isNaN(rpm)) {
		alert('「回転数」が半角数値ではありません。再入力してください。');
		document.formcal.rpm_for_G.focus();
		return;
	}
	if (isNaN(Rmax)) {
		alert('「半径」が半角数値ではありません。再入力してください。');
		document.formcal.R_for_G.focus();
		return;
	}

	var G = calc_G_main(eval(Rmax), eval(rpm));
	document.formcal.ans_G.value = G;

	return;
}


function calc_Rmax() {

	clear_Rmax();
	var rpm = document.formcal.rpm_for_R.value;
	var G = document.formcal.G_for_R.value;

	if ((rpm == '') || (G == '')) {
		return;
	}
	if (isNaN(rpm)) {
		alert('「回転数」が半角数値ではありません。再入力してください。');
		document.formcal.rpm_for_R.focus();
		return;
	}
	if (isNaN(G)) {
		alert('「遠心加速度」が半角数値ではありません。再入力してください。');
		document.formcal.G_for_R.focus();
		return;
	}

	var Rmax = calc_Rmax_main(eval(rpm), eval(G));
	document.formcal.ans_R.value = Rmax;

	return;
}


//	Main Logic of Calculation

function calc_rpm_main(G, Rmax) {
//	rpm = ROUND(SQRT(G/(1.118243*(10^(-6))*Rmax)),-2)			for EXCEL

	var tmpvar = 1.118243 * Rmax / 1000000;
	var rpm = Math.round(Math.sqrt(G / tmpvar) / 100) * 100;

	return rpm;
}


function calc_G_main(Rmax, rpm) {
//	G = ROUND(1.118243*(10^(-6))*Rmax*(rpm^2),-1)			for EXCEL

	var tmpvar = 1.118243 * Rmax * rpm * rpm / 1000000;
	var G = Math.round(tmpvar / 10) * 10;

	return G;
}


function calc_Rmax_main(rpm, G) {
//	Rmax = G/(1.118243*(10^(-6))*rpm^2)			for EXCEL

	var tmpvar = 1.118243 * rpm * rpm / 1000000;
	var Rmax = Math.round(G / tmpvar);

	return Rmax;
}






