Maxima可以画出Chaos、Duffing 、Fern、Lorenz、Rossler 、Portraits 、Mandelbrot、Staircase、Triangles等有趣的图...

Chaos


orbits(x^2+a, 0, 100, 400, [a,-1,-1.53], [x,-1.6,-0.8],

    [nticks, 400], [style,dots], WEB_IMAGE);



Duffing

a:1.0;

b:0.3;

c:0;

f:10.0;

eqs:[y,-(a*x^3+c*x+b*y)+f*cos(t)];

t_range:[t, 0, 40, 0.01];

inits:[0.0, 0.1];

sol:rk(eqs,[x,y],inits, t_range)$

plot2d([discrete, makelist([sol[i][2], sol[i][3]], i, 1, length(sol))], WEB_IMAGE);



Fern


a1: matrix([0.85,0.04],[-0.04,0.85])$

a2: matrix([0.2,-0.26],[0.23,0.22])$

a3: matrix([-0.15,0.28],[0.26,0.24])$

a4: matrix([0,0],[0,0.16])$

p1: [0,1.6]$

p2: [0,1.6]$

p3: [0,0.44]$

p4: [0,0]$

w: [85,92,99,100]$

ifs(w, [a1,a2,a3,a4], [p1,p2,p3,p4], [5,0], 50000, [style,dots], WEB_IMAGE);



Lorenz  √

d:10;

r:28;

b:8/3;

eqs:[d*(y-x),r*x-y-x*z, x*y-b*z];

t_range:[t, 0, 40, 0.01];

inits:[0.0, 0.1,0.0];

sol:rk(eqs,[x,y,z],inits, t_range)$

plot2d([discrete, makelist([sol[i][2], sol[i][3]], i, 1, length(sol))], WEB_IMAGE);

plot2d([discrete, makelist([sol[i][3], sol[i][4]], i, 1, length(sol))], WEB_IMAGE);

plot2d([discrete, makelist([sol[i][2], sol[i][4]], i, 1, length(sol))], WEB_IMAGE);





Rossler  

a:0.2;

b:0.2;

c:5.7;

eqs:[-y-z, x+a*y, b+x*z-c*z];

t_range:[t, 0, 200, 0.01];

inits:[0.0, 0.01, 0.01];

sol:rk(eqs,[x,y,z],inits, t_range)$

plot2d([discrete, makelist([sol[i][2], sol[i][3]], i, 1, length(sol))], WEB_IMAGE);

plot2d([discrete, makelist([sol[i][2], sol[i][4]], i, 1, length(sol))], WEB_IMAGE);

plot2d([discrete, makelist([sol[i][3], sol[i][4]], i, 1, length(sol))], WEB_IMAGE);






Portraits

numPortraits:8;

eqs:[sin(x)+y, sin(y)-x];

t_range:[t, 0, 10, 0.01];

for k:1 thru numPortraits do (

    inits:[0.0, k*0.1],

    sol[k]:rk(eqs,[x,y],inits, t_range)

 )$

sol_list:makelist(

    [discrete, makelist([sol[k][i][2], sol[k][i][3]], i, 1, length(sol[k]))],

     k, 1, numPortraits)$

plot2d(sol_list, WEB_IMAGE)$



simple Mandelbrot

mandel(reMin, reMax, imMin, imMax, resolution, iterations):=block(

    [reZ, imZ, absZ, i, pixels, reTemp],

    pixels:[[0,0]],

    for x:reMin step resolution thru reMax do [

        for y:imMin step resolution thru imMax do [

            reZ:0,

            imZ:0,

            absZ:0,

            for i:1 step 1 thru iterations while absZ < 4 do [

                reTemp:reZ^2 - imZ^2 + x,

                imZ:2*reZ*imZ + y,

                reZ:reTemp,

                absZ:reZ^2+imZ^2

            ],

            if absZ < 4 then pixels:append(pixels,[[x,y]])

        ]

    ],

    return(pixels)

 )$

 plot2d([discrete, mandel(-2,0.5,-1,1, 0.02, 16)],[style,

 [points,1,1,1]], WEB_IMAGE);



Staircase


load("dynamics")$

staircase(cos(y^2), 1, 11, [y, 0, 1.2], WEB_IMAGE);


Triangles


chaosgame([[0, 0], [1, 0], [0.5, sqrt(3)/2]], [0.1, 0.1], 1/2,

                 30000, [style, dots], WEB_IMAGE);



Maple中可以试着画出:

Duffing

Lorenz

Rossler

Portraits

用Maxima画出一些有趣的图的更多相关文章

  1. CSS画出的各种形状图

    利用CSS可以画出各种需要的图形目录[1]矩形[2]圆形[3]椭圆[4]直角三角形[5]正三角形[6]平行四边形[7]梯形[8]六角星[9]六边形[10]五角星简单图形 矩形div{ width: 1 ...

  2. 【EXCEL-折线图】百折不挠 | 用EXCEL画出与众不同的折线图(曲线图)

    很多熟悉EXLCE的朋友都知道EXCEL在生成统计图表方面的强大功能,我们在写各类总结.报告.方案等文档时常涉及到各类统计数字,将统计数字用图表的形式展示出来,既直观又美观.下面我分享一种不一样的折线 ...

  3. C++的菱形继承会发生什么问题?如何解决?画出其内存布局图

    菱形继承问题样例: #include <iostream> using namespace std; class A { public: ; virtual int getx() { re ...

  4. 使用Qt画出直方图和分位数图

    https://blog.csdn.net/gudanai/article/details/72136420

  5. Python——作业12(选做)选中矩阵的每行或每列画出对应的折线图(python programming)

    import os import platform import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5 ...

  6. achartengine画出动态折线图

    achartengine画出动态折线图的效果最近有个项目需要用到实时曲线图,我也上网搜索了一下,最后还是选择使用achartengine这个现成的东西,毕竟自己再canvas一下实在是太麻烦,而且项目 ...

  7. haploview画出所有SNP的LD关系图

    有时候我们想画出所有SNP的LD关系图,则需要在命令行添加“-skipcheck”命令行,如下所示: java -jar Haploview.jar -skipcheck -n -pedfile 80 ...

  8. 使用Pangolon在同一副图中,画出两个轨迹,比较误差

    使用 code/ground-truth.txt 和 code/estimate.txt 两条轨迹.请你根据上面公式,实现 RMSE的计算代码,给出最后的 RMSE 结果.作为验算,参考答案为:2.2 ...

  9. 灵悟礼品网上专卖店——画出E-R图

    一.小组成员: 洪雪意(产品负责人) 陈淑筠(Master) 二.组内人员任务情况 计划完成的任务的第三个模块:分析并建立数据库 已完成的任务: 任务的第三个模块: 陈淑筠(完成任务1):画出商品资料 ...

随机推荐

  1. arrayList和vector的区别--2019-4-16

    1. Vector & ArrayList 1)  Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的 ...

  2. iOS键盘事件实现、控制

    记录于2013/6/26:   一.点击键盘上的“Done”按钮关闭键盘 1.视图控制器实现UITextFieldDelegate协议 2.设置文本框属性      textField.returnK ...

  3. linux使用storcli64查看硬盘信息

    使用storcli查看硬盘信息: rpm -ivh storcli--.noarch.rpm cd /opt/MegaRAID/storcli/ ./storcli64 /c0(零) show 链接: ...

  4. Cause: java. lang.InstantiationException: tk.mybatis.mapper.provider.base.BaseInsertProvider

    相信现在Java Web开发都是用的mybatis吧,而用到mybatis很多人都不会错过通用mapper吧! (纯属瞎扯淡...qwq). 如我上一篇博客所写,目前公司新项目,使用了通用mapper ...

  5. 平时作业七 Java

    以下是几本计算机书籍的基本信息编号 书名 价格 出版社1 JAVA基础 32 清华大学出版社2 JAVA WEB开发 40 电子工业出版社3 面向对象程序设计 28 清华大学出版社4 Struts开发 ...

  6. DWM1000 自动应答代码实现与实例

    这一节继续继承之前帧过滤部分,首先补充一下关于帧过滤部分,如果将目标地址设置为0xFFFF,则同一个网络(物理频道与PANID 都相同),所有节点都应该收到这条信息,这个信息为广播信息,0xFFFF为 ...

  7. PeopleSoft 后台更新密码

    一.SQL脚本 where t.oprid='&opridName' ; 二.Data Mover 1.指定用户加密ENCRYPT_PASSWORD 用户名;2.所有用户ENCRYPT_PAS ...

  8. zipkin

    转:https://blog.csdn.net/liaokailin/article/details/52077620 zipkin为分布式链路调用监控系统,聚合各业务系统调用延迟数据,达到链路调用监 ...

  9. 获取jwt(json web token)中存储的用户信息

    一个JWT实际上就是一个字符串,它由三部分组成,头部(header).载荷(Payload)与签名. Payload payload中可以保存用户的信息. var claims = new Claim ...

  10. 旧项目Makefile 迁移CMake的一种方法:include Makefile

    有些c++旧项目用Makefile,要迁移CMake的时候非常痛苦,有些像static pattern的语法和make自带命令 cmake要重写一套非常的麻烦. 因此这里用trick的方法实现了一种i ...