没有合适的资源?快使用搜索试试~ 我知道了~
∈∈:→软件X 10(2019)100325原始软件出版物LyapXoolCarlos Argáeza,Czech,Jean-Claude Berthetb,Hjörtur Björnssona,Peter Gieslc,西古尔杜尔·弗雷·哈夫施泰因a冰岛雷克雅未克Dunhagi 3,107,冰岛大学科学研究所冰岛雷克雅未克,雷克雅未克,冰岛c联合王国苏塞克斯大学数学系ar t i cl e i nf o文章历史记录:收到2019年收到修订版,2019年8月13日接受,2019年保留字:完全李雅普诺夫函数C++科学计算动力系统自治常微分方程a b st ra ctLyapXool是一个C++程序,用于计算由自治常微分方程表示的任何二维或三维动力系统的完整李雅普诺夫函数及其轨道导数。程序界面友好,并确定了链递归集。本文描述了代码是如何组织的,如何使用它,并提供了一个有趣的应用程序示例©2019作者由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据:关于此代码的常规信息。当前代码版本v1用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX_2019_207GNU通用公共许可证GNU General Public Licensev3.0使用的代码版本控制系统使用C++、Armadillo、OpenMP的软件代码语言、工具和服务编译要求、操作环境依赖性链接到开发人员文档/手册github.com/LyapXool/V1问题支持电子邮件carlos@hi.is1. 动机和意义一类自治微分方程的解f(x),(1)其中,xRn,nN描述了一般的时变现象,并且经常在应用中出现。因此,解的一般行为取决于它们的初始条件,这是一个基本的问题。在各种不同的初始条件下的(1)的数值模拟在计算上是昂贵的。因此,*通讯作者。电子邮件地址:carlos@hi.is(C. Argáez)。https://doi.org/10.1016/j.softx.2019.100325我们考虑一种方法,该方法通过所谓的完全李雅普诺夫函数来表征系统的行为。完备的李雅普诺夫函数VRnR,在[1-4],定义在整个相空间上。它不会沿着微分方程(1)的解增加,因此通过分析函数的最小值和最大值提供了关于稳定性的此外,它把相空间Rn分成两个互不相交的区域:类梯度流区域,在这里函数沿解严格递减,因而解流过;链递归集,在这里函数沿解恒定,无穷小扰动可使流递归.这两个领域的特点是通过轨道导数V′(x)=<$V(x)·f(x)的符号,2352-7110/©2019作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softx=′∈∈== − ∈ =∈≥+= −= −̸≈−={}我J== −2杯Argáez,J.C. Berthet,H.Björnsson等人粤ICP备10032550号-1沿解的导数:在类梯度流区域中的V′(x)0和在链递归集中的V′(x<在本文中,我们解释的计算代码,我们已经写了计算完整的李雅普诺夫函数和分类的链递归集。本文的一些作者在[5- 9 ]中解释了还有其他方法来分析动力系统的一般行为。直接模拟具有许多不同初始条件的解其他更复杂的方法包括通过计算不变流形来确定吸引子吸引域的边界[11]。单元映射方法[12]或面向集合的方法[13]将相空间划分为单元并计算这些单元之间的动力学[14]。计算完整李雅普诺夫函数的其他方法[15-一个完整的李雅普诺夫函数,然后获得使用图形算法[9]。然而,这种方法具有即使在低维度中也需要大量单元的缺点。在[18]中,一个完整的李雅普诺夫函数被构造为一个连续的分段仿射(CPA)函数,仿射在一个固定的单纯复形的每个单纯形然而,这种方法假设有关局部吸引子的信息是可用的,而所提出的方法本文不需要任何有关系统围绕着每个搭配点。此栅格在3D中扩展到球体。第二种是在[7,9]中引入的方向网格,它将所有评估点与ODE系统的流对齐;在每个配置点处,我们沿着流的方向放置2m1.1. 完备李雅普诺夫函数与链递归集定义一个容差参数− 1 <γ≤ 0,每个配置点xj,使得存在一个y∈Yxj其中v(y)>γ,被标记为在链递归集(xjX0)中。其他点被认为是在类梯度流(xjX−)中。然后,通过求解v′(xj)rj,可以迭代地改进完整李雅普诺夫函数的逼近,其中rj是从先前的迭代中计算的。我们已经实现了三种不同的策略来计算值rj,cf。[5,6,9]对于更多信息:A. 我们定义r j1 ifxjX−和r j0 ifxjx0的B.rj是A的光滑插值。C. rj是值v′(x),x∈Yxj的平均值一般程序由以下算法给出1. 通过求解配置点处的vi′(xj)1,计算i 0的完全李雅普诺夫函数的近似vi2. 近似X0 对于每个搭配,使用v′(y),y∈Yx正在考虑中。本文中的方法的灵感来自于经典的李雅普诺夫函数的构造。它速度快,在更高的维度上工作得很好。在[19]中,将[15]中描述的方法与一个特定示例的平衡RBF方法进行了比较。计算一个完整的李雅普诺夫函数并不需要求解特定初始条件的动力系统,相反,一般的想法是近似一个不适定偏微分方程V′(x)1阶找到一个轨道导数为负的函数。使用径向基函数(Radial BasisFunctions,RBFs)计算近似值v,这是一种无网格配置技术,使得在有限配置点集合X中的所有点x处满足v′(x)1。然而,计算出的函数v在链递归集的点处(例如平衡点或周期轨道)将不能满足PDE,因为对于链递归集中的某个x,我们必须使v′(x)0。这是我们定位链递归集的一般算法的关键组成部分;我们通过定位v′(x)1的区域来确定链递归集我们的代码使用基于RBF的[10 ]第10段。作为RBF,我们使用Wendland函数,它们是紧支撑和正定函数[20],构造为紧支撑上的关于Wendland函数的一般描述见[10]。作为搭配点Xx1,. . .,xNRn,我们使用一个子集一个六边形网格。这已被证明可以最小化固定填充距离的配置矩阵的条件数[21]。通过求解由配置矩阵给出的线性方程组来找到近似值,配置矩阵是大小为N的二次矩阵。我们从配置点X的集合中移除所有均衡;不这样做会导致配置矩阵奇异。配置网格的密度由参数α控制。更详细的信息可以在[5- 10 ]中找到一旦我们知道v,我们就在每个配置点xj周围使用评估网格Yxj来验证近似。LyapXool是用两种不同的评估网格选项进行编码。第一个由μ同心圆上的m个点xj.若对任意y ∈ Yxj,vi′(y)> γ,则xj∈X0,否则xj∈X−,其中γ≤0是预定义的公差参数3. 使用vi′(x),x∈Yxj计算rj4. 通过求解vi′1(xj)= r j(j = 1,.). . ,N将i设置为i+1并重复步骤2。到4.2. 软件描述LyapXool是用C++编写的它需要Armadillo C++库用于线性代数和科学计算[22,23],以及用于多线程操作的OpenMP该程序通常在基于unix的操作系统中从命令行运行。代码lpx,其中写入所有输入参数文件与用户选择的扩展名。这些文件包含,例如,vi(x)和vi′(x)的坐标,链递归集中的点,等等。lpx,其中记录了有关运行时间的信息2.1. 软件构架源代码分为一组模块,每个模块都在一个单独的文件中:cpp:包含可执行指令的入口点。hpp:计算generalities.cpp和generalities.hpp:计算动力系统对临界点进行分类,并包括打印函数odesystem.cpp和odesstem.hpp:指定ODE RBF.cpp和RBF。hpp:计算完整的李雅普诺夫函数、其轨道导数、配置网格、第一个rj········+== − =[−] ∈=C. Argáez,J.C. Berthet,H.Björnsson等人粤 IC P 备 15032550号-1任何2D或3D动力系统的行为信息,而无需求解具有许多初始条件的常微分方程。在[24]中,一些作者表明,使用I次迭代的方法计算一个完整的李雅普诺夫函数的成本是O(N3IN2nm)阶,其中N是配置点的总数,n是问题的维数,m是每个配置点的评估网格中待评估的点的总数。6. 今后工作我们将进一步开发这个程序,利用不同测试系统的经验,使其更加复杂,使其能够对链递归集的连通分量及其稳定性进行分类。在未来,我们将扩展我们的代码来处理一般的n维系统,它也可以是Fig. 1. Lorenz吸引子的计算链递归集的三种不同投影。上:xy平面上的投影。左下角:xz平面上的投影。右下:yz平面上的投影。右下图中的z轴与左下图中的相同chainrecurrentset.cpp和chainrecurrentset.hpp:为进一步的迭代提供链递归集、评估网格和rjwendland.cpp和wendland.hpp:构造Wendland函数2.2. 软件功能我们的软件构造完整的李雅普诺夫函数,并确定链递归集。3. 说明性实例许多系统已经使用该软件进行了分析[5 图 1我们给出了用LyapXool得到的(标度)Lorenz吸引子的链回归集的结果,α0的情况。0665,γ0。5,r0的情况。49、在领域1 .一、0,1。03R3 , 与定向评估网格和m10.这些数字是在11次迭代后获得的。4. 如何使用在odesystem.cpp中写出(1)中f(x)的表达式,即动力系统,并给它一个名字在configtions.hpp的命名空间中定义该名称。在此文件中还定义了以下参数的计算:域,临界值,总数量的评估点,每个配置点,类型的网格,等最后定义扩展到其中的结果将被打印• 使用OpenMP和Armadillo• 运行5. 影响该软件计算任何2D或3D动力系统的完整李雅普诺夫函数(CLF),其动力学由自治常微分方程给出。它分类的链递归集,并确定系统的定性动力学。因此,它既可以用来分析给定的动力系统,并得到适当的模型。我们希望它能用于使用常微分方程的应用科学,如生物学,计算化学,物理学,药理学等。该工具提供了一种快速可靠的算法来构建CLF,广义离散时间动力系统。此外,我们将研究它是否可以扩展到计算时滞系统的7. 结论我们已经编写了一个C++代码,可以计算由自治常微分方程给出的任何2维或3维动力系统的完整Lya- punov函数。该代码基于[10]和[5- 9 ]中解释的理论竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作致谢本文的第一作者得到了冰岛研究基金(Rannís)的支持,冰岛基金编号163074-052,完全李雅普诺夫函数:有效的数值计算。本文的第三作者得到了冰岛研究基金(Rannís)的资助,冰岛基金号152429-051,Lya- punov方法和随机稳定性。引用[1]康利角孤立不变集与莫尔斯指数。CBMS区域会议系列,卷。38,美国数学学会; 1978。[2]康利角流的梯度结构是一种非线性流。遍历理论动力系统1988;8:11-26.[3]赫尔利·M链递归、半流和梯度。《动力学微分方程》 1995;7(3):437-56.[4] 赫尔利·M任意度量空间中的李雅普诺夫函数与吸引子。在:美国数学学会会刊,第126卷。1998年,p. 245比56[5]放大图片创作者:Argarez C,Giesl P,Hafstein S.分析动力系统以计算完整的李雅普诺夫函数。第七届仿真和建模方法、技术和应用国际会议论文集(SIMULTECH)。马德里,西班牙; 2017,p. 134比44[6]放大图片创作者:Argarez C,Giesl P,Hafstein S.完全李雅普诺夫函数的计算方法。见:Awrejcewicz J,编辑。从理论角度看动力系统。斯普林格数学与统计会议录,卷。248,Springer; 2018,p.1比11[7]放大图片创作者:Argarez C,Giesl P,Hafstein S.完备Lya- Punov函数的迭代 构 造 。 第 八 届 仿 真 和 建 模 方 法 、 技 术 和 应 用 国 际 会 议 论 文 集(SIMULTECH)。Porto,Portugal; 2018,p.211-22[8][10]杨文,李文,李文.使用二次规划构造一个完整的李雅普诺夫函数。第15届控 制 、 自 动 化 和 机 器 人 信 息 学 国 际 会 议( ICINCO ) 。 Porto , Portugal;2018,p.560-8····4杯Argáez,J.C. Berthet,H.Björnsson等人粤ICP备10032550号-1[9]放大图片创作者:Argarez C,Giesl P,Hafstein S.三维系统完全李雅普诺夫函数的计算。第57届IEEE决策与控制会 议 (CDC)。Miami Beach,FL,USA; 2018,p.4059-64[10]Giesl P. 使 用 径 向 基 函 数 构 造 全 局 Lyapunov 函 数 。 Lecture notes inmathematics,vol. 1904,Berlin Heidelberg:Springer-Verlag;2007.[11][10]张文辉,张文辉.向量场(不)稳定流形计算方法综述。国际分岔与混沌应用科 学 工程杂志2005;15(3):763-91.[12]许世良细胞到细胞映射应用数学科学,第64卷。NewYork:Springer-Verlag.[13]Dellnitz M,Junge O. 面向集合的数值方法为动力,动力cal系统。在:动力系统手册,第2卷。Amsterdam:North-Holland; 2002,p. 221比64[14]奥西彭科湾动力系统、图和算法。数学讲义,卷。1889,Berlin:Springer;2007.[15]Ban H,Kalies W. Conley分解定理的计算方法。J Comput Nonlinear Dyn2006;1:312[16][10]杨文,王文. Morse分解的李雅普诺夫函数的有效计算。离散连续动态系统系列B2015;20:2419-51。[17]杨文伟,王文伟.链递归的算法方法。Found Comput Math 2005;5:409[18][10]杨文,李文,李文.多吸引子系统的李雅普诺夫函数计算。Discrete ContinDyn Syst2015;9:4019-39.[19]放大图片作者:J.近似完成李雅普诺夫函数的数学验证。见:第21届网络与系统数学理论国际研讨会论文集,第0180卷。2014年,第1181-8[20]温德兰·H 最小次紧支径向基函数插值的误差估计. J Approx Theory1998;93:258-72.[21]伊斯克河径向基函数方法的完美中心放置,技术报告TUM M9809,慕尼黑工业大学,1998年。[22]Sanderson C, Curtin R. Armadillo : 一 个 基 于 模板 的 线 性 代 数 C++ 库 。 JOpen Source Softw 2016;1:26.[23]Sanderson C,Curtin R.一个用户友好的C++混合稀疏矩阵类。计算机科学讲义(LNCS),卷。10931,2018,p.422-30[24]放大图片创作者:Argarez C,Giesl P,Hafstein S.完整李雅普诺夫函数的迭代构造:算法效率分析。Springer; 2019,in press.
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- SSM Java项目:StudentInfo 数据管理与可视化分析
- pyedgar:Python库简化EDGAR数据交互与文档下载
- Node.js环境下wfdb文件解码与实时数据处理
- phpcms v2.2企业级网站管理系统发布
- 美团饿了么优惠券推广工具-uniapp源码
- 基于红外传感器的会议室实时占用率测量系统
- DenseNet-201预训练模型:图像分类的深度学习工具箱
- Java实现和弦移调工具:Transposer-java
- phpMyFAQ 2.5.1 Beta多国语言版:技术项目源码共享平台
- Python自动化源码实现便捷自动下单功能
- Android天气预报应用:查看多城市详细天气信息
- PHPTML类:简化HTML页面创建的PHP开源工具
- Biovec在蛋白质分析中的应用:预测、结构和可视化
- EfficientNet-b0深度学习工具箱模型在MATLAB中的应用
- 2024年河北省技能大赛数字化设计开发样题解析
- 笔记本USB加湿器:便携式设计解决方案
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功