//Сепсис диагностика и лечение стационар

Переменные: лейкоциты, с1,с2, с3, с4,с5, СОФА, ШКГ, г1, г2, г3, р1, ид_масса, глюкоза, глюкоза_нач, ДОЗА_ИКД,ИНФ_НОМЕР_ИКД, рост, масса, маска, ивл, нивл, пол, цвд, инф_номер_меропенем, инф_номер_линезолид, доза_норадреналин, инф_номер_норадреналин, инф_номер_кристаллоиды, цвд_нач, незрелые_формы, ивл_более15, инф_номер_имипинем, антибиотик1, антибиотик2, дополнение_норад, инф_номер_даптомицин, алгоритм_гипертонии_начат, кристаллоиды_начаты, инф_номер_вазопрессин, инф_номер_адреналин, адреналин_начат, МассивДата[6], ПеременнаяМинуты

БЛОК ВХОД
	адреналин_начат=0
	кристаллоиды_начаты=0
	алгоритм_гипертонии_начат=0
	маска=0
	ивл=0
	нивл=0
	глюкоза=0
	глюкоза_нач=0
	УСТАНОВИТЬ_ИНТЕРВАЛ(ТЕМП, 30 мин)
	УСТАНОВИТЬ_ИНТЕРВАЛ(АД, 10мин)
мультивыбор("Шкала SOFA", "Дыхание (РаО2//FiO2)/>400=0/<400=1/<300=2/<200 с респираторной поддержкой=3/<100 с респираторной поддержкой=4", с1, "Коагуляция (тромбоциты 10^9)/>150=0/<150=1/<100=2/<50=3/<20=4", с2, "Печень (билирубин ммоль//л)/<20=0/20-32=1/33-101=2/102-204=3/>204=4", с3, "Почки (креатинин ммоль//л) или объем диуреза/<110=0/110-170=1/171-299=2/креатинин 300-400 или диурез 500 мл в день=3/ креатинин>440 или диурез<200 мл в день=4", с3) 
МУЛЬТИВЫБОР("Шкала ГЛАЗГО(GLASGOW)", "Открывание глаз/Спонтанно=5/На речь=4/На боль=3/Не открывает=2", г1, "Речь/Разговаривает//Ориентирован=5/Разговаривает//Дезориентирован=4/Непонятные слова=3/Нечленораздельные звуки=2/Отсутсвует=1", г2, "Моторика/Выполняет команды=5/Целенаправленная на болевой раздражитель=4/Нецеленаправленная на болевой раздражитель=3/Тоническое сгибание=2/Тоническое разгибание=1/Отсутсвует=0", г3)
ШКГ=г1+г2+г3
ЕСЛИ ШКГ==15 то
с4=0
КОНЕЦ_ЕСЛИ
ЕСЛИ ШКГ==13 или ШКГ==14 то
с4=1
КОНЕЦ_ЕСЛИ
ЕСЛИ ШКГ>=10 и ШКГ<=12 то
с4=2
КОНЕЦ_ЕСЛИ
ЕСЛИ ШКГ>6 и ШКГ<=9 то
с4=3
КОНЕЦ_ЕСЛИ
ЕСЛИ ШКГ==6 то
с4=4
КОНЕЦ_ЕСЛИ
ЕСЛИ СРАД>=70 то 
с5=0
иначе
с5=ВЫБОР("Артериальная гипотензия", "Нет инотропной подержки", 1, "допамин<5мкг/кг/мин или добутамин",2, "допамин<5 мкг/кг/мин или адреналин<0,1 или норадреналин<0,1",3, "допамин>5 мкг/кг/мин или адреналин>0,1 или норадреналин>0,1", 4)
КОНЕЦ_ЕСЛИ
СОФА=с1+с2+с3+с4+с5
ВЫЗОВ_ВРАЧА("Состояние пациента оценивается в "+строка(СОФА)+" баллов(а) по шкале SOFA", 1мин)
р1=ВЫБОР("Подозрение на очаг инфекции (гнойник) или документально подтвержденная инфекция?", "Да",1,"Нет",0)	
ЕСЛИ СОФА>=2 и р1==1 то
		ВЫЗОВ_ВРАЧА("Диагностирован сепсис.", 1мин)
	иначе
		ВЫЗОВ_ВРАЧА("Сепсис не диагностирован. Завершение работы алгоритма.", 1мин)
		ОСТАНОВИТЬ_АЛГОРИТМ
	КОНЕЦ_ЕСЛИ
	МАССА=ВВОД("Введите массу пациента, (кг).", 20, 250,станд_вес)
	ПОЛ=ВЫБОР("Выберите пол пациента:", "мужской", 1, "женский", 0, 1-станд_пол)
	рост=ВВОД("Введите рост пациента, (см)", 50, 250,станд_рост)
	
	ВЫЗОВ_ВРАЧА("Произведите забор крови 2 порции по 10 мл из разных доступов для микробиологического исследования, если не было произведено ранее.", 1мин)
	ВЫЗОВ_ВРАЧА("Проведите поиск очага инфекции (рентген, УЗИ, КТ, МРТ) и забор отделяемого или биоптат тканей из очага инфекции.", 10 мин)
	
	ВЫЗОВ_ВРАЧА("Обеспечение центрального венозного доступа.", 1мин)
	цвд_нач=ВВОД("Введите ЦВД, (мм.рт.ст.)", 0, 200)
	АКТИВИРОВАТЬ_БЛОК(измерение_цвд, 1 сек)
	
	АКТИВИРОВАТЬ_БЛОК(КОНТРОЛЬ_АД, 10 мин)
	УСТАНОВИТЬ_ИНТЕРВАЛ(СПО2, 5 сек)
	АКТИВИРОВАТЬ_БЛОК(контроль_спо2, 5 сек)
	УСТАНОВИТЬ_ИНТЕРВАЛ(ЧДД, 5сек)
	АКТИВИРОВАТЬ_БЛОК(обработка_чдд, 5сек)
	АКТИВИРОВАТЬ_БЛОК(контроль_температуры, 5 мин)
	УСТАНОВИТЬ_ИНТЕРВАЛ(ЧСС, 5сек)
	АКТИВИРОВАТЬ_БЛОК(ТЕРАПИЯ_АНТИБИОТИК, 8 час)
	СПАТЬ(15сек)
	АКТИВИРОВАТЬ_БЛОК(ТЕРАПИЯ_АНТИБИОТИК2, 12 час)
	СПАТЬ(15 мин)
	АКТИВИРОВАТЬ_БЛОК(КОНТРОЛЬ_ГЛЮКОЗЫ, 1 мин)
	КОНЕЦ_БЛОКА
