复数中一个对称的自相似图形简介

举报
码乐 发表于 2024/05/17 09:37:11 2024/05/17
【摘要】 简介17世纪时,英国数学家瓦里士已经意识到在直线上不能找到虚数的几何表示。1797年,挪威的测量学家维塞尔向丹麦科学院递交论文《方向的解析表示,特别应用于平面与球面多边形的测定》,首先提出把复数用坐标平面上的点来表示,使全体复数与平面上的点建立了一一对应关系,形成了复平面概念。但当时没有受到人们的重视。1806年,日内瓦的阿工在巴黎发表的论文《虚量,它的几何解释》,也谈到了复数的几何表示法...

简介

17世纪时,英国数学家瓦里士已经意识到在直线上不能找到虚数的几何表示。

1797年,挪威的测量学家维塞尔向丹麦科学院递交论文《方向的解析表示,特别应用于平面与球面多边形的测定》,首先提出把复数用坐标平面上的点来表示,使全体复数与平面上的点建立了一一对应关系,形成了复平面概念。但当时没有受到人们的重视。

1806年,日内瓦的阿工在巴黎发表的论文《虚量,它的几何解释》,也谈到了复数的几何表示法。他用“模”这个名词来表示向量的长度,模这术语就源出于此。

伟大的德国数学家高斯是近代数学的奠基人之一,在历史上影响之大,可以和阿基米德、牛顿、欧拉并列。

image.png

他在1799年已经知道复数的几何表示,在1799年、1815年、1816年对代数基本定理作出的三个证明中,都假定了复数和直角坐标平面上的点一一对应,到1831年他对复平面作出了详细的说明。

1 复数对称的自相似平面图形

曼德博集合以数学家曼德博命名,它是复数平面组成分形的点的集合。 可以使用复二次多项式进行迭代计算。

    f_c(z) = z^2 + c

它最大的特点就是自相似。 对于大多数分形软件,内部已经有比较成熟的代码。

如下,我们通过判断是否处理绘画区域决定是否绘制。

  func inMandelbrot(x0 float64, y0 float64, n int) bool {
		var (
			x float64 = 0.0
			y float64 = 0.0
		)
		for n > 0 {
			xtemp := x*x - y*y + x0
			y = 2.0*x*y + y0
			x = xtemp
			n = n - 1
			if x*x+y*y > 4.0 {
				return false
			}
		}
		return true
	}

并依据规则生成图形代码

  for y >= ys {
		x := xs
		lineStr := []string{}
		for x < xe {
			n += 1
			if inMandelbrot(x, y, int(threshhold)) {
				lineStr = append(lineStr, "*")
			} else {
				lineStr = append(lineStr, ".")

			}
			x += dx
		}
		if i == 0 {
			lines := fmt.Sprintf("%v", strings.Join(lineStr, ""))
			endStr = append(endStr, lines)

		} else {
			stwo := ChangePlace(lineStr)
			lines := fmt.Sprintf("%v", strings.Join(stwo, ""))
			endStrTwo = append(endStrTwo, lines)

		}
		y -= dy
	}

最后组合成我们期望的对称图形。

image.png

3 小结

其中的算法乐趣很多,有兴趣的可以找资料来看看。

高斯的大白话:

	迄至目前为止,人们对于虚数的考虑,依然在很大的程度上把虚数归结为一个有毛病的概念,
    以致给虚数蒙上一层朦胧而神奇色彩。
  我认为只要不把+1、-1、i 叫做正一、负一和虚一,
  而称之曰向前一,反向一和侧向一,那么这层朦胧而神奇的色彩即可消失。

此后,人们才接受了复平面的思想,有些人还把复平面称为高斯平面。

利用复数的几何表示法,复数又可以用坐标平面上的向量来表示,两个复数相加可以按照向量加法的平行四边形法则来进行,一个复数乘以i(或-i)相当于表示此复数的向量逆(或顺)时针旋转90。

这就使得物理上的许多向量:力、速度、加速度等等,都可以借助于复数来进行计算,使复数成为物理学和其他自然科学的重要工具

代码路径

https://github.com/hahamx/examples/blob/main/alg_practice/0_mandebot/main.go

结果例子

https://github.com/hahamx/examples/blob/main/alg_practice/0_mandebot/md.txt
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。