🧪 Цифровой помощник биохимика
Биотехнологические инструменты для лаборатории: калькулятор питательных сред и планирование полнофакторного эксперимента (DoE).
📋 Содержание
- Возможности
- Установка
- Запуск
- Структура проекта
- Калькулятор питательных сред
- Планирование эксперимента
- Сохранение и загрузка
- Требования
- Лицензия
✨ Возможности
🔬 Калькулятор питательных сред
- Расчёт состава питательной среды по процентному содержанию компонентов
- Поддержка массовых (нг, мкг, мг, г, кг) и объёмных (нл, мкл, мл, л) единиц
- Учёт коэффициента пересчёта для каждого реагента
- Учёт разбавления реагентов (фактор разбавления)
- Автоматический расчёт необходимого количества растворителя
- Сохранение и загрузка рецептов в JSON
📊 Планирование эксперимента (DoE)
- Полнофакторный план 2ᵏ (k факторов)
- Генерация матрицы планирования с центральными точками
- Рэндомизация порядка опытов
- Ввод и анализ результатов экспериментов
- Регрессионный анализ (среднее, дисперсия, стандартное отклонение, CV)
- Критерий Фишера для проверки адекватности модели
- Экспорт матрицы в CSV
🚀 Установка
1. Клонирование репозитория
git clone <repository-url>
cd nutrient_medium_pyqt
2. Создание виртуального окружения (рекомендуется)
bash
python3 -m venv venv
source venv/bin/activate # Linux/Mac
# или
venv\Scripts\activate # Windows
- Установка зависимостей
pip install -r requirements.txt
▶️ Запуск
Из командной строки
bash
python3 main.py
Через скрипт
bash
chmod +x run.sh
./run.sh
📁 Структура проекта text nutrient_medium_pyqt/ ├── main.py # Точка входа ├── run.sh # Скрипт запуска ├── requirements.txt # Зависимости ├── README.md # Документация │ └── src/ # Исходный код ├── models/ # Модели данных │ ├── reagent.py # Класс Reagent │ ├── medium_model.py # Модель расчёта сред │ └── experiment_model.py # Модель планирования эксперимента │ ├── views/ # GUI компоненты │ ├── main_window.py # Главное окно │ ├── medium_view.py # Окно калькулятора сред │ └── experiment_view.py # Окно планирования эксперимента │ └── controllers/ # Контроллеры ├── medium_controller.py # Логика калькулятора └── experiment_controller.py # Логика планирования
🧪 Калькулятор питательных сред
Основные поля
Поле Описание Общее количество Общий объём/масса готовой среды Растворитель Название растворителя (вода, буфер и т.д.) Название Имя реагента % Процентное содержание в среде Единица Единица измерения реагента Коэфф. Коэффициент пересчёта (например, для солей-гидратов) Разбавление (x) Во сколько раз разбавлен исходный раствор
Пример использования
Укажите общий объём среды (например, 1000 мл)
Добавьте реагенты с их процентным содержанием
При необходимости укажите коэффициент пересчёта и разбавление
Нажмите "Рассчитать"
В столбце "Количество" отобразятся необходимые объёмы/массы
#📈 Планирование эксперимента
Вкладка "Параметры эксперимента"
Факторы Фактор — название независимой переменной
Нулевой уровень (0) — базовое значение
Шаг — интервал варьирования
Верхний уровень (+1) = нулевой уровень + шаг (вычисляется автоматически)
Нижний уровень (-1) = нулевой уровень – шаг (вычисляется автоматически)
Единица измерения — °C, pH, г/л и т.д.
Отклики
Зависимые переменные (OD600, концентрация продукта и т.д.)
Настройки Количество центральных точек — для оценки дисперсии воспроизводимости
Рэндомизация порядка опытов — случайный порядок выполнения
Вкладка "Матрица планирования" Отображает сгенерированный план эксперимента
Факторные точки помечены комбинацией уровней (+/–)
Центральные точки выделены жёлтым цветом
Кнопка "Экспорт в CSV" сохраняет матрицу в файл
Вкладка "Анализ результатов"
Введите результаты экспериментов в таблицу
Нажмите "Провести регрессионный анализ"
Получите:
Среднее значение отклика
Общую дисперсию
Стандартное отклонение
Коэффициент вариации
Дисперсию воспроизводимости (по центральным точкам)
Критерий Фишера для проверки адекватности модели
💾 Сохранение и загрузка Калькулятор сред 💾 Сохранить — сохранить рецепт в JSON-файл
📂 Загрузить — загрузить сохранённый рецепт
Планирование эксперимента 📊 Экспорт в CSV — сохранить матрицу планирования
📦 Требования
Пакет Версия Назначение PyQt5 ≥ 5.15.0 Графический интерфейс numpy ≥ 1.19.0 Математические вычисления Проверка установки
python3 -c "import PyQt5; import numpy; print('OK')"
📝 Формат JSON (калькулятор сред)
{
"total_amount": 1000.0,
"amount_unit": "мл",
"solvent": "Вода",
"reagents": [
{
"name": "Глюкоза",
"percentage": 2.0,
"unit": "г",
"conversion_factor": 1.0,
"dilution_factor": 1.0
}
]
}
🐛 Устранение неполадок
Ошибка "ModuleNotFoundError: No module named 'PyQt5'"
pip install PyQt5
Ошибка "No module named 'numpy'"
bash
pip install numpy
Проблемы с отображением кириллицы
Убедитесь, что в системе установлены русские шрифты
📄 Лицензия © 2026 Цифровой помощник биохимика
Версия: 1.0.0
🙏 Благодарности Разработано с использованием:
PyQt5 — GUI framework
NumPy — численные вычисления