# HG changeset patch # User Michiel Broek # Date 1552317721 -3600 # Node ID 019736440468391deb5088af63bbb59d7ab980d0 # Parent 6ae03de0de9edb87b497ad2a4463fb0b328041a0 The abvol calculation uses the formule by Hans Halberstadt. diff -r 6ae03de0de9e -r 019736440468 www/includes/formulas.php --- a/www/includes/formulas.php Sun Mar 10 21:07:11 2019 +0100 +++ b/www/includes/formulas.php Mon Mar 11 16:22:01 2019 +0100 @@ -173,9 +173,11 @@ function abvol($og, $fg) { - if ((4.749804 - $fg) <> 0) - return 486.8693 * ($og - $fg) / (4.749804 - $fg); - return 0; + $factor = $og * 3157 * pow(10, -5) + 9.716 * pow(10, -2); + return ($og * 1000 - $fg * 1000) * $factor; + //if ((4.749804 - $fg) <> 0) + // return 486.8693 * ($og - $fg) / (4.749804 - $fg); + //return 0; } diff -r 6ae03de0de9e -r 019736440468 www/js/global.js --- a/www/js/global.js Sun Mar 10 21:07:11 2019 +0100 +++ b/www/js/global.js Mon Mar 11 16:22:01 2019 +0100 @@ -742,14 +742,26 @@ return 0; /* + * Formule van Hans Halberstadt. De constante factor is afhankelijk van de + * zwaarte van het wort. + */ + var factor = og * 3157 * Math.pow(10, -5) + 9.716 * Math.pow(10, -2); + var result = (og * 1000 - fg * 1000) * factor; + + console.log("HH abvol("+ og * 1000 + ", "+ fg * 1000 + ") factor:" + factor + " abv:" + result); + return result; + + /* * Dit lijkt goed en wordt in veel moderne software gebruikt, maar... - * dit klopt niet. Busted door Hans Halbertstad. + * dit klopt niet. Busted door Hans Halberstadt. * return (76.08 * (og-fg) / (1.775-og)) * (fg / 0.794); // Daniels */ - // brouwhulp, is ook niet helemaal goed. - if ((4.749804 - fg) != 0) - return 486.8693 * (og - fg) / (4.749804 - fg); - return 0; + + /* + * Brouwhulp, houdt geen rekening met zwaardere bieren. + * if ((4.749804 - fg) != 0) + * return 486.8693 * (og - fg) / (4.749804 - fg); + */ }