matlab 正交多项式,常用正交多项式

matlab 正交多项式,常用正交多项式三个有关正交的概念如果我们称函数与在区间上正交 一般我们会这么记录 如果称函数与在区间上带权正交 如果有一个 多项式 序列 每一项就表示一个 k 次多项式 如果这个多项式序列所有元素满足下面的规律 我们称为在区间上带权的 正交多项式序列 序列中的每一个元素 我们可以叫它 一个正交多项式 常用的正交多项式序列关于正交多项式序列细节的内容不提 偏重它们的性质和使用 总结一句正交多项式序列最重要

三个有关正交的概念

如果

math?formula=%5Cint_%7Ba%7D%5E%7Bb%7Df(x)g(x)dx%20%3D%200 我们称函数

math?formula=f(x)

math?formula=g(x)在区间

math?formula=%5Ba%2Cb%5D上正交;一般我们会这么记录:

math?formula=(f%2Cg)%20%3D%20%5Cint_%7Ba%7D%5E%7Bb%7Df(x)g(x)dx%20%3D%200

如果

math?formula=%5Cint_%7Ba%7D%5E%7Bb%7Dp(x)f(x)g(x)dx%20%3D%200 称函数

math?formula=f(x)

math?formula=g(x)在区间

math?formula=%5Ba%2Cb%5D上带权

math?formula=p(x)正交;

如果有一个”多项式”序列

math?formula=%5C%7Bg_%7Bk%7D(x)%5C%7D_%7Bk%3D0%7D%5E%7B%5Cinfty%7D(每一项

math?formula=g_%7Bk%7D(x)就表示一个k次多项式),如果这个多项式序列所有元素满足下面的规律:

math?formula=%5Cint_%7Ba%7D%5E%7Bb%7Dp(x)g_%7Bm%7D(x)g_%7Bn%7D(x)dx%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%20%5C%5C%20%5Cint_%7Ba%7D%5E%7Bb%7Dp(x)%5Bg_%7Bm%7D(x)%5D%5E%7B2%7Ddx%20%26%20%E5%BD%93m%3Dn%20%5C%5C%20%5Cend%7Bcases%7D

我们称

math?formula=%5C%7Bg_%7Bk%7D(x)%5C%7D_%7Bk%3D0%7D%5E%7B%5Cinfty%7D为在区间

math?formula=%5Ba%2Cb%5D上带权

math?formula=p(x)的”正交多项式序列”;序列中的每一个元素,我们可以叫它”一个正交多项式”!

常用的正交多项式序列

关于正交多项式序列细节的内容不提,偏重它们的性质和使用。总结一句正交多项式序列最重要的性质:2个序号不同多项式,乘积后特定区间积分为0;2个序号相同多项式(就是同一个),乘积后特定区间积分不为0。一般我们常用的正交多项式序列如下,并给出其多项式递推公式:

勒让德(Legende)正交多项式序列

math?formula=P_%7Bn%7D(x)

切比雪夫(Chebyshev)正交多项式序列

math?formula=T_%7Bn%7D(x)

第二类切比雪夫(Chebyshev)正交多项式序列

math?formula=U_%7Bn%7D(x)

拉盖尔(Laguerre)正交多项式序列

math?formula=L_%7Bn%7D(x)

埃尔米特(Hermite)正交多项式序列

math?formula=H_%7Bn%7D(x)

罗巴特(Lobatto)正交多项式序列

math?formula=Lo_%7Bn%7D(x)

勒让德正交多项式序列

勒让德相邻3项递推公式:

math?formula=%5Cbegin%7Bcases%7D%20P_%7B0%7D(x)%20%3D%201%20%26%20%5C%5C%20P_%7B1%7D(x)%20%3D%20x%20%26%20%5C%5C%20P_%7Bn%2B1%7D(x)%20%3D%20x%20%5Cfrac%7B2n%2B1%7D%7Bn%2B1%7DP_%7Bn%7D(x)%20-%20%5Cfrac%7Bn%7D%7Bn%2B1%7DP_%7Bn-1%7D(x)%20%26%20n%20%3D%201%2C2%2C3...%20%5Cend%7Bcases%7D

说明:勒让德正交多项式序列中,任意两个元素都是区间

math?formula=%5B-1%2C1%5D上带权

math?formula=p(x)%3D1正交。

规律:

math?formula=(P_m%2CP_n)%3D%5Cint_%7B-1%7D%5E%7B1%7D1P_m(x)P_n(x)dx%20%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%5C%5C%20%5Cfrac%7B2%7D%7B2n%2B1%7D%20%26%20%E5%BD%93m%3Dn%5C%5C%20%5Cend%7Bcases%7D

用matlab编程求每个正交多项式:

