Треугольник Серпинского
Треугольник Серпинского — фрактал, один из двумерных аналогов множества Кантора, математическое описание которого опубликовал польский математик Вацлав Серпинский в 1915 году[1]. Также известен как «салфетка» Серпинского.
Построение
Итеративный метод
Середины сторон равностороннего треугольника [math]\displaystyle{ T_0 }[/math] соединяются отрезками. Получаются 4 новых треугольника. Из исходного треугольника удаляется внутренность срединного треугольника. Получается множество [math]\displaystyle{ T_1 }[/math], состоящее из 3 оставшихся треугольников «первого ранга». Поступая точно так же с каждым из треугольников первого ранга, получим множество [math]\displaystyle{ T_2 }[/math], состоящее из 9 равносторонних треугольников второго ранга. Продолжая этот процесс бесконечно, получим бесконечную последовательность [math]\displaystyle{ T_0\supset T_1\supset\dots\supset T_n\supset\dots }[/math], пересечение членов которой есть треугольник Серпинского.
Метод хаоса
- 1. Задаются координаты аттракторов — вершин исходного треугольника [math]\displaystyle{ T_0 }[/math].
- 2. Вероятностное пространство [math]\displaystyle{ (0; 1) }[/math] разбивается на 3 равных части, каждая из которых соответствует одному аттрактору.
- 3. Задаётся некоторая произвольная начальная точка [math]\displaystyle{ P_0 }[/math].
- 4. Начало цикла построения точек, принадлежащих множеству треугольника Серпинского.
- 1. Генерируется случайное число [math]\displaystyle{ n \in (0; 1) }[/math].
- 2. Активным аттрактором становится та вершина, на вероятностное подпространство которой выпало сгенерированное число.
- 3. Строится точка [math]\displaystyle{ P_i }[/math] с новыми координатами: [math]\displaystyle{ x_i = \frac{x_{i-1} + x_A}{2}; y_i = \frac{y_{i-1} + y_A}{2} }[/math], где:
- [math]\displaystyle{ x_{i-1}, y_{i-1} }[/math] — координаты предыдущей точки [math]\displaystyle{ P_{i-1} }[/math]; [math]\displaystyle{ x_A, y_A }[/math] — координаты активной точки-аттрактора.
- 5. Возврат к началу цикла.
Построение на JavaScript
Это нерекурсивный метод построения
var k=Math.sqrt(3)/2; var S=16; var H=512; var W=Math.floor(H/k);
document.body.innerHTML=('<canvas id="C" width="'+W+'" height="'+H+'"></canvas>');
var canvas = document.getElementById('C');
var ctx = canvas.getContext('2d');
ctx.fillRect(0, 0, W, H);
for(var x = 0;x<=Math.floor(W/2);x++) {
for(var y = 0;y<H;y++) {
var A = y; var a = A%S;
var B = y/2+x*k; var b = B%S;
var C = y/2-x*k; var c = C%S;
if(a>b&&C>0&&B>0) {
if ((B/S)&(C/S)) ctx.fillStyle='#ff0';
else ctx.fillStyle='#000';
} else if(a<b&&C>0&&B>0) {
ctx.fillStyle='#0f8';
} else ctx.fillStyle='#fff';
ctx.fillRect(Math.floor(W/2)-x, y, 1, 1);
if (x!=0) ctx.fillRect(Math.floor(W/2)+x, y, 1, 1);
}
}
Построение на C# в консоли с помощью треугольника паскаля
using System;
namespace Serpinski
{
class Program
{
static void Main(string[] args)
{
Console.Write("Power of 2: ");
int depth = Convert.ToInt32(Math.Pow(2d, Convert.ToDouble(Console.ReadLine())));
int[][] pascaltriangle = new int[depth][];
for (int i = 0; i < pascaltriangle.Length; i++)
{
pascaltriangle[i] = new int[depth];
for (int j = 0; j < pascaltriangle[i].Length; j++)
pascaltriangle[i][j] = 0;
pascaltriangle[i][0] = 1;
pascaltriangle[i][i] = 1;
}
for (int i = 1; i < pascaltriangle.Length; i++)
for (int j = 1; j < pascaltriangle[i].Length; j++)
pascaltriangle[i][j] = (pascaltriangle[i - 1][j - 1] + pascaltriangle[i - 1][j]) % 2;
for (int i = 0; i < pascaltriangle.Length; i++)
{
for (int j = 0; j < pascaltriangle[i].Length; j++)
Console.Write(pascaltriangle[i][j] == 1 ? "#" : " ");
Console.WriteLine();
}
Console.Write("Press any key to continue...");
Console.ReadKey();
}
}
}
Свойства
- Треугольник Серпинского состоит из 3 одинаковых частей, коэффициент подобия 1/2.
- Треугольник Серпинского замкнут.
- Треугольник Серпинского имеет топологическую размерность 1.
- Важным свойством треугольника Серпинского является его самоподобие — ведь он состоит из трёх своих копий, уменьшенных в два раза (это части треугольника Серпинского, содержащиеся в маленьких треугольниках, примыкающих к углам).
- Треугольник Серпинского имеет промежуточную (то есть нецелую) Хаусдорфову размерность [math]\displaystyle{ =\ln3/\ln2\approx 1{,}585 }[/math]. В частности,
- треугольник Серпинского имеет нулевую меру Лебега.
Факты
Этот раздел представляет собой неупорядоченный список разнообразных фактов о предмете статьи. |
- Если в треугольнике Паскаля все нечётные числа окрасить в чёрный цвет, а чётные — в белый, то образуется треугольник Серпинского.
- Образования, похожие на треугольник Серпинского, возникают при эволюции многих конечных автоматов, подобных игре Жизнь[2].
- Изображения треугольника Серпинского в 1919 году стали мотивом нескольких графических произведений Георгия Нарбута, в частности эта фигура использована им при оформлении нескольких выпусков журнала «Мистецтво» (1919—1920 гг.).
- Вариации фигур на основе треугольника Серпинского использованы в интерьере синагоги Бен-Эзра, Каир, Египет
- На основе треугольника Серпинского могут быть изготовлены многодиапазонные фрактальные антенны.[3][4]
- Четыре первых итерации фрактальных треугольников Серпинского использовались в орнаментах геометрической мозаики стиля косматеско в средневековых соборах Италии (начиная с XII века)[5][6][7], арабских и персидских интерьерах[5].
-
Построение итеративным методом
-
Построение методом хаоса
-
Иллюстрация свойства самоподобия (рекурсии)
См. также
Примечания
- ↑ W. Sierpinski, Sur une courbe dont tout point est un point de ramification.//Comptes rendus hebdomadaires des séances de l'Académie des sciences. - Paris. – Tome 160, Janvier - Juin 1915. - Pp. 302 – 305. - [http://web.archive.org/web/20200806202128/https://gallica.bnf.fr/ark:/12148/bpt6k31131 Архивная копия от 6 августа 2020 на Wayback Machine]
- ↑ Bilotta, Eleonora; Pantano, Pietro (Summer 2005), "Emergent patterning phenomena in 2D cellular automata", Artificial Life, 11 (3): 339–362, doi:10.1162/1064546054407167, PMID 16053574, S2CID 7842605.
- ↑ Слюсар В. И. Фрактальные антенны. // Радиоаматор. — 2002. — № 9. — С. 54 −56., Конструктор. — 2002. — № 8. — С. 6 — 8. [1] Архивная копия от 19 февраля 2018 на Wayback Machine
- ↑ Вишневский В. М., Ляхов А. И., Портной С. Л., Шахнович И. В. Широкополосные беспроводные сети передачи информации. — М.: Техносфера. — 2005.- C. 498—569
- ↑ 5,0 5,1 The grammar of ornament. Day and Son, London. — 1856. [2]
- ↑ Conversano Elisa, Tedeschini Lalli Laura. Sierpinsky triangles in stone, on medieval floors in Rome.// Aplimat — Journal of Applied Mathematics. Volume 4 (2011), Number 4. — P. 113—122. — [3]
- ↑ Paola Brunori, Paola Magrone, and Laura Tedeschini Lalli. Imperial Porphiry and Golden Leaf: Sierpinski Triangle in a Medieval Roman Cloister.//ICGG 2018 — Proceedings of the 18th International Conference on Geometry and Graphics. — Pp. 595—609. -[4]
Литература
- Jones, O. The grammar of ornament. Day and Son, London. - 1856.
- Абачиев С. К. О треугольнике Паскаля, простых делителях и фрактальных структурах // В мире науки, 1989, № 9.
Ссылки
- * Weisstein, Eric W. Sierpiński Sieve (англ.) на сайте Wolfram MathWorld.