主要内容

傅里叶和傅里叶反变换

本页展示了符号数学工具箱™中的傅里叶变换和反傅里叶变换的工作流程。有关简单示例,请参见傅里叶而且ifourier.在这里,傅里叶变换的工作流程是通过计算梁由于力的偏转来演示的。相关的微分方程由傅里叶变换求解。

傅里叶变换的定义

的傅里叶变换f(x)关于x在w是

F w f x e w x d x

傅里叶反变换是

f x 1 2 π F w e w x d w

概念:使用符号工作流

符号工作流保持自然符号形式的计算,而不是数字形式。这种方法可以帮助您理解解决方案的属性,并使用精确的符号值。只有在需要数值结果或不能以符号形式继续时,才可以用数字代替符号变量。详细信息请参见选择数字或符号算术.通常,这些步骤是:

  1. 申报的方程。

  2. 解决方程。

  3. 替代的价值观。

  4. 阴谋的结果。

  5. 分析的结果。

利用傅里叶变换计算光束偏转

定义方程

傅里叶变换可用于求解常微分方程和偏微分方程。例如,您可以模拟在点力作用下位于弹性基础上的无限长梁的挠度。一个相应的现实例子是地基上的铁轨。铁路轨道是无限长梁,基础是弹性的。

  • E是梁(或铁路轨道)的弹性。

  • 为梁横截面面积的第二弯矩。

  • k是基础的弹簧刚度。

微分方程是

d 4 y d x 4 + k E y 1 E δ x < x <

定义函数y (x)还有变量。假设E,k是积极的。

syms Y(x) w E I k f假设([E I k] > 0)

使用为变量分配单位symunit

U =符号单位;Eu = E*u.Pa;% Pascal Iu = I*u.m^4;% meter^4 ku = k*u.N/u.m^2;%牛顿/米^2 X = X *u.m;F = F * un /u.m;

定义微分方程。

eqn = diff(Y,X,4) + ku/(Eu*Iu)*Y == F/(Eu*Iu)
eqn (x) = diff (Y (x), x, x, x, x) * (1 / [m] ^ 4) + ((k * Y (x)) / (E * I)) * ([N] / ((Pa) * [m] ^ 6)) = =…(f / E * I)) * ([N] / ((Pa) * [m] ^ 5))

表示力f狄拉克函数δ(x)

Eqn = subs(Eqn,f,dirac(x))
eqn (x) = diff (Y (x), x, x, x, x) * (1 / [m] ^ 4) + ((k * Y (x)) / (E * I)) * ([N] / ((Pa) * [m] ^ 6)) = =…(狄拉克(x) / (E *我))* ([N] / ((Pa) * [m] ^ 5))

解决方程

计算的傅里叶变换eqn通过使用傅里叶在…的两边eqn.傅里叶变换将微分转化为指数w

eqnFT =傅里叶(lhs(eqn)) ==傅里叶(rhs(eqn))
eqnFT = w ^ 4 *傅里叶(Y (x), x, w) * (1 / [m] ^ 4) + ((k *傅里叶(Y (x), x, w)) / (E *我))* ([N] / ((Pa) * [m] ^ 6))…= = (1 / (E *我))* ([N] / ((Pa) * [m] ^ 5))

隔离傅里叶(Y (x), x, w)在方程中。

eqnFT =隔离(eqnFT,傅里叶(Y(x),x,w))
eqnFT =傅里叶(Y (x), x, w) = = (1 / (E *我* w ^ 4 * (Pa) * [m] ^ 2 + k * [N])) * [N] * [m]

计算Y (x)通过计算右边的傅里叶反变换。简化结果。

YSol = ifourier(rhs(eqnFT));YSol =简化(YSol)
YSol = ((exp (- (2 ^ (1/2) * k ^ (1/4) * abs (x)) / (2 * E ^(1/4) *我^ (1/4)))* sin ((2 * 2 ^ (1/2) * k ^ (1/4) * abs (x) +…π* E ^(1/4) *我^ (1/4))/ (4 * E ^(1/4) *我^ (1/4))))/ (2 * E ^(1/4) *我^ ^ (1/4)* k (3/4))) * [m]

检查YSol通过替换得到正确的尺寸YSoleqn并且使用checkUnits函数。checkUnits返回逻辑1真正的),这意味着eqn现在具有相同物理尺寸的兼容单元。

checkUnits(潜艇(eqn Y YSol))
ans = struct with fields: Consistent: 1 Compatible: 1

使用将表达式与单元分开separateUnits

YSol = separateUnits(YSol)
YSol = (exp (- (2 ^ (1/2) * k ^ (1/4) * abs (x)) / (2 * E ^(1/4) *我^ (1/4)))* sin ((2 * 2 ^ (1/2) * k ^ (1/4) * abs (x) +…π* E ^(1/4) *我^ (1/4))/ (4 * E ^(1/4) *我^ (1/4))))/ (2 * E ^(1/4) *我^ ^ (1/4)* k (3/4))

替代值

使用这些值E= 106巴勒斯坦权力机构= 1034,K = 106N / m2.将这些值代入YSol并通过使用转换为浮点数vpa精确到16位。

值= [1e6 1e-3 1e5];YSol = subs(YSol,[E I k],values);YSol = vpa(YSol,16)
YSol = 0.0000158113883008419*exp(-2.23606797749979*abs(x))*sin(2.23606797749979*abs(x) +…0.7853981633974483)

阴谋的结果

用,画出结果fplot

fplot(YSol) xlabel('x') ylabel('偏转y(x)')

分析结果

该图表明,梁的偏转由于点力是高度局域化的。挠度在撞击点最大,然后迅速减小。符号结果使您能够分析结果的属性,这在数值结果中是不可能的。

请注意,YSol是术语的乘积。这个术语表明其响应为振动振荡行为。这个术语经验值结果表明,随着距离弹着点距离的增加,振荡行为很快被指数衰减所抑制。