1. Регистрирующимся в Спин-клубе!!!
    После регистрации вам придёт письмо со ссылкой-подтверждением. Имейте в виду, что некоторые почтовые сервисы могут автоматически отправляемые письма помещать в спам, поэтому после регистрации просматривайте всё, что приходит.
  2. В разделе Ресепшн сделан путеводитель по Спин-клубу
  3. Появилась возможность создания почтовых ящиков Гость@spin-club.ru Как это сделать смотрите "Ресепшн"
  4. Спин-клуб получил сертификат безопасности SSL обеспечивающий защищенный обмен данными и работает теперь по протоколу https

Поиск пиков

Тема в разделе "Мастерская", создана пользователем ik2532, 17 май 2008.

  1. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Может кто-нибудь знает хороший алгоритм поиска пиков? Или имеет идеи как его создать?
     
  2. neophit

    neophit Человек Команда форума

    Регистрация:
    27 мар 2007
    Сообщения:
    14.791
    Симпатии:
    52
    Баллы:
    48
    о каких пиках речь, Вы про арифметику? :)
     
  3. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Про нее, родимую...
     
  4. neophit

    neophit Человек Команда форума

    Регистрация:
    27 мар 2007
    Сообщения:
    14.791
    Симпатии:
    52
    Баллы:
    48
    дык ежели дифференцируемая в окрестности точки функция имеет в этой точке экстремум, то производная ф-ции там нулевая :)
     
  5. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Я в курсе. Даже про вторую производную. Только к реальной жизни это имеет мало отношения. Во-первых, никакой функции нет - это результаты сканирования оптического пропускания стекла по длинам волн. Во-вторых, кривая негладкая, а мелкие колебания дадут при дифференцировании кучи пиков и т.д. Чтобы дифференцировать нужно сначала как минимум все сгладить, возможно полиномом. При этом максимумы пиков наверняка сместятся. А меня интересует как раз точное положение максимумов (точнее, минимумов, так как мои пики торчат вниз). Короче, все непросто. Но ведь наверняка должны существовать отработанные алгоритмы для этих дел.
     
  6. neophit

    neophit Человек Команда форума

    Регистрация:
    27 мар 2007
    Сообщения:
    14.791
    Симпатии:
    52
    Баллы:
    48
    спектральщики небось знают...
    типо

    Вы не можете просматривать внешние ссылки, что-бы просмотреть зарегистрируйтесь или авторизуйтесь на форуме !

     
  7. ær

    ær оракул

    Регистрация:
    27 мар 2007
    Сообщения:
    10.366
    Симпатии:
    61
    Баллы:
    0
  8. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Не совсем. Дело в том, что там положение пиков как раз известно, а интересуют прочие их параметры - ширина, высота, площадь... В результате слишком много математики, в моем случае практически ненужной.
     
  9. ær

    ær оракул

    Регистрация:
    27 мар 2007
    Сообщения:
    10.366
    Симпатии:
    61
    Баллы:
    0
    да Вас небось вообще значения из какого-то конкретного диапазона интересуют?
     
  10. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Ну вообще-то по Х длина волны от 325 до 1000 нм (целое), по У значения пропускания от 0 до 100%. Кривая неровная с большим числом (около 10) больших и маленьких пиков, иногда раздвоенных. Интересуют точные длины волн на которых находятся вершины пиков (минимумов).
     
  11. ær

    ær оракул

    Регистрация:
    27 мар 2007
    Сообщения:
    10.366
    Симпатии:
    61
    Баллы:
    0
    дайти табличку посмотреть.
     
  12. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    К сожалению сейчас не с собой. В понедельник с работы принесу.
     
  13. neophit

    neophit Человек Команда форума

    Регистрация:
    27 мар 2007
    Сообщения:
    14.791
    Симпатии:
    52
    Баллы:
    48
    и все ж какая Вам нужна точность по длине волны тож скажите
     
  14. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Длина волны вобще-то целая. Если минимум будет лежать на 807 нм, то 807 нм мне и нужно получить. Но в случае, если минимум будет состоять, например, их 2-х одинаковых по пропусканию точек, то спекулятивно можно взять ххх,5 нм. Хотя мне нужно во-первых отмаркировать пики на графике и, во-вторых, выделить соответствующие строчки в таблице данных, а это можно сделать только с целой длиной волны или выделять для одного пика две лежащие рядом строки, что как-то некрасиво :rolleyes:
     
  15. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48

    Вы не можете просматривать внешние ссылки, что-бы просмотреть зарегистрируйтесь или авторизуйтесь на форуме !

     
  16. ær

    ær оракул

    Регистрация:
    27 мар 2007
    Сообщения:
    10.366
    Симпатии:
    61
    Баллы:
    0
    если грубо - можно взять только значения, которые меньше скольки-то (для этой таблички - 60), а из каждой получившейся серии выбирать минимальное значение. только тогда с раздвоенными вершинами фигня получается.
    по хорошему-то наверное книжку неофитову читать надо.
     
  17. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Неа. Фиг кто меня заставит такие книжки читать. :p Ужо набацал на чистой логике алгоритм. Ищет, поганец! Осталось немного долизать :)
     
  18. neophit

    neophit Человек Команда форума

    Регистрация:
    27 мар 2007
    Сообщения:
    14.791
    Симпатии:
    52
    Баллы:
    48
    я тож думаю, что несколько циклов типо for должны решать эту заморочку :)
    благо диапазон невелик и количество шагов тож
     
  19. ær

    ær оракул

    Регистрация:
    27 мар 2007
    Сообщения:
    10.366
    Симпатии:
    61
    Баллы:
    0
    дайти почитать.
     
  20. ik2532

    ik2532 Ангел™ Команда форума

    Регистрация:
    21 апр 2007
    Сообщения:
    10.464
    Симпатии:
    44
    Баллы:
    48
    Два for там, конечно, есть, только суть-то не в них, а в великом операторе if :) Вот исходная табличка, листинг процедуры и результат (peaks.csv).

    Вы не можете просматривать внешние ссылки, что-бы просмотреть зарегистрируйтесь или авторизуйтесь на форуме !


    В конечном файле пики отмаркированы отрицательными числами, их плечи - положительными с тем же модулем. Если задать условие, чтобы оба плеча были не короче, например, 4-х значений, то получится очень неплохое определение. В листинге массив Trans[325..1000] - исходные значения пропусканий.
    Это, конечно, еще сырое, но уже видно, что работает хорошо :)
     

Поделиться этой страницей