百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

什么是对称?

myzbx 2025-03-07 22:11 20 浏览

编者按 液态什么结构都没有,它有最高的对称性。固态可以有各种各样不同的结构,这反映在其较低的,各种各样不同的对称性上。所以从液态到固态的转变,是一个从高对称到低对称的对称性破缺过程。我们发现几乎所有的物质态(如液态、固态、铁磁态、超导态)和它们之间的转变,都可以用这一对称性的观念来描写。物质态和对称性,这两个看来完全不相干的东西,其实却有深刻而紧密的联系。对称性是描写各种物质态的基石。今天这两篇文章从数学和物理的角度介绍了对称性。

——文小刚

作者 罗伯特·库尔曼 ( Robert J. Coolman )

翻译 高斌

校对 雨遇

在几何学中,如果一个物体经过一个变换(transformation),例如反射或者旋转,仍能和以前看起来一样,我们就称这个物体具有对称性(symmetry)。对称性是所有图案背后都会表现出的基本数学原理,它对于艺术(用于建筑、陶器、绗缝(布艺)、地毯制造)、数学(涉及几何、群论和线性代数)、生物学(有机体的形状)、化学(分子形状和晶体结构)和物理学(对称守恒量)都是非常重要的。“symmetry”一词是一个十六世纪的拉丁词语,由希腊语“syn-”(一起)和“metron”(度量)派生而来的。

对称的类型

  • 反射类(Reflective)

一般来讲,对称通常指的是镜面对称(mirror symmetry)或称为反射对称(reflective symmetry),即一个物体可以被一条直线(二维时)或一个平面(三维时)分成彼此镜像的两半,例如等腰三角形和人脸就分别是一个二维和三维对称图形的例子。数学上来讲,一个物体表现出镜面对称性是指“在反射下保持不变”,也就是在某种特定方式下反射物体并不会改变它的外观。

Figure 1 等腰三角形和蝴蝶是具有反射对称性的例子。二维物体有一条对称线,三维物体有一个对称面,它们在反射下都是不变的。

在生物学中,反射对称性通常被称为双侧对称性(bilateral symmetry),这些例子很容易在哺乳动物、爬行动物、鸟类和鱼类中找到。

  • 旋转类(Rotational)

生物学中另一种常见的对称形式是径向对称(radial symmetry),在花类和许多海洋生物中我们都可以发现它,例如海葵、海星和水母。在数学上,这样的物体因为“在旋转下保持不变”而被描述为能够表现出旋转对称性(rotational symmetry),它们可以通过一个点(二维时)或一个轴(三维时)旋转某些量而保持不变。

Figure 2 阴阳符号和风车是具有旋转对称性的例子。二维物体有一个对称中心,三维物体有一个对称轴,它们在旋转下是不变的。

  • 平移类(Translational)

想象一下,如果我们把所有方向都延伸到无穷远,一个二维或三维图形“在平移下保持不变”,我们就称它具有平移对称性(translational symmetry)。所有的棋盘花纹、大多数攀爬架以及地毯和壁纸的图案都具有平移对称性。

Figure 3 壁纸的图案和攀爬架是具有平移对称性的例子,如果把所有方向都延伸到无穷远,那它们在平移下是不变的。

其他形式的对称

尽管一些例子说明物体可以具有不止一种对称性(例如六角星具有六条反射对称线和一个六重旋转不变点),但是有一些物体和图案只在两种变换同时进行的条件下保持不变。

  • 瑕旋转(Improper Rotation) = 反射+旋转

一个带有定向边缘的五角反棱柱(pentagonal antiprism)在瑕旋转下保持不变(在下面的例子中,水平旋转36°,再沿着中心水平面面反射)。

  • 滑移反射(Glide Reflection) = 平移+反射

如果我们延伸任意方向至无穷远,则下图中的脚印图案是滑移反射不变的(平移加反射)。

  • 螺旋旋转(Screw Rotation) = 平移+旋转

同样的,如果我们延伸任意方向至无穷远,则下图中的一个由四面体构成的螺旋结构是螺旋旋转不变的。(平移加一个131.8°的旋转)

分类物体和图案

数学家和晶体学家们根据使物体保持不变的各种变换方式来对物体和图案的对称性进行分类。一个二维或三维物体的“点群(point group)”是指能使物体在反射和旋转(三维时,瑕旋转)变换下保持不变的所有变换方式全体。当一个物体使用一个主题图案时,我们可以很容易地确定出它的一个晶体学点群(crystallographic point group):在二维中,有10种(下图);在三维中,它们有32种。

Figure 4 二维中的十种晶体学点群

上图中的通用记号叫作Schoenflies记号,来自于德国数学家Arthur Moritz Schoenflies。

  • “C”代表“cyclic(循环)”。这些对象都有旋转对称性,但是没有反射对称性。下标数字代表具有几重旋转对称性,例如C2表示两重旋转对称性。所有的循环都有反向旋转的镜像。

  • “D”代表“dihedral(二面角)”。这些对象同时具有反射和旋转对称性。下标数字表示它有几重旋转对称性,也就同时意味着有几条反射对称线。

晶格(Lattices)

晶格是空间中点的一种重复图案,其中的物体可以被重复(更精确来讲,指平移,滑移反射或者螺旋旋转)。在一维时只有1种晶格,二维时有5种,三维时有14种。