clear; clc;

syms x;

P_orig0 = 1;

P_orig1 = x;

P = sym(zeros(1,5)); % 记录前5个多项式

% 勒让德正交多项式序列前5项求取

for n = 1:5

Pn = simplify( x*(2*n+1)/(n+1)*P_orig1 – n/(n+1)*P_orig0 )

P_orig0 = P_orig1;

P_orig1 = Pn;

P(n) = Pn;

end

% 下面是测试任意两个元素是否有正交关系

for m = 1:4

equal = int( P(m)*P(m), x, -1, 1 )

inequal = int( P(m)*P(m+1), x, -1, 1 ) % 随便改, 只要两个不相等

end

切比雪夫正交多项式序列

切比雪夫相邻3项递推公式:

math?formula=%5Cbegin%7Bcases%7D%20T_%7B0%7D(x)%20%3D%201%20%26%20%5C%5C%20T_%7B1%7D(x)%20%3D%20x%20%26%20%5C%5C%20T_%7Bn%2B1%7D(x)%20%3D%202xT_%7Bn%7D(x)%20-%20T_%7Bn-1%7D(x)%20%26%20n%20%3D%201%2C2%2C3...%20%5Cend%7Bcases%7D

说明:切比雪夫正交多项式序列中,任意两个元素都是区间

math?formula=%5B-1%2C1%5D上带权

math?formula=p(x)%3D%5Cfrac%7B1%7D%7B%5Csqrt%20%7B1-x%5E%7B2%7D%7D%7D正交。

规律:

math?formula=(T_m%2CT_n)%3D%5Cint_%7B-1%7D%5E%7B1%7D%5Cfrac%7BT_m(x)T_n(x)%7D%7B%5Csqrt%20%7B1-x%5E%7B2%7D%7D%7Ddx%20%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%5C%5C%20%5Cpi%20%26%20%E5%BD%93m%3Dn%3D0%20%5C%5C%20%5Cfrac%7B%5Cpi%7D%7B2%7D%20%26%20%E5%BD%93m%3Dn%E2%89%A00%20%5Cend%7Bcases%7D

用matlab编程求每个正交多项式:

clear; clc;

syms x;

T_orig0 = 1;

T_orig1 = x;

T = sym(zeros(1,5)); % 记录前5个多项式

% 切比雪夫正交多项式序列前5项求取

for n = 1:5

Tn = simplify( 2*x*T_orig1 – T_orig0 )

T_orig0 = T_orig1;

T_orig1 = Tn;

T(n) = Tn;

end

% 下面是测试任意两个元素是否有正交关系

for m = 1:4

T_equal = T(m)*T(m)/(sqrt(1-x^2));

equal = int( T_equal, x, -1, 1 ) % 都是pi或pi/2

T_inequal = T(m)*T(m+1)/(sqrt(1-x^2));

inequal = int( T_inequal, x, -1, 1 ) % 都是0

end

第二类切比雪夫正交多项式序列

切比雪夫相邻3项递推公式:

math?formula=%5Cbegin%7Bcases%7D%20U_%7B0%7D(x)%20%3D%201%20%26%20%5C%5C%20U_%7B1%7D(x)%20%3D%202x%20%26%20%5C%5C%20U_%7Bn%2B1%7D(x)%20%3D%202xU_%7Bn%7D(x)%20-%20U_%7Bn-1%7D(x)%20%26%20n%20%3D%201%2C2%2C3...%20%5Cend%7Bcases%7D

说明:第二类切比雪夫正交多项式序列中,任意两个元素都是区间

math?formula=%5B-1%2C1%5D上带权

math?formula=p(x)%3D%5Csqrt%20%7B1-x%5E%7B2%7D%7D正交。

规律:

math?formula=(U_m%2CU_n)%3D%5Cint_%7B-1%7D%5E%7B1%7DU_m(x)U_n(x)%5Csqrt%20%7B1-x%5E%7B2%7D%7Ddx%20%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%5C%5C%20%5Cfrac%7B%5Cpi%7D%7B2%7D%20%26%20%E5%BD%93m%3Dn%20%5C%5C%20%5Cend%7Bcases%7D

用matlab编程求每个正交多项式:

clear; clc;

syms x;

U_orig0 = 1;

U_orig1 = 2*x;

U = sym(zeros(1,5)); % 记录前5个多项式

% 第二类切比雪夫正交多项式序列前5项求取

for n = 1:5

Un = simplify( 2*x*U_orig1 – U_orig0 )

U_orig0 = U_orig1;

U_orig1 = Un;

U(n) = Un;

end

% 下面是测试任意两个元素是否有正交关系

for m = 1:4

U_equal = U(m)*U(m)*sqrt(1-x^2);

