#openmdao
Вопрос:
У меня есть результаты фазы в выходной сетке моей транскрипции. Чтобы выполнить некоторые дальнейшие анализы, мне нужно, чтобы мои результаты были представлены в равнорасположенной сетке. Как я могу использовать полученные комбинированные многочлены для получения значений выходных данных моих временных рядов в координатах новой равнораспространенной сетки?
Ответ №1:
Это было бы достигнуто с помощью второго вывода временных рядов: https://openmdao.github.io/dymos/features/phases/timeseries.html#interpolated-timeseries-outputs
Для этого вам понадобится, чтобы вторичные временные ряды использовали транскрипцию Гаусса-Лобатто 3-го порядка.
- 3-й сегмент Гаусса-Лобатто состоит из 3 узлов
- значение каждого состояния вводится в двух конечных точках
- значение каждого элемента управления вводится в двух конечных и средней точках
- если не указано иное, сегменты в фазе расположены на равном расстоянии друг от друга
- если мы используем «сжатую» транскрипцию, значения состояния в общей точке последовательных сегментов предоставляются только один раз
Итак, основываясь на приведенном здесь тестовом примере, вы могли бы сделать что-то вроде следующего:
tx_2 = dm.GaussLobatto(num_segments=10, order=3, compressed=True)
phase.add_timeseries('timeseries2', transcription=tx_2, subset='state_input')
Dymos выполнит интерполяцию из первичной транскрипции фазы на дискретизацию, указанную для timeseries2
.