通过二维图案(分配给它10种晶体学点群中的一种)沿一维或二维晶格重复,我们可以得到一个图案。当一个二维物体沿一维晶格重复时,我们可以得到7种饰带群(frieze group)中的一种,当沿三维晶格重复时,可以得到17种壁纸群(wallpaper group)的一种。

三维图案更为复杂,并且很少在晶体以外被发现。不同的三维点群沿着各种各样的三维晶格重复组成了230种不同的空间群。三维物体也能够沿一维或二维晶格重复,分别产生杆群(rod group)或图层群(layer group)。

分形(Fractals)

第四种变换——缩放(scaling)下的不变性也同样重要。直径保持几何增长的同心圆在缩放下保持不变。当一个物体在平移、反射、旋转和缩放的特定组合下保持不变,我们就把这种新图案称作分形。

Figure 5如果我们把上图向内和向外延伸至无穷,则科赫曲线(Koch curve)在特定的平移,旋转和缩放变换下保持不变。

原文地址:
http://m.livescience.com/51100-what-is-symmetry.html

投稿、提供新闻线索、转载授权请联系:iscientists@126.com

商务合作事宜请联系:dll2004@163.com

相关推荐

Python快速入门教程7:循环语句(python编程循环语句)

一、循环语句简介循环语句用于重复执行一段代码块,直到满足特定条件为止。Python支持两种主要的循环结构:for循环和while循环。二、for循环基本语法for循环用于遍历序列(如列表、元组、字符串...

一招教你搞定西门子博图SCL编程语句中FOR循环指令,so easy

西门子博图SCL编程:FOR循环,轻松搞定复杂代码?从此告别编程难题?爱上编程,从FOR循环开始!还在为西门子博图SCL编程的复杂语句头疼?别怕,今天教你轻松掌握FOR循环,编程从此不枯燥!认识FOR...

python中的流程控制语句:continue、break 和 return使用方法

Python中,continue、break和return是控制流程的关键语句,用于在循环或函数中提前退出或跳过某些操作。它们的用途和区别如下:1.continue(跳过当前循环的剩余部分,进...

“把 if 往上提,for 往下放!”(在if-else语句中,当条件成立时,就执行什么后的语句组)

很多程序员写代码的时候都会遇到这种情况:一个判断条件到底该放在函数里面还是外面?循环里是不是可以加个if?这些看起来无关紧要的小选择,实际会影响代码的清晰度、性能。最近,一位热爱简单代码和编程语言的...

Python必会的20核心函数—range()函数

range()函数是Python中用于生成不可变数字序列的核心函数,它在循环控制和序列生成中扮演着重要角色。本文将全面解析range()函数的用法和特性。1.range()函数的基本用法1.1基本...

Python编程基础:循环结构for和while

Python中的循环结构包括两个,一是遍历循环(for循环),一是条件循环(while循环)。遍历循环遍历循环(for循环)会挨个访问序列或可迭代对象的元素,并执行里面的代码块。foriinra...

JavaScript 中 for/of 和 for/in 的区别

近日,于闲暇之时,我沉浸于JavaScript之经典著作犀牛书,当阅览至循环语句部分,顿觉有必要予以记录。for/of与for/in乃是工作中屡被运用的语句,for/of是ES6新增的...

EXCEL循环语句FOR NEXT 举例(数字验证)

什么?Excel居然知道你爱我多久?不信你可以试试看啊!VBA代码如下:Sub密码验证()DimnumAsIntegerFornum=3To1Step-1IfInputBox(...

三菱PLC控制器中FOR 循环指令的使用方法

三菱PLCFOR循环指令深度解析:从入门到精通一、引言:简化重复操作,提升编程效率为什么要用FOR循环?在PLC编程中,我们经常会遇到需要对大量数据进行重复处理的情况,比如批量数据采集、数组运算...

for...in 循环的坑,别再用它遍历 JavaScript 数组了!

在JavaScript开发中,for...in循环是一个常见的语法结构,但它在遍历数组时存在很多潜在问题。这些问题如果不加以注意,可能导致意想不到的bug和性能问题。for…in循环的本质for.....

Python教程:for循环语句(python如何用for循环)

循环(loop)是生活中常见的现象,如每天的日升日落,斗转星移,都是循环,编程语言的出现就是为了解决现实中的问题,所以也少不了要循环。for循环在这里我用一个例子来具体解析一下for循环:>...

java里的for循环(java语言for循环)

从字节码角度再来分析一下,java里的for循环是怎么做到的。既然是字节码角度,那一定是在操作栈和局部变量表来实现的。先看一下源代码:很简单的一个代码,循环10次,每次循环打印输出i。我们再使用jav...

VUE循环语句的使用(v-for)(vue的foreach循环)

对数组进行遍历使用v-for进行遍历时注意参数格式,以“siteinsites”的格式填入参数,sites是被遍历的数据,site是遍历出的值。<template><div...

Python | for 循环(pythonfor循环语句用法)

前言在代码中有的时候我们需要程序不断地重复执行某一种操作例如我们需要不停的判断某一列表中存放的数据是否大于0,这个时候就需要使用循环控制语句这里会讲解for循环python有两种循环语句,一个...

continue、break 和 return 的区别是什么?

continue、break和return的区别是什么?在循环结构中,当循环条件不满足或者循环次数达到要求时,循环会正常结束。但是,有时候可能需要在循环的过程中,当发生了某种条件之后,提前终止...