exponenta event banner

fourierBasis

Базовые функции Фурье для настраиваемой поверхности усиления

Описание

Расширения базовых функций используются для параметризации поверхностей усиления для настройки контроллеров, запланированных для усиления. fourierBasis генерирует периодические расширения рядов Фурье для параметризации поверхностей усиления, которые периодически зависят от переменных планирования, таких как усиление, которое изменяется в зависимости от углового положения. Использовать выходные данные fourierBasis для создания настраиваемых поверхностей усиления с помощью tunableSurface.

пример

shapefcn = fourierBasis(N) генерирует функцию, которая вычисляет первую N гармоники eiāx:

F (x) = [cos (xeonx), sin (itemx), cos (2securityx), sin (2securityx),..., cos (Nāx), sin (Nāx)].

F - функция, представленная shapefcn. Срок F - первые 2*N базис функционирует в расширении ряда Фурье периодически изменяющегося коэффициента усиления, K (x), с K (-1) = K (1). Это расширение определяется:

K (x) =a02+∑k{akcos (kāx) + bksin (kāx)}.

пример

shapefcn = fourierBasis(N,nvars) генерирует nvars-мерный базис Фурье для периодических функций в области [-1,1] nvars. Эта основа является внешним продуктом nvars Базы Фурье с N гармоники вдоль каждого размера. Результирующая функция shapefcn берет nvars входные аргументы и возвращает вектор с (2*N+1)^(nvars-1)-1 записей.

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

shapefcn = fourierBasis(___,varnames) задает имена переменных. Используйте этот синтаксис с любым из предыдущих синтаксисов, чтобы назвать переменные в shapefcn. Использование имен переменных повышает читаемость tunableSurface отображение объектов и любого кода MATLAB ®, генерируемого с помощьюcodegen.

Примеры

свернуть все

Создайте базовые функции для коэффициента усиления, который изменяется как периодическая функция одной переменной планирования.

shapefcn = fourierBasis(2);

shapefcn является дескриптором функции одной переменной, который возвращает массив из четырех значений, соответствующих первым двум гармоникам периодической функции на x = [-1,1]:

F (x) = [cos (xeonx), sin (itemx), cos (2securityx), sin (2securityx)].

Использовать shapefcn в качестве входного аргумента для tunableSurface для определения усиливающей поверхности формы:

K (x) = K0 + K1cos (securityx) + K2sin (securityx) + K3cos (2securityx) + K4sin (2securityx).

Переменная x является нормализованной версией переменной планирования для настраиваемой поверхности. Потому что базовые функции, созданные fourierBasis действует на нормализованные переменные, система с планированием прироста должна использовать точки проектирования, значения конечных точек которых определяют только один период. Например, предположим, что используются следующие точки проектирования:

alpha = [-7,-4,-1,2,5];
domain = struct('alpha',alpha);
K = tunableSurface('K',0,domain,shapefcn);

При нормализации области программное обеспечение предполагает, что поверхность усиления, K, является периодическим в alpha такой, что K(-7) = K(5).

Создайте двумерный базис Фурье для периодических функций x и y в области [-1,1] N. Базовые функции должны доходить до третьей гармоники в измерениях x и y.

F2D = fourierBasis(3,2);

Эта функция является внешним произведением двух векторов:

x = fourierBasis(3);
y = fourierBasis(3);

Эквивалентно, можно получить внешний продукт с помощью ndBasis.

F = fourierBasis(3);
F2D = ndBasis(F,F);

Значения в векторе, возвращенные F включают в себя перекрестные термины, такие как sin (itemx) cos (αy) и sin (3securityx) cos (2βy).

Входные аргументы

свернуть все

Число гармоник расширения Фурье, указанное как положительное целое число.

Число переменных планирования, указанное как положительное целое число.

Имена переменных в созданной функции shapefcn, указывается как:

  • Символьный вектор для моновариабельных базисных функций.

  • Массив ячеек символьных векторов для многовариантных базисных функций.

Если не указать varnames, затем переменные в shapefcn названы {'x1','x2',...}.

Пример: {'alpha','V'}

Выходные аргументы

свернуть все

Расширение Фурье, указанное как дескриптор функции. shapefcn принимает в качестве входных аргументов количество переменных, указанных nvars. Он возвращает вектор многочленов в этих переменных, определенный на интервале [-1,1] для каждой входной переменной. При использовании shapefcn для создания поверхности усиления, tunableSurface автоматически генерирует перестраиваемые коэффициенты для каждого многочлена в векторе.

Совет

  • Если поверхность усиления K является периодическим в переменной планирования x с периодом P, убедитесь, что соответствующая запись в K.Normalization.InputScaling имеет значение P/2 для обеспечения согласованности с fourierBasis период, P = 2. При использовании нормализации по умолчанию значения x в K.SamplingGrid должен охватывать только один период [a, a + P], чтобы удовлетворить этому требованию. См. разделNormalization имущество tunableSurface для получения дополнительной информации.

См. также

| |

Представлен в R2015b