弦振动方程-数值求解02
- 格式:doc
- 大小:750.46 KB
- 文档页数:14
数学物理方程之基于数值计算方法的弦振动方程求解2数学物理方法中的平行四边形法则目录摘要、关键词…………………………………………… 2页有限差分法介绍………………………………………… 3页程序描述………………………………………………… 6页计算机处理……………………………………………… 8页Matlab作图…………………………………………… 10页特别鸣谢………………………………………………… 11页摘要、关键词摘要:继上次关于弦振动方程的“平行四边形法则”求解之后,我们又从数值计算的角度入手,对弦振动方程进行计算和模拟,从而验证“平行四边形法则”解弦振动方程的正确性。
关键词:有限差分法、数值计算、弦振动方程附: 弦振动方程:4(0,)(1,)0(,0)(1),(,0)8tt xxtu uu t u tu x x x u t x =⎧⎪==⎨⎪=-=⎩211((1))()'()()''()()+()()2!n n nu i h u ih u ih h u ih h u ih h -=+-+-+-……!211((1))()'()''()+()2!n n nu i h u ih u ih h u ih h u ih h +=+++ ……!()((1))'()()u ih u i h u ih o h h--=+((1))()'()()u i h u ih u ih o h h+-=+2((1))((1))'()()2u i h u i h u ih o h h+--=+有限差分法介绍以弦振动方程为例:2(,)(0,)(,)0(,0)()(,0)()tt xx t u a u f x t u t u l t u x x u x x ⎧=+⎪==⎪⎨=Φ⎪⎪=ψ⎩对于一定的u (x ,t ),我们用“差分”代替“微商”,从而将 数差值描述,可得:以及将第一个式子的右边第一项移至左边,得: ^…同理可得, 两式做差:22((1))((1))ih =h u i h u i h u +--()(,)(,)ni u x t u i x n t u =∆∆=1122(,)n n n i i i tt tt u u u u u i n t +--+==∆1122(,)n n n i i i xx xx u u u u u i n x +--+==∆21122(,)n n n i i i tt uu u u a f i n x+--+=+∆2222ta r x∆=∆ 2122122112(1)(,)n n n n n i i i i iu r u r u r u n t f i n ---+-=+-+-+∆用中心差分的一阶导数表示二阶导数,化简: 由此引入 则 则弦振动方程 可以表示为:我们定义 为网格比则由此可知,每一个格点u (i ,11(,0)()()2i it u u u x x i t--=ψ=ψ=∆(,0)t u i 1i u 202020221121221221100,/10.5(2(1)2()(,)0,0/12(1)(,)ni i i i n n n n i i i i i l x u r u r u r u t i x t f i x n t n i l x r u r u r u n t f i x n t +----+-=∆-⎧⎪=+-++∆Φ∆+∆∆∆=<<∆-⎨⎪+-+-+∆∆∆⎩ 其他n)均由u (i+1,n+1)、u (i ,n )、u(i-1,n-1)、 u(i,n-2)等其余四点所确定:由此我们可以采用“递归”的思想,借助计算机进行快速计算,从而得到各个格点的值.值得注意的是,①在边界上u ≡0.②在初始层上的点(即u (i ,0))无法用上述公式计算,还需借助初始条件,即:012020201211(,0)()2(1)(,1)i i i i i i u i u x u r u r u r u u t f i -+-∴==Φ=+-+-+由 和 两式相加,消去可得020*********.5(2(1)2()(,)i i i i u r u r u r u t i x t f i x n t +-=+-++∆Φ∆+∆∆∆综上:届此,我们可以将此式编入程序(采用“递归”思想),详细代码见下一节。
弦振动方程cauchy问题广义解的结构
弦振动方程,又称波动方程,是利用物理学中最基本原理——动
量定理(即动能定理)解决实际问题的通用数学工具。
它通常用来研
究一般固体的动态运动问题,常被用于弦的振动及其他振动的研究中。
处理弦振动方程的cauchy问题,其广义解的结构可表示为:解的形式:
$$u(x,t) = f(x-ct) + g(x+ct)$$
其中,$f(x-ct)$与$g(x+ct)$可看作特殊定解,均是$x$和
$ct$的周期函数,其波形由所选常数决定。
比如对$x$方向上的弦有
$f(x-ct) = A\cos2\pi(x-ct)$;而$g(x+ct) = B\sin2\pi(x+ct)$,
其中$A$与$B$可自行选取,其波形即由该选取的常数决定。
弦振动方程的cauchy问题的广义解的结构可认为是$u(x,t) =
f(x-ct) + g(x+ct)$的形式。
特别的,若把$f(x-ct)$与$g(x+ct)$都
简化为特殊的周期函数,如正弦函数或余弦函数,其波形将完全受常
数决定,其解即可表示为某种特殊定解函数。
总之,弦振动方程的cauchy问题的广义解的结构可记为
$$u(x,t) = f(x-ct) + g(x+ct)$$
其特殊情况下,特别定解的波形可完全由常数决定,可由正弦函数或
余弦函数构成的形式来表示。
弦振动方程数值解弦振动方程数值解赵磊;王琳;宋林强【期刊名称】《金田》【年(卷),期】2015(000)005【摘要】the string vibration equation is using mathematical language to describe the laws of physics , so this article from the perspective of physics , the standard form of equation is deduced , and then on the basic theory re-search and program verification . This paper introduces the finite difference method , and use modern mathematical tool Matlab to simulate the finite differ-ence method to solve the initial -boundary value problem of string vibration e-quation for the purpose of this article mentioned theory to a certain extent of validation.%弦振动方程是用数学语言来描述的物理规律,所以本文在从物理角度出发,对其进行基础理论研究和程序验证。
本文介绍了有限差分法,并利用现代数学工具Matlab实现模拟了有限差分法求解弦振动方程的初边值问题,对于本文所提到的理论进行了验证。
【总页数】2页(261-261,213)【关键词】弦振动;有限差分;显格式【作者】赵磊;王琳;宋林强【作者单位】成都理工大学管理科学学院;成都理工大学管理科学学院;成都理工大学管理科学学院【正文语种】中文。
差分法解弦振动方程引言弦振动是物理学中一个重要的研究领域,广泛应用于乐器制作、声学研究、结构工程等方面。
弦振动可以通过数学模型来描述,其中最常见的是弦振动方程。
差分法是一种数值解法,可以用于求解弦振动方程。
本文将介绍差分法的基本原理和应用,以及如何使用差分法来解决弦振动方程。
首先将介绍弦振动的基本概念和数学模型,然后详细讲解差分法的原理和步骤,并给出一个具体的例子来说明如何使用差分法求解弦振动方程。
弦振动方程在介绍差分法之前,我们先来回顾一下弦振动方程。
假设有一根长度为L的均匀弦,其横向位移u(x, t)可以通过以下偏微分方程描述:∂²u/∂t² = c² ∂²u/∂x²其中,c是波速。
这个方程描述了弦上任意一点处位移随时间变化的规律。
求解这个方程可以得到整个弦上各点的位移随时间的变化情况,从而揭示了弦振动的特性。
差分法原理差分法是一种数值解法,其基本思想是将连续的问题离散化为有限个离散点上的近似问题。
对于弦振动方程,可以将空间和时间都离散化,然后通过逐步迭代计算得到数值解。
具体来说,差分法将空间和时间划分为一系列小区间。
设弦上的位置为x,时间为t,则可以将弦划分为一系列小段,每个小段长度为Δx;同时将时间划分为一系列小步长,每个小步长为Δt。
然后通过近似求导公式来近似表示偏微分方程中的导数项。
差分法的核心思想是使用近似导数来替代真实导数,并通过迭代计算逐渐逼近真实解。
在求解弦振动方程时,我们需要用到以下两个近似公式:1.空间二阶导数近似公式:∂²u/∂x² ≈ (u(x+Δx, t) - 2u(x, t) + u(x-Δx, t)) / Δx²2.时间二阶导数近似公式:∂²u/∂t² ≈ (u(x, t+Δt) - 2u(x, t) + u(x, t-Δt)) / Δt²通过将这两个近似公式代入弦振动方程,我们可以得到一个差分方程,即用差分形式表示的弦振动方程。
ft解弦振动方程FT解弦振动方程引言:弦振动是物理学中的一个重要问题,它涉及到弦的运动和振动特性。
弦振动方程是描述弦振动运动的数学模型,其中FT解是一种常见的解法。
本文将介绍FT解弦振动方程的原理和应用。
一、弦振动方程的基本原理弦振动方程是描述弦上各点位置随时间变化的方程。
它是基于弦上各点的受力分析得出的,并且满足弦上各点的受力平衡条件。
一维弦振动方程可以表示为:∂²y/∂t² = v²∂²y/∂x²其中,y是弦上各点的位移,t是时间,x是弦上各点的位置,v是波速。
二、FT解弦振动方程的原理FT解是一种常见的解弦振动方程的方法,它利用傅里叶变换将弦振动方程转化为频域中的解析问题。
FT解的基本思想是将弦上各点的位移函数进行傅里叶变换,将其表示为一系列正弦函数的叠加,从而得到弦振动的频谱。
具体而言,FT解将弦振动方程中的时间变量t转化为频域中的角频率ω,将位置变量x转化为频域中的波数k。
通过傅里叶变换,可以得到弦振动方程在频域中的解析形式。
然后再通过傅里叶逆变换将频域中的解析解转化为时域中的解析解,得到弦上各点的位移函数。
三、FT解弦振动方程的应用FT解弦振动方程在物理学和工程学中有着广泛的应用。
下面将介绍一些典型的应用场景。
1. 乐器制作乐器的音色和音质与弦的振动特性息息相关。
通过FT解弦振动方程,可以分析和优化弦乐器的共振频率和共振模态,从而改善乐器的音质和演奏性能。
2. 声学设计在音响系统和声学设计中,需要对声源和接收器之间的传输特性进行分析和优化。
通过FT解弦振动方程,可以计算和预测声波在弦上的传播特性,从而指导声学设计和优化。
3. 结构动力学在工程结构的设计和分析中,弦振动方程经常被用于描述结构的振动响应。
通过FT解弦振动方程,可以计算和预测结构的固有频率和振型,从而评估结构的稳定性和动力特性。
4. 信号处理弦振动方程是一种常见的信号处理问题,它涉及到信号的传输和变换。
弦振动频率计算公式推导全文共四篇示例,供读者参考第一篇示例:弦振动频率是指弦在振动时产生的频率,它是弦的长度、材质、张力等因素共同作用的结果。
在物理学中,弦振动频率的计算是一个重要的问题,它可以帮助我们了解弦的振动特性以及音乐乐器的原理。
为了计算弦的振动频率,我们需要首先推导出弦振动频率的计算公式。
在这里,我们将通过弦的基本原理和波动方程来推导这个公式。
我们假设一根长度为L、质量为m的弦被拉紧,并在两端固定。
弦上的振动可以被描述为横波传播,其波速v可以用张力T和线密度μ来表示:v = √(T/μ)弦的振动频率f可以用波速v和波长λ来表示:f = v/λ我们知道波长λ与弦的长度L有关系:其中n为弦的振动模态数。
当n=1时,弦的整数倍分之一波长的振动称为基频振动,也称为第一次共振;当n=2时,弦的整数倍分之二波长的振动称为第二次共振,如此类推。
将λ带入频率计算公式中,得到:将波速v的公式代入,得到:f = (1/2L)√(T/μ) * n这就是弦振动频率的计算公式。
从这个公式可以看出,弦振动频率与弦的长度L、张力T、线密度μ以及振动模态数n有关。
当我们改变这些参数时,弦的振动频率也会相应改变。
通过这个公式,我们可以更好地理解弦的振动特性,并且可以应用于乐器的设计和制作中。
通过调节张力和长度,可以改变乐器的音调,使得音乐更加美妙动听。
弦振动频率的计算公式是一个重要的物理公式,它可以帮助我们理解弦的振动原理和音乐乐器的工作原理。
希望通过本文的介绍,读者能够更加深入地了解弦振动频率的计算方法,并且能够应用于实际问题中。
【这是我对于弦振动频率计算公式的一些理解,希望能够对您有所帮助。
】第二篇示例:弦振动是物理学中常见的一种现象,例如吉他、小提琴等乐器中的琴弦就是一种典型的弦振动系统。
在弦振动中,弦线上的每一个微小的部分都在进行横向振动,形成一系列波动。
而弦振动的频率则是指每秒钟弦线振动的次数,是描述弦振动特性的重要参数之一。
2.3.2弦振动⽅程的⼀般解( 2-3-14 )这⾥,是仅包含位置变量的函数;是仅包含时间变量的函数。
将( 2-3-15 )上式等号的左边仅与有关,右边仅与有关,⽽和都是独⽴变量,因⽽如果 (2-1-15) 式对任何的 x 与 t 都成⽴,则其等号两边应恒等于⼀个与,都⽆关的常数。
如果令这⼀常数为,并且,那么 (2-1-15) 式可写成( 2-3-16 )于是可以分别得到两个独⽴的⽅程( 2-3-17 )( 2-3-18 )经过上⾯分离变量后,就把⼀个偏微分⽅程分解成两个具有单⼀独⽴变量的常微分⽅程。
⽽这种形式的微分⽅程我们在第 1章中⼰遇到过,因此我们可以仿照⽅程 (1-2-4) 的求解结果,直接写出 (2-1-17) 与 (2-l-18) ⽅程的解为( 2-3-19 )( 2-3-20 )式中都是待定常数。
将上⾯⼆式代⼈( 2-3-14 )可得( 2-3-21 )其中仍是待定常数。
如果弦的两端固定,可以利⽤对任意时间都满⾜的边界条件( 2-3-8 )式。
将代⼈ (2-1-21) 式可以定得常数,再将代⼈ (2 - 1-21) 式可得如下关系( 2-3-22 )这时不能为零,否则和都为零,则整个弦不振动,这显然是没有意义的。
因此要得到⾮零解就必须令( 2-3-23 )要正弦函数等于零。
显然应该使其宗量满⾜如下关系( 2-3-24 )⽤⼀新的符号来代替,于是( 2-3-24 )式可写成( 2-3-25 )或( 2-3-26 )从 (2-1-21) 式可知弦的位移对时间是⼀简谐函数,因⽽应该代表振动的圆频率,⽽代表弦的振动频率。
从 (2-1-26) 式知,对于两端固定的弦,振动频率具有⼀系列持定的数值,即,并且仅同弦本⾝的固有⼒学参量有关,因⽽称为弦的固有频率。
但是它与第 1 章讨论的质点振动之间有⼀明显区别,⼀个单振⼦系统仅有⼀个固有频率,旧弦的固有频率不⽌⼀个,⽽有个,亦即⽆限多个。
并且固有频率的数值不是任意的,其变化也不是连续的,⽽是以等次序离散变化的。
弦振动偏微分方程的求解(郑州航空工业管理学院数理系 田硕 450015)摘要:本文列出了不同情况下的弦振动问题的定解方程及其成立条件,给出了不同情况下偏微分方程的求解方法,对于我们的生活和学习有一定的指导意义。
关键词:数学物理方程;偏微分方程;弦振动;拉普拉斯变换Method for solving partial differential equations of string vibration (Tianshuo Department of mathematics and physics, Zhengzhou Institute ofAeronautics Industry Management, henna zhengzhou 450015)Abstract : This article lists the definite solution of the equation of string vibration problems in different situations and the establishment of conditions, given the method for solving partial differential equations under different circumstances, for our lives and learning have a certain significance. Keywords : mathematical physics equations; partial differential equations; vibrating string; Laplace transform在数学物理方程中,根据常见物理模型,可以建立求解的偏微分方程。
如在很多物理实际问题中要遇到的拉普拉斯方程,泊松方程,波动方程,热传导方程等等。
第1篇一、波动方程波动方程是描述波动在连续介质中传播的偏微分方程。
常见的波动方程有弦振动方程、声波方程、光波方程等。
以下列举几种常见的波动方程及其表达式:1. 弦振动方程弦振动方程描述了弦在受到外力作用下的振动规律。
假设弦的线密度为λ,张力为T,弦上某点的位移为y(x,t),则弦振动方程可表示为:∂²y/∂t² = (T/λ)∂²y/∂x²其中,x表示弦的长度,t表示时间,y(x,t)表示弦上某点的位移。
2. 声波方程声波方程描述了声波在介质中的传播规律。
假设介质的密度为ρ,声速为c,声波在介质中的波动函数为p(x,t),则声波方程可表示为:∂²p/∂t² = c²∂²p/∂x²其中,x表示声波传播的距离,t表示时间,p(x,t)表示声波在介质中的波动函数。
3. 光波方程光波方程描述了光波在介质中的传播规律。
假设光波在介质中的波动函数为E(x,t),介质的折射率为n,则光波方程可表示为:∂²E/∂t² = (n²/c²)∂²E/∂x²其中,x表示光波传播的距离,t表示时间,E(x,t)表示光波在介质中的波动函数。
二、振动方程振动方程描述了物体在受到外力作用下的振动规律。
常见的振动方程有单摆运动方程、弹簧振动方程等。
以下列举几种常见的振动方程及其表达式:1. 单摆运动方程单摆运动方程描述了单摆在重力作用下的振动规律。
假设单摆的摆长为L,摆球质量为m,摆球偏离平衡位置的角度为θ,则单摆运动方程可表示为:mL²θ'' = -mgLsinθ其中,θ'表示摆球偏离平衡位置的角度对时间的导数,θ''表示摆球偏离平衡位置的角度对时间的二阶导数。
2. 弹簧振动方程弹簧振动方程描述了弹簧在受到外力作用下的振动规律。
假设弹簧的劲度系数为k,弹簧的位移为x,则弹簧振动方程可表示为:mω²x = -kx其中,ω表示弹簧振动的角频率,m表示弹簧的质量。
数学物理方程之基于数值计算方法的弦振动方程求解2数学物理方法中的平行四边形法则目录摘要、关键词…………………………………………… 2页有限差分法介绍………………………………………… 3页程序描述………………………………………………… 6页计算机处理……………………………………………… 8页Matlab作图…………………………………………… 10页特别鸣谢………………………………………………… 11页摘要、关键词摘要:继上次关于弦振动方程的“平行四边形法则”求解之后,我们又从数值计算的角度入手,对弦振动方程进行计算和模拟,从而验证“平行四边形法则”解弦振动方程的正确性。
关键词:有限差分法、数值计算、弦振动方程附: 弦振动方程:4(0,)(1,)0(,0)(1),(,0)8tt xxtu uu t u tu x x x u t x =⎧⎪==⎨⎪=-=⎩211((1))()'()()''()()+()()2!n n nu i h u ih u ih h u ih h u ih h -=+-+-+-……!211((1))()'()''()+()2!n n nu i h u ih u ih h u ih h u ih h +=+++ ……!()((1))'()()u ih u i h u ih o h h--=+((1))()'()()u i h u ih u ih o h h+-=+2((1))((1))'()()2u i h u i h u ih o h h+--=+有限差分法介绍以弦振动方程为例:2(,)(0,)(,)0(,0)()(,0)()tt xx t u a u f x t u t u l t u x x u x x ⎧=+⎪==⎪⎨=Φ⎪⎪=ψ⎩对于一定的u (x ,t ),我们用“差分”代替“微商”,从而将 数差值描述,可得:以及将第一个式子的右边第一项移至左边,得: ^…同理可得, 两式做差:22((1))((1))ih =h u i h u i h u +--()(,)(,)ni u x t u i x n t u =∆∆=1122(,)n n n i i i tt tt u u u u u i n t +--+==∆1122(,)n n n i i i xx xx u u u u u i n x +--+==∆21122(,)n n n i i i tt uu u u a f i n x+--+=+∆2222ta r x∆=∆ 2122122112(1)(,)n n n n n i i i i iu r u r u r u n t f i n ---+-=+-+-+∆用中心差分的一阶导数表示二阶导数,化简: 由此引入 则 则弦振动方程 可以表示为:我们定义 为网格比则由此可知,每一个格点u (i ,11(,0)()()2i it u u u x x i t--=ψ=ψ=∆(,0)t u i 1i u 202020221121221221100,/10.5(2(1)2()(,)0,0/12(1)(,)ni i i i n n n n i i i i i l x u r u r u r u t i x t f i x n t n i l x r u r u r u n t f i x n t +----+-=∆-⎧⎪=+-++∆Φ∆+∆∆∆=<<∆-⎨⎪+-+-+∆∆∆⎩ 其他n)均由u (i+1,n+1)、u (i ,n )、u(i-1,n-1)、 u(i,n-2)等其余四点所确定:由此我们可以采用“递归”的思想,借助计算机进行快速计算,从而得到各个格点的值.值得注意的是,①在边界上u ≡0.②在初始层上的点(即u (i ,0))无法用上述公式计算,还需借助初始条件,即:012020201211(,0)()2(1)(,1)i i i i i i u i u x u r u r u r u u t f i -+-∴==Φ=+-+-+由 和 两式相加,消去可得020*********.5(2(1)2()(,)i i i i u r u r u r u t i x t f i x n t +-=+-++∆Φ∆+∆∆∆综上:届此,我们可以将此式编入程序(采用“递归”思想),详细代码见下一节。
程序描述C语言:#include <stdio.h>#include <stdlib.h>#define imax 10 //定义长、宽格点数,其数值参考计算机性能而定#define jmax 60double f(double i,double n);double u(int i,int n);double FEI(double x);double PUSI(double x);double l=1,t=3; //设l=1,t=3double dert_t,dert_x; //长宽格距double R;int main (){int i,n,a;double A[imax][jmax];FILE *fp;dert_x=l/imax;dert_t=t/jmax;a=2; //a的值R=a*a*dert_t*dert_t/dert_x/dert_x;printf("%lf\n",R);if((fp=fopen("G:\\matlab\\myfile.txt","r+"))==NULL) //创建文件{printf("cannnot open file!\n");return 0;}for(n=0;n<jmax;n++){for (i=0;i<imax;i++){A[i][n]=u(i,n);printf("%9.5lf ",A[i][n]);fprintf(fp,"%9.5lf",A[i][n]);fputs(" ",fp);}printf("\n");fputs("\n",fp);}fclose(fp);return 0;}double u(int i,int n) //函数u(x,t){double result;if(i==0||i==imax-1){result=0;}else{if(n==0){result=FEI(i*dert_x);}else if(n==1){result=0.5*(R*R*u(i+1,0)+2*(1-R*R)*u(i,0)+R*R*u(i-1,0)+2*dert_t*PUSI( x)+dert_t*dert_t*f(i*dert_x,n*dert_t));//result=0.5*(u(i+1,0)+u(i-1,0)+2*dert_t*PUSI(i*dert_x));}else{result=R*R*u(i+1,n-1)+2*(1-R*R)*u(i,n-1)+R*R*u(i-1,n-1)-u(i,n-2)+ dert_t*dert_t*f(i*dert_x,n*dert_t);//result=u(i+1,n-1)+u(i-1,n-1)-u(i,n-2);}}return result;}(2)nO double FEI(double x) //u(x,0)=FEI(x)初始条件 {double fei; fei=x*(1-x); return fei; }double f(double i,double n) //外强迫项f(x,t) {double f;f=0; //此函数可以由题变化,此处暂定为0 return f; }double PUSI(double x) //Ut(x,t)=PUSI(x,t) {double PUSI;PUSI=8*x; //一阶导数 return PUSI; }计算机处理在实际操作过程中,鉴于递归调用在后期计算时间上的复杂度以及个人电脑(PC )的性能,我们仅对上节课中所涉及到的弦振动方程(第二页所附)进行了模拟,故对程序中的函数关系式进行了修改(即采用了“//”后面的关系式):注:有程序代码可知,第一行为r2的值:1.000000,随后的数组均输入到文件“myfile.txt”中.文件中数据如下:随后我们可以借助matlab对该文档进行调用,从而绘图,详见下一节。
Matlab作图代码如下(附截图):M=load('G:\matlab\myfile.txt')x=(0:0.9:0.1)t=(0:2.95:0.05)surf(M)xlabel('x')ylabel('t')zlabel('u(x,t)')title('弦振动方程数值计算方法-surf')图像:或。