• Регистрация
Александр
Александр -1.91
н/д

Дискретизация непрерывных функций

23.10.2019

Здравствуйте!

Возникла необходимость дискретизировать функцию, таким образом, чтобы период дескритизации можно было задать новый, например 1с, 5с, 10с или любой другой.

Имеем:

Данные реального объекта, давление в барабане за 3 суток. Данные писались не через равные промежутки времени: могли записаться через 5с, потом через 30с, через 40с и т.д.

давление в барабане

Эти данные хорошо сглаживаются сплайном csaps(x,y, 0.99999) (на мой взгляд то что нужно).

пример:

сплайн давления

Черная линия - сглаженые данные, красная - исходные данные.

Время из привычного перевел через "juliandate()", для работы функции "csaps".

Теперь стоит задача по сплайну создать новые массивы, для Х с заданным периодом дискретизации, для Y точка со сплайна (значение давления в данном случае).

 

Кто подскажет, в какую сторону нужно копать? Как получить новые два массива, ну или один, где будет содержать новые значения X и Y?

Теги

    23.10.2019

    Ответы

    • Денис Жегалин
      Денис Жегалин +90.00
      23.10.2019 09:54

      Посмотрите здесь, пожалуйста: https://docs.exponenta.ru/signal/ref/resample.html

      • Ye_Gayev
        Ye_Gayev+4.24
        1.12.2019 16:04

        Во-первых, пишется "дИскрЕтизаця".
        Во-вторых, я понимаю вашу проблему так: есть массив данных Х, полученный каждую секунду.

        Тогда "передискретизация" на 2 сек. выглядит так:
        X2=X(1:2:end).
        А взятые через каждые 5 сек, так:
        X5=X(1:5:end).

        • Александр
          Александр -1.91
          2.12.2019 01:30

          Молодец, хоть знаешь как дискретизация пишется. Только читать тебе все равно придется научиться. Я вроде описал проблему. Иди учись читать.

          • Ye_Gayev
            Ye_Gayev+4.24
            2.12.2019 17:43

            Нах!
            Не люблю хамов.

        • Александр
          Александр -1.91
          2.12.2019 01:35

          Все. Не парьтесь. Нашел как это все делается