viewSurf

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

Описание

пример

viewSurf(GS) строит графики значений 1-D или 2-D поверхности усиления как функции от переменных планирования. GS является настраиваемой поверхностью усиления, которую вы создаете с tunableSurface. График использует независимые значения переменных, заданную в GS.SamplingGrid. Для 2-D поверхностей усиления проект указывает на GS.SamplingGrid должен лежать на прямоугольной сетке.

пример

view(GS,xvar,xdata) строит графики поверхности усиления GS в значениях переменных планирования, перечисленных в xdata. Имя переменной xvar должно совпадать с именем переменной планирования в GS.SamplingGrid. Однако значения в xdata не нужно совпадать с проектом точками в GS.SamplingGrid.

Для 2-D поверхности усиления график показывает параметрическое семейство кривых с одной кривой на значение другой переменной планирования. В 2-D случае проект указывает на GS.SamplingGrid должен лежать на прямоугольной сетке.

пример

view(GS,xvar,xdata,yvar,ydata) создает объемной поверхностной диаграммой 2-D поверхности усиления, рассчитанной по сетке значений переменных планирования, заданной ndgrid(xdata,ydata). В этом случае расчетные точки GS не нужно лежать на прямоугольной сетке, и xdata и ydata не нужно совпадать с проектом точками.

Примеры

свернуть все

Отобразите настраиваемую поверхность усиления, которая зависит от двух независимых переменных.

Моделируйте скалярное усиление K с билинейной зависимостью от двух переменных планирования, α и V следующим образом:

K(α,V)=K0+K1x+K2y+K3xy.

Здесь x и y являются нормированными переменными планирования. Предположим, что α - угол падения, который колеблется от 0 степеней до 15 степеней, а V - скорость, которая колеблется от 300 м/с до 600 м/с. Затем x и y задаются как:

x=α-7.57.5,y=V-450150.

Коэффициенты K0,...,K3 являются настраиваемыми параметрами этого переменного усиления. Использование tunableSurface чтобы смоделировать этот переменный коэффициент усиления.

[alpha,V] = ndgrid(0:1.5:15,300:30:600); 
domain = struct('alpha',alpha,'V',V);
shapefcn = @(x,y) [x,y,x*y];
K = tunableSurface('K',1,domain,shapefcn);

Обычно коэффициенты настраиваются как часть системы управления. Тогда вы будете использовать setBlockValue или setData чтобы записать настроенные коэффициенты назад в K, и просмотреть настроенную поверхность усиления. В данном примере вместо настройки вручную установите коэффициенты ненулевые значения и просмотрите результат усиления.

Ktuned = setData(K,[100,28,40,10]);
viewSurf(Ktuned)

Figure contains an axes. The axes with title Gain K(alpha,V) contains an object of type surface.

viewSurf отображает поверхность усиления как функцию от переменных планирования для областей значений значений, заданных domain и хранятся в Ktuned.SamplingGrid.

Просмотрите поверхность усиления 1-D, рассчитанную в разных проектных точках по сравнению с точками, заданными в поверхности усиления.

Когда вы создаете поверхность усиления с помощью tunableSurfaceЗадаются проектные точки, в которых настраиваются коэффициенты усиления. Эти точки обычно являются значениями переменных планирования, при которых вы отобрали или линеаризировали объект. Однако можно хотеть реализовать поверхность усиления как интерполяционную таблицу с точками останова, отличающимися от заданных точек проекта. В этом примере вы создаете поверхность усиления с набором проекта точек, а затем просматриваете поверхность с помощью другого набора значений переменных планирования.

Создайте скалярное усиление, которое изменяется как квадратичная функция от одной переменной планирования, т. Предположим, что вы линеаризировали свой объект каждые пять секунд с t = 0 до t = 40.

t = 0:5:40;
domain = struct('t',t);
shapefcn = @(x) [x,x^2];
GS = tunableSurface('GS',1,domain,shapefcn);

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

GS = setData(GS,[12.1,4.2,2]);

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

