Вычтите смещение или тренд от сигналов временной области, содержавшихся в iddata объекты
detrend вычитает смещения или линейные тренды из данных ввода - вывода временного интервала, представленных в iddata объекты. detrend или вычисляет данные о тренде, чтобы вычесть или вычитает тренд, который вы задаете.
Для более общей функции удаления тренда, которая не требует iddata объекты, смотрите detrend.
вычисляет и вычитает кусочно-линейные тренды для данных с сегментированными трендами, с помощью точек останова, которые вы задаете с data_d = detrend(data,1,brkpt)brkpt.
Второй аргумент, который соответствует Type, должен быть 1.
С этим синтаксисом вы не можете получить получившуюся кусочно-линейную информацию о тренде как выход.
Удалите смещения из установившихся сигналов в iddata объект при помощи detrend вычислить и вычесть средние значения ввода и вывода.
Загрузите данные временных рядов ввода и вывода y2 и u2. Создайте iddata объект data2, использование данные и шаг расчета 0,08 секунд.
load dryer2 y2 u2 data2 = iddata(y2,u2,0.08);
Используйте detrend и вычислить средние значения и вычесть их из сигналов ввода и вывода. Используйте входной параметр Tr хранить вычисленную информацию тренда. Отобразите на графике исходные данные и детрендированные данные вместе.
[data2_d,Tr] = detrend(data2); plot(data2,data2_d) legend('Original Data','Detrended Data')

Детрендированные данные переключили приблизительно 5 модулями. Смотрите Tr получить точные средние значения что detrend вычисленный и вычтенный. Эти значения возвращены в InputOffset и OutputOffset свойства.
Tr
Trend specifications for data "data2" with 1 input(s), 1 output(s), 1 experiment(s):
DataName: 'data2'
InputOffset: 5.0000
OutputOffset: 4.8901
InputSlope: 0
OutputSlope: 0
Среднее значение исходного входа выше, чем среднее значение исходного выхода.
Удалите линейный тренд из сигнала в iddata объект и наложение линия тренда на до и после графика данных.
Загрузите и постройте данные сигнала из файла lintrend2. В данном примере только выходные данные обеспечиваются в iddata объект dataL.
load lintrend2 dataL plot(dataL,'b')

График показывает ясный линейный тренд в данных. Используйте detrend линейная опция (Type = 1) вычитать тренд из данных. detrend соответствует данным и определяет линейный тренд, чтобы вычесть. Включайте TrendInfo объект Tr как выходной аргумент, таким образом, вы видите что detrend вычитает.
[dataL_d,Tr] = detrend(dataL,1);
Отобразите детрендированные данные на графике против исходных данных.
hold on plot(dataL_d,'g') legend('Original','Detrended','Location','northwest')

Линейный тренд был удален. Смотрите Tr получить больше информации об удаленном тренде.
Tr
Trend specifications for data "dataL" with 0 input(s), 1 output(s), 1 experiment(s):
DataName: 'dataL'
InputOffset: [1x0 double]
OutputOffset: 0.8888
InputSlope: [1x0 double]
OutputSlope: 19.3830
OutputOffset и OutputSlope свойства обеспечивают параметры линии что detrend удаленный. Можно восстановить эту линию, и затем наложить ее на до и после графика данных. SamplingInstants свойство DataL предоставляет моментам времени, сопоставленным данные.
m = Tr.OutputSlope
m = 19.3830
b = Tr.OutputOffset
b = 0.8888
t = dataL.SamplingInstants; TrLn = m*t+b; plot(t,TrLn,'r') legend('Original','Detrended','Trendline','Location','northwest')

Удалите известные смещения из пары сигнала ввода - вывода, содержавшейся в iddata object.
Detrend может вычислить и вычесть средние значения для сигналов ввода и вывода, приводящий к нулевому среднему значению детрендировал сигналы. Однако, если вы уже знаете, что у вас есть определенные смещения данных заранее, у вас может быть detrend вычтите их из своих сигналов вместо этого. Определение смещений также позволяет вам сохранять ненулевую рабочую точку в detrend результат.
Загрузите данные SISO, содержащие векторы u2 и y2. В данном примере предположите, что вы знаете, что оба сигнала имеют смещение 4 от ожидаемой рабочей точки 1. Объедините эти векторы в iddata object, использование шага расчета 0,08 секунд и графика это.
load dryer2 u2 y2 data = iddata(y2,u2,0.08); plot(data)