//=========
БЛОК	измерение_ЦВД()
		МассивДата = ТекущееВремя
		ПеременнаяМинуты = минуты(МассивДата)+30
		МассивДата = дата(ПеременнаяМинуты)
		ЕСЛИ МассивДата[4]<10 то
			Вызов_Врача("При отсутствии ухудшения показателей повторное измерение ЦВД через 30 мин (в "+строка(МассивДата[3])+":0"+строка(МассивДата[4])+")", 5 мин )
		иначе
			Вызов_Врача("При отсутствии ухудшения показателей повторное измерение ЦВД через 30 мин (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 5 мин )
		КОНЕЦ_ЕСЛИ
	СПАТЬ(30 мин)
	цвд=ВВОД("Введите ЦВД, (мм.рт.ст.)", 0, 200)

КОНЕЦ_БЛОКА
//=========
БЛОК ТЕРАПИЯ_АНТИБИОТИК()
	антибиотик1=ВЫБОР("Выберите из следующих препаратов", "меропенем", 1, "имипинем/циластатин", 2)
	ЕСЛИ антибиотик1==1 то
	инф_номер_меропенем=ВВЕСТИ_НАЧАТЬ(1, меропенем, 1000/3 мг/час, 3час)
	иначе
	ВЫЗОВ_ВРАЧА("Развести имипинем с циластатином 500 мг в 100 мл растворителя– 0,9 % раствора хлорида натрия (NaCl), 10 % водного раствора декстозы, 5 % раствора декстозы. Вводить внутривенно капельно в течение 30 минут")
	КОНЕЦ_ЕСЛИ
	МассивДата = ТекущееВремя
	ПеременнаяМинуты = минуты(МассивДата)+480
	МассивДата = дата(ПеременнаяМинуты)
	Вызов_Врача("При отсутствии ухудшения показателей повторное введение антибиотика через 8 часов (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 30 мин )
КОНЕЦ_БЛОКА
//========
БЛОК ТЕРАПИЯ_АНТИБИОТИК2()
	СПАТЬ(30 сек)
	антибиотик2=ВЫБОР("Выберите из следующих препаратов", "линезолид", 1, "даптомицин", 2)
	ЕСЛИ антибиотик2==1 то	
	инф_номер_ЛИНЕЗОЛИД=ВВЕСТИ_НАЧАТЬ(2, линезолид, 1200 мг/час, 30 мин)
	МассивДата = ТекущееВремя
	ПеременнаяМинуты = минуты(МассивДата)+12*60
	МассивДата = дата(ПеременнаяМинуты)
	Вызов_Врача("При отсутствии ухудшения показателей повторное введение антибиотика через 12 часов (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 30 мин )
	иначе
	Доза(12, "мг/кгчас")
	инф_номер_даптомицин=ВВЕСТИ_НАЧАТЬ(2, даптомицин, 12*МАССА мг/час, 30 мин)
	МассивДата = ТекущееВремя
	ПеременнаяМинуты = минуты(МассивДата)+24*60
	МассивДата = дата(ПеременнаяМинуты)
	Вызов_Врача("При отсутствии ухудшения показателей повторное введение антибиотика через 24 часа (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 30 мин )
	СПАТЬ(12 час)
	КОНЕЦ_ЕСЛИ
	//спать(30мин)
КОНЕЦ_БЛОКА
//==========
БЛОК КОНТРОЛЬ_АД()
	ЕСЛИ (АД< 65 или цвд<8)	 и кристаллоиды_начаты==0 то
		кристаллоиды_начаты=1
		инф_номер_кристаллоиды=ВВЕСТИ_НАЧАТЬ(100, кристаллоиды, 2000 мл/час)//,30мин)
		МассивДата = ТекущееВремя
		ПеременнаяМинуты = минуты(МассивДата)+30
		МассивДата = дата(ПеременнаяМинуты)
		Вызов_Врача("При отсутствии ухудшения показателей уменьшение скорости введения кристаллоидов через 30 мин (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 30 мин )
		активировать_блок(терапия_норадреналин, 10 мин)
		СПАТЬ(30мин)
		ИЗМЕНИТЬ_СКОРОСТЬ(инф_номер_кристаллоиды, кристаллоиды, 500 мл/час)//, 6 час)
		СПАТЬ(6час)
		ЗАКОНЧИТЬ_ВВЕДЕНИЕ(инф_номер_кристаллоиды)
	КОНЕЦ_ЕСЛИ
КОНЕЦ_БЛОКА
//=========
БЛОК терапия_норадреналин()
		ЕСЛИ (АД<65 или цвд<0.9*цвд_нач) и адреналин_начат==0 то
		ВЫЗОВ_ВРАЧА("К 4 мл препарата Норадреналин 1 мг/мл добавляют 46 мл 5% раствора декстрозы. Не смешивать с другими препаратами.")
		адреналин_начат=1
		доза_норадреналин=0.1
		Доза(0.1, "мкг/кгмин")
		инф_номер_норадреналин=ВВЕСТИ_НАЧАТЬ(3, норадреналин, 0.1*МАССА*60*0.001 мг/час)
		КОНЕЦ_ЕСЛИ
	ЕСЛИ (АД<65 или цвд<0.9*цвд_нач) и адреналин_начат==1 то
		адреналин_начат=2
		доза_норадреналин=доза_норадреналин+0.1
		Доза(доза_норадреналин, "мкг/кгмин")
		ИЗМЕНИТЬ_СКОРОСТЬ(инф_номер_норадреналин, норадреналин, доза_норадреналин*МАССА*60*0.001 мг/час)
	КОНЕЦ_ЕСЛИ
	ЕСЛИ АД<65 и адреналин_начат==2 то
	дополнение_норад=ВЫБОР("Начать дополнительные вазопрессоры?", "Адреналин",1, "Вазопрессин",2,"Нет",3)
		ЕСЛИ дополнение_норад==1 то
		Доза(0.1, "мкг/кгмин")
		инф_номер_адреналин=ВВЕСТИ_НАЧАТЬ(2, адреналин_01, 0.1*МАССА*60*0.001 мг/час)
		ЕСЛИ АД>=70 то
	ЗАКОНЧИТЬ_ВВЕДЕНИЕ(инф_номер_адреналин)
		КОНЕЦ_ЕСЛИ
		КОНЕЦ_ЕСЛИ
		ЕСЛИ дополнение_норад==2 то
		Доза(0.03, "ЕД/мин")
		инф_номер_вазопрессин=ВВЕСТИ_НАЧАТЬ(2, вазопрессин, 0.03*60 ЕД/час) 
			ЕСЛИ АД>=70 то
			ЗАКОНЧИТЬ_ВВЕДЕНИЕ(инф_номер_вазопрессин)
		КОНЕЦ_ЕСЛИ
		КОНЕЦ_ЕСЛИ
		КОНЕЦ_ЕСЛИ
	ЕСЛИ АД>75 и адреналин_начат==1 то
		доза_норадреналин=доза_норадреналин-0.1
		Доза(доза_норадреналин, "мкг/кгмин")
		ИЗМЕНИТЬ_СКОРОСТЬ(инф_номер_норадреналин, норадреналин, доза_норадреналин*МАССА*60*0.001 мг/час)
	КОНЕЦ_ЕСЛИ
	ЕСЛИ АД>65 и АД<=75 и адреналин_начат==1 То
		ВЫЗОВ_ВРАЧА("При значении SvO2 < 70% начать переливание эритроцитарной массы до достижения гематокрита > 30% и Hb > 90 г/л. ", 10мин)
	КОНЕЦ_ЕСЛИ
	МассивДата = ТекущееВремя
	ПеременнаяМинуты = минуты(МассивДата)+10
	МассивДата = дата(ПеременнаяМинуты)
	ЕСЛИ (АД<65 или цвд<0.9*цвд_нач) то
	Вызов_Врача("Коррекция скорости введения норадреналина через 10 мин (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 30 мин )
	КОНЕЦ_ЕСЛИ
	КОНЕЦ_БЛОКА
//========
БЛОК контроль_спо2()
	
	
	ЕСЛИ пол==1 то
		ид_масса=0.9*рост-88
	иначе
		ид_масса=0.9*рост-92
	КОНЕЦ_ЕСЛИ
	ЕСЛИ СПО2< 90 то
	ЕСЛИ ЧДД >=12 и ЧДД <=20 и маска==0 и ивл==0 и нивл==0 то
		ВЫЗОВ_ВРАЧА("Установите маску с кислородом, скорость потока 10 л/мин.", 2мин)
		маска=1
	КОНЕЦ_ЕСЛИ
	ЕСЛИ ЧДД< 12 или ЧДД >20 то
		ЕСЛИ АД<85 и ивл==0 то
		ивл=1
		ВЫЗОВ_ВРАЧА("Подключите пациента к ИВЛ, режим CPAP, PEEP=7, ДО="+строка(8*ид_масса)+" мл, FiO2=0,5.", 2мин)
		СПАТЬ(15мин)
		КОНЕЦ_ЕСЛИ
		ЕСЛИ АД>=85 и нивл==0 и ивл==0 то
		нивл=1
		ВЫЗОВ_ВРАЧА("Подключите пациента к НИВЛ, FiO2=0,5.", 5мин)
		КОНЕЦ_ЕСЛИ
	КОНЕЦ_ЕСЛИ		
	КОНЕЦ_ЕСЛИ
	ЕСЛИ ЧДД> 25 и ивл==1 то
		ивл_более15=ВЫБОР("Пациент находится на ИВЛ более 15 минут?", "Да", 1, "Нет", 0)
		ЕСЛИ ивл_более15==1 то
		ВЫЗОВ_ВРАЧА("Критически высокая ЧДД. Завершение работы алгоритма.", 2мин)
		ОСТАНОВИТЬ_АЛГОРИТМ
		иначе
		СПАТЬ(10 мин)
			ЕСЛИ ЧДД>25 то
				ВЫЗОВ_ВРАЧА("Критически высокая ЧДД. Завершение работы алгоритма.", 2мин)
				ОСТАНОВИТЬ_АЛГОРИТМ
 			КОНЕЦ_ЕСЛИ
		КОНЕЦ_ЕСЛИ 
	КОНЕЦ_ЕСЛИ
КОНЕЦ_БЛОКА
//========
БЛОК обработка_чдд()
	ЕСЛИ ЧДД< 5 то
		ВЫЗОВ_ВРАЧА("Критически низкая ЧДД. Завершение работы алгоритма.", 2мин)
		ОСТАНОВИТЬ_АЛГОРИТМ
	КОНЕЦ_ЕСЛИ
КОНЕЦ_БЛОКА
//===============================================================================
БЛОК КОНТРОЛЬ_ТЕМПЕРАТУРЫ()
	СПАТЬ(5 мин)
	ЕСЛИ ТЕМП>38.5  то
	Доза(15, "мг/кг")
		Ввести_начать (1,парацетамол, 15*МАССА*4 мг/час,15мин)
		ЕСЛИ МАССА>=66 то
		Ввести_начать(1, парацетамол, 1000*4 мг/час, 15 мин)
		КОНЕЦ_ЕСЛИ
		СПАТЬ(4 час)
КОНЕЦ_ЕСЛИ
КОНЕЦ_БЛОКА
//*******************
БЛОК КОНТРОЛЬ_ГЛЮКОЗЫ()
глюкоза_нач=глюкоза
//глюкоза=ВВОД("Введите значение глюкозы крови, (ммоль/л)", 0, 60)
ЕСЛИ глюкоза<=9.9 то
	
		МассивДата = ТекущееВремя
		ПеременнаяМинуты = минуты(МассивДата)+240
		МассивДата = дата(ПеременнаяМинуты)
		Вызов_Врача("При отсутствии ухудшения показателей повторный забор крови содержание глюкозы через 4 часа (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 15 мин )
		
		СПАТЬ(4час)
				
	иначе
		
		МассивДата = ТекущееВремя
		ПеременнаяМинуты = минуты(МассивДата)+60
		МассивДата = дата(ПеременнаяМинуты)
		Вызов_Врача("При отсутствии ухудшения показателей повторный забор крови содержание глюкозы через 1 час (в "+строка(МассивДата[3])+":"+строка(МассивДата[4])+")", 15 мин )
		СПАТЬ(1час)
	КОНЕЦ_ЕСЛИ
ВЫЗОВ_ВРАЧА("Инсулинотерапия. К 50 ед. инсулина короткого действия добавьте 2 мл 20% альбумина и 50 мл 0,9% NaCl.", 2мин)
ДОЗА_ИКД=0.1
ИНФ_НОМЕР_ИКД=ВВЕСТИ_НАЧАТЬ(2, икд, ДОЗА_ИКД*МАССА Ед/час)
СПАТЬ(60мин)
глюкоза=ВВОД("Введите значение глюкозы крови, (ммоль/л)", 0, 60)
ЕСЛИ глюкоза==глюкоза_нач то
		ДОЗА_ИКД=ДОЗА_ИКД+0.2
		Доза(ДОЗА_ИКД, "мг/кгчас")
		ИЗМЕНИТЬ_СКОРОСТЬ(ИНФ_НОМЕР_ИКД, икд, ДОЗА_ИКД*МАССА мг/час)
	КОНЕЦ_ЕСЛИ
	ЕСЛИ глюкоза<=4 то
		ЗАКОНЧИТЬ_ВВЕДЕНИЕ(ИНФ_НОМЕР_ИКД)
	КОНЕЦ_ЕСЛИ 
	ЕСЛИ глюкоза_нач-глюкоза>=4 то
		ДОЗА_ИКД=ДОЗА_ИКД-0.05
		Доза(ДОЗА_ИКД, "мг/кгчас")
		ИЗМЕНИТЬ_СКОРОСТЬ(ИНФ_НОМЕР_ИКД, икд, ДОЗА_ИКД*МАССА мг/час)
	КОНЕЦ_ЕСЛИ

КОНЕЦ_БЛОКА





