三角插值的 Fourier 系数推导
给定 $k$ 个互不相同的复数 $x_0,\cdots,x_{k-1}$,以及 $k$ 个复数$y_0,\cdots,y_{k-1}$.我们知道存在唯一的复系数 $k-1$ 次多项式
$$
\mathcal{P}_{k-1}(x)=\xi_0+\xi_1x+\cdots+\xi_{k-1}x^{k-1}
$$
使得
$$
\mathcal{P}_{k-1}(x_0)=y_0,\cdots,\mathcal{P}_{k-1}(x_{k-1})=y_{k-1}.
$$
其中 $\xi_0,\cdots,\xi_{k-1}\in\mathbf{C}$.这个结论是范德蒙行列式不为0的一个简单推论.特别的,我们令 $x_i=\omega^i$,其中 $\omega=e^{\frac{2\pi i}{k}}$,我们就得到了三角插值多项式.为了确定三角插值多项式的系数,我们使用 Cramer 法则.我们知道
$$
\begin{cases}
\xi_0+\xi_1\omega^0+\cdots+\xi_{k-1}\omega^0=y_0\\
\xi_0+\xi_1\omega^1+\cdots+\xi_{k-1}\omega^{k-1}=y_1\\
\xi_0+\xi_1\omega^2+\cdots+\xi_{k-1}\omega^{2(k-1)}=y_2\\
\vdots\\
\xi_0+\xi_1\omega^{k-1}+\cdots+\xi_{k-1}\omega^{(k-1)(k-1)}=y_{k-1}.
\end{cases}
$$
因此
$$
\xi_i=\frac{\begin{vmatrix}
\omega^{0}&\omega^0&\cdots&y_{0}&\cdots&\omega^{0}\\
\omega^0&\omega^1&\cdots&y_{1}&\cdots&\omega^{k-1}\\
\vdots&\vdots&\cdots&\vdots&\cdots&\vdots\\
\omega^0&\omega^{k-1}&\cdots&y_{k-1}&\cdots&\omega^{(k-1)(k-1)}\\
\end{vmatrix}}{\begin{vmatrix}
\omega^{0}&\omega^0&\cdots&\omega^{0}\\
\omega^0&\omega^1&\cdots&\omega^{k-1}\\
\vdots&\vdots&\cdots&\vdots\\
\omega^0&\omega^{k-1}&\cdots&\omega^{(k-1)(k-1)}\\
\end{vmatrix}}.
$$
设
$$
\begin{pmatrix}
y_0\\
y_1\\
\vdots\\
y_{k-1}\\
\end{pmatrix}=\alpha_0 \begin{pmatrix}
\omega^{0}\\
\omega^{0}\\
\vdots\\
\omega^0\\
\end{pmatrix}+\cdots+\alpha_i \begin{pmatrix}
\omega^{0}\\
\omega^{i}\\
\vdots\\
\omega^{i(k-1)}\\
\end{pmatrix}+\cdots+\alpha_{k-1}\begin{pmatrix}
\omega^{0}\\
\omega^{k-1}\\
\vdots\\
\omega^{(k-1)(k-1)}
\end{pmatrix},
$$
则 $\xi_i=\alpha_i$.于是我们只用求 $\alpha_i$ 即可.易得
$$
\alpha_i=\frac{1}{k}\begin{pmatrix}
y_0\\
y_1\\
\vdots\\
y_{k-1}\\
\end{pmatrix}\cdot \begin{pmatrix}
\omega^0\\
\omega^{-i}\\
\vdots\\
\omega^{-i(k-1)}\\
\end{pmatrix}.
$$
三角插值的 Fourier 系数推导的更多相关文章
- Fourier分析基础(一)——Fourier级数
前言 傅立叶分析的作用是把一个函数变成一堆三角函数的和的形式,也就是分解.首先引入的是傅立叶级数,Fourier级数的作用是把函数变为可数无限个三角函数的和,而且这些三角函数的频率都是某个基频的整数倍 ...
- 最全面的图卷积网络GCN的理解和详细推导,都在这里了!
目录 目录 1. 为什么会出现图卷积神经网络? 2. 图卷积网络的两种理解方式 2.1 vertex domain(spatial domain):顶点域(空间域) 2.2 spectral doma ...
- 从傅里叶级数(Fourier series)到离散傅里叶变换(Discrete Fourier transform)
从傅里叶级数(Fourier series)到离散傅里叶变换(Discrete Fourier transform) 一. 傅里叶级数(FS) 首先从最直观的开始,我们有一个信号\(x(t)\)(满足 ...
- Adaboost 算法的原理与推导
0 引言 一直想写Adaboost来着,但迟迟未能动笔.其算法思想虽然简单“听取多人意见,最后综合决策”,但一般书上对其算法的流程描述实在是过于晦涩.昨日11月1日下午,邹博在我组织的机器学习班第8次 ...
- paper 5:支持向量机系列二: Support Vector —— 介绍支持向量机目标函数的 dual 优化推导,并得出“支持向量”的概念。
paper 4中介绍了支持向量机,结果说到 Maximum Margin Classifier ,到最后都没有说“支持向量”到底是什么东西.不妨回忆一下上次最后一张图: 可以看到两个支撑着中间的 ga ...
- 数理方程:Fourier级数
更新:25 MAR 2016 对于周期函数(周期为\(2\pi\))或定义在\([-\pi,\pi]\)上的函数\(f(x)\),可以展开为* \(\large f(x)=\dfrac{a_0}{2} ...
- 《Concrete Mathematics》-chaper5-二项式系数
二项式系数,也是我们常用的组合数,最直观的组合意义就是从n个元素取k个元素所有可能的情况数,因此我们自然的得到下面二项式系数的定义式. 那么我们通过具有组合意义的二项系数,给出更加一般的二项式系数的定 ...
- 多层神经网络BP算法 原理及推导
首先什么是人工神经网络?简单来说就是将单个感知器作为一个神经网络节点,然后用此类节点组成一个层次网络结构,我们称此网络即为人工神经网络(本人自己的理解).当网络的层次大于等于3层(输入层+隐藏层(大于 ...
- AdaBoost 算法原理及推导
AdaBoost(Adaptive Boosting):自适应提升方法. 1.AdaBoost算法介绍 AdaBoost是Boosting方法中最优代表性的提升算法.该方法通过在每轮降低分对样例的权重 ...
随机推荐
- SpringCloud学习之手把手教你用IDEA搭建入门项目(二)
本篇博客是承接上一篇<手把手教你用IDEA搭建SpringCloud入门项目(一)>,不清楚的请到我的博客空间查看后再看本篇博客 1)先创建一个Eureka服务注册中心模块,用来作为服务的 ...
- [tensorflow] 线性回归模型实现
在这一篇博客中大概讲一下用tensorflow如何实现一个简单的线性回归模型,其中就可能涉及到一些tensorflow的基本概念和操作,然后因为我只是入门了点tensorflow,所以我只能对部分代码 ...
- 创建简单spring boot项目
简介 使用spring boot可以轻松创建独立的,基于Spring框架的生产级别应用程序.Spring boot应用程序只需要很少的spring配置 特点 创建独立的Spring应用程序 直接嵌入t ...
- Centos7开机启动自己的脚本
1. 自己新建一个脚本,如centnet-service.sh 经过后面的几个步骤后,这个脚本在开机的时候会执行,在这个脚本里面可以写你开机的时候想执行的命令,如启动tomcat,oracle等服务. ...
- 《打造扛得住的MySQL数据库架构》第3章 MySQL基准测试
3-1 什么是基准测试 测量系统性能,优化是否有效?MySQL基准测试. 定义:基准测试是一种测量和评估软件性能指标的活动,用于建立某个时刻的性能基准,以便当系统发生软硬件 变化时重新进行基准测试以评 ...
- python刷LeetCode:5. 最长回文子串
难度等级:中等 题目描述: 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad"输出: "bab& ...
- [Python]h5py/__init__.py:36:
个人博客地址:https://www.bearoom.xyz/2019/08/24/python-devolop-env-hdf5-problem/ 安装tensorflow之后,在导入tensorf ...
- RedHat无法使用yum源问题
RedHat下的yum是需要注册才能使用的 使用的话会提示: [root@test ~]# yum clean all Loaded plugins: product-id, refresh-pack ...
- java学习——内部类(一)
内部类 把一个类放在另一个类中定义,这个定义在其他内部的类被称为内部类,包含内部类 的类被成为外部类,Java从JDK1.1开始引入了内部类的定义. 内部类的作用: 内部类提供了更好的封装,可以把内部 ...
- 实体机安装Ubuntu系统
今天windows突然蓝屏了,索性安装个 Ubuntu 吧,这次就总结一下实体机安装 Ubuntu 的具体步骤 note: 本人实体机为笔记本 型号为:小米pro U盘为金士顿:8G 安装系统:Ubu ...