83 lines
4.0 KiB
C#
83 lines
4.0 KiB
C#
public class MedicationCorrelationOptions
|
|
{
|
|
public const string SectionName = "MedicationCorrelation";
|
|
|
|
/// <summary>Lookback window for medication-vital correlation (minutes).</summary>
|
|
public int CorrelationWindowMinutes { get; set; } = 90;
|
|
|
|
/// <summary>
|
|
/// Drug name (lowercase) → observation codes that may be affected.
|
|
/// Keys are normalized to lowercase for case-insensitive lookup.
|
|
/// </summary>
|
|
public Dictionary<string, string[]> DrugVitalMappings { get; set; } = new()
|
|
{
|
|
// Beta-blockers
|
|
["metoprolol"] = new[] { "SYSTOLIC_BP", "HEART_RATE", "DIASTOLIC_BP" },
|
|
["labetalol"] = new[] { "SYSTOLIC_BP", "HEART_RATE", "DIASTOLIC_BP" },
|
|
["atenolol"] = new[] { "SYSTOLIC_BP", "HEART_RATE", "DIASTOLIC_BP" },
|
|
["propranolol"] = new[] { "SYSTOLIC_BP", "HEART_RATE", "DIASTOLIC_BP" },
|
|
["esmolol"] = new[] { "SYSTOLIC_BP", "HEART_RATE", "DIASTOLIC_BP" },
|
|
["carvedilol"] = new[] { "SYSTOLIC_BP", "HEART_RATE", "DIASTOLIC_BP" },
|
|
|
|
// Vasopressors / inotropes
|
|
["norepinephrine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
["epinephrine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE", "GLUCOSE_MG_DL" },
|
|
["vasopressin"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP" },
|
|
["dopamine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
["dobutamine"] = new[] { "SYSTOLIC_BP", "HEART_RATE" },
|
|
["phenylephrine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
|
|
// Calcium channel blockers
|
|
["diltiazem"] = new[] { "HEART_RATE", "SYSTOLIC_BP", "DIASTOLIC_BP" },
|
|
["verapamil"] = new[] { "HEART_RATE", "SYSTOLIC_BP", "DIASTOLIC_BP" },
|
|
["amlodipine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP" },
|
|
["nicardipine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
|
|
// Antihypertensives
|
|
["nitroglycerin"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
["nitroprusside"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
["hydralazine"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP", "HEART_RATE" },
|
|
|
|
// Opioids
|
|
["morphine"] = new[] { "RESP_RATE", "SPO2", "SYSTOLIC_BP", "HEART_RATE" },
|
|
["fentanyl"] = new[] { "RESP_RATE", "SPO2", "HEART_RATE" },
|
|
["hydromorphone"] = new[] { "RESP_RATE", "SPO2", "SYSTOLIC_BP" },
|
|
["remifentanil"] = new[] { "RESP_RATE", "SPO2", "HEART_RATE" },
|
|
|
|
// Sedatives / anaesthetics
|
|
["propofol"] = new[] { "RESP_RATE", "SPO2", "SYSTOLIC_BP", "HEART_RATE" },
|
|
["midazolam"] = new[] { "RESP_RATE", "SPO2" },
|
|
["lorazepam"] = new[] { "RESP_RATE", "SPO2" },
|
|
["ketamine"] = new[] { "HEART_RATE", "SYSTOLIC_BP", "RESP_RATE" },
|
|
|
|
// Antiarrhythmics
|
|
["amiodarone"] = new[] { "HEART_RATE", "SYSTOLIC_BP" },
|
|
["adenosine"] = new[] { "HEART_RATE" },
|
|
["digoxin"] = new[] { "HEART_RATE" },
|
|
["atropine"] = new[] { "HEART_RATE" },
|
|
|
|
// Anticoagulants
|
|
["heparin"] = new[] { "HEART_RATE" },
|
|
|
|
// Antipyretics
|
|
["acetaminophen"] = new[] { "TEMP_C" },
|
|
["ibuprofen"] = new[] { "TEMP_C" },
|
|
|
|
// Glucose management
|
|
["insulin"] = new[] { "GLUCOSE_MG_DL" },
|
|
["dextrose"] = new[] { "GLUCOSE_MG_DL" },
|
|
["glucagon"] = new[] { "GLUCOSE_MG_DL" },
|
|
|
|
// Corticosteroids
|
|
["dexamethasone"] = new[] { "GLUCOSE_MG_DL", "TEMP_C" },
|
|
["methylprednisolone"] = new[] { "GLUCOSE_MG_DL", "TEMP_C" },
|
|
["hydrocortisone"] = new[] { "GLUCOSE_MG_DL", "TEMP_C" },
|
|
["prednisone"] = new[] { "GLUCOSE_MG_DL", "TEMP_C" },
|
|
|
|
// Diuretics
|
|
["furosemide"] = new[] { "SYSTOLIC_BP", "DIASTOLIC_BP" },
|
|
|
|
// Bronchodilators
|
|
["albuterol"] = new[] { "HEART_RATE", "SPO2" }
|
|
};
|
|
} |