by "Grog" (Alan W. Grogono), Professor Emeritus, Tulane University Department of Anesthesiology
The page describes the logic utilized to generate the text reports. as well as the development of the necessary equations and iterative subroutines required to convert the raw data into the diagrams on the screen.
This diagram shows the radial zones employed to generate the sentence fragments. Each zone is numbered. The numbers correspond to the radial search used to choose a code which generate the Sentence Fragments.
In a Classical Zone a phrase or sentence is added describing the zone.
The expanding family of rectangles determine the choice of adjectives used to describe the degree of acidosis and alkalosis. Normal; Minimal; Mild; Moderate; Marked; Severe. The corners of these rectangles corresponds to the slope for pH = 7.4.
To Simulate Human Report |
The algorithm produces reports with a style and a range of distinctions which a human being might compose. Each report, or even a small series of reports, should appear to be "human". However, because no random variation is included, there is no pretense that a longer series of reports might be mistaken as actually coming from a human hand.
Radial Search & Characterize Magnitude |
The computer program conducts a radial search of the diagram to determine which sector (1 - 29) contains the result. The sector corresponds to a stored numerical sequence, each number in which corresponds to a sentence fragment in the final report. Two additional numbers govern the adjectives which describe the magnitude of the respiratory and metabolic components; these numbers are derived from the location either inside or outside the central rectangles ( A - E) and are inserted at the appropriate point in the numerical sequence. A final descriptive phrase is included when the location is characteristic of a chronic or an acute disturbance.
[H^{+}] (30.17 + BE) = 22.63 (PCO_{2} + 13.33) |
A position on the diagram generates X and Y coordinates (PCO_{2} and SBE). An initial approximation is essential. Without it, the iterative process diverges instead of converging. These equations provide a first approximation, e.g., to obtain bic from BE and PCO_{2}.
BE = 0.9287 * bic + 13.77 * pH - 124.58 |
It is a pleasure to thank Dr. Severinghaus for giving me these equations which are used in iterative procedures to obtain successively better approximations
[H^{+}] x [HCO_{3}^{-}] = 24 x PCO_{2} |
This is the equation used to derive [HCO_{3}^{-}] from pH and PCO_{2}.
Javascript |
Moving the mouse over the diagram generates values for PCO_{2} and SBE. The following Javascript Code shows how these equations were employed to derive accurate bicarbonate values:
function PCO2andBEtoBIC() { | |
bic = (BE + 30.17) / (0.94292 + 12.569 / PCO2); | // bic approximation via Grogono equation |
for (ii=0;ii<6;ii++) { | // iterative procedure six times |
H = BICandPCO2toH(); | // [H+] via Modified Henderson Equation |
bic = (bic + BEandHtoBIC())/2; | // split old value and new Siggaard-Anderson |
} | |
return bic; | // return bic |
} | |
function BEandPHtoPCO2() { | |
return Math.exp((9-pH)*2.302585) * ((BE -13.77 * pH +124.578)/0.9287) / 24; | //Siggaard-Anderson |
} | |
function BICandPCO2toH() { | |
return (24*PCO2/bic); | //Modified Henderson Equation |
} |
Computing Strategy |
When this website was introduced, Java was employed to run the diagrams and calculations. It was less than satisfactory originally and became more of a problem recently when constant updates were required. Javascript was adopted instead in 2017 and appears to provide the same, or better, functionality. Any advice or suggestions from Javascript-experts will be appreciated.
Acid-Base Tutorial Alan W. Grogono |
Copyright Mar 2018. All Rights Reserved |