L^2准则下的多项式逼近,一个比较有意思的问题吧

2024-03-14 10:08

本文主要是介绍L^2准则下的多项式逼近,一个比较有意思的问题吧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题描述

在这里插入图片描述实际上: f ( a ) = ∫ ( g − ∑ 0 n a i x i ) 2 = ∫ g 2 + ∫ ( ∑ 0 n a i x i ) 2 − 2 ∫ g ∑ 0 n a i x i f(a)=\int(g-\sum_0^na_ix^i)^2=\int g^2+\int (\sum_0^na_ix^i)^2-2\int g\sum_0^na_ix^i f(a)=(g0naixi)2=g2+(0naixi)22g0naixi

求偏导数:
∂ f ( a ) ∂ a k = 2 ∫ ( ∑ 0 n a i x i ) x k − 2 ∫ g ∗ x k = 0 \frac{\partial f (a)}{\partial a_k} =2\int (\sum_0^na_ix^i)x^k-2\int g*x^k=0 akf(a)=2(0naixi)xk2gxk=0

等价于:
∑ i = 0 n a i i + k + 1 = ∫ g ∗ x k , k = 0 , . . . , n \sum_{i=0}^n \frac{a_i}{i+k+1}=\int g*x^k,k=0,...,n i=0ni+k+1ai=gxk,k=0,...,n

写成矩阵格式:
[ 1 1 / 2 1 / 3 ⋯ 1 / ( n + 1 ) 1 / 2 1 / 3 1 / 4 ⋯ 1 / ( n + 2 ) 1 / 3 1 / 4 1 / 5 1 / ( n + 3 ) ⋮ ⋮ ⋮ ⋱ 1 / ( n + 1 ) 1 / ( n + 2 ) 1 / ( n + 3 ) ⋯ 1 / ( 2 n + 1 ) ] [ a 0 a 1 a 2 ⋮ a n ] = [ g 0 g 1 g 2 ⋮ g n ] \left[ \begin{array}{ccccc} 1 & 1 / 2 & 1 / 3 & \cdots & 1 /(n+1)\\ 1 / 2 & 1 / 3 & 1 / 4 & \cdots & 1 / (n + 2)\\ 1 / 3 & 1 / 4 & 1 / 5 & & 1 / (n + 3)\\ \vdots & \vdots & \vdots & \ddots & \\ 1 / (n+1) & 1 / (n + 2) & 1 / (n + 3) & \cdots & 1 / (2 n +1) \end{array} \right] \left[ \begin{array}{c} a_0\\ a_1\\ a_2\\ \vdots\\ a_n \end{array} \right] = \left[ \begin{array}{c} g_0\\ g_1\\ g_2\\ \vdots\\ g_n \end{array} \right] 11/21/31/(n+1)1/21/31/41/(n+2)1/31/41/51/(n+3)1/(n+1)1/(n+2)1/(n+3)1/(2n+1)a0a1a2an=g0g1g2gn

其中: g k = ∫ g ∗ x k , k = 0 , . . . , n g_k=\int g*x^k,k=0,...,n gk=gxk,k=0,...,n

也就是: A B = G AB=G AB=G

求解

Mathematica求解如下:

fit[g_, n_] := Module[{G = Table[Integrate[g[x]*x^k, {x, 0, 1}], {k, 0, n}], A = Table[1/(i + j + 1), {i, 0, n}, {j, 0, n}]},LinearSolve[A, G].Table[x^k, {k, 0, n}]]

测试:

g[x_] := Sin[2.*Pi*x];
n = 3;
l = fit[g, n];
Plot[{l, g[x]}, {x, 0, 1}, PlotLabel -> StringJoin["n=", ToString[n]],Frame -> True]

输出为在这里插入图片描述

这篇关于L^2准则下的多项式逼近,一个比较有意思的问题吧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/808069

相关文章

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

Redis出现中文乱码的问题及解决

《Redis出现中文乱码的问题及解决》:本文主要介绍Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 问题的产生2China编程. 问题的解决redihttp://www.chinasem.cns数据进制问题的解决中文乱码问题解决总结

全面解析MySQL索引长度限制问题与解决方案

《全面解析MySQL索引长度限制问题与解决方案》MySQL对索引长度设限是为了保持高效的数据检索性能,这个限制不是MySQL的缺陷,而是数据库设计中的权衡结果,下面我们就来看看如何解决这一问题吧... 目录引言:为什么会有索引键长度问题?一、问题根源深度解析mysql索引长度限制原理实际场景示例二、五大解决

Springboot如何正确使用AOP问题

《Springboot如何正确使用AOP问题》:本文主要介绍Springboot如何正确使用AOP问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录​一、AOP概念二、切点表达式​execution表达式案例三、AOP通知四、springboot中使用AOP导出

Python中Tensorflow无法调用GPU问题的解决方法

《Python中Tensorflow无法调用GPU问题的解决方法》文章详解如何解决TensorFlow在Windows无法识别GPU的问题,需降级至2.10版本,安装匹配CUDA11.2和cuDNN... 当用以下代码查看GPU数量时,gpuspython返回的是一个空列表,说明tensorflow没有找到

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

IDEA Maven提示:未解析的依赖项的问题及解决

《IDEAMaven提示:未解析的依赖项的问题及解决》:本文主要介绍IDEAMaven提示:未解析的依赖项的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录IDEA Maven提示:未解析的依编程赖项例如总结IDEA Maven提示:未解析的依赖项例如

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模