几种典型分数阶微积分定义


1.前言

分数阶微积分具有历史依赖性,在描述复杂系统方面具有明显优势n分数阶微积分是将整数阶微积分算子的阶数推广到实数或者复数。 目前在理论研究和实际工程中,分数阶微积分有三种主要定义方式,分别是Grünwald-Letnikov、 Riemann-Liouville 和 Caputo 定义。 Grünwald-Letnikov 定义是将整数阶微积分的差分极限直接推广而来,适用于数值求解。 Riemann-Liouville 定义则采用微分-积分形式,避免了复杂的极限运算,更适用于数学统计分析。 Caputo定义则采用积分-微分形式,其 Laplace 变换简洁明了,在实际工程中被广泛应用。

2.Grünwald-Letnikov 定义

Grünwald-Letnikov 分数阶导数是整数阶导数差分定义的推广。考虑n 阶可
导的函数f(t),它的 1 阶导数定义为:
f ( 1 ) ( t ) = lim ⁡ h → 0 f ( t ) − f ( t − h ) h f^{(1)}(t)=\lim_{h\to0}\frac{f(t)-f(t-h)}h f(1)(t)=h0limhf(t)f(th)
因此,n阶导数为:
f ( n ) ( t ) = lim ⁡ ⁡ h → 0 ∑ k = 0 n ( − 1 ) k ( n k ) f ( t − k h ) h n f^{(n)}(t)=\underset{h\to0}{\operatorname*{\lim}}\frac{\sum_{k=0}^n\left(-1\right)^k\binom nkf(t-kh)}{h^n} f(n)(t)=h0limhnk=0n(1)k(kn)f(tkh)
其中,
( n k ) = n ( n − 1 ) ( n − 2 ) ⋯ ( n − k + 1 ) k ! \binom nk=\frac{n(n-1)(n-2)\cdots(n-k+1)}{k!} (kn)=k!n(n1)(n2)(nk+1)
Grünwald-Letnikov 分数阶导数是将正整数推广为正实数 α \alpha α。 对有限的区域[a,b]内的函数f(t),函数f(t)的 α \alpha α 阶左、右分数阶导数的定义分别为:
α G D t α f ( t ) = lim ⁡ h → 0 + 1 h α ∑ k = 0 [ t − a h ] ( − 1 k ) k ( α k ) f ( t − k h ) t G D b α f ( t ) = lim ⁡ h → 0 + 1 h α ∑ k = 0 [ b − t h ] ( − 1 k ) k ( α k ) f ( t + k h ) \begin{aligned}&_\alpha^GD_t^\alpha f(t)=\lim_{h\to0^+}\frac1{h^\alpha}\sum_{k=0}^{\left[\frac{t-a}h\right]}\binom{-1}k^k\binom\alpha kf(t-kh)\\&_t^GD_b^\alpha f(t)=\lim_{h\to0^+}\frac1{h^\alpha}\sum_{k=0}^{\left[\frac{b-t}h\right]}\binom{-1}k^k\binom\alpha kf(t+kh)\end{aligned} αGDtαf(t)=h0+limhα1k=0[hta](k1)k(kα)f(tkh)tGDbαf(t)=h0+limhα1k=0[hbt](k1)k(kα)f(t+kh)
α ∈ [ 0 , 1 ) \alpha \in [0,1) α[0,1) 时, Grünwald-Letnikov 分数阶导数的 Laplace变换为:
L [ G 0 D t α f ( t ) ] = s α F ( s ) L\bigg[\begin{smallmatrix}G\\0\end{smallmatrix}D_t^\alpha f(t)\bigg]=s^\alpha F(s) L[G0Dtαf(t)]=sαF(s)
α > 1 \alpha>1 α>1时,Grünwald-Letnikov 分数阶导数的 Laplace 变换不存在。

3.Riemann-Liouville 定义

Riemann-Liouville 分数阶导数是分数阶导数的一种最早被提出的形式。相
比于 Grünwald-Letnikov 分数阶导数, Riemann-Liouville 分数阶导数在计算时更为简便。 Riemann-Liouville 分数阶导数理论发展较为完备, 是目前最常用的分数阶微积分定义。

