function calc()
{
var a=   document.getElementById("mrider").value; a=parseFloat(a.replace(",",".")); // масса двигателя
var b=   document.getElementById("mbike").value; b=parseFloat(b.replace(",",".")); // масса двигателя
var mm=   document.getElementById("mmotor").value; mm=parseFloat(mm.replace(",",".")); // масса двигателя
var ma=   document.getElementById("mbatt").value; ma=parseFloat(ma.replace(",","."));  // масса аккумулятора
var hh=   document.getElementById("ntrpm").value; hh=parseFloat(hh.replace(",",".")); // максимальные обороты
var ef=   document.getElementById("eff").value; ef=parseFloat(ef.replace(",",".")); // КПД двигателя
var mr=   document.getElementById("motorrpm").value; mr=parseFloat(mr.replace(",",".")); // обороты двигателя
var gr=   document.getElementById("gears").value; gr=parseFloat(gr.replace(",",".")); // коэф. редуктора
var vl=   document.getElementById("voltage").value; vl=parseFloat(vl.replace(",",".")); // напряжение системы
var ah=   document.getElementById("battah").value; ah=parseFloat(ah.replace(",",".")); // емкость батареи
var ws=   document.getElementById("wheelsize").value; ws=parseFloat(ws.replace(",",".")); // диаметр колеса
var rp=   document.getElementById("rpower").value; rp=parseFloat(rp.replace(",",".")); // заданная мощность
var rs=   document.getElementById("rspeed").value; rs=parseFloat(rs.replace(",",".")); // заданная скорость

var cx=   document.getElementById("cx").value; cx=parseFloat(cx.replace(",",".")); // Cx
var ml=   document.getElementById("smidel").value; ml=parseFloat(ml.replace(",",".")); // Площадь миделя
var kl=   document.getElementById("kroll").value; kl=parseFloat(kl.replace(",",".")); // К трения качения
var ad=   document.getElementById("airdens").value; ad=parseFloat(ad.replace(",",".")); // Плотность воздуха

var pe=   document.getElementById("peukert").value; pe=parseFloat(pe.replace(",",".")); // Экспонента Пекерта
var ds=   document.getElementById("discharge").value; ds=parseFloat(ds.replace(",",".")); // Разряд батареи


if (isNaN(a)) a=0; if (isNaN(b)) b=0; if (isNaN(mm)) mm=0; if (isNaN(ma)) ma=0;
var massa=a+b+mm+ma;

if (isNaN(rp)) rp=0; if (isNaN(rs)) rs=0;

var ggr= document.getElementById("grade").value; ggr=parseFloat(ggr.replace(",",".")); // Подъем 
ggr2=Math.atan(ggr/100)*180/Math.PI; 

var maxspeed= (mr/gr)*(ws*Math.PI)*0.06; 
var ntspeed= (hh/gr)*(ws*Math.PI)*0.06; 
var inppower= rp+(rp*(1-(ef/100))); 
var current=inppower/vl; 

var c1=cx*ml*ad;
var c2=massa*9.8*(kl+Math.sin(ggr/100));
var c3=((rp*2)/c1)/2;
var c4=Math.pow(c2/(c1/2)/3,3);
var c5=Math.sqrt(c3*c3+c4);
var sign=1; if (c3<c5) sign=-1;
var speed=3.6*(Math.pow(c3+c5,1/3)+sign*Math.pow(Math.abs(c3-c5),1/3));

var rpm1=(speed/3.6)/(ws*Math.PI)*60*gr; 
var rpm2=((rs*1000)/(ws*Math.PI)/60)*gr; 

var wind=((cx*ad*(rs/3.6)*(rs/3.6)*ml)/2)*(rs/3.6); 
var roll=kl*massa*9.8*(rs/3.6); 
var grpower=massa*9.8*Math.sin(ggr/100)*(rs/3.6);
var tpower=wind+roll+grpower;

var power2=tpower+(tpower*(1-(ef/100)));
var current2=power2/vl; 
var dist1=((vl*ah/pe)/(vl*current))*speed*(ds/100);
var dist2=((vl*ah/pe)/(vl*current2))*rs*(ds/100);
var torq1=(rp*97.438)/rpm1;
var torq2=(tpower*97.371)/rpm2;

document.getElementById("gradegr").innerHTML=ggr2.toFixed(1);
document.getElementById("totalm").innerHTML=massa.toFixed(1);
document.getElementById("maxspeed").innerHTML=maxspeed.toFixed(0);
document.getElementById("ntspeed").innerHTML=ntspeed.toFixed(0);
document.getElementById("inppower").innerHTML=inppower.toFixed(1);
document.getElementById("current").innerHTML=current.toFixed(2);
document.getElementById("rpm2").innerHTML=rpm2.toFixed(0);
document.getElementById("wind").innerHTML=wind.toFixed(1);
document.getElementById("roll").innerHTML=roll.toFixed(1);
document.getElementById("grpower").innerHTML=grpower.toFixed(1);
document.getElementById("tpower").innerHTML=tpower.toFixed(1);
document.getElementById("rpower2").innerHTML=tpower.toFixed(1);
document.getElementById("inppower2").innerHTML=power2.toFixed(1);
document.getElementById("current2").innerHTML=current2.toFixed(2);
document.getElementById("dist1").innerHTML=dist1.toFixed(0);
document.getElementById("dist2").innerHTML=dist2.toFixed(0);
document.getElementById("torq1").innerHTML=torq1.toFixed(1);
document.getElementById("torq2").innerHTML=torq2.toFixed(1);
document.getElementById("speed").innerHTML=speed.toFixed(1);
document.getElementById("rpm1").innerHTML=rpm1.toFixed(0);
document.getElementById("rpm2").innerHTML=rpm2.toFixed(0);


}



function setcomplect()
{
var s=document.getElementById("complect").value;
var t=s.substring(0,2);
var m=s.substring(2,4);
var v=s.substring(4,6);
var mm='';
var ma='';
var hh='';
var ef='';
var mr='';
var gr='1';
var ah='10';
var vl='';

if (t=='cr') {
    if (v=='36') {
      ma='5'; 
      vl='39'
    }
    if (v=='48') {
      ma='6.5'; 
      vl='52'
    }

  if (m=='48') {
    mm='7';
    if (v=='36') {
      hh='356';
      ef='81';
      mr='260';
    }
    if (v=='48') {
      hh='472';
      ef='82';
      mr='340';
    }
  }
  if (m=='41') {
    mm='7';
    if (v=='36') {
      hh='239';
      ef='79';
      mr='180';
    }
    if (v=='48') {
      hh='321';
      ef='80';
      mr='255';
    }
  }
}

if (t=='cy') {
  gr='9.33';
  if (v=='24') ma='3.5'; 
  if (v=='36') ma='5'; 
  if (v=='48') ma='6.5'; 
  switch (m) {
    case '36': 
    {
      mm='3.5';
      hh='3600';
      ef='88';
      mr='2600';
      vl='26'
    }
    break;
    case '50': 
    {
      mm='4';
      hh='3600';
      ef='87';
      mr='2500';
      vl='26'
    }
    break;
    case '65': 
    {
      mm='5';
      hh='3300';
      ef='86';
      mr='2500';
      vl='26'
    }
    break;
    case '90':
    {
      mm='5';
      hh='3700';
      ef='86';
      mr='2700';
      vl='39'
    }
    break;
    case '15': {
      gr='4.28';
      mm='6.5';
      hh='4111';
      ef='93';
      mr='3223';
      vl='52'
    }
  }
}

if (t=='gm') {
    if (v=='36') {
      ma='5'; 
      vl='39'
    }
    if (v=='48') {
      ma='6.5'; 
      vl='52'
    }
    if (m=='91') {
      mm='5.5';
      if (v=='36') {
        hh='343';
	ef='81';
	mr='298';
      }
      if (v=='48') {
        hh='470';
	ef='84';
	mr='418';
      }
    }	
    if (m=='mp') {
      mm='6.5';
      ef='79';
      if (v=='36') {
        hh='270';
	mr='243';
      }
      if (v=='48') {
        hh='358';
	mr='324';
      }
    }  
}

if (s!='') {
  document.getElementById("mmotor").value=mm;
  document.getElementById("mbatt").value=ma;
  document.getElementById("ntrpm").value=hh;
  document.getElementById("eff").value=ef;
  document.getElementById("motorrpm").value=mr;
  document.getElementById("gears").value=gr;
  document.getElementById("voltage").value=vl;
  document.getElementById("battah").value=ah;
  calc()
}


}