Известное смещение 4 (от рабочей точки 1) отображается в графиках. Можно создать TrendInfo возразите, чтобы получить это смещение, с помощью функционального getTrend.
Создайте TrendInfo объект, и затем набор его свойства смещения.
T = getTrend(data); T.InputOffset = 4; T.OutputOffset = 4
Trend specifications for data "data" with 1 input(s), 1 output(s), 1 experiment(s):
DataName: 'data'
InputOffset: 4
OutputOffset: 4
InputSlope: 0
OutputSlope: 0
Используйте detrend вычитать смещение из данных. Постройте его вместе с исходными данными.
data_d = detrend(data,T); hold on plot(data_d) legend('Original','Detrended')

Смещение 4 было удалено.
Детрендируйте данные с сегментированными кусочно-линейными трендами путем определения точек останова, чтобы разграничить сегменты.
Большая часть detrend синтаксисы принимают и вычисляют один тренд для каждого из сигналов. Однако в некоторых случаях существуют разрывы в линейных трендах, вызванных тестовыми изменениями конфигурации, условиями окружающей среды или другими влияниями. Когда сигнал отображает такую сегментацию, у вас может быть detrend работайте с тестовыми сегментами независимо. Для этого задайте точки останова в brkpt входной параметр. Это индексы к моментам времени в сигнале, в котором линейные тренды изменяют наклон.
Можно знать эти точки останова впереди, на основе изменений, которые вы знаете, произошел во время сбора данных. В качестве альтернативы вы, возможно, должны аппроксимировать их путем осмотра самих данных.
Загрузите данные, смотрите его структуру и содержимое, и постройте их. Эти данные состоят из выходных данных только в iddata объект dataLb2.
load brkTrend dataLb2 dataLb2
dataLb2 =
Time domain data set with 512 samples.
Sample time: 0.00390625 seconds
Outputs Unit (if specified)
y1
plot(dataLb2)

В данном примере данные знали точки останова в индексах [100 300]. Применение шага расчета (свойство Ts), эти точки останова соответствуют фактическим моментам времени можно следующим образом:
brkpt=[100 300]; brkpt_time = brkpt*dataLb2.Ts
brkpt_time = 1×2
0.3906 1.1719
Детрендируйте данные с помощью brkpt.
dataLb2_d = detrend(dataLb2,1,brkpt);
Отобразите исходные и детрендированные данные на графике.
plot(dataLb2,dataLb2_d) legend('Original Data','Detrended Data')

Линейные сегменты тренда были удалены.
Примените уникальный набор точек останова к каждому эксперименту, когда вы детрендируете набор данных Multiexperiment.
Эксперименты в наборе данных мультиэксперимента могут содержать уникальные линейные отклоняющиеся разрывы. Можно применить уникальный набор точек останова к каждому эксперименту путем выражения их в массиве ячеек.
Загрузите данные, которые состоят из:
datmult, мультиэксперимент iddata объект, содержащий три эксперимента (выводит только),
bpn векторы, которые обеспечивают известные точки останова для каждого эксперимента в форме индексов к моментам времени
load multiexpdt datmult bp1 bp2 bp3 datmult
datmult =
Time domain data set containing 3 experiments.
Experiment Samples Sample Time
exp1 250 1
exp2 320 1
exp3 350 1
Outputs Unit (if specified)
y1
bp1,bp2,bp3
bp1 = 1×2
50 200
bp2 = 100
bp3 =
[]
Отобразите данные на графике. Среди потоков существуют существенные различия, и они дрейфуют на различных уровнях от нулевого среднего значения.
plot(datmult) legend