设f(t)在[a,b]逐段连续,则函数f(t)的 α \alpha α阶 Riemann-Liouville 型分数阶左、右导数定义分别为:
a R L D t α f ( t ) = 1 Γ ( α ) d n d t n ∫ a t ( t − u ) n − α − 1 f ( u ) d u , n − 1 ≤ α ≤ n , t R L D b α f ( t ) = 1 Γ ( α ) d n d t n ∫ t b ( t − u ) n − α − 1 f ( u ) d u , n − 1 ≤ α ≤ n \begin{gathered} _{a}^{RL}D_{t}^{\alpha}f(t)=\frac1{\Gamma\left(\alpha\right)}\frac{d^{n}}{dt^{n}}\int_{a}^{t}\left(t-u\right)^{n-\alpha-1}f(u)du,n-1\leq\alpha\leq n, \\ _{t}^{RL}D_{b}^{\alpha}f(t)=\frac1{\Gamma\left(\alpha\right)}\frac{d^{n}}{dt^{n}}\int_{t}^{b}\left(t-u\right)^{n-\alpha-1}f(u)du,n-1\leq\alpha\leq n \end{gathered} aRLDtαf(t)=Γ(α)1dtndnat(tu)nα1f(u)du,n1αn,tRLDbαf(t)=Γ(α)1dtndntb(tu)nα1f(u)du,n1αn
其中, Γ ( α ) \Gamma(\alpha) Γ(α)是Gamma 函数:
Γ ( α ) = ∫ 0 ∞ e − t t α − 1 d t , R e ( α ) > 0 \Gamma(\alpha)=\int_0^\infty e^{-t}t^{\alpha-1}dt,\mathrm{Re}(\alpha)>0 Γ(α)=0ettα1dt,Re(α)>0
Riemann-Liouville 分数阶导数是先对函数做 n − α n-\alpha nα阶分数阶积分,然后进行n 次导数。这样定义使得该算子的定义域扩大,不需要函数的连续性就可以对其求分数阶导数。
设f(t)定义在区间 ( 0 , ∞ ) \left(0,\infty\right) (0,)上, Riemann-Liouville 分数阶导数的 Laplace 变换:
L [ R L 0 D t α f ( t ) ] = s α F ( s ) − ∑ j = 0 n − 1 s j [ R L 0 D t α − j − 1 f ( t ) ] t = 0 , n − 1 ≤ α < n L\bigg[\begin{array}{c}RL\\0\end{array}D_t^\alpha f(t)\bigg]=s^\alpha F(s)-\sum_{j=0}^{n-1}s^j\bigg[\begin{array}{c}RL\\0\end{array}D_t^{\alpha-j-1}f(t)\bigg]_{t=0},n-1\leq\alpha<n L[RL0Dtαf(t)]=sαF(s)j=0n1sj[RL0Dtαj1f(t)]t=0,n1α<n

4.Caputo 定义

Caputo 分数阶导数的定义与 Riemann-Liouville 分数阶导数定义类似,只是
交换了积分和微分的顺序。对于阶数 α > 0 \alpha>0 α>0 , Caputo 分数阶导数是先求n 阶导数,再求 α − n \alpha-n αn阶积分。
设函数f(t)在区间[a,b]上n 阶可导, 则函数f(t)的 α \alpha α阶Caputo型分数阶导数:
a c D t α f ( t ) = 1 Γ ( n − α ) d n d t n ∫ a t ( t − u ) n − α − 1 f ( n ) ( u ) d u , n − 1 < α < n _a^cD_t^\alpha f(t)=\frac1{\Gamma(n-\alpha)}\frac{d^n}{dt^n}\int_a^t\left(t-u\right)^{n-\alpha-1}f^{(n)}(u)du,n-1<\alpha<n acDtαf(t)=Γ(nα)1dtndnat(tu)nα1f(n)(u)du,n1<α<n

Caputo 分数阶导数对函数f(t)要求较高,需要函数f(t)满足n 阶可导条件,其经常用在初值问题中对时间求导数,在工程和物理中应用较为广泛。

设f(t)定义在区间 ( 0 , ∞ ) \left(0,\infty\right) (0,)上, Caputo 分数阶导数的 Laplace 变换:
L [ C 0 D t α f ( t ) ] = s α F ( s ) − ∑ j = 0 n − 1 s α − j − 1 f ( j ) ( 0 ) , n − 1 < α ≤ n L\bigg[\begin{smallmatrix}C\\0\end{smallmatrix}D_t^\alpha f(t)\bigg]=s^\alpha F(s)-\sum_{j=0}^{n-1}s^{\alpha-j-1}f^{(j)}(0),n-1<\alpha\leq n L[C0Dtαf(t)]=sαF(s)j=0n1sαj1f(j)(0),n1<αn

5.参考文献

[1] Debnath L. A brief historical introduction to fractional calculus[J]. International Journal of Mathematical Education in Science and Technology, 2004, 35(4): 487-501.

[2] Diethelm K. The analysis of fractional differential equations: an application-oriented exposition using differential operators of Caputo type[M]. Berlin: Springer, 2010.

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小O的算法实验室

谢谢大佬的肯定!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值