用julia演示蝴蝶效应:洛伦兹吸引子

文章目录

    • Lorentz吸引子
    • julia绘图
    • 关闭抗锯齿

蝴蝶效应的名字来源于蝴蝶扇动翅膀的动作,虽然这个动作微小,但可能会在数周后引起飓风等极端天气的发生。这种现象表明,微小的变化可能会被放大并产生非线性的结果。这个概念最早由美国气象学家爱德华·洛伦兹提出的。

Lorentz吸引子

Lorentz吸引子堪称是微分方程组的经典入门案例了,图像也具有极高的辨识度,特别像蝴蝶的一对翅膀,同时与蝴蝶效应的内涵极为相称,表现出微小扰动可能带来巨大的差异性后果。

其方程为

d x d t = σ ( y − x ) d y d t = x ( ρ − z ) − y d z d t = x y − β z \begin{aligned} \frac{\text dx}{\text dt}&=\sigma(y-x)\\ \frac{\text dy}{\text dt}&=x(\rho-z)-y\\ \frac{\text dz}{\text dt}&=xy-\beta z \end{aligned} dtdxdtdydtdz=σ(yx)=x(ρz)y=xyβz

julia绘图

将其改写为Julia函数

function lorenz!(du,u,p,t)σ,ρ,β = pdu[1] = σ*(u[2]-u[1])du[2] = u[1]*(ρ-u[3]) - u[2]du[3] = u[1]*u[2] - β*u[3]
end

将初值 u 0 u_0 u0和参数 p p p设为

u0 = [1.0,0.0,0.0]
p = (10,28,8/3)

走你

using DifferentialEquations         #导入微分方程包
tspan = (0.0,100.0)
prob = ODEProblem(lorenz!,u0,tspan,p)
sol = solve(prob)

绘图

using Plots; gr()
plot(sol,vars=(1,2,3))
savefig("ode_4.png")

在这里插入图片描述

关闭抗锯齿

当然这个图其实是开了“抗锯齿”的,由于sol的结果本身就是一组分立的量,所以关闭denseplot之后,可以看到

plot(sol,vars=(1,2,3),denseplot=false)
savefig("ode_5.png")

在这里插入图片描述

ParameterizedFunctions.jl中提供了一个非常便捷的宏ode_def,可以更加直观地把Lorentz方程写为参数形式

L = @ode_def Lorentz begindx = σ*(y-x)dy = x*(ρ -z)- ydz = x*y -β*z
end σ ρ βprob = ODEProblem(L,u0,tspan,p)
sol = solve(prob)
plot(sol,vars=(1,2,3))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/629722.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 网络文件共享服务

