Mon, 12 Nov 2018 11:32:16 +0100
Added ABV clculation.
11 | 1 | <?php |
2 | ||
83
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
3 | define('EURO', chr(128)); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
4 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
5 | define('MMCa', '40.048'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
6 | define('MMMg', '24.305'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
7 | define('MMNa', '22.98976928'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
8 | define('MMCl', '35.453'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
9 | define('MMSO4', '96.0626'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
10 | define('MMCO3', '60.01684'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
11 | define('MMHCO3', '61.01684'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
12 | define('MMCaSO4', '172.171'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
13 | define('MMCaCl2', '147.015'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
14 | define('MMCaCO3', '100.087'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
15 | define('MMMgSO4', '246.475'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
16 | define('MMNaHCO3', '84.007'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
17 | define('MMNa2CO3', '105.996'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
18 | define('MMNaCl', '58.443'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
19 | define('MMCaOH2', '74.06268'); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
20 | |
11 | 21 | |
22 | function ebc_to_srm($ebc) | |
23 | { | |
24 | // Srm = -1.32303E-12*Ebc4-0.00000000291515*Ebc3+0.00000818515*Ebc2+0.372038*Ebc+0.596351 | |
25 | return -1.32303E-12 * pow($ebc, 4) - 0.00000000291515 * pow($ebc, 3) + 0.00000818515 * pow($ebc, 2) + 0.372038 * $ebc + 0.596351; | |
26 | // return $ebc * 0.508; | |
27 | } | |
28 | ||
29 | ||
83
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
30 | |
11 | 31 | function srm_to_ebc($srm) |
32 | { | |
33 | // EBC = 0.000000000176506*Srm4+ 0.000000154529*Srm3-0.000159428*Srm2+2.68837*Srm-1.6004 | |
34 | // | |
35 | // Formule van Adrie Otten. brouwhulp. | |
36 | $ebc = 0.000000000176506 * pow($srm, 4) + 0.000000154529 * pow($srm, 3) - 0.000159428 * pow($srm, 2) + 2.68837 * $srm - 1.6004; | |
37 | return round($ebc); | |
38 | } | |
39 | ||
40 | ||
83
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
41 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
42 | function ebc_to_color($ebc) |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
43 | { |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
44 | return srm_to_color(ebc_to_srm($ebc)); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
45 | } |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
46 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
47 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
48 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
49 | function srm_to_color($srm) |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
50 | { |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
51 | $i = abs($srm * 10); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
52 | if ($i < 0) { |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
53 | $i = 0; |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
54 | } |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
55 | if ($i > 299) { |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
56 | $i = 299; |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
57 | } |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
58 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
59 | /* Table copied from Brouwhulp/BrewBuddy */ |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
60 | $R = array( 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, // 0 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
61 | 250, 250, 250, 250, 250, 249, 248, 247, 246, 245, 244, 243, 242, 241, 240, 239, 238, 237, 236, 235, // 2 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
62 | 234, 233, 232, 231, 230, 229, 228, 227, 226, 225, 224, 223, 222, 221, 220, 219, 218, 217, 216, 215, // 4 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
63 | 214, 213, 212, 211, 210, 209, 208, 207, 206, 205, 204, 203, 202, 201, 200, 200, 199, 199, 198, 198, // 6 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
64 | 197, 197, 196, 196, 195, 195, 194, 194, 193, 193, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, // 8 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
65 | 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, // 10 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
66 | 192, 192, 192, 192, 192, 192, 192, 192, 191, 190, 189, 188, 187, 186, 185, 184, 183, 182, 181, 180, // 12 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
67 | 179, 178, 177, 175, 174, 172, 171, 169, 168, 167, 195, 164, 162, 161, 159, 158, 157, 155, 154, 152, // 14 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
68 | 151, 149, 148, 147, 145, 144, 142, 141, 139, 138, 137, 135, 134, 132, 131, 129, 128, 127, 125, 124, // 16 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
69 | 122, 121, 119, 118, 117, 115, 114, 112, 111, 109, 108, 107, 105, 104, 102, 101, 99, 98, 97, 95, // 18 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
70 | 94, 92, 91, 89, 88, 87, 85, 84, 82, 81, 79, 78, 77, 75, 74, 72, 71, 69, 68, 67, // 20 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
71 | 65, 64, 62, 61, 59, 58, 57, 55, 54, 52, 51, 49, 48, 47, 45, 44, 43, 41, 39, 38, // 22 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
72 | 37, 37, 36, 36, 35, 35, 34, 34, 33, 33, 32, 32, 31, 31, 30, 30, 29, 29, 28, 28, // 24 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
73 | 27, 27, 26, 26, 25, 25, 24, 24, 23, 23, 22, 22, 21, 21, 20, 20, 19, 19, 18, 18, // 26 |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
74 | 17, 17, 16, 16, 15, 15, 14, 14, 13, 13, 12, 12, 11, 11, 10, 10, 9, 9, 8, 8 ); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
75 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
76 | $G = array( 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
77 | 250, 250, 250, 250, 250, 250, 249, 248, 247, 246, 245, 244, 242, 240, 238, 236, 234, 232, 230, 228, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
78 | 226, 224, 222, 220, 218, 216, 214, 212, 210, 208, 206, 204, 202, 200, 198, 196, 194, 192, 190, 188, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
79 | 186, 184, 182, 180, 178, 176, 174, 172, 170, 168, 166, 164, 162, 160, 158, 156, 154, 152, 150, 148, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
80 | 146, 144, 142, 141, 140, 139, 139, 138, 137, 136, 136, 135, 134, 133, 133, 132, 131, 130, 130, 129, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
81 | 128, 127, 127, 126, 125, 124, 124, 123, 122, 121, 121, 120, 119, 118, 118, 117, 116, 115, 115, 114, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
82 | 113, 112, 112, 111, 110, 109, 109, 108, 107, 106, 106, 105, 104, 103, 103, 102, 101, 100, 100, 99, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
83 | 98, 97, 97, 96, 95, 94, 94, 93, 92, 91, 91, 90, 89, 88, 88, 87, 86, 85, 85, 84, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
84 | 83, 82, 82, 81, 80, 79, 78, 77, 76, 75, 75, 74, 73, 72, 72, 71, 70, 69, 69, 68, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
85 | 67, 66, 66, 65, 64, 63, 63, 62, 61, 60, 60, 59, 58, 57, 57, 56, 55, 54, 54, 53, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
86 | 52, 51, 51, 50, 49, 48, 48, 47, 46, 45, 45, 44, 43, 42, 42, 41, 40, 39, 39, 38, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
87 | 37, 36, 36, 35, 34, 33, 33, 32, 31, 30, 30, 29, 28, 27, 27, 26, 25, 24, 24, 23, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
88 | 22, 22, 22, 21, 21, 21, 20, 20, 20, 19, 19, 19, 18, 18, 18, 17, 17, 17, 16, 16, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
89 | 16, 15, 15, 15, 14, 14, 14, 13, 13, 13, 12, 12, 12, 11, 11, 11, 10, 10, 10, 9, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
90 | 9, 9, 8, 8, 8, 7, 7, 7, 6, 6, 6, 5, 5, 5, 4, 4, 4, 3, 3, 3 ); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
91 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
92 | $B = array( 210, 204, 199, 193, 188, 182, 177, 171, 166, 160, 155, 149, 144, 138, 133, 127, 122, 116, 111, 105, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
93 | 100, 94, 89, 83, 78, 72, 67, 61, 56, 50, 45, 45, 45, 46, 46, 46, 46, 47, 47, 47, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
94 | 47, 48, 48, 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 51, 51, 51, 51, 52, 52, 52, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
95 | 52, 53, 53, 53, 53, 54, 54, 54, 54, 55, 55, 55, 55, 56, 56, 56, 56, 56, 56, 56, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
96 | 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
97 | 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
98 | 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
99 | 56, 56, 56, 55, 55, 55, 55, 54, 54, 54, 54, 53, 53, 53, 53, 52, 52, 52, 52, 51, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
100 | 51, 51, 51, 50, 50, 50, 50, 49, 49, 48, 47, 47, 46, 45, 45, 44, 43, 43, 42, 41, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
101 | 41, 40, 39, 39, 38, 37, 37, 36, 35, 34, 33, 32, 31, 29, 28, 27, 26, 25, 24, 23, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
102 | 21, 20, 19, 18, 17, 16, 15, 13, 12, 11, 10, 9, 8, 9, 9, 10, 10, 11, 11, 12, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
103 | 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
104 | 21, 21, 21, 20, 20, 20, 19, 19, 19, 18, 18, 18, 17, 17, 17, 17, 16, 16, 15, 15, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
105 | 15, 14, 14, 14, 13, 13, 13, 12, 12, 12, 11, 11, 11, 10, 10, 10, 9, 9, 9, 8, |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
106 | 8, 8, 7, 7, 7, 6, 6, 6, 5, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2 ); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
107 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
108 | return array($R[$i],$G[$i],$B[$i]); |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
109 | } |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
110 | |
85521c6e0022
Added recipe print yeasts section.
Michiel Broek <mbroek@mbse.eu>
parents:
11
diff
changeset
|
111 | |
85
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
112 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
113 | function sg_to_plato($sg) { |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
114 | if ($sg > 0.5) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
115 | return 259 - 259 / $sg; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
116 | return 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
117 | } |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
118 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
119 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
120 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
121 | function plato_to_sg($plato) { |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
122 | if ($plato < 259) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
123 | return 259 / (259 - $plato); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
124 | return 1.000; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
125 | } |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
126 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
127 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
128 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
129 | /* |
87
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
130 | * sugars is the total extract weight of sugars. |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
131 | */ |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
132 | function estimate_og($sugars, $batch_size) { |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
133 | $plato = 100 * $sugars / $batch_size; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
134 | $sg = plato_to_sg($plato); |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
135 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
136 | /* Average loops, HansH 5x. Brouwhulp 20x, about 10x is enough so keep 20. */ |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
137 | for ($i = 0; $i < 20; $i++) { |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
138 | if ($sg > 0) |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
139 | $plato = 100 * $sugars / ($batch_size * $sg); |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
140 | $sg = plato_to_sg($plato); |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
141 | } |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
142 | return $sg; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
143 | } |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
144 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
145 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
146 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
147 | function estimate_fg($percSugar, $percCara, $WGratio, $TotTme, $Temp, $attenuation, $og) { |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
148 | if ($percSugar > 40) |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
149 | $percSugar = 0; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
150 | if ($percCara > 50) |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
151 | $percCara = 0; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
152 | if (($WGratio > 0) && ($TotTme > 0)) { |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
153 | $BD = $WGratio; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
154 | $BD = max(2, min(5.5, $BD)); |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
155 | $Temp = max(60, min(72, $Temp)); |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
156 | } else { |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
157 | $BD = 3.5; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
158 | $Temp = 67; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
159 | $TotTme = 75; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
160 | } |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
161 | if ($attenuation < 30) |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
162 | $attenuation = 77; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
163 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
164 | $AttBeer = 0.00825 * $attenuation + 0.00817 * $BD - 0.00684 * $Temp + 0.00026 * $TotTme - 0.00356 * $percCara + 0.00553 * $percSugar + 0.547; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
165 | $fg = 1 + (1 - $AttBeer) * ($og - 1); |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
166 | return $fg; |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
167 | } |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
168 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
169 | |
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
170 | |
88 | 171 | function abvol($og, $fg) { |
172 | if ((4.749804 - $fg) <> 0) | |
173 | return 486.8693 * ($og - $fg) / (4.749804 - $fg); | |
174 | return 0; | |
175 | } | |
176 | ||
177 | ||
178 | ||
87
7f1d0abe5571
OG and FG are now calculated from the grist. The printed report has a summary an notes section at the end. The formulas are in the global formulas script.
Michiel Broek <mbroek@mbse.eu>
parents:
85
diff
changeset
|
179 | /* |
85
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
180 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
181 | Brouwhulp data.pas |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
182 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
183 | Function THop.FlavourContribution : double; //in % * concentration in g/l |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
184 | var bt, vol : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
185 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
186 | bt:= FTime.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
187 | vol:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
188 | if FRecipe <> NIL then vol:= FRecipe.BatchSize.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
189 | if FUse = huFirstWort then Result:= 0.15 * FAmount.Value * 1000 //assume 15% flavourcontribution for fwh |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
190 | else if bt > 50 then Result:= 0.10 * FAmount.Value * 1000 //assume 10% flavourcontribution as a minimum |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
191 | else |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
192 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
193 | Result:= 15.25 / (6 * sqrt(2 * PI)) * Exp(-0.5*Power((bt-21)/6, 2)) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
194 | * FAmount.Value * 1000; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
195 | if result < 0.10 * FAmount.Value * 1000 then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
196 | Result:= 0.10 * FAmount.Value * 1000 //assume 10% flavourcontribution as a minimum |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
197 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
198 | if vol > 0 then Result:= Result / vol; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
199 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
200 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
201 | Function THop.AromaContribution : double; //in % * concentration in g/l |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
202 | var bt, vol : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
203 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
204 | bt:= FTime.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
205 | vol:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
206 | if FRecipe <> NIL then vol:= FRecipe.BatchSize.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
207 | if bt > 20 then Result:= 0 |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
208 | else if bt > 7.5 then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
209 | Result:= 10.03 / (4 * sqrt(2 * PI)) * Exp(-0.5*Power((bt-7.5)/4, 2)) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
210 | * FAmount.Value * 1000 |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
211 | else if FUse = huBoil then Result:= FAmount.Value * 1000 |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
212 | else if FUse = huAroma then Result:= 1.2 * FAmount.Value * 1000 |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
213 | else if FUse = huWhirlpool then Result:= 1.2 * FAmount.Value * 1000 |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
214 | else if FUse = huDryHop then Result:= 1.33 * FAmount.Value * 1000; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
215 | if vol > 0 then Result:= Result / vol; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
216 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
217 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
218 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
219 | Procedure TFermentable.SetpHParameters(force : boolean); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
220 | var x, ebc : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
221 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
222 | if Between(FDIpH.Value, -0.01, 0.01) or Between(FAcidTo57.Value, -0.1, 0.1) or force then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
223 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
224 | ebc:= SRMtoEBC(FColor.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
225 | case FGrainType of |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
226 | gtBase, gtKilned: |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
227 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
228 | FDIpH.Value:= -0.0132 * ebc + 5.7605; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
229 | x:= 0.4278 * ebc - 1.8106; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
230 | FAcidTo57.Value:= x; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
231 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
232 | gtRoast: |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
233 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
234 | FDIpH.Value:= 0.00018 * ebc + 4.558; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
235 | FAcidTo57.Value:= -0.0176 * ebc + 60.04; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
236 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
237 | gtCrystal: |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
238 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
239 | FDIpH.Value:= -0.0019 * ebc + 5.2175; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
240 | FAcidTo57.Value:= 0.132 * ebc + 14.277; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
241 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
242 | gtSour: |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
243 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
244 | FDIpH.Value:= 3.44; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
245 | FAcidTo57.Value:= 337; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
246 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
247 | gtSpecial: //this could be anything. Assume for now it is a non-acidulated base or kilned malt |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
248 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
249 | FDIpH.Value:= -0.0132 * ebc + 5.7605; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
250 | FAcidTo57.Value:= 0.4278 * ebc - 1.8106; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
251 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
252 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
253 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
254 | //known parameters should be filled in here |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
255 | if FSupplier.Value = 'Weyermann' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
256 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
257 | if FName.Value = 'Vienna mout' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
258 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
259 | FDIpH.Value:= 5.65; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
260 | FAcidTo57.Value:= 1.6; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
261 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
262 | if FName.Value = 'Münchner I' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
263 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
264 | FDIpH.Value:= 5.44; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
265 | FAcidTo57.Value:= 8.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
266 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
267 | if FName.Value = 'Münchner II' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
268 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
269 | FDIpH.Value:= 5.54; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
270 | FAcidTo57.Value:= 5.6; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
271 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
272 | if FName.Value = 'Caramunich I' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
273 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
274 | FDIpH.Value:= 5.1; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
275 | FAcidTo57.Value:= 22.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
276 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
277 | if FName.Value = 'Caramunich II' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
278 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
279 | FDIpH.Value:= 4.71; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
280 | FAcidTo57.Value:= 49; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
281 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
282 | if FName.Value = 'Caramunich III' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
283 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
284 | FDIpH.Value:= 4.92; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
285 | FAcidTo57.Value:= 31.2; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
286 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
287 | if FName.Value = 'Cara-aroma' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
288 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
289 | FDIpH.Value:= 4.48; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
290 | FAcidTo57.Value:= 74.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
291 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
292 | if FName.Value = 'Carafa I' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
293 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
294 | FDIpH.Value:= 4.71; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
295 | FAcidTo57.Value:= 42; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
296 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
297 | if FName.Value = 'Carafa III' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
298 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
299 | FDIpH.Value:= 4.81; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
300 | FAcidTo57.Value:= 35.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
301 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
302 | if FName.Value = 'Carafa II' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
303 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
304 | FDIpH.Value:= 4.76; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
305 | FAcidTo57.Value:= 38.7; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
306 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
307 | if FName.Value = 'Carafa Special I' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
308 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
309 | FDIpH.Value:= 4.73; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
310 | FAcidTo57.Value:= 46.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
311 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
312 | if FName.Value = 'Carafa Special II' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
313 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
314 | FDIpH.Value:= 4.78; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
315 | FAcidTo57.Value:= 42.9; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
316 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
317 | if FName.Value = 'Carafa Special III' then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
318 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
319 | FDIpH.Value:= 4.83; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
320 | FAcidTo57.Value:= 38.9; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
321 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
322 | if IsInString(FName.Value, 'Zuurmout') then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
323 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
324 | FDIpH.Value:= 3.44; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
325 | FAcidTo57.Value:= 358.2; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
326 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
327 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
328 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
329 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
330 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
331 | function TFermentable.GetExtract: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
332 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
333 | Result := 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
334 | if FRecipe <> nil then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
335 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
336 | Result := FAmount.Value * FYield.Value / 100 * (1 - FMoisture.Value / 100); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
337 | if FAdded = atMash then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
338 | Result := Result * FRecipe.Efficiency / 100; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
339 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
340 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
341 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
342 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
343 | function TFermentable.GetKolbachIndex: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
344 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
345 | if FProtein.Value > 0 then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
346 | Result := FDissolvedProtein.Value / FProtein.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
347 | else |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
348 | Result := 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
349 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
350 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
351 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
352 | Procedure TWater.AddMinerals(Ca, Mg, Na, HCO3, Cl, SO4 : double); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
353 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
354 | FCalcium.Add(Ca); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
355 | FMagnesium.Add(Mg); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
356 | FSodium.Add(Na); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
357 | FBicarbonate.Add(HCO3); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
358 | FChloride.Add(Cl); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
359 | FSulfate.Add(SO4); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
360 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
361 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
362 | function TWater.GetResidualAlkalinity: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
363 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
364 | //Result in mg/l as CaCO3 |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
365 | Result:= FTotalAlkalinity.Value - (FCalcium.Value / 1.4 + FMagnesium.Value / 1.7); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
366 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
367 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
368 | const |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
369 | Ka1 = 0.0000004445; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
370 | Ka2 = 0.0000000000468; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
371 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
372 | Function PartCO3(pH : double) : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
373 | var H : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
374 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
375 | H:= Power(10, -pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
376 | Result:= 100 * Ka1 * Ka2 / (H*H + H * Ka1 + Ka1 * Ka2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
377 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
378 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
379 | Function PartHCO3(pH : double) : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
380 | var H : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
381 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
382 | H:= Power(10, -pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
383 | Result:= 100 * Ka1 * H / (H*H + H * Ka1 + Ka1 * Ka2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
384 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
385 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
386 | Function PartH2CO3(pH : double) : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
387 | var H : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
388 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
389 | H:= Power(10, -pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
390 | Result:= 100 * H * H / (H*H + H * Ka1 + Ka1 * Ka2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
391 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
392 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
393 | Function Charge(pH : double) : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
394 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
395 | Result:= (-2 * PartCO3(pH) - PartHCO3(pH)); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
396 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
397 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
398 | //Z alkalinity is the amount of acid (in mEq/l) needed to bring water to the target pH (Z pH) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
399 | Function TWater.ZAlkalinity(pHZ : double) : double; //in mEq/l |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
400 | var CT, DeltaCNaught, DeltaCZ, C43, Cw, Cz : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
401 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
402 | C43:= Charge(4.3); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
403 | Cw:= Charge(FpH.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
404 | Cz:= Charge(pHz); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
405 | DeltaCNaught:= -C43+Cw; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
406 | CT:= GetAlkalinity / 50 / DeltaCNaught; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
407 | DeltaCZ:= -Cz+Cw; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
408 | Result:= CT * DeltaCZ; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
409 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
410 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
411 | //Z Residual alkalinity is the amount of acid (in mEq/l) needed to bring the water in the mash to the target pH (Z pH) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
412 | Function TWater.ZRA(pHZ : double) : double; //in mEq/l |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
413 | var Calc, Magn, Z : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
414 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
415 | Calc:= FCalcium.Value / (MMCa / 2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
416 | Magn:= FMagnesium.Value / (MMMg / 2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
417 | Z:= ZAlkalinity(pHZ); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
418 | Result:= Z - (Calc / 3.5 + Magn / 7); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
419 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
420 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
421 | Function TWater.ProtonDeficit(pHZ : double) : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
422 | var i : integer; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
423 | F : TFermentable; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
424 | x : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
425 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
426 | Result:= ZRA(pHZ) * FAmount.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
427 | //proton deficit for the added malts |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
428 | for i:= 0 to FRecipe.NumFermentables - 1 do |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
429 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
430 | F:= FRecipe.Fermentable[i]; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
431 | if (F.AddedType = atMash) and (F.GrainType <> gtNone) then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
432 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
433 | x:= F.AcidRequired(pHZ) * F.Amount.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
434 | Result:= Result + x; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
435 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
436 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
437 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
438 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
439 | Function TWater.MashpH : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
440 | var n : integer; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
441 | pd : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
442 | pH, deltapH, deltapd : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
443 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
444 | Result:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
445 | n:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
446 | pH:= 5.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
447 | deltapH:= 0.001; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
448 | deltapd:= 0.1; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
449 | pd:= ProtonDeficit(pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
450 | while ((pd < -deltapd) or (pd > deltapd)) and (n < 1000) do |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
451 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
452 | inc(n); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
453 | if pd < -deltapd then ph:= ph - deltapH |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
454 | else if pd > deltapd then pH:= pH + deltapH; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
455 | pd:= ProtonDeficit(pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
456 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
457 | Result:= pH; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
458 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
459 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
460 | Function TWater.MashpH2(PrDef : double) : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
461 | var n : integer; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
462 | pd : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
463 | pH, deltapH, deltapd : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
464 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
465 | Result:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
466 | n:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
467 | pH:= 5.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
468 | deltapH:= 0.001; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
469 | deltapd:= 0.1; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
470 | pd:= ProtonDeficit(pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
471 | while ((pd < PrDef-deltapd) or (pd > PrDef + deltapd)) and (n < 1000) do |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
472 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
473 | inc(n); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
474 | if pd < PrDef-deltapd then ph:= ph - deltapH |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
475 | else if pd > PrDef+deltapd then pH:= pH + deltapH; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
476 | pd:= ProtonDeficit(pH); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
477 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
478 | Result:= pH; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
479 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
480 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
481 | function TWater.GetAlkalinity: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
482 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
483 | Result := FBicarbonate.Value / 1.22; //mEq/l |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
484 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
485 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
486 | function TWater.GetHardness: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
487 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
488 | Result := 0.14 * FCalcium.Value - 0.23 * FMagnesium.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
489 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
490 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
491 | function TWater.GetEstPhMash: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
492 | {var |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
493 | pHdemi, S: double;} |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
494 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
495 | Result:= MashpH; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
496 | { Result := 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
497 | if FRecipe <> nil then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
498 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
499 | pHDemi := FRecipe.pHdemi; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
500 | S := 0.013 * FRecipe.MashThickness + 0.013; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
501 | Result := pHDemi + ResidualAlkalinity / 50 * S; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
502 | end;} |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
503 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
504 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
505 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
506 | function TBeerStyle.GetBUGUMin: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
507 | var |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
508 | B, G: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
509 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
510 | Result:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
511 | if ((FOGMax.Value + FOGMin.Value) > 0) and ((FIBUMax.Value + FIBUMin.Value) > 0) then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
512 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
513 | G := (FOGMax.Value - FOGMin.Value) / ((FOGMax.Value + FOGMin.Value) / 2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
514 | B := (FIBUMax.Value - FIBUMin.Value) / ((FIBUMax.Value + FIBUMin.Value) / 2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
515 | if G > B then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
516 | Result := ((FIBUMin.Value + FIBUMax.Value) / 2) / (1000 * (FOGMax.Value - 1)) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
517 | else |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
518 | Result := FIBUMin.Value / (1000 * (((FOGMax.Value + FOGMin.Value) / 2) - 1)); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
519 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
520 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
521 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
522 | function TBeerStyle.GetBUGUMax: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
523 | var |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
524 | B, G: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
525 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
526 | Result:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
527 | if ((FOGMax.Value + FOGMin.Value) > 0) and ((FIBUMax.Value + FIBUMin.Value) > 0) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
528 | and (FOGMin.Value > 1) then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
529 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
530 | G := (FOGMax.Value - FOGMin.Value) / ((FOGMax.Value + FOGMin.Value) / 2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
531 | B := (FIBUMax.Value - FIBUMin.Value) / ((FIBUMax.Value + FIBUMin.Value) / 2); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
532 | if G > B then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
533 | Result := ((FIBUMin.Value + FIBUMax.Value) / 2) / (1000 * (FOGMin.Value - 1)) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
534 | else |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
535 | Result := FIBUMax.Value / (1000 * (((FOGMax.Value + FOGMin.Value) / 2) - 1)); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
536 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
537 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
538 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
539 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
540 | CalcOG; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
541 | CalcBitterness; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
542 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
543 | // Get concentration of ions in diluted brewwater (1) and target water (2) in mmol/l |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
544 | Ca1 := W.Calcium.Value / MMCa; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
545 | Ca2 := W2.Calcium.Value / MMCa; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
546 | Mg1 := W.Magnesium.Value / MMMg; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
547 | Mg2 := W2.Magnesium.Value / MMMg; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
548 | Na1 := W.Sodium.Value / MMNa; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
549 | Na2 := W2.Sodium.Value / MMNa; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
550 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
551 | CO31 := W.Bicarbonate.Value / MMHCO3; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
552 | CO32 := W2.Bicarbonate.Value / MMHCO3; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
553 | SO41 := W.Sulfate.Value / MMSO4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
554 | SO42 := W2.Sulfate.Value / MMSO4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
555 | Cl1 := W.Sulfate.Value / MMSO4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
556 | Cl2 := W2.Sulfate.Value / MMSO4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
557 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
558 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
559 | procedure MixWater(W1, W2, Wr: TWater); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
560 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
561 | function Mix(V1, V2, C1, C2: double): double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
562 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
563 | if (V1 + V2) > 0 then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
564 | Result := (V1 * C1 + V2 * C2) / (V1 + V2) |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
565 | else |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
566 | Result := 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
567 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
568 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
569 | var |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
570 | vol1, vol2: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
571 | phnew: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
572 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
573 | vol1 := W1.Amount.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
574 | vol2 := W2.Amount.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
575 | if (vol1 + vol2) > 0 then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
576 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
577 | Wr.Amount.Value := vol1 + vol2; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
578 | Wr.Calcium.Value := Mix(vol1, vol2, W1.Calcium.Value, W2.Calcium.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
579 | Wr.Magnesium.Value := Mix(vol1, vol2, W1.Magnesium.Value, W2.Magnesium.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
580 | Wr.Sodium.Value := Mix(vol1, vol2, W1.Sodium.Value, W2.Sodium.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
581 | Wr.Bicarbonate.Value := Mix(vol1, vol2, W1.Bicarbonate.Value, W2.Bicarbonate.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
582 | Wr.Sulfate.Value := Mix(vol1, vol2, W1.Sulfate.Value, W2.Sulfate.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
583 | Wr.Chloride.Value := Mix(vol1, vol2, W1.Chloride.Value, W2.Chloride.Value); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
584 | pHnew := -log10((power(10, -W1.pHWater.Value) * vol1 + |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
585 | power(10, -W2.pHWater.Value) * vol2) / (vol1 + vol2)); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
586 | Wr.pHwater.Value := pHnew; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
587 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
588 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
589 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
590 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
591 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
592 | function TRecipe.CalcColorWort : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
593 | var |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
594 | i: integer; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
595 | F: TFermentable; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
596 | c, v: double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
597 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
598 | c := 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
599 | v := FBatchSize.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
600 | if (v > 0) and (High(FFermentables) >= 0) then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
601 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
602 | for i := Low(FFermentables) to High(FFermentables) do |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
603 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
604 | F := TFermentable(FFermentables[i]); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
605 | c := c + F.Amount.Value * F.Color.Value / v; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
606 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
607 | c := c * 8.34436; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
608 | case FColorMethod of |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
609 | cmMorey: c := 1.49 * Power(c, 0.69); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
610 | cmMosher: c := 0.3 * c + 4.7; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
611 | cmDaniels: c := 0.2 * c + 8.4; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
612 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
613 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
614 | Result:= c; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
615 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
616 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
617 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
618 | procedure TRecipe.CalcWaterBalance; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
619 | var |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
620 | i: integer; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
621 | F: TFermentable; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
622 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
623 | FAbsorbedByGrain := 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
624 | for i := Low(FFermentables) to High(FFermentables) do |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
625 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
626 | F := TFermentable(FFermentables[i]); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
627 | if (F.FermentableType = ftGrain) or (F.FermentableType = ftAdjunct) then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
628 | FAbsorbedByGrain := FAbsorbedByGrain + F.Amount.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
629 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
630 | FAbsorbedByGrain := FAbsorbedByGrain * Settings.GrainAbsorption.Value; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
631 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
632 | if FEquipment.CalcBoilVolume.Value then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
633 | {FBoilSize.Value := FBatchSize.Value / (1 - (FEquipment.EvapRate.Value / 100) * |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
634 | (FBoilTime.Value / 60));} |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
635 | FBoilSize.Value:= FBatchSize.Value + FEquipment.BoilSize.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
636 | * FEquipment.EvapRate.Value / 100 * |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
637 | (FBoilTime.Value / 60); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
638 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
639 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
640 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
641 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
642 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
643 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
644 | Procedure TRecipe.CalcCalories; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
645 | var sug, alc, org, fig : double; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
646 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
647 | if FOGFermenter.Value > 1.001 then org:= FOGFermenter.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
648 | else if FOG.Value > 1.001 then org:= FOG.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
649 | else org:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
650 | if FFG.Value > 0.999 then fig:= FFG.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
651 | else if FEstFG.Value > 1.000 then fig:= FEstFG.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
652 | else if FEstFG2.Value > 1.000 then fig:= FEstFG2.Value |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
653 | else fig:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
654 | if (org > 0) and (fig > 0) then |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
655 | begin |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
656 | alc:= 1881.22 * fig * (org - fig) / (1.775 - org); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
657 | sug:= 3550 * fig * (0.1808 * org + 0.8192 * fig - 1.0004); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
658 | FCalories.Value:= (alc + sug) / (12 * 0.0295735296); |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
659 | end |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
660 | else FCalories.Value:= 0; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
661 | end; |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
662 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
663 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
664 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
665 | |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
666 | */ |
ca7a37586551
Added SG/Plato formulas for PHP. Added OG calculation in the recipe print.
Michiel Broek <mbroek@mbse.eu>
parents:
83
diff
changeset
|
667 | |
11 | 668 | ?> |