码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 混沌系统在图像加密中的应用(基于哈密顿能量函数的混沌系统构造1.4)


    混沌系统在图像加密中的应用(基于哈密顿能量函数的混沌系统构造1.4)

    • 前言
    • 一、逆时间对称性分析
    • 二、具有逆时间对称性的单晶格状混沌与拟周期流
      • 1.逆时间对称性及哈密顿能量函数
      • 2.数值仿真
    • python代码

    前言

    续接混沌系统在图像加密中的应用(基于哈密顿能量函数的混沌系统构造1.3)

    一、逆时间对称性分析

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    二、具有逆时间对称性的单晶格状混沌与拟周期流

    1.逆时间对称性及哈密顿能量函数

    在这里插入图片描述
    在这里插入图片描述

    2.数值仿真

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    注意系统(3.49)产生的保守运动不能形成任何类型的吸引子。从前面两种情形下可以看出,不同的初始条件会形成不同的动态特性,诸如保守混沌、拟周期 运动,有点类似于耗散系统中隐藏的动态。
    在这里插入图片描述

    python代码

    import numpy as np
    from scipy.integrate import odeint
    import matplotlib.pylab as mpl
    from mpl_toolkits.mplot3d import Axes3D
    import matplotlib.pyplot as plt
    mpl.rcParams['font.sans-serif'] = ['Times new roman']  # 指定默认字体
    mpl.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题
    
    def dmove(Point, t, sets):
        a, k = sets
        x, y, z = Point
        return np.array([y * (y*y - a*a) + z * (z*z - a*a),
                         -x * (x*x - a*a) + y * z * (z*z - a*a),
                         -x * (x*x - a*a) - y * y * (y*y - a*a) + k])
    
    t = np.arange(0, 1000, 0.01)  # 时间序列 总共有 100/0.01=10000 个点
    T = np.linspace(0,100,len(t))
    par_a = 2
    par_k = 1
    
    par = [par_a, par_k]
    P = odeint(dmove, (-2, 2, 0), t, args=(par,))
    H = 1 / 2 * (P[:, 0]**2 + P[:, 1]**2 + P[:, 2]**2)  # 哈密顿能量
    dH_dt = par_k * P[:, 2]
    
    fig = plt.figure()
    ax = fig.add_subplot(111, projection='3d')
    ax.plot(P[:, 0], P[:, 1], P[:, 2], lw=0.7, c="b")
    ax.set_xlabel('x', fontsize=12)
    ax.set_ylabel('y', fontsize=12)
    ax.set_zlabel('z', fontsize=12)
    plt.tight_layout()
    ax.set_title("")
    ax.grid()
    
    plt.figure()
    plt.plot(P[:, 0], P[:, 1], lw=1, c="b")
    plt.xlabel("x", fontsize=15)
    plt.ylabel("y", fontsize=15)
    
    plt.figure()
    plt.plot(P[:, 1], P[:, 2], lw=1, c="b")
    plt.xlabel("y", fontsize=15)
    plt.ylabel("z", fontsize=15)
    
    plt.figure()
    plt.plot(P[:, 0], P[:, 2], lw=1, c="b")
    plt.xlabel("x", fontsize=15)
    plt.ylabel("z", fontsize=15)
    
    plt.show()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
  • 相关阅读:
    Go语言 Map
    SQL 和 PostgreSQL:完整的开发人员指南
    【Linux】Linux环境配置安装
    打造虚拟企业展厅,开启商务活动新时代
    U-Net 模型改进和应用场景研究性综述
    【NOI模拟赛】给国与时光鸡(构造)
    Java SE 9 多版本兼容 JAR 包示例
    朋友圈社区程序源码分享
    maven或者gradle打完jar,jekins启动提示找不到问题
    Allegro如何输出IDF文件操作指导
  • 原文地址:https://blog.csdn.net/weixin_42207434/article/details/134474901
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号