当前位置: 首页 > news >正文

在Mathematica中使用Newton-Raphson迭代绘制一个花脸

编写带有参数的Newton-Raphson迭代:

NewNewtonCounter = Compile[{{z, _Complex}, {r, _Real}, {otherroot, _Complex}},Module[{counter = 0, zold = N[z] + 1, znew = N[z]},If[Abs[znew] < 10^(-9), znew = 10^(-9) + 0.0 I,znew = znew];For[counter = 0,(Abs[zold - znew] > 10^(-6)) && (counter < 85), counter++,(zold = znew; znew = (r + 2*zold^3)/(-1 + r + 3*zold^2))];Which[Abs[znew - 1] < 10^(-4), counter,Abs[znew - otherroot] < 10^(-4), 85 + counter,Abs[znew - Conjugate[otherroot]] < 10^(-4), 170 + counter,True, 255]]];(*返回含参数数表:其每个值代表NR迭代次数*)  
NewNewtonArray[r_, {{remin_, remax_}, {immin_, immax_}}, steps_] :=Module[{croot = -N[(1 + Sqrt[1 - 4 r])/2]},Table[NewNewtonCounter[x + y I, r, croot],{y, immin, immax, (immax - immin)/steps},{x, remin, remax, (remax - remin)/steps}]](*编写颜色函数*)                
SillyFaceColor[x_] :=If[EvenQ[Floor[255*x]], RGBColor[0, 0, 0],RGBColor[1, 1, 1]]SillyFaceColorB[x_] :=Which[x < 0.333, If[EvenQ[Floor[255*x]], RGBColor[0, 0, 0],RGBColor[tr[5 (3 x)], 0, 0]],0.334 < x < 0.666, If[EvenQ[Floor[255*x]], RGBColor[0, 0, 0],RGBColor[0, 0, tr[5 (3 x - 1)]]],0.667 < x < 1, If[OddQ[Floor[255*x]], RGBColor[0, 0, 0],RGBColor[0, 0, tr[5 (3 x - 2)]]],True, RGBColor[0, 0, 0]](*绘制函数*)
FaceNewtonPlot[{{remin_, remax_}, {immin_, immax_}}, data_, colorfn_] :=ListDensityPlot[Reverse[Transpose[data]],Mesh -> False, Frame -> False,PlotRange -> {1, 255}, AspectRatio -> Automatic,ColorFunction -> colorfn]
region = NewNewtonArray[0.5, {{-2.4, -1.85}, {-0.24, 0.24}}, 2000]; 
FaceNewtonPlot[{{-2.4, -1.85}, {-0.24, 0.24}}, region, SillyFaceColor]

FaceNewtonPlot[{{-2.4, -1.85}, {-0.24, 0.24}}, region, SillyFaceColorB]

http://www.lqws.cn/news/212293.html

相关文章:

  • 【判断既约分数】2022-4-3
  • Python60日基础学习打卡Day46
  • 杭州瑞盟 MS35774/MS35774A 低噪声256细分微步进电机驱动,用于空调风门电机驱动,香薰电机驱动
  • 【HarmonyOS5】UIAbility组件生命周期详解:从创建到销毁的全景解析
  • 智能手表供应链与采购清单(Aurora Watch S1)
  • 用队列实现栈
  • [TI板]MSPM0G3507学习笔记(一) 超详细keil环境配置+烧录配置+空工程迁移+vscode配置+点灯
  • 容器安全最佳实践:云原生环境下的零信任架构实施
  • 游戏(game)
  • 【RTSP从零实践】1、根据RTSP协议实现一个RTSP服务
  • compose 组件 ---无ui组件
  • SDC命令详解:使用set_propagated_clock命令进行约束
  • 路过美国Intel公司
  • 【AI论文】反思、重试、奖励:通过强化学习实现大型语言模型的自我提升
  • 计算机组成原理-存储器的概述
  • 关于datetime获取时间的问题
  • stm32内存踩踏一例
  • Doris 与 Elasticsearch:谁更适合你的数据分析需求?
  • 实战:子组件获取父组件订单信息
  • 快速上手shell脚本运行流程控制
  • 行为设计模式之Command (命令)
  • 嵌入式知识篇---Zigbee串口
  • 基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
  • 大话软工笔记—需求分解
  • RT-Thread内核组成——内核移植
  • SpringBoot 配置加载顺序?
  • 如何彻底删除windows10自带的美式键盘
  • 鸿蒙仓颉语言开发实战教程:商城应用个人中心页面
  • 2025年06月07日Github流行趋势
  • xctf-weak_auth(弱口令)