fourierBasis

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

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

Синтаксис

shapefcn = fourierBasis(N)
shapefcn = fourierBasis(N,nvars)
shapefcn = fourierBasis(___,varnames)

Описание

пример

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

F(x)=[потому что(πx),sin(πx),потому что(2πx),sin(2πx),,потому что(Nπx),sin(Nπx)].

F является функцией, представленной shapefcn. Термин F является первыми основными функциями 2*N в последовательном расширении Фурье периодически переменного усиления, K (x), с K (–1) = K (1). Тем расширением дают:

K(x)=a02+k{akпотому что(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)=[потому что(πx),sin(πx),потому что(2πx),sin(2πx)].

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

K(x)=K0+K1потому что(πx)+K2sin(πx)+K3потому что(2πx)+K4sin(2πx).

Переменная 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(πx)потому что(πy) и sin(3πx)потому что(2πy).

Входные параметры

свернуть все

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

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

Имена переменных в сгенерированном функциональном shapefcn, заданном как a:

  • Вектор символов, для монопеременных основных функций.

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

Если вы не задаете 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