autosens.js 1.1 KB

12345678910111213141516171819202122232425262728
  1. // для settings/autosens.json параметры: monitor/glucose.json monitor/pumphistory-24h-zoned.json settings/basal_profile.json settings/profile.json monitor/carbhistory.json settings/temptargets.json
  2. var printLog = function(...args) {};
  3. var process = { stderr: { write: printLog } };
  4. function generate(glucose_data, pumphistory_data, basalprofile, profile_data, carb_data = {}, temptarget_data = {}) {
  5. if (glucose_data.length < 72) {
  6. return {"ratio": 1, "error": "not enough glucose data to calculate autosens"};
  7. }
  8. var iob_inputs = {
  9. history: pumphistory_data,
  10. profile: profile_data
  11. };
  12. var detection_inputs = {
  13. iob_inputs: iob_inputs,
  14. carbs: carb_data,
  15. glucose_data: glucose_data,
  16. basalprofile: basalprofile,
  17. temptargets: temptarget_data
  18. };
  19. detection_inputs.deviations = 96;
  20. var ratio8h = freeaps_autosens(detection_inputs);
  21. detection_inputs.deviations = 288;
  22. var ratio24h = freeaps_autosens(detection_inputs);
  23. var lowestRatio = ratio8h.ratio < ratio24h.ratio ? ratio8h : ratio24h;
  24. return {"ratio": lowestRatio};
  25. }