diff --git a/lib/determine-basal/determine-basal.js b/lib/determine-basal/determine-basal.js index d148d2038..b390f30f3 100644 --- a/lib/determine-basal/determine-basal.js +++ b/lib/determine-basal/determine-basal.js @@ -351,6 +351,9 @@ var determine_basal = function determine_basal(glucose_status, currenttemp, iob_ var lastCOBpredBG; var lastUAMpredBG; var UAMduration = 0; + var remainingCItotal = 0; + var remainingCIs = []; + var predCIs = []; try { iobArray.forEach(function(iobTick) { //console.error(iobTick); @@ -368,6 +371,10 @@ var determine_basal = function determine_basal(glucose_status, currenttemp, iob_ // bilinear curve peaking at remainingCIpeak at 2h (24*5m) and ending at 4h (48*5m intervals) var intervals = Math.min( COBpredBGs.length, 48-COBpredBGs.length ); var remainingCI = Math.max(0, intervals / 24 * remainingCIpeak ); + remainingCItotal += predCI+remainingCI; + remainingCIs.push(round(remainingCI,1)); + predCIs.push(round(predCI,1)); + //process.stderr.write(round(predCI,1)+"+"+round(remainingCI,1)+" "); COBpredBG = COBpredBGs[COBpredBGs.length-1] + predBGI + Math.min(0,predDev) + predCI + remainingCI; aCOBpredBG = aCOBpredBGs[aCOBpredBGs.length-1] + predBGI + Math.min(0,predDev) + predACI; // for UAMpredBGs, predicted carb impact drops at minDeviationSlope @@ -404,6 +411,10 @@ var determine_basal = function determine_basal(glucose_status, currenttemp, iob_ } catch (e) { console.error("Problem with iobArray. Optional feature Advanced Meal Assist disabled:",e); } + console.error("predCIs:",predCIs.join(" ")); + console.error("remainingCIs:",remainingCIs.join(" ")); + console.error("COB:",meal_data.mealCOB,"remainingCItotal/csf:",round(remainingCItotal/csf,2),"remainingCarbs:",round(remainingCarbs,2)); + //,"totalCA:",round(totalCA,2),"remainingCItotal/csf+totalCA:",round(remainingCItotal/csf+totalCA,2)); rT.predBGs = {}; IOBpredBGs.forEach(function(p, i, theArray) { theArray[i] = round(Math.min(401,Math.max(39,p)));