主要内容

ndbasis.

可调谐增益表面的基本功能

描述

您使用基础函数扩展来参数化增益曲面,用于调整增益预定的控制器,其中包含Tunablyurface.命令。当您有多个调度变量时,这种扩展的复杂性会很快增长。采用ndbasis.从低维扩展构建N维扩展。ndbasis.是类似的ndgrid.在空间上沿着每个维度复制扩展的方式。

例子

shapefcn.= ndbasis(F1,F2)形成两个基本功能扩展的外部(张量)产品。每个基础函数扩展都是返回扩展项矢量的函数,例如返回PolyBasis.。如果 F 1 X 1 = [ F 1 1 X 1 F 1 2 X 1 ...... F 1 一世 X 1 ] F 2 X 2 = [ F 2 1 X 2 F 2 2 X 2 ...... F 2 一世 X 2 ] , 然后shapefcn.是形式条款的矢量:

F 一世 j = F 1 一世 X 1 F 2 j X 2

这些术语以面向列的方式列出一世第一个,然后是j

shapefcn.= ndbasis(F1,F2,......,Fñ)形成三个或多个基函数扩展的外产物。返回的向量中的术语shapefcn.是形式:

F 一世 1 ...... 一世 N = F 1 一世 一世 X 1 F 2 一世 2 X 2 ...... F N 一世 N X N

这些术语以N维数组的排序顺序列出了一世1第一个,然后是一世2, 等等。每个缩略词本身可以是多维基函数扩展。

例子

全部收缩

在两个变量中为二阶创建多项式函数的二维基础。

定义一定维的基本函数。

f = @(x)[x,x ^ 2];

等效,你可以使用PolyBasis.创建F.

f = polybasis('典范',2);

生成二维扩展F

f2d = ndbasis(f,f);

F2D.是两个变量的函数。该函数返回包含这两个变量的评估基函数的向量:

F 2 D. X y = [ X X 2 y y X y X 2 y 2 X y 2 X 2 y 2 ]

确认这一点,评估F2D.为了X= 0.2,y= -0.3。

F2D(0.2,-0.3)
ans =.1×8.0.2000 0.0400-0.3000 -0.0600 -0.0120 0.0900 0.0180 0.0036

你结合的扩张ndbasis.不需要有相同的顺序。例如,组合F在一个变量中具有一阶扩展。

g = @(y)[y];f2d2 = ndbasis(f,g);

阵列返回F2D2.类似于返回的F2D.,如果第二个变量中具有二次的术语。

F 2 D. 2 X y = [ X X 2 y y X y X 2 ]

评价F2D2.为了X= 0.2,y= -0.3确认条款顺序。

F2D2(0.2,-0.3)
ans =.1×50.2000 0.0400-0.3000 -0.0600 -0.0120

创建一组二维基函数,其中扩展在一个变量中具有二次,并且在另一个变量中的周期性。

首先生成一维扩展。为改进可读性命名变量。

F1 = PolyBasis('典范'2,'X');F2 = FourierBasis(1,1,'是');

为简单起见,该示例仅仅需要定期变化的第一个谐波。这些扩展提供了基础职能:

F 1 X = [ X X 2 ] F 2 y = [ COS. π y π y ]

创建二维基函数扩展。注意ndbasis.保留您分配给一维扩展的变量名称。

f = ndbasis(f1,f2)
f =function_handle具有值:@(x,y)utfcnbasisouterproduct(fdata_,x,y)

阵列返回F包括基础函数的所有乘法组合:

F X y = [ X X 2 COS. π y COS. π y X COS. π y X 2 π y X π y X 2 π y ]

确认这一点,评估F为了X= 0.2,y= -0.3。

F(0.2,-0.3)
ans =.1×8.0.2000 0.0400 0.5878 0.1176 0.0235 -0.8090-0.1618 -0.0324

输入参数

全部收缩

基函数扩展,指定为函数句柄。该函数必须返回一个或多个调度变量的基本函数的向量。您可以明确定义这些基本函数,或使用PolyBasis.要么傅立冻

例子:f = @(x)[x,x ^ 2,x ^ 3]

例子:f = PolyBasis(3,2)

输出参数

全部收缩

基函数扩展,指定为函数句柄。shapefcn.作为输入参数,总数的变量数F1,F2,...,Fn。它返回这些变量的函数的向量,在每个输入变量的间隔[-1,1]上定义。当你使用时shapefcn.创建增益表面,Tunablyurface.自动为向量中的每个术语生成可调系数。

提示

  • ndbasis.操作是关联的:

    NDBASIS(F1,NDBASIS(F2,F3))= NDBASIS(NDBASIS(F1,F2),F3)= NDBASIS(F1,F2,F3)
在R2015B中介绍