tvals = [0,4,11,18,25,32,39,42];
viewSurf(GS,'t',tvals)

Figure contains an axes. The axes with title Gain GS(t) contains an object of type line.

График показывает, что кривая усиления изгибается в точках, заданных в tvals, а не проектные точки, указанные в domain. Кроме того, tvals включает значения, не входящие в область значений переменных планирования domain. Если вы пытаетесь экстраполировать слишком далеко из области значений значений, используемых для настройки, программное обеспечение выдает предупреждение.

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

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

[alpha,V] = ndgrid(0:1.5:15,300:30:600);
domain = struct('alpha',alpha,'V',V);
shapefcn = @(x,y) [x,y,x*y];
GS = tunableSurface('GS',1,domain,shapefcn);

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

GS = setData(GS,[100,28,40,10]);

Постройте график усиления при выбранных значениях V.

Vplot = [300:50:600];
viewSurf(GS,'V',Vplot);

Figure contains an axes. The axes with title Gain GS(V) contains 11 objects of type line.

viewSurf оценивает поверхность усиления при заданных значениях V и строит график зависимости от V для всех значений α в domain. При щелчке любой из линий на графике отображается соответствующий α значение. Этот график полезен, чтобы визуализировать всюсь область значений изменений усиления из-за одной независимой переменной.

Просмотрите поверхность усиления 2-D, рассчитанную по разным переменным в планировании значениям от проектных точек, заданных в поверхности усиления.

Когда вы создаете поверхность усиления с помощью tunableSurfaceЗадаются проектные точки, в которых настраиваются коэффициенты усиления. Эти точки обычно являются значениями переменных планирования, при которых вы отобрали или линеаризировали объект. Однако можно хотеть реализовать поверхность усиления как интерполяционную таблицу с точками останова, отличающимися от заданных точек проекта. В этом примере вы создаете поверхность усиления с набором проекта точек, а затем просматриваете поверхность с помощью другого набора значений переменных планирования.

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

[alpha,V] = ndgrid(0:1.5:15,300:30:600);
domain = struct('alpha',alpha,'V',V);
shapefcn = @(x,y) [x,y,x*y];
GS = tunableSurface('GS',1,domain,shapefcn);

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

GS = setData(GS,[100,28,40,10]);

Постройте график усиления при выбранных значениях α и В.

alpha_vec = [7:1:13];
V_vec = [500:25:625];
viewSurf(GS,'alpha',alpha_vec,'V',V_vec);

Figure contains an axes. The axes with title Gain GS(alpha,V) contains an object of type surface.

Точки прерывания, в которых вы вычисляете поверхность усиления, не должны попадать в область значений, заданную domain. Однако, если вы пытаетесь оценить коэффициент усиления слишком далеко за пределами области значений, используемого для настройки, программное обеспечение выдает предупреждение.

Точки останова также не должны регулярно расставляться. Кроме сложения, можно задать переменные планирования в любом порядке, чтобы получить другую перспективу на форму поверхности. Переменная, которую вы задаете сначала, используется в качестве оси X на графике.

alpha_vec2 = [1,3,6,10,15];
V_vec2 = [300,350,425,575];
viewSurf(GS,'V',V_vec2,'alpha',alpha_vec2);

Figure contains an axes. The axes with title Gain GS(V,alpha) contains an object of type surface.

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

свернуть все

Поверхность усиления для построения графика, заданная как a tunableSurface объект. GS может зависеть от одной или двух переменных планирования и должен быть скалярным.

Переменная ось X на графике, заданная как вектор символов. Имя переменной xvar должно совпадать с именем переменной планирования в GS.SamplingGrid.

Значения X-составляющей, при которых можно вычислить и построить график поверхности усиления, заданный как числовой вектор.

Переменная оси Y на графике, заданная как вектор символов. Имя переменной yvar должно совпадать с именем переменной планирования в GS.SamplingGrid.

Значения переменной оси Y, при которых можно вычислить и построить график поверхности усиления, заданный как числовой вектор.

См. также

|

Введенный в R2015b