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. Angular6 用户自定义标签开发

    参考地址:https://www.jianshu.com/p/55e503fd8307

  2. SQL注入——知表名不知列明情景下查询数据

    场景 有某些情况,可以查找到表名,但查找不到列名. MySQL < 5 或 web过滤 information_scema 详解 select `1` from (select 1,2,3,4, ...

  3. react组件中刷新组件小技巧

    在开发过程中,经常遇到组件数据无法更新,例如:当你用同一个表格展示不同数据的时候,当点击第5页后,再点击另外一份数据时发现还在第五页,并没有回到第一页. 怎么能让一个组件每次数据不一样时都重新加载呢, ...

  4. 多人合作项目如何去管理git仓库

    前记:在git之前依稀记得有SVN去管理代码仓库,现在多用git去管理我们的代码:现在一般的项目大多数是多人同时开发,这样就会存在一个问题就是如何去协调开发:这也是lz当前使用git开发管理的些许经验 ...

  5. 第六章 对象-javaScript权威指南第六版(三)

    6.3 删除内容 delete运算符可以删除对象的属性. delete运算符只能删除自有属性,不能删除继承属性. delete表达式删除成功或没有任何副作用时,它返回true. 6.4 检测属性 用i ...

  6. 洛谷.5300.[GXOI/GZOI2019]与或和(单调栈)

    LOJ BZOJ 洛谷 想了一个奇葩的单调栈,算的时候要在中间取\(\min\),感觉不靠谱不写了=-= 调了十分钟发现输出没取模=v= BZOJ好逗逼啊 题面连pdf都不挂了 哈哈哈哈 枚举每一位. ...

  7. vue动态切换组件

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...

  8. ubuntu/deepin 下 Sha 哈 dow 哈 socks 全局配置

    1. 安装编译环境 Ubuntu在默认情况下没有提供C/C++的编译环境,因此需要手动安装.如果单独安装gcc以及g++比较麻烦,为了方便,我们直接安装Ubuntu提供的build-essential ...

  9. webpack学习--安装

    webpack需要在node环境运行,可以去node官网进行下载安装包:http://nodejs.cn/download/ 1.打开cmd命令窗口,运行node -v 2.全局安装webpack:n ...

  10. 微信小程序开发---各代码文件简介

    根据上一文,已建立QuickStart 项目,该项目系本人毕设部分内容,所以记录以便以后查阅 开发小程序就必须了解小程序项目目录结构和文件作用,接下来就根据我现在自学得到的知识把这些记录下来. 一.目 ...