equal = int( U_equal, x, -1, 1 ) % 都是pi/2

U_inequal = U(m)*U(m+1)*sqrt(1-x^2);

inequal = int( U_inequal, x, -1, 1 ) % 都是0

end

拉盖尔正交多项式序列

拉盖尔相邻3项递推公式:

math?formula=%5Cbegin%7Bcases%7D%20L_%7B0%7D(x)%20%3D%201%20%26%20%5C%5C%20L_%7B1%7D(x)%20%3D%201-x%20%26%20%5C%5C%20L_%7Bn%2B1%7D(x)%20%3D%20(2n%2B1-x)L_%7Bn%7D(x)%20-%20n%5E%7B2%7DL_%7Bn-1%7D(x)%20%26%20n%20%3D%201%2C2%2C3...%20%5Cend%7Bcases%7D

说明:拉盖尔正交多项式序列中,任意两个元素都是区间

math?formula=%5B0%2C%2B%5Cinfty)上带权

math?formula=p(x)%3De%5E%7B-x%7D正交。

规律:

math?formula=(L_m%2CL_n)%3D%5Cint_%7B0%7D%5E%7B%2B%5Cinfty%7DL_m(x)L_n(x)e%5E%7B-x%7Ddx%20%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%5C%5C%20(n!)%5E2%20%26%20%E5%BD%93m%3Dn%20%5C%5C%20%5Cend%7Bcases%7D

用matlab编程求每个正交多项式:

syms x;

L_orig0 = 1;

L_orig1 = 1-x;

L = sym(zeros(1,5)); % 记录前5个多项式

% 拉盖尔正交多项式序列前5项求取

for n = 1:5

Ln = simplify( (2*n+1-x)*L_orig1 – n^2*L_orig0 )

L_orig0 = L_orig1;

L_orig1 = Ln;

L(n) = Ln;

end

% 下面是测试任意两个元素是否有正交关系

for m = 1:4

L_equal = L(m)*L(m)*exp(-x);

equal = int( L_equal, x, 0, +inf ) % (n!)^2

L_inequal = L(m)*L(m+1)*exp(-x);

inequal = int( L_inequal, x, 0, +inf ) % 都是0

end

埃尔米特正交多项式序列

埃尔米特相邻3项递推公式:

math?formula=%5Cbegin%7Bcases%7D%20H_%7B0%7D(x)%20%3D%201%20%26%20%5C%5C%20H_%7B1%7D(x)%20%3D%202x%20%26%20%5C%5C%20H_%7Bn%2B1%7D(x)%20%3D%202xH_%7Bn%7D(x)%20-%202nH_%7Bn-1%7D(x)%20%26%20n%20%3D%201%2C2%2C3...%20%5Cend%7Bcases%7D

说明:埃尔米特正交多项式序列中,任意两个元素都是区间

math?formula=(-%5Cinfty%2C%2B%5Cinfty)上带权

math?formula=p(x)%3De%5E%7B-x%5E%7B2%7D%7D正交。

规律:

math?formula=(H_m%2CH_n)%3D%5Cint_%7B-%5Cinfty%7D%5E%7B%2B%5Cinfty%7DH_m(x)H_n(x)e%5E%7B-x%5E%7B2%7D%7Ddx%20%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%5C%5C%202%5E%7Bn%7Dn!%5Csqrt%20%7B%5Cpi%7D%20%26%20%E5%BD%93m%3Dn%20%5C%5C%20%5Cend%7Bcases%7D

用matlab编程求每个正交多项式:

clear; clc;

syms x;

H_orig0 = 1;

H_orig1 = 2*x;

H = sym(zeros(1,5)); % 记录前5个多项式

% 埃尔米特正交多项式序列前5项求取

for n = 1:5

Hn = simplify( 2*x*H_orig1 – 2*n*H_orig0 )

H_orig0 = H_orig1;

H_orig1 = Hn;

H(n) = Hn;

end

% 下面是测试任意两个元素是否有正交关系

for m = 1:4

H_equal = H(m)*H(m)*exp(-x^2);

equal = int( H_equal, x, -inf, +inf ) % 2^n*n!*sqrt(pi)

H_inequal = H(m)*H(m+1)*exp(-x^2);

inequal = int( H_inequal, x, -inf, +inf ) % 都是0

end

罗巴特正交多项式序列

说明:罗巴特正交多项式序列是基于”勒让德多项式序列”推导而来的!所以其很多性质是继承勒让德正交多项式的。罗巴特每一项公式:

math?formula=Lo_%7Bn%7D(x)%20%3D%20L_%7Bn%2B1%7D%5E%7B%5Cprime%7D(x)%20%5Cquad%5Cquad%20x%20%3D%201%2C2%2C3...

