src/Utils.cpp

changeset 356
f60f5a1fece9
parent 350
37b3c690b02c
child 373
b02aca4e926c
equal deleted inserted replaced
355:f3318d9d6668 356:f60f5a1fece9
608 } 608 }
609 609
610 610
611 double Utils::Hardness(double calcium, double magnesium) 611 double Utils::Hardness(double calcium, double magnesium)
612 { 612 {
613 return ((calcium / 20) + (magnesium / 12.15)) * 50; 613 return 2.497 * calcium + 4.164 * magnesium;
614 } 614 }
615 615
616 616
617 double Utils::RA_ppm(double total_alkalinity, double calcium, double magnesium) 617 double Utils::Bicarbonate(double total_alkalinity, double ph)
618 { 618 {
619 double alkalinity = total_alkalinity * (1 + (2 * pow(10, -2.33))); 619 return (total_alkalinity / (1 + 2*pow(10, ph - 10.33)) * MMHCO3 /*61.016*/ / (MMCaCO3 / 2) /*50.043*/);
620 return (alkalinity - ((calcium * 0.7143) + (magnesium * 0.5879))); 620 }
621
622
623 double Utils::RA_CaCO3(double bicarbonate, double carbonate, double calcium, double magnesium)
624 {
625 return ((bicarbonate / MMHCO3) + (2*carbonate / MMCO3) - (2*calcium / MMCa)/3.5 - (2*magnesium / MMMg)/7) * 50;
621 } 626 }
622 627
623 628
624 double Utils::ResidualAlkalinity(double total_alkalinity, double calcium, double magnesium) 629 double Utils::ResidualAlkalinity(double total_alkalinity, double calcium, double magnesium)
625 { 630 {

mercurial