存储类型 DAS 直连式存储 SAN 存储区域网络 NAS 网络附近存储 FTP文件传输协议 文件传输协议 FTP 早期的三个应用级协议之一,基于c/s架构 数据传输格式:二进制(默认)和文本 tcp 21端口(权限,…

jmeter--8.加密传输

目录 1. Base64加密 2. MD5加密 3. SHA加密(sha1\sha\sha224\sha256\sha384\sha512) 4. RSA加密-公钥加密,私钥解密 1. Base64加密 1.1 在需要加密传输的接口下新增BeanShell 预处理程序,${username}可替换成value值&#xff…

微软推出了Copilot Pro 每月20美金

微软推出了Copilot Pro 每月20美金 Copilot Pro在Word、Excel和PowerPoint等Office应用中提供AI驱动的增强体验。 在Word中生成文本和总结文档,回复电子邮件,以及在Excel中分析数据和生成图表等。 订阅者可以优先使用最新的OpenAI模型,包括…

基于springboot的环保网站的设计与实现

🍅点赞收藏关注 → 私信领取本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅一 、设计说明 1.1 研究背景 当…

【UE5】交互式展厅数字博物馆交互是开发实战课程

长久以来,我们总是不断被初学者问到类似这样的问题:如何从头到尾做一个交互式程序开发项目?本套课程尝试对这个问题进行解答。 课程介绍视频如下 【UE5】数字展厅交互式开发全流程 【谁适合学习这门课】 本套课程面向初学者,满足…

Spring使用注解管理Bean

引入lib包 Spring对Bean管理的常用注解 Component组件(作用在类上) Spring中提供了Component的三个衍生注解:(功能在目前为止是一致的) Controller WEB层 Service 业务层 Repository 持久层 属性注入的注解:(使用注解注入的方式,可以不用提供set方法) Value 用于注入普…

抢注好域名策略

在当今数字化时代,域名已成为企业和个人在互联网上的重要身份标识和品牌形象。因此,抢注一个好的域名对于网站的成功至关重要。本文为您介绍如何抢注好的域名秘诀与策略,帮助您在竞争激烈的头部市场中锻炼。 一、规划提前与研究 在抢注好域…

【上分日记】第380场周赛(数位dp+ KMP + 位运算 + 二分 + 双指针 )

文章目录 前言正文1.3005. 最大频率元素计数2.3007.价值和小于等于 K 的最大数字3.3008. 找出数组中的美丽下标 II 总结尾序 前言 本场周赛,博主也只写出两道题(前两道, hhh菜鸡勿喷),第三道涉及位运算 ,数位dp,第四道涉及KMP。 下…

“货到人”拣选系统模式|智能四向穿梭车系统如何节约仓储空间优化企业供应链?

随着仓储物流和电商行业的快速发展,自动化立库设备的技术不断完善。“货到人”拣选技术越来越受到行业的重视,且已逐渐成为供需双方关注的焦点。“货到人”拣选系统主要由储存系统,补货系统,输送系统,拣选系统和包装系…

嵌入式软件工程师面试题——2025校招社招通用(二十)

说明: 面试群,群号: 228447240面试题来源于网络书籍,公司题目以及博主原创或修改(题目大部分来源于各种公司);文中很多题目,或许大家直接编译器写完,1分钟就出结果了。但…

Hive条件函数详细讲解

Hive 中的条件函数允许你在查询中基于某些条件执行逻辑操作。以下是你提到的条件函数的详细讲解,包括案例和使用注意事项: IF() 功能:根据条件返回两个表达式中的一个。语法:IF(boolean_test, value_if_true, value_if_false)案例:SELECT IF(1=1, true, false); 结果为 tr…

C语言宏定义(#define定义常量​、#define定义宏​、 带有副作用的宏参数、 宏替换的规则、 宏函数的对比)

目录 一、#define的基本语法 二、什么是宏 三、#define定义常量用法 基本语法: 思考:在define定义标识符的时候,要不要在最后加上 ; 四、#define定义宏 五、带有副作用的宏参数​ 六、宏替换的规则​ 七、宏与函数的对比​ 一、#def…

tinyxml2

tinyxml2类对象 链接 XMLDocument xml文档(文件)对象。 作用: 加载xml文件,

前端js 数据结构:对象 object、数组Array 、Map 的创建、增删改 / 遍历数据

目录 前端js 数据结构:对象、数组、Map 的使用1 对象(object)1.1 创建对象1.1.1 对象字面量(最常用): {}1.1.2 使用 new 关键字和对象构造函数1.1.3 Object.create() 1.2 修改对象1.2.1 直接赋值:对象的属性名直接赋值1.2.2 点号/…

介绍 Apache Spark 的基本概念和在大数据分析中的应用

Apache Spark 是一个开源的分布式计算系统,它旨在处理大规模数据集并提供高性能和易用性。Spark 提供了一个统一的编程模型,可以在多种编程语言中使用,包括 Scala、Java、Python和R。Spark 的主要特点包括: 快速:Spark…

网页设计(八)HTML5基础与CSS3应用

一、当当网企业用户注册页面设计 当当网企业用户注册页面 改版后当当网企业用户注册页面 <!-- prj_8_1.html --> <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>当当网企业用户注册页面设计</title><s…

第13章 1 进程和线程

文章目录 程序和进程的概念 p173函数式创建子进程Process类常用的属性和方法1 p175Process类中常用的属性和方法2 p176继承式创建子进程 p177进程池的使用 p178并发和并行 p179进程之间数据是否共享 p180队列的基本使用 p180使用队列实现进程之间的通信 p182函数式创建线程 p18…

Docker的本地化部署:加速软件开发周期的利器

在软件开发中&#xff0c;部署是一个至关重要的环节。随着云计算的兴起&#xff0c;人们开始在云端环境中进行应用部署&#xff0c;以获得更好的灵活性和可扩展性。然而&#xff0c;一些场景中&#xff0c;本地化部署仍然是必要的&#xff0c;它提供了更高的安全性和可控性。 本…

【算法Hot100系列】接雨水

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

git报错fatal: detected dubious ownership in repository at

git报错 在git上执行 git branch fatal: detected dubious ownership in repository at ‘/home/你的用户名/cam/code’ To add an exception for this directory, call: git config --global --add safe.directory /home/你的用户名/cam/code这个一般是权限不足导致的&#…