说明:

罗巴特正交多项式序列中,任意两个元素都是区间

math?formula=%5B-1%2C1%5D上带权

math?formula=p(x)%3D1-x%5E%7B2%7D正交;

罗巴特正交多项式第0项为:

math?formula=Lo_%7B0%7D(x)%20%3D%201。该项就不在程序中显示了。

规律:

math?formula=(Lo_m%2CLo_n)%3D%5Cint_%7B-1%7D%5E%7B1%7DLo_m(x)Lo_n(x)(1-x%5E%7B2%7D)dx%20%3D%5Cbegin%7Bcases%7D%200%20%26%20%E5%BD%93m%E2%89%A0n%5C%5C%20%5Cfrac%7B2(x%2B1)(x%2B2)%7D%7B2x%2B3%7D%20%26%20%E5%BD%93m%3Dn%20%5C%5C%20%5Cend%7Bcases%7D

用matlab编程求每个正交多项式:借用勒让德的各个多项式

clear; clc;

syms x;

P_orig0 = 1;

P_orig1 = x; % 勒让德的前两项

L = sym(zeros(1,5)); % 记录前罗巴特正交多项式

for n = 1:5

Pn = simplify( x*(2*n+1)/(n+1)*P_orig1 – n/(n+1)*P_orig0 ); % 勒让德多项式

L(n) = diff(Pn,x,1) % 罗巴特多项式√√

P_orig0 = P_orig1; % 勒让德更新

P_orig1 = Pn;

end

% 下面是测试任意两个元素是否有正交关系

for m = 1:4

L_equal = L(m)*L(m)*(1-x^2);

equal = int( L_equal, x, -1, 1 ) % 都是2(m+1)(m+2)/(2m+3)

L_inequal = L(m)*L(m+1)*(1-x^2);

inequal = int( L_inequal, x, -1, 1 ) % 都是0

end

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/199666.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 下午12:29
下一篇 2026年3月20日 下午12:29


相关推荐

  • python怎么恢复默认窗口_pycharm恢复默认布局

    python怎么恢复默认窗口_pycharm恢复默认布局pycharm 怎么恢复默认设置首先打开 Pycahrm 进入主界面 接着点击左上角的关闭按钮 将 pycharm 关闭掉 接下来在弹出的确认关闭界面中点击 Exit 按钮 然后打开终端命令行 输入 ls la 命令 在列出的信息中我们找到如下图所示的红框内容 PyCharm 怎么恢复默认窗口布局 解释器的选项路径为 File Setting Build Execution Deployment Con

    2026年3月18日
    2
  • Windows 安装 Claude Code 完整教程(含常见报错排查)

    Windows 安装 Claude Code 完整教程(含常见报错排查)

    2026年3月12日
    4
  • 华为超级vlan配置_华为p9参数配置

    华为超级vlan配置_华为p9参数配置本期分享:系列15点到16点半-技术热讯感谢大家关注-最铁头的网工,请大家持续关注就可以了哦!关于进阶级手册在下方↓↓↓众元教育-华为HCIA-HCIE技术认证课:课程通道众元教育-华为HCIA-HCIE技术认证裙:6962831861技术背景了解superVLAN之前,我们想想,如果没有superVLAN是什么样的情况?我们都知道,VLAN技术是用来隔离广播域的,通常,我们都是1个三层IP网段对应一个VLAN,那么问题来了,有的VLAN只需要几个IP,我们却要给它…

    2026年1月22日
    3
  • 零门槛!GPT5接入Claude Code教程

    零门槛!GPT5接入Claude Code教程

    2026年3月15日
    2
  • 存储过程与触发器作用

    存储过程与触发器作用存储过程与触发器因为在数据库中的作用不同 因为也就没什么性能可比性 存储过程 StoredProced 是一组为了完成特定功能的 SQL 语句集 经编译后存储在数据库中 用户通过指定存储过程的名字并给出参数 如果该存储过程带有参数 来执行它 存储过程是数据库中的一个重要对象 任何一个设计良好的数据库应用程序都应该用到存储过程 触发器 trigger 是个特殊的存储过程 它的执行不是

    2026年3月17日
    3
  • LaTex 入门

    LaTex 入门LaTex 简介 TeX 是由 DonaldKnuth 创造的基于底层编程语言的电子排版系统 1 TEX 是 Honeywell 公司在 1980 年为其 TextExecutiv 文本处理系统注册的商标 它与 TeX 是两回事 TeX 能够对文档的排版进行非常精细的操作 可以生成十分精美的文档 TeX 系统生成的是 DVI DeviceIndepe 文件 LaTex 是由 LeslieLampo

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号