Как определить диаметр «дыры» в данных / функции? - PullRequest
0 голосов
/ 09 июля 2020

У меня есть файл данных, который выводится в результате моделирования. Данные имеют форму, аналогичную приведенной на изображении ниже.

Я хочу найти длину / диаметр «отверстия» в функции (часть функции с отрицательной кривизной). Однако реальный результат имеет шум, небольшие, но заметные вариации, и он может содержать несколько «дыр» (мне нужны только самые большие.

Я знаю, как найти самую большую дыру, так что здесь нет проблем.

Я попытался начать с минимума отверстия, затем go влево и найти точку, в которой значение функции меньше предыдущего. Затем go вправо, чтобы найти точка, где функция равна или больше значения слева. Затем просто измените их координату x и Воля. Это работает для исходной функции, потому что она аналитическая без шума и вариаций, однако не работает для последних раз.

Я работаю со сценарием Fortran90, но вы можете просто объяснить алгоритм или написать объяснение на python (я могу перевести его на Fortran сам).

Спасибо заранее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...