向日葵中的数学之美

2018-05-31 12:16:37 浏览数 (1)

向日葵,朝阳而生,以其明媚温暖、生机勃勃的特点广为人们所喜,当然,也有人会一本正经的说,关键是能吃!好的,那么重点来了!向日葵的花朵中还蕴藏着数学之美,你知道吗?当你嗑瓜子的时候,你还能想起瓜子是怎样在那个大大的黄色圆盘上排列的吗?

向日葵花序中央的管状花和种子从圆心向外,每一圈的数量就是1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144 ……按照斐波纳契数列的规律排列的,即后一数字为前面两个数字之和。如此排列的目的是为了尽可能的繁育更多的后代,因为每一株向日葵需要尽可能多的结出种子,而向日葵这种排列方式是种子在同等面积中能容纳数量最多的方式。

斐波那契数列,又称黄金分割数列,指的是这样一个列:

1、1、2、3、5、8、13、21、……这个数列从第二项开始,每一项都等于前两项之和。斐波那契数列的发明者,是意大利数学家列昂纳多·斐波那契(Leonardo Fibonacci)。

斐波那契数列中的斐波那契数经常出现在我们的眼前——比如松果、凤梨、树叶的排列、某些花朵的花瓣数,蜂巢,黄金矩形、黄金分割、等角螺线,十二平均律等。

后来,数学家们还发现向日葵圆盘中螺线的发散角是137.5º。我们知道,圆盘一周是360º,而360º-137.5º=222.5º,137.5º÷222.5º≈0.618,又是一个黄金分割。数学家在电脑上用圆点来代替葵花种子进行了模拟实验,如果发散角大于或者小于137.5º,圆点间都会出现间隙,因此,如果要使圆点排列没有间隙,发散角就必须是137.5º的黄金角,如下图所示:

下面我们用mathematica来实现向日葵可以用黄金分割来解释的数学之美.

Manipulate[Graphics[{RGBColor[1, 0.275, 0, .7], Table[Disk[Sqrt[i] {Sin[i (a Degree)], Cos[i (a Degree)]}, size], {i, 0, n}]}, PlotRange -> Sqrt[n] size , ImageSize -> {500, 400}], {{n, 100, "number of disks"}, 1, 300, Appearance -> "Labeled"}, {{size, .75, "radius of disks"}, 0.1, 2, Appearance -> "Labeled"},{{a, 137.5, "angle"}, 0, 180, Appearance -> "Labeled"}, AutorunSequencing -> {1, 2, {3, 12}}]

Manipulate[ (anglediv[parast01_, parast02_] := 360/(FromContinuedFraction[Join[TakeWhile[ Reverse[ContinuedFraction[parast01/parast02]], # > 0 &], Table[1, {12}]]] GCD[parast01, parast02]));Graphics3D[{Yellow,Table[Sphere[(n - i) {Sin[(i ( anglediv[parast01, parast02]) - (j 360/ GCD[parast01, parast02])) Degree ], Cos[(i ( anglediv[parast01, parast02]) - (j 360/GCD[parast01, parast02])) Degree ], (i - n) p }, Sqrt[( n - i)/GCD[parast01, parast02]]], {j, 1, GCD[parast01, parast02] - 1}, {i, 0, n}],Green, Table[Sphere[(n - s) {Sin[(s ( anglediv[parast01, parast02])) Degree ], Cos[(s ( anglediv[parast01, parast02])) Degree ], (s - n) p }, Sqrt[( n - s)/GCD[parast01, parast02]]], {j, 0, GCD[parast01, parast02]}, {s, 0, n}]}, ImageSize -> {500, 330}, Boxed -> False, Background -> Darker[Red, 0.3], PlotRange -> {{-n - 10, n 10}, {-n - 10, n 10}, All}],Column[{Control@{{parast01, 1, "parastichies 1"}, 1, 20, 1, Setter},Control@{{parast02, 1, "parastichies 2"}, 1, 20, 1, Setter},Control@{{n , 100, "number of elements / GCD"}, 0, 100, 1, Appearance -> "Labeled"},Control@{{p, 0.01, "pointiness"}, 0.0001, .1, Appearance -> "Labeled"} }, Alignment -> Left], Row[{Spacer[35], Panel[Row@{"GCD = " , Style[Dynamic[GCD[parast01, parast02]]],", divergence = " Style[Dynamic[anglediv[parast01, parast02] // N]], ", divergence [Times] GCD = " Style[Dynamic[GCD[parast01, parast02] anglediv[parast01, parast02] //N]],", rotational symmetry C", Style[Dynamic[GCD[parast01, parast02]]]}] }],TrackedSymbols :> {parast01, parast02, n, p}]

许多有趣的东西都可以通过mathematica来实现奥.

另外,即日起购买家庭版和标准单机版软件就有暑期优惠活动,如有购买需求,可以随时和我们联系。

BTW,我们的微信公众号更新了~~扫描下方二维码,关注我们新的账户,我们定期会发放Mathematica试用激活码哦~~惊喜不断,不要错过哟~~赶紧拿起手机扫扫扫吧。。。

0 人点赞