Mandelbrot集的最新变化形态一览——MandelBox,Mandelbulb,Burning Ship,NebulaBrot

简介: 该文介绍了几种基于Mandelbrot集的衍生形态,包括Mandelbulb、MandelBox、Burning Ship和NebulaBrot。Mandelbulb是3D扩展,使用球坐标;MandelBox利用盒映射创造复杂形状;Burning Ship以复数模和实部迭代;NebulaBrot则结合多种分形特征。文中提供了简单的Python代码示例来生成这些图形,并提到了相关学习资源。

Mandelbrot集的衍生形态如MandelBox、Mandelbulb、Burning Ship和NebulaBrot都是基于Mandelbrot集的基本概念,但它们在公式和渲染技术上有所不同,从而产生了更为复杂和多样化的图形。下面我会给出这些衍生形态的一些基本介绍和代码示例。

Mandelbulb

Mandelbulb是三维空间中的Mandelbrot集的扩展,由Daniel White和Paul Nylander在2009年提出。它使用球坐标系而不是复数坐标系。

Python代码示例 (Mandelbulb)

Python

import numpy as np
from scipy.spatial import SphericalVoronoi
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt

def mandelbulb(x, y, z, max_iter=8):
    c = complex(np.sqrt(x*x + y*y), z)
    z = 0.0j
    for i in range(max_iter):
        z = z*z + c
    return abs(z)

x, y, z = np.ogrid[-2:1:100j, -2:1:100j, -2:1:100j]
vals = np.vectorize(mandelbulb)(x, y, z)

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.voxels(vals < 2.0, facecolors='red')

plt.show()

MandelBox

MandelBox是另一个三维分形,由Tom Lowe在2010年创造。它使用盒映射(box folding)来创建复杂的形状。

Python代码示例 (MandelBox)

Python

def mandelbox(x, y, z, max_iter=8):
    z = complex(x, y) + z
    for n in range(max_iter):
        if abs(z) > 2:
            break
        # Box folding
        z = 2 - abs(z) if abs(z) > 1 else 2*z*z + z
    return n

x, y, z = np.ogrid[-2:1:100j, -2:1:100j, -2:1:100j]
vals = np.vectorize(mandelbox)(x, y, z)

# Plotting the Mandelbox using matplotlib or any other plotting library

Burning Ship

Burning Ship是一个二维分形,由Michael Michelitsch和 Otto E. Rössler 在1992年定义。它的迭代公式与Mandelbrot集类似,但使用的是复数的模和实部。

Python代码示例 (Burning Ship)

Python

def burning_ship(x, y, max_iter=8):
    z = complex(x, y)
    for i in range(max_iter):
        z = (z.real ** 2 - z.imag ** 2, 2 * z.real * z.imag)  # Complex conjugate
        z = complex(abs(z[0]), abs(z[1])) + z
    return abs(z)

x, y = np.ogrid[-2:1:100j, -1.5:1.5:100j]
vals = np.vectorize(burning_ship)(x, y)

plt.imshow(vals.T, extent=[-2, 1, -1.5, 1.5], cmap='hot')
plt.show()

NebulaBrot

NebulaBrot是一个较新的概念,它结合了多种分形特性来创造星云状的效果。目前没有统一的定义或公式,因此下面的代码只是一个示例,展示了如何组合不同的分形元素来创造类似的效果。

Python代码示例 (NebulaBrot)

Python

def nebulabrot(x, y, max_iter=8):
    z = complex(x, y)
    for i in range(max_iter):
        z = z*z + z.conjugate()  # Example formula
    return abs(z)

x, y = np.ogrid[-2:1:100j, -1.5:1.5:100j]
vals = np.vectorize(nebulabrot)(x, y)

plt.imshow(vals.T, extent=[-2, 1, -1.5, 1.5], cmap='plasma')
plt.show()

参考文档

这些代码示例仅用于演示目的,可能需要根据具体环境进行调整。对于深入学习和研究这些分形,可以参考以下文档和资源:

请注意,这些代码示例可能需要额外的库和优化才能在实际环境中高效运行。

