[general]
name=Isoliner - грид и изолинии
qgisMinimumVersion=3.16
description=Кригинг 2D (GSLIB KB2D) и построение изолиний/контурных полигонов в QGIS.
about=Группа команд Processing: 2D Kriging (точки в растр) и Изолинии из растра (линии и контурные полигоны, границы которых совпадают с изолиниями). Подходит для отметок пласта, мощностей, ФМС, химии и любых числовых атрибутов. Разработано при поддержке ООО «Информ++» (www.informpp.ru).
version=1.8.0
author=ООО «Информ++»
email=xbbster@gmail.com
homepage=https://github.com/Valery35/qgis-isoliner
tracker=https://github.com/Valery35/qgis-isoliner/issues
repository=https://github.com/Valery35/qgis-isoliner
tags=kriging,interpolation,contour,isolines,contours,geology,gslib,raster,interpolation
category=Analysis
icon=icon.svg
experimental=False
deprecated=False
hasProcessingProvider=yes
changelog=1.8.0
    - Профили обработки: именованные наборы «вариограмма (наггет, тип, порог,
      радиус, азимут, оси) + отсев ураганных проб», хранятся глобально, между
      проектами. «Вариограмма» и «Кросс-валидация» получили поле «Сохранить
      профиль под именем» и «Загрузить профиль обработки», «2D Kriging» -
      «Загрузить профиль обработки» (подставляет профиль поверх полей).
      Прежняя галка «Подставить последнюю рекомендованную модель» убрана.
    - Новый шестой инструмент «Профили обработки»: показать список, сохранить
      вручную, удалить, очистить.
    - Под списком профиля показываются его параметры строкой ниже, а в
      «2D Kriging» и «Кросс-валидации» - напоминание, что расчёт пойдёт по
      профилю, а не по полям диалога (как живой показ размера грида; на QGIS
      без старого API виджетов - обычный список).
    - Структуры 2 и 3 вариограммы убраны (использовались редко) - осталась
      одна структура с азимутом и анизотропией.
    - Порядок параметров везде единый: сначала вариограмма, отсев ураганных
      проб - в самом конце.
    - Формулировка: «изотропная» вместо «всенаправленная» экспериментальная
      вариограмма.
    1.7.4
    - «2D Kriging»: галка «Подставить последнюю рекомендованную модель»
      перенесена из «Дополнительно» в основные параметры - её видно сразу,
      без разворачивания дополнительного раздела. Поведение прежнее:
      подобранная в «Вариограмме» или «Кросс-валидации» модель подставляется
      при запуске, подстановка отмечается строкой в Журнале.
    - Руководство: добавлена таблица всех параметров инструмента
      «Вариограмма» и описание полей выходной таблицы (series, lag, gamma,
      npairs). PDF пересобран. Изменений в расчётах нет.
    1.7.3
    - Номер версии модуля теперь виден в трёх местах: строкой «Isoliner
      X.Y.Z» в начале выполнения любого инструмента (Журнал), подвалом в
      HTML-отчётах (вариограмма и кросс-валидация) и в конце встроенной
      справки каждого инструмента. Версия читается из metadata.txt, отдельно
      нигде не дублируется.
    1.7.2
    - Руководство дополнено разделом про инструмент «Вариограмма
      (экспериментальная)»: зачем нужен предпросмотр, группировка по виду
      разведки, выбор максимального расстояния по выходу кривой на плато и
      рабочий цикл с кросс-валидацией. В раздел кросс-валидации добавлена
      поясняющая схема «оценка против факта». PDF пересобран. Изменений в
      коде нет.
    1.7.1
    - Инструменты пронумерованы в названиях (1-5), чтобы задать порядок в
      панели Processing (она сортирует по алфавиту имени): 1 Кригинг,
      2 Изолинии, 3 Вариограмма, 4 Кросс-валидация, 5 Демо-скважины.
    - «Вариограмма»: предупреждение, когда радиус подобранной модели
      достигает края окна (максимального расстояния) - кривая не вышла
      на плато, порог получен экстраполяцией, радиус считать нижней
      оценкой. Сообщение разведено по случаям: окно мало (увеличить),
      окно перешагивает тренд или безрудную зону (уменьшить).
    - «Вариограмма»: у поля максимального расстояния указаны единицы
      слоя, добавлено предупреждение, когда оно меньше типичного шага
      между точками (значение задаётся в метрах, не в километрах).
    - «Вариограмма»: минимум точек в группе - параметр в процентах от
      выборки (по умолчанию 2) с нижним полом 30 точек. Малочисленные
      группы пропускаются и перечисляются в журнале, общая кривая
      строится всегда.
    - Порог предупреждения о гауссовой модели с почти нулевым наггетом
      («бычьи глаза») сделан относительным (наггет менее 5 процентов от суммарного
      порога).
    - «Кросс-валидация»: рекомендация по MSDR теперь даёт точный приём -
      умножить (или разделить) наггет и вклады на MSDR, не трогая радиус
      и модель. Оценки не меняются, поправляется только карта ошибки.
    - Перенос модели в «2D Kriging»: «Вариограмма» и «Кросс-валидация»
      запоминают подобранную/проверенную модель, а в «2D Kriging»
      появилась галка «Подставить последнюю рекомендованную модель»
      (по умолчанию выключена) - числа подставляются осознанно, после
      просмотра отчёта, а не вслепую.
    - «Вариограмма»: в описании - «всенаправленная» вместо кальки
      «омнинаправленная».
    1.7.0
    - Новый инструмент «Вариограмма (экспериментальная)»: строит
      экспериментальную вариограмму по точкам и выдаёт HTML-отчёт с
      графиком. Поверх облака накладывается текущая модель, по желанию
      рассчитывается рекомендованная модель (наггет, порог, ранг) на
      чистом numpy, без сторонних зависимостей. Есть поле группировки
      (напр. вид разведки) - на каждое значение строится отдельная
      вариограмма, чтобы увидеть, общая ли структура у поверхностной и
      подземной сети при разной плотности наблюдений. Подбор не
      применяет декластеризацию, поэтому смещение по плотности отбора
      остаётся видимым, а не замаскированным. Рекомендованные числа
      переносятся в «2D Kriging» вручную.
    1.6.0
    - Гауссово сглаживание поля перенесено из «Изолинии из растра» в
      «2D Kriging»: опция «Сгладить грид (Гаусс)», по умолчанию выключена.
      Изолинии строятся ровно по видимому растру, без скрытого сужения
      диапазона уровней. Скругление линий (Chaikin) осталось в изолиниях
      отдельной опцией.
    - Руководство переработано: темы каждого инструмента собраны в его
      подразделы (вариограмма, отсев, стандартная ошибка - под 2D Kriging;
      сглаживание, полигоны, оформление, типичные ситуации - под Изолинии).
      Заголовки переведены на автоматическую нумерацию, оформление выверено.
    1.5.1
    - Руководство: разделы переставлены по порядку инструментов модуля
      (2D Kriging и его темы -> Изолинии и его темы -> Кросс-валидация ->
      Демо -> Типичные ситуации). Добавлены скриншоты окон всех четырёх
      инструментов и панели «Обработка».
    1.5.0
    - Отчёт кросс-валидации: QQ-график ошибок (по форме - z-оценка, для
      проверки нормальности и поиска второй популяции), дисперсия данных
      в таблице метрик, номера скважин в подсказках на графике
      «оценка vs факт», подписи восьми худших остатков.
    - Руководство дополнено схемами для новичков: процесс (точки → грид →
      изолинии), веса кригинга, радиус поиска, наггет крупным планом,
      анизотропия, отсев проб (до/после). Карта стандартной ошибки -
      на сгенерированном примере. В отчёт добавлен блок «Параметры
      кригинга» (только отличные от стандартных). Обновлён README.
    1.4.2
    - Обновлено руководство пользователя (формулировки) и README.
    1.4.1
    - Обновлён контактный email сопровождающего.
    1.4.0
    - Новый инструмент «Создать пример скважин (демо)»: генерация учебного
      точечного слоя с полями кровли (абс. отметка), мощности и содержания
      абстрактного компонента, имеющими пространственную структуру (диапазоны
      кровли/мощности - по образцу пласта КрII). Для обучения и проверки без
      реальных данных. Псевдонимы на демо-слое не ставятся, чтобы не было
      предупреждений при подаче слоя в кригинг/кросс-валидацию.
    1.3.0
    - Кросс-валидация: необязательный HTML-отчёт (по умолчанию) -
      интерактивный график «оценка vs факт» + гистограмма ошибок и
      таблица метрик (plotly); без plotly - отчёт с метриками текстом.
    - Кросс-валидация: в отчёт и Журнал добавлен блок рекомендаций
      (авто-интерпретация ME/MSDR/R: утвердить параметры или как
      поправить наггет/силл/радиус).
    - Кригинг и кросс-валидация: в Журнал выводится дисперсия данных
      как ориентир для силла (наггет/силл - в абсолютных единицах).
    1.2.0
    - Кросс-валидация: добавлена кнопка «Справка» в окно инструмента.
    - Кросс-валидация: необязательное «поле номера скважины» переносится
      в слой остатков; колонка факта названа по проверяемому полю.
    - Слой остатков: поле std_error переименовано в std_resid
      (стандартизованный остаток со знаком; это не дисперсия).
    - Слой остатков: у полей заданы псевдонимы (понятные названия), слой
      автоматически называется по проверяемому полю и источнику.
    1.1.0
    - Новый инструмент «Кросс-валидация вариограммы» (leave-one-out):
      метрики ME/MAE/RMSE/MSDR/R и слой остатков для подбора вариограммы.
    - Руководство дополнено разделом о кросс-валидации.
    1.0.0
    - Первый стабильный релиз (снят флаг experimental).
    - Сводно с 0.6.x-0.7.x: стандартная ошибка кригинга; отсев/срезка
      ураганных проб; журнал пропусков; руководство (PDF) и кнопка «Справка»;
      слой изолиний над полигонами; исправлена степенная модель; smoke-тесты.
    0.7.2
    - Отсев/срезка ураганных проб в 2D Kriging: границы значения Z по
      абсолюту (мин/макс) или перцентилю; режимы «удалить» и «срезать»
      (capping). В «Дополнительно».
    0.7.1
    - В журнал выводится число точек, пропущенных без значения поля
      (точки с пустым/нечисловым Z в кригинг не попадают - это уже так).
    0.7.0
    - 2D Kriging: необязательный выход «Стандартная ошибка кригинга»
      (sqrt дисперсии ошибки) - карта неопределённости оценки.
    0.6.5
    - Метаданные для публикации в репозитории QGIS (ссылки на GitHub).
    0.6.4
    - Обновлено руководство; оглавление в PDF пересчитывается автоматически.
    0.6.3
    - Исправлена степенная модель вариограммы: «радиус a» трактуется как
      показатель ω (0<ω<2), авто=max/3 к ней больше не применяется.
    - Предупреждения (pushWarning) для сомнительных параметров вариограммы.
    - Слияние совпадающих точек - относительно охвата (корректно для любых CRS).
    - Добавлен smoke-тест движка kb2d (tests/).
    0.6.2
    - Обновлён текст руководства пользователя (PDF).
    0.6.1
    - ИСПРАВЛЕНО: слой изолиний мог не появляться из-за переупорядочивания
      слоёв. Теперь переставляется только слой полигонов (под линии),
      отложенно и безопасно - узел линий не трогается.
    0.6.0
    - Руководство пользователя (PDF) в комплекте; кнопка «Справка» в обоих
      инструментах открывает его. Слой изолиний теперь над полигонами.
    0.5.3
    - Документация: заметка про обновление и перезагрузку без перезапуска
      QGIS (в т.ч. через Plugin Reloader).
    0.5.2
    - Вернул лёгкое скругление линий (Chaikin) поверх сглаженного поля -
      убирает «октагоны» от грубого грида, пересечений не создаёт.
      Отдельный параметр «Скругление линий, итераций».
    0.5.1
    - Сглаживание перенесено на уровень поля (гауссово, радиус в ячейках)
      вместо сглаживания отдельных линий: изолинии больше не пересекаются
      в густых местах и плавны на углах.
    0.5.0
    - Контурные полигоны строятся по умолчанию (во временный слой).
    - Запоминание выбранного поля Z между запусками.
    - Иконка плагина; чистка кода; расширенный README.
    0.4.4
    - Обрезка по контуру скважин без native:minimumboundinggeometry
      (dissolve + convexhull) - работает в QGIS 3.40.
    0.4.3
    - Линии и пояса из одного набора линий; границы совпадают и по краям;
      нодирование через splitwithlines.
    0.4.2
    - Переименование в Isoliner; полигоны = пояса между изолиниями (без дыр,
      без «ступенек»), диапазон пояса - выборкой растра.