Для этого набора экспериментов известно, что существует уникальное отклонение для каждого запуска и уникальные разрывы, обозначенные bp векторы.
detrend может включить эти уникальные характеристики если bp информация предоставляется как массив ячеек.
Создайте массив ячеек.
bpcell = {bp1;bp2;bp3}bpcell=3×1 cell array
{[ 50 200]}
{[ 100]}
{0x0 double}
Примените detrend и постройте результат, с помощью той же шкалы в качестве исходного plot.
datmult_d = detrend(datmult,1,bpcell); figure plot(datmult_d) axis([0,inf,-15,30]) legend

Экспериментальные данные теперь лучше выравниваются и не дрейфуют значительно далеко от нулевого среднего значения.
Примените различные типы тренда к сигналам ввода и вывода, содержавшимся в an iddata объект.
Detrend принимает, что тот же тип тренда применяется к обоим сигналам ввода и вывода. В некоторых случаях может быть тип тренда, который присутствует только в одном сигнале. Можно выполнить detrend индивидуально на каждом сигнале путем извлечения сигналов в отдельный iddata объекты. Примените detrend к каждому объекту с помощью его отдельного типа тренда сигнала. Затем повторно соберите результаты назад в один детрендированный iddata объект.
Загрузите, исследуйте и отобразите данные на графике в iodatab.
load septrend iodatab; iodatab
iodatab =
Time domain data set with 1000 samples.
Sample time: 0.08 seconds
Outputs Unit (if specified)
y1
Inputs Unit (if specified)
u1
plot(iodatab)
hold on
Оба графика ввода и вывода показывают смещение. Однако выходной график также показывает инвертированный тренд V-формы, который не присутствует во входных данных.
Разделите входные данные и выходные данные в отдельные объекты для удаления тренда, с помощью iddata общая форма выбора данных (см., что Временной и частотный диапазон Представления Использует Объекты iddata):
data(samples,outputchannels,inputchannels)
idatab = iodatab(:,[],:); odatab = iodatab(:,:,[]);
Удалите смещение из входных данных, с помощью detrend вычислить и вычесть среднее значение.
idatab_d = detrend(idatab,0);
Удалите смещение и инвертированный-V тренд от выходных данных, с помощью индекса 500 средней точки в качестве точки останова.
odatab_d = detrend(odatab,1,500);
Объедините детрендированные входные и выходные данные в один iddata объект.
iodatab_d = [odatab_d,idatab_d];
Наложите детрендированные данные по исходным данным.
plot(iodatab_d) legend('original','detrended')

Входные и выходные данные теперь не содержат ни смещения, ни тренда V-формы.
data — Данные ввода - вывода временного интервалаiddata объектДанные ввода - вывода временного интервала в виде iddata объект, содержащий один или несколько наборов сигналов временной области. iddata объект может содержать SISO, MIMO или данные о мультиэксперименте. Наборы сигнала могут содержать или входные и выходные данные или выходные данные только.
Type — Тип тренда, который будет вычтенTrendInfo объектТип тренда, который будет вычтен в виде одного из:
0 — Вычислите и вычтите среднее значение
1 — Вычисляют и вычитают линейный тренд (метод наименьших квадратов)
TrendInfo объект — вычитает тренд, который вы задаете в TrendInfo объект. Использование getTrend создать a TrendInfo объект. Для примера смотрите, Удаляют Заданные Смещения из Сигналов.
brkpt — Местоположения момента времени отклоняющихся разрывовМестоположения момента времени отклоняющихся разрывов (точки останова) в виде:
Целочисленный вектор-строка — Для наборов данных SISO and MIMO одно эксперимента. Выполнение так применяет один набор точек останова ко всем сигналам ввода и вывода. Для примера смотрите, Удаляют Сегментированные Линейные Тренды из Сигналов при помощи Точек останова.
Массив ячеек, содержащий индивидуально измеренные целочисленные векторы-строки — Для наборов данных нескольких-экспериментов. Выполнение так применяет уникальный набор точек останова к выходу и входным сигналам для каждого эксперимента. Для примера смотрите, Детрендируют Сигналы Мультиэксперимента с помощью Наборов Нескольких-точек-останова.
data_d — Детрендированные сигналыiddata объектДетрендированные сигналы, возвращенные как iddata объект. Размерности содержимого совпадают с размерностями содержимого data.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.