张量积型的Bernstein基函数
张量积型的Bernstein基函数
所谓张量积型,或者乘积型的二元空间是指,他的基函数可以由一元基函数通过张量积(乘积)得到.例如,我们考虑两个分量的次数分别不超过m和n次的二元多项式空间Pm,nP_{m,n}Pm,n,可以由两个一元多项式空间PmP_mPm和PnP_nPn的张量积得到,即Pm,n=Pm⨂PnP_{m,n} = P_m \bigotimes P_nPm,n=Pm⨂Pn.因此
a=span{(1,x,⋯,xm)⨂(1,y,⋯,ym)}=span{xiyj,i=0,1,⋯,m,j=0,1,⋯,n}\begin{aligned} a& = span{\left\{{(1,x,\cdots,x^m)\bigotimes(1,y,\cdots,y^m)}\right\}} \\ & = span\left\{x^iy^j,i = 0,1,\cdots,m,j = 0,1,\cdots,n\right\} \end{aligned} a=span{(1,x,⋯,xm)⨂(1,y,⋯,ym)}=span{xiyj,i=0,1,⋯,m,j=0,1,⋯,n}
Pm,nP_{m,n}Pm,n空间的基函数xiyj(i=0,1,⋯,m,j=0,1,⋯,n)x^iy^j(i = 0,1,\cdots,m,j = 0,1,\cdots,n)xiyj(i=0,1,⋯,m,j=0,1,⋯,n)对应的矩阵结构,
1xx2x3⋯yxyx2yx3y⋯y2xy2x2y2x3y2⋯y3xy3x2y3x3y3⋯⋮⋮⋮⋮\begin{matrix} 1 & x & x^2 & x^3 & \cdots \\ y & xy & x^2y & x^3y & \cdots \\ y^2 & xy^2 & x^2y^2 & x^3y^2 & \cdots \\ y^3 & xy^3 & x^2y^3 & x^3y^3 & \cdots \\ \vdots & \vdots & \vdots & \vdots \\ \end{matrix} 1yy2y3⋮xxyxy2xy3⋮x2x2yx2y2x2y3⋮x3x3yx3y2x3y3⋮⋯⋯⋯⋯
因此可以称为矩形上的多项式空间.
由上可知,通过两组Bernstein基函数Bim(u)B^m_i(u)Bim(u)和Bjn(v)B^n_j(v)Bjn(v)的张量积,就可以得到张量积型的二元Bernstein基函数
Bi,jm,n(u,v)=Bim(u)Bjn(v),i=0,1,⋯,m,j=0,1,⋯,nB^{m,n}_{i,j} (u,v)= B^{m}_{i}(u)B^{n}_{j}(v),i = 0,1,\cdots,m,j = 0,1,\cdots,n Bi,jm,n(u,v)=Bim(u)Bjn(v),i=0,1,⋯,m,j=0,1,⋯,n
下图给了三个张量积型的双二次Bernstein基函数B0,02,2(u,v)、B1,02,2(u,v)B^{2,2}_{0,0} (u,v)、B^{2,2}_{1,0} (u,v)B0,02,2(u,v)、B1,02,2(u,v) 和B1,12,2(u,v)B^{2,2}_{1,1} (u,v)B1,12,2(u,v)在单位矩阵[0,1]×[0,1][0,1]\times[0,1][0,1]×[0,1]上的图像.
二、相应的matlab程序
function bernstein_surf_bf
%bf: basis function基函数
%张量积型的bernstein基函数
a = 0;
b = 1;
N = 40;
M = 50;
hx = (b-a)/N;
hy = (b-a)/M;
x = (a:hx:b)'; %x:[0,1]区间N等分得到的向量
y = (a:hy:b)'; %y:[0,1]区间M等分得到的向量
n = 2;
m = 2;
z = f(x,y,n,m,1,1);
figure(1)
surf(x,y,z)
title('B^{2,2}_{1,1}');endfunction z = f(x,y,n,m,N,M) %n:n次bernstein基函数;m:m次bernstein基函数
[x,y] =meshgrid(x,y); %N:n次bernstein基函数中取B(n,N)
z = B(x,n,N).*B(y,m,M);
endfunction y = B(x,n,i)
y = k(n,i).*(x.^i).*((1-x).^(n-i));
endfunction y = k(n,i)
y1 = factorial(n); %n的阶乘
y2 = factorial(i)*factorial(n-i);
y = y1/y2;
end
张量积型的Bernstein基函数相关推荐
- 张量积型的Bezier曲面及matlab实现
1. 张量积型的Bezier曲面的定义 给定(m+1)(n+1)个空间向量Pi,j∈R3P_{i,j}\in{R^3}Pi,j∈R3(i=0,1,...,m,j=0,1,...,n)(i = 0,1 ...
- Bernstein基函数及其性质 matlab实现
Bernstein基函数及其基本性质 matlab实现 一.Bernstein基函数 Bernstein基函数可以作为多项式空间的一组基底,n次Bernstein基函数 B i n ( t ) B^n ...
- Games102 学习笔记
Games 102 P2 数据拟合 拟合数据的好坏 分段线性插值函数 y = f 1 ( x ) y=f_1(x) y=f1(x),数据误差为0,只有 C 0 C_0 C0连续. 光滑插值函数 y ...
- 什么是深度学习?45分钟理解深度神经网络和深度学习 刘利刚教授
什么是深度学习? - 45分钟理解深度神经网络和深度学习 刘利刚 中国科学技术大学图形与几何计算实验室 http://staff.ustc.edu.cn/~lgliu [绪言] 近年来,人工智能(Ar ...
- Bézier曲线 和 Bézier曲面 ( 贝塞尔曲线 和 贝塞尔曲面 )
Bézier曲线 定义 给定空间n+1个点的位置矢量Pi(i=0,1,2-),则Bezier参数曲线上各点坐标的插值公式是:P(t)=∑i=0nPiBi,n(t),t∈[0,1]P(t)=\sum_{ ...
- NURBS曲线与曲面
B样条方法在表示与设计自由型曲线曲面形状时显示了强大的威力,然而 在表示与设计初等曲线曲面时时却遇到了麻烦.因为B样条曲线包括其特例的 Bezier曲线都不能精确表示出抛物线外的二次曲线,B样条曲面包 ...
- java nurbs几何库_NURBS曲线与曲面
B样条方法在表示与设计自由型曲线曲面形状时显示了强大的威力,然而 在表示与设计初等曲线曲面时时却遇到了麻烦.因为B样条曲线包括其特例的 Bezier曲线都不能精确表示出抛物线外的二次曲线,B样条曲面包 ...
- 论文阅读 “Adaptive Tool Path Planning Strategy for Freeform Surface Machining using Point Cloud Article”
基于点云的自由曲面自适应刀具轨迹规划策略 作者 摘要 关键字 面对的问题 国内外现状 基于网格的自适应刀具轨迹规划系统 数据预处理 均匀网格生成 CL网格点计算 刀具轨迹生成 Forward and ...
- 计算机图形学-曲线和曲面
8.1基本概念 8.2三次样条 8.3Bezier曲线曲面 8.4B样条曲线曲面 8.5有理样条曲线曲面 一.曲线曲面数学描述的发展 弗格森双三次曲面片 (形状控制与连接问题) 孔斯双三次曲面片 (形 ...
最新文章
- Codeforces344_C(数学思维)
- php 两个数据的交集_请问下在PHP中,如何返回两个数组的多个交集
- 想跑次高频策略?快来看看Numpy处理真格量化tick数据的技巧
- 迷宫问题 (dfs)
- tomcat加入系统服务
- Maven搭建多模块企业级项目+SSM框架搭建
- 小程序Canvas原有接口不再维护
- Bitset的一些总结
- 2-Twelfth Scrum Meeting20151212
- Linux开发环境——SSH工具
- 用Hbuilder实现:一行HTML代码+tab快捷键,快速创建HTML结构
- c语言判断闰年次数,C语言判断闰年,即判断年份是否为闰年
- 使用Android Profiler连接成功后app闪退中断解决方法
- 第三篇:【重磅】呼叫中心运营指标KPI字典
- 西门子1200PLC的MODBUS_RTU轮询程序
- 程序人生 | 阿里面试小记
- 5G无线定位技术标准化及发展趋势
- hautoj1262: 魔法宝石
- 基于SSM实现的人力资源管理系统【附源码】(毕设)
- HDOJ 5128 The E-pang Palace