相关文章
|
开发者 iOS开发
UniApp打包教程:使用HBuilder X和AppUploader完成原生App云打包和上架指南“
UniApp打包教程:使用HBuilder X和AppUploader完成原生App云打包和上架指南“
917 3
|
JavaScript 前端开发
layui用layer.open打开子页面并获取子页面的ueditor富文本编辑器的内容
该内容描述了一个Web应用的交互流程,其中父页面通过调用子页面的JavaScript函数来获取富文本编辑器的内容。子页面包含一个富文本编辑器和一个`callbackdata`函数,用于返回编辑器的文本内容。父页面使用`layer.open`打开子页面作为弹窗,并在用户点击提交时,访问子页面的`callbackdata`获取编辑器内容,同时检查其他表单字段,如类型、标题等是否为空,以确保数据完整。
1369 0
|
8月前
|
SQL JSON 测试技术
测试用例生成智能体应用实战(附核心代码)
本文提出企业级测试智能体工程化方案:基于数据库直连+双智能体(SQL/用例生成)+三层校验架构,实现需求自动读取、结构化用例生成、安全校验与批量入库,附核心代码与生产落地实践。
|
25天前
|
人工智能 编解码 API
阿里云百炼图片生成大模型全梳理:通义万相 / Qwen‑Image/FLUX,收费规则与免费试用详解
阿里云百炼提供通义万相、Qwen-Image及FLUX等主流AI图片生成模型,支持文生图、图生图、局部重绘等功能;开通即享90天新人免费额度(含超7000万Tokens),按量计费,价格透明。在阿里云百炼官网:https://t.aliyun.com/U/fPVHqY 免费领取千万Tokens
|
9月前
|
机器学习/深度学习 缓存 监控
基于API的印度股市数据对接指南
本文为开发者提供印度股市(NSE/BSE)API对接完整指南,涵盖环境配置、实时行情、历史K线、基本面数据获取,支持HTTP/WS双协议,内置重试、缓存、时区处理与技术分析功能,助力快速构建量化工具与行情应用。(239字)
|
9月前
|
机器学习/深度学习 TensorFlow API
TensorFlow 入门指南
TensorFlow 是 Google 开源的主流机器学习框架,支持从研究到生产的全周期开发。其核心优势在于:灵活的数据流图、Keras 高级API易上手、底层API可深度定制,以及TensorBoard、TFLite、TF Serving等完善生态,广泛应用于图像识别、自然语言处理等领域。(239字)
|
4月前
|
运维 监控 关系型数据库
数据库连接池最佳实践:HikariCP参数调优与故障排查指南
HikariCP连接池配置不当不是小问题。最大连接数拍脑袋、超时参数不设、生命周期忽略,三个错误叠加会让系统突然雪崩。用真实故障复盘连接池调优。
|
5月前
|
人工智能 弹性计算 API
阿里云最新优惠券参考:AI加速季权益礼包、百炼优惠券、迁云补贴与学生优惠券领取与使用规则介绍
2026年阿里云推出多元化优惠券体系,覆盖学生、个人、企业及AI用户四大群体。个人与企业可领取AI加速季权益礼包(个人360元、企业1728元),覆盖百余款云产品,6月内一次性领用。AI大模型用户享百炼"先用后返"券,最高返200元。学生经认证可领300元无门槛年券,适用于ECS、OSS等主流产品。企业迁云最高可获5亿算力补贴,需提供非阿里云消费凭证申请。各券均有明确使用范围与有效期,建议用户按身份精准领取、合理规划使用,最大化降低上云与AI应用成本。
|
11月前
|
存储 弹性计算 应用服务中间件
阿里云服务器新手租用方式完整步骤教程(新版)
阿里云服务器提供自定义租用、一键租用、云市场租用和活动租用四种核心方式,适配不同配置需求、技术能力和预算场景。无论是需要精准配置的专业用户,还是追求快速部署的新手,都能找到合适的租用方案。以下是详细的适用场景和操作流程,助力高效上云。
|
机器学习/深度学习 人工智能 算法
基于YOLOv8的FPS射击类游戏人物识别项目|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
本项目基于YOLOv8与PyQt5开发,专为FPS射击类游戏人物识别设计,具备高精度、实时检测能力。包含完整训练代码、数据集及图形界面,支持图片、视频、摄像头多模式输入,提供从模型训练到部署的全流程解决方案,开箱即用,适合学术研究与AI工程实践。
基于YOLOv8的FPS射击类游戏人物识别项目|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!

热门文章

最新文章