sin的傅里叶变换公式_傅里叶变换的由来及复数下的傅里叶变换公式证明

sin的傅里叶变换公式_傅里叶变换的由来及复数下的傅里叶变换公式证明1、考虑到一个函数可以展开成一个多项式的和,可惜多项式并不能直观的表示周期函数,由于正余弦函数是周期函数,可以考虑任意一个周期函数能否表示成为一系列正余弦函数的和。假设可以,不失一般性,于是得到:f(t)=A0+∑(n=1,∞)Ansin(nωt+Φn)2、将后面的正弦函数展开:Ansin(nωt+Φn)=AnsinΦncosnωt+AncosΦnsinnωt令a0/2=A0,an…

大家好,又见面了,我是你们的朋友全栈君。

1、  考虑到一个函数可以展开成一个多项式的和,可惜多项式并不能直观的表示周期函数,由于正余弦函数是周期函数,可以考虑任意一个周期函数能否表示成为一系列正余弦函数的和。假设可以,不失一般性,于是得到:

f(t)= A0+∑(n=1,∞) Ansin(nωt+Φn)

2、  将后面的正弦函数展开:

Ansin(nωt+Φn)=AnsinΦncosnωt+AncosΦnsinnωt

令 a0/2 =A0,an = AnsinΦn,bn=AncosΦn,x=ωt,可得

f(x)= a0/2+∑(n=1,∞)(ancosnx+bnsinnx)

对两边在区间[-π,π]积分,得

ƒ(-π->π) f(x)dx = ƒ(-π->π)a0/2dx +ƒ(-π->π)(∑(n=1,∞) (ancosnx+bnsinnx))dx

ƒ(-π->π) f(x)dx = ƒ(-π->π)a0/2dx +∑(1 -> ∞) (ƒ(-π->π)(ancosnx+bnsinnx)dx)

ƒ(-π->π) f(x)dx = ƒ(-π->π)a0/2dx +∑( 1 -> ∞) [anƒ(-π->π)cosnxdx+bnƒ(-π->π)sinnxdx]

ƒ(-π->π) f(x)dx =a0/2 * 2π  +∑( 1 -> ∞) [anƒ(-π->π)cosnxdx+bnƒ(-π->π)sinnxdx]

当n=0時

ƒ(-π->π) f(x)dx = ao * π

于是我们求出了a0的值。

ao  = ƒ(-π->π) f(x)dx /π

三角函数系{1,cosx,sinx,cos2x,sin2x,……,cosnx,sinnx,……}  ————– ⑴

在区间[-π,π]上正交,就是指在三角函数系⑴中任何不同的两个函数的乘积在区间[-π,π]上的积分等于0,即

∫[-π->π]cosnxdx=0

∫[-π->π]sinnxdx=0

∫[-π->π]sinkxcosnxdx=0

∫[-π->π]coskxcosnxdx=0

∫[-π->π]sinkxsinnxdx=0

(k,n=1,2,3…..,k≠n)

下面利用三角函数正交性求出an,在原函数两端乘以cos(nx)再进行积分。

ƒ(-π->π) f(x)*cosnx dx = ƒ(-π->π)a0/2 * cosnx dx +ƒ(-π->π)(∑(n=1,∞)(ancosnx*cosnx + bnsinnx*cosnx))dx

ƒ(-π->π) f(x)*cosnx dx = a0/2 ƒ(-π->π) cosnx dx +∑(n=1,∞)[ an ƒ(-π->π)cosnx*cosnxdx + bn ƒ(-π->π)sinnx*cosnxdx])

根据上面提到的性质,可知 ƒ(-π->π) cosnx dx =0,ƒ(-π->π)sinnx*cosnxdx =0, 因此

ƒ(-π->π) f(x)*cosnx dx = an ƒ(-π->π)[cosnx*cosnxdx]

ƒ(-π->π) f(x)*cosnx dx = an  ƒ(-π->π)[1+cos2nx)/2 dx]

ƒ(-π->π) f(x)*cosnx dx = an [  ƒ(-π->π)1/2 dx +  ƒ(-π->π)(cos2nx/2 )dx

ƒ(-π->π) f(x)*cosnx dx = an ( π + 1/2 *( sin2nx|(-π->π))

ƒ(-π->π) f(x)*cosnx dx = an  π

得  an = 1/π ƒ(-π->π) f(x)*cosnx dx (n=1,2,3…..)

再用sin(nx)乘,再进行积分就会得到bn,

bn = 1/π ƒ(-π->π) f(x)*sinnx dx (n=1,2,3…..)

于是乎得到了一个任意函数展开成为正余弦函数的通用表达式,同时为什么会出现A0/2而不是直接的A0的原因也很明朗:就是让整个表达式更具有通用性,体现一种简洁的美。

通过了以上的证明过程,应该很容易记住傅里叶变换的公式。

到此为止,作为一个工程人员不用再去考虑了,可是作为每一个数学家他们想的很多,他们需要知道右侧的展开式为什么收敛于原函数,这个好难,有个叫Dirichlet的家伙证明出如下结论:

sin的傅里叶变换公式_傅里叶变换的由来及复数下的傅里叶变换公式证明

这里涉及两个函数

(1)事先给定一个函数f(x)

(2)根据f(x)构造一个Fourier级数,这是一个形式上的无穷项的和,和函数F(x)不一定存在.所以要判断它是否收敛.如果不收敛,f(x)与F(x)就毫无关系.

(3)如果判断出Fourier级数收敛,其和函数为F(x),而F(x)也不一定是f(x)

(4)Dirichlet定理指出,满足收敛定理2条件时,和函数F(x)恰等于f(x)在点x处左右极限的平均值.

用一个生活中的例子来阐明这过程:

(1)事先给您一只动物(如小兔)的旧衣服,小兔的旧衣服就是f(x)

(2)您根据小兔的旧衣服为它做一件新衣服,新衣服就是F(x),但是衣服F(x)未必能穿(未必收敛)

(3)即使能穿(收敛),新旧衣服也不一定大小完全一样(f与F未必相同)

(4)如果满足一定条件,新衣服F(x)在某些地方(f(x)连续点)与旧衣服f(x)完全相同.新衣服F(x)在某些地方(f(x)的不连续点,像衣服的破洞)与旧衣服f(x)是不相同的.

至此以2π为周期的傅里叶变换证明完毕,只不过我们经常遇到的周期函数我想应该不会这么凑巧是2π,于是乎任意的一个周期函数如何知道其傅里叶变换呢,数学向来都是一个很具有条理性的东西,任意周期的函数的傅里叶变换肯定也是建立在2π周期函数的基础之上的。

一个以2L为周期的函数f1(x)如何进行傅里叶变换?因为z=2π*x/(2L)=πx/L,可以用 sin z(即sinπx/L)作基函数,用πx/L替换傅里叶变换右边表达式各项中的x,不难看出就是对原f(x)图像沿x轴进行缩放L/π倍,显然这个求和后的新图像就是f1(x), 于是乎得到如下公式:

f(x)= a0/2+∑(n=1,∞)(ancos n zx +bnsin n zx) = a0/2+∑(n=1,∞)(ancosnπx/L+bnsinnπx/L)

同前面的计算方法,可得

an =  1/L ƒ(-L->L) f(x)*cosn πx/L dx      // 基函数为sin πx/L

bn =  1/L ƒ(-L->L) f(x)*sinn πx/L dx      // 基函数为sin πx/L

傅里叶函数看起来其实还是比较复杂的,有没有一种更简单的表达形式来表示呢。既然提出这个问题,肯定是有的,我个人猜想肯定是复变

函数大师在挖掘复变函数的时候,用复变函数去套用经典的傅里叶变换,偶然间发现的••••••

一个基本的欧拉公式eiθ=cosθ +i*sinθ,这个很容易可以从复数的几何意义上得知,我们通过取两个互为相反数的θ可以得到两个式子,

进而可以得到cos 和 sin 的复数表达形式:

fT(t)= a0/2+∑(n=1,∞)(ancosnω0t+bnsinnω0t)     ………..(L)

ejθ=cosθ +j*sinθ                     (1)

ej-θ= cos-θ +j*sin-θ=  cosθ-j*sinθ    (2)

(1)+( 2),得

cosθ = ( ejθ+ej-θ)  /2             (3)

据(1)和(3),得

sinθ = ( ejθ-ej-θ)  /2j

则(L)可变形为

fT(t) = a0/2+ ∑(n=1,∞)( an  ( 1/2 * (e(jnω0t)+e(-jnω0t)))+ bn( 1/2 * e(jnω0t)-e(-jnω0t))))

= a0/2+ ∑(n=1,∞)( an  ( 1/2 * (e(jnω0t)+e(-jnω0t)))- bn( j/2 * e(jnω0t)-e(-jnω0t))))

= a0/2 + ∑(n=1,∞)( (an-jbn)/2 e(jnω0t)+(an+jbn)/2 e(-jnω0t))

令 c0 = a0/2 = 1/T  ƒ(-T/2->T/2) fT(t)dt

令  cn = (an-jbn)/2 = 1/T [ ƒ(-T/2->T/2) fT(t) cosnω0t dt – j ƒ(-T/2->T/2) fT(t) sinnω0t dt]

= 1/T  ƒ(-T/2->T/2)fT(t)(cosnω0t- jsinnω0t)dt  = 1/T  ƒ(-T/2->T/2)fT(t)(cos-nω0t + jsin-nω0t)dt

= 1/T  ƒ(-T/2->T/2)fT(t) e(-jnωot) dt  ( n=1,2,3…)

同理  c_n = (an+jbn)/2 = 1/T [ ƒ(-T/2->T/2) fT(t) ejnω0t dt    ( n=1,2,3…)

cn = 1/T  ƒ(-T/2->T/2)fT(t) e-jnω0t dt  ( n =±1,±2,±3,……)

据 ωon=ωn 得

cn == 1/T  ƒ(-T/2->T/2)fT(t) e(-jωnt) dt

看出来了么,在不同波形图(f(x)表达式不同)中,同一个正弦函数曲线(ωn 或频率相同),它们的系数不同,是因为f(x)不同,无它。

fT(t) = c0+∑(n=1,∞)[ cn ejωnt +c_n e-jωnt ]

fT(t) = c0+∑(n=-∞,∞)[ cn ejωnt]       ( n =0,±1,±2,±3,……)

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/160845.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 2010年度 中国WEB应用防火墙厂家和产品大全

    2010年度 中国WEB应用防火墙厂家和产品大全中国WEB应用防火墙厂商与产品大全排名依据根据“厂家名称”的首字母拼音,无特殊含义。更新日期:2010年03月23日发布网站:www.cnciso.com、www.youxia.org联系人QQ:55984512、175589438厂家名称产品名称公司网址联系电话北京绿盟科技绿盟WEB应用防火墙www.nsfocus.com400-818-6868北京瑞达时代科技有限公…

  • C++11特性_object.equals

    C++11特性_object.equalsdecltype与auto关键字一样,用于进行编译时类型推导。decltype实际上有点像auto的反函数,auto可以让你声明一个变量,而decltype则可以从一个变量或表达式中得到类型,例如:intx=3;decltype(x)y=x;有人会问,decltype的实用之处在哪里呢,假如有一个加工产品的函数模板:templatevoidproc

  • 动态令牌_创建安全令牌

    动态令牌_创建安全令牌1、OTP、HOTP、TOTP简介1.1、OTPOne-TimePassword简写,表示一次性密码。1.2、HOTPHMAC-basedOne-TimePassword简写,表示基于HMAC算法加密的一次性密码。是事件同步,通过某一特定的事件次序及相同的种子值作为输入,通过HASH算法运算出一致的密码。1.3、TOTPTime-basedOne-Ti…

    2022年10月25日
  • 自编码器原理概述_编码器结构及工作原理

    自编码器原理概述_编码器结构及工作原理个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-62.html自编码器的概念自编码器(Auto-Encoder),是一种利用反向传播算法使得输出值等于输入值的神经网络,它先将输入压缩成潜在空间表征,然后通过这种表征来重构输出。自编码器由两部分组成:编码器:这部分能将输入压缩成潜在空…

  • cmd查看哪个端口被占用并终止其占用进程

    cmd查看哪个端口被占用并终止其占用进程打开cmd,输入命令:netstat-ano,列出所有端口的情况;查看被占用端口对应的PID,输入命令:netstat-aon|findstr“端口号”,回车,最后一位数字即PID;利用命令taskkill/f/pid进程ID结束进程。…

  • 微信小程序之某荟团JS逆向

    微信小程序之某荟团JS逆向声明:本文仅限交流学习使用,请勿使用在任何非法商业活动,禁止用于非法用途。否则后果自负。如有侵权,请告知删除,谢谢!文章目录 一、fiddler抓包分析请求参数 二、微信小程序反编译 三、逆向分析与测试结果 总结 也不能说简单吧,有手就行 前言提示:以下是本篇文章正文内容,下面案例可供参考,本文仅限交流学习使用,请勿使用在任何非法商业活动,禁止用于非法用途。否则后果自负。如有侵权,请告知删除,谢谢!详细请参考这位大佬-…

发表回复

您的电子邮箱地址不会被公开。

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