A Koch-görbe egy fraktálgörbe, amelyet Helge von Koch svéd matematikus írt le 1904-ben. A Koch-görbe három másolata, amelyek egy egyenlő oldalú háromszög oldalain vannak megszerkesztve (kifelé mutat), egy zárt görbét alkotnak, amelyet Koch-hópehelynek neveznek.
Néha összezavarodok, amikor valami káromkodásra vágyom. programozza be a problémát. Ezúttal úgy döntöttem, hogy fraktálokkal bütykölök. Mégpedig a Koch hópehellyel.
Hópehely KochEz a fraktál az egyik első, amelyet a tudósok vizsgáltak. A Koch-görbe három másolatából származik, amely először Helge von Koch svéd matematikus cikkében jelent meg 1904-ben. Ezt a görbét egy olyan folytonos egyenes példájaként találták ki, amely nem érinthet egyetlen pontot sem.
A Koch-görbe alapvető tulajdonságai:
Nagyon érdekes néha emlékezni a legegyszerűbb káromkodásokra. transzformációk (: Ebben az esetben fel kellett frissíteni az ismereteket a vektorokról és a pontok transzformációjáról a síkban.
Pontosabban, hogyan kell elforgatni egy pontot egy másik ponthoz képest:
Nos, tudnod kell, hogyan találhatsz egy pontot egy szakaszon, amely bizonyos távolságra van a ponttól, ismerve ezt a távolságot és a pontok koordinátáit. Nagyon sok módszer létezik. Megkeresheti az ezeket a pontokat tartalmazó egyenes koordinátáit, majd behelyettesítheti őket az egyenletbe. A koordinátákat vektorok segítségével számíthatja ki.
Valahogy így néz ki.
Ez a szám az egyik első fraktál, amelyet a tudósok tanulmányoztak. Három példányból származik Koch-görbe, amely először Helge von Koch svéd matematikus cikkében jelent meg 1904-ben. Ezt a görbét egy olyan folytonos egyenes példájaként találták ki, amely nem érinthet egyetlen pontot sem. Az ezzel a tulajdonsággal rendelkező vonalak korábban is ismertek voltak (Karl Weierstrass építette példáját még 1872-ben), de a Koch-görbe a tervezés egyszerűsége miatt figyelemre méltó. Nem véletlen, hogy cikkét „Az elemi geometriából fakadó, érintők nélküli folytonos görbén” címmel.
A rajz és az animáció tökéletesen bemutatja, hogyan készül a Koch-görbe lépésről lépésre. Az első iteráció egyszerűen a kezdeti szegmens. Ezután három egyenlő részre osztjuk, a központi részből szabályos háromszöget alkotunk, majd kidobjuk. Az eredmény a második iteráció - egy szaggatott vonal, amely négy szegmensből áll. Mindegyikre ugyanazt a műveletet alkalmazzuk, és megkapjuk az építés negyedik lépését. Ugyanebben a szellemben folytatva újabb és újabb sorokat kaphattok (mind szaggatott sor lesz). És ami a határban történik (ez már egy képzeletbeli objektum lesz), azt Koch-görbének nevezzük.
A Koch-görbe alapvető tulajdonságai1. Folyamatos, de sehol nem differenciálható. Nagyjából ezért találták ki – az effajta matematikai „furcsák” példájaként.
2. Végtelen hosszúságú. Legyen az eredeti szegmens hossza egyenlő 1-gyel. Minden építési lépésnél a vonalat alkotó szakaszokat 4/3-szor hosszabb szaggatott vonalra cseréljük. Ez azt jelenti, hogy a teljes szaggatott vonal hosszát minden lépésben megszorozzuk 4/3-mal: a számmal ellátott sor hosszával n egyenlő (4/3) n-1. Ezért a határvonalnak nincs más választása, mint hogy végtelenül hosszú legyen.
3. A Koch-féle hópehely határolja a véges területet. És ez annak ellenére, hogy a kerülete végtelen. Ez a tulajdonság paradoxnak tűnhet, de nyilvánvaló - a hópehely teljesen beleillik egy körbe, így a területe nyilvánvalóan korlátozott. A területet ki lehet számítani, és ehhez nem is kell speciális tudás - az iskolában tanítják a háromszög területének és a geometriai haladás összegének képleteit. Az érdeklődők számára a számítást alább felsoroljuk apró betűs betűkkel.
Legyen az eredeti szabályos háromszög oldala egyenlő a. Akkor a területe . Először az oldal 1, a terület pedig: . Mi történik az iteráció növekedésével? Feltételezhetjük, hogy egy meglévő sokszöghez kis egyenlő oldalú háromszögek kapcsolódnak. Első alkalommal csak 3 van belőlük, és minden következő alkalommal 4-szer több van belőlük, mint az előzőben. Vagyis bekapcsolva n az edik lépés befejeződik Tn= 3 4 n– 1 háromszög. Mindegyik oldalának hossza az előző lépésben kitöltött háromszög oldalának egyharmada. Tehát egyenlő (1/3) n. A területek arányosak az oldalak négyzetével, tehát minden háromszög területe . Nagy értékekhez n Ez egyébként nagyon kevés. Ezeknek a háromszögeknek a teljes hozzájárulása a hópehely területéhez: Tn · S n= 3/4 · (4/9) n · S 0 . Ezért után n-lépés, az ábra területe egyenlő lesz az összeggel S 0 + T 1 · S 1 + T 2 · S 2 + ... +Tn S n = . A hópehely végtelen számú lépés után keletkezik, ami megfelel n→ ∞. Az eredmény egy végtelen összeg, de ez egy csökkenő geometriai progresszió összege, van rá egy képlet: . A hópehely területe .
4. Fraktál dimenzió egyenlő log4/log3 = log 3 4 ≈ 1,261859... . A pontos számítás jelentős erőfeszítést és részletes magyarázatot igényel, ezért itt inkább a fraktáldimenzió meghatározását illusztráljuk. A hatványtörvény képletéből N(δ ) ~ (1/δ )D, Ahol N- az egymást metsző négyzetek száma, δ - méretük és D- dimenzió, ezt értjük D= log 1/ δ N. Ez az egyenlőség egy állandó hozzáadásáig igaz (mindenkire ugyanaz δ ). Az ábrák a Koch-görbe megszerkesztésének ötödik iterációját mutatják, a vele metsző rácsnégyzetek zöld színűek. Az eredeti szegmens hossza 1, tehát a felső ábrán a négyzetek oldalhossza 1/9. 12 négyzet árnyékolt, log 9 12 ≈ 1,130929... . Még nem nagyon hasonlít az 1.261859-hez... . Nézzük tovább. A középső képen a négyzetek fele akkorák, méretük 1/18, árnyékolva 30. log 18 30 ≈ 1,176733... . Már jobban. Lent még feleakkorák a négyzetek, 72 darabot már átfestettek. log 72 30 ≈ 1,193426... . Még közelebb. Ezután növelni kell az iterációs számot, és ezzel egyidejűleg csökkenteni kell a négyzeteket, ekkor a Koch-görbe dimenziójának „empirikus” értéke folyamatosan megközelíti a log 3 4-et, és a határértékben teljesen egybeesik.
A Koch-görbe három másolata (pontjaikkal kifelé) egy szabályos háromszög oldalaira szerkesztve egy végtelen hosszúságú zárt görbét alkot, ún. Koch hópehelye.
Ez a szám az egyik első fraktál, amelyet a tudósok tanulmányoztak. Három példányból származik Koch-görbe, amely először Helge von Koch svéd matematikus cikkében jelent meg 1904-ben. Ezt a görbét egy olyan folytonos egyenes példájaként találták ki, amely nem érinthet egyetlen pontot sem. Az ezzel a tulajdonsággal rendelkező vonalak korábban is ismertek voltak (Karl Weierstrass építette példáját még 1872-ben), de a Koch-görbe a tervezés egyszerűsége miatt figyelemre méltó. Nem véletlen, hogy cikkét „Az elemi geometriából fakadó, érintők nélküli folytonos görbén” címmel.
A rajz és az animáció tökéletesen bemutatja, hogyan készül a Koch-görbe lépésről lépésre. Az első iteráció egyszerűen a kezdeti szegmens. Ezután három egyenlő részre osztjuk, a központi részből szabályos háromszöget alkotunk, majd kidobjuk. Az eredmény a második iteráció - egy szaggatott vonal, amely négy szegmensből áll. Mindegyikre ugyanazt a műveletet alkalmazzuk, és megkapjuk az építés negyedik lépését. Ugyanebben a szellemben folytatva újabb és újabb sorokat kaphattok (mind szaggatott sor lesz). És ami a határban történik (ez már egy képzeletbeli objektum lesz), azt Koch-görbének nevezzük.
A Koch-görbe alapvető tulajdonságai1. Folyamatos, de sehol nem differenciálható. Nagyjából ezért találták ki – az effajta matematikai „furcsák” példájaként.
2. Végtelen hosszúságú. Legyen az eredeti szegmens hossza egyenlő 1-gyel. Minden építési lépésnél a vonalat alkotó szakaszokat 4/3-szor hosszabb szaggatott vonalra cseréljük. Ez azt jelenti, hogy a teljes szaggatott vonal hosszát minden lépésben megszorozzuk 4/3-mal: a számmal ellátott sor hosszával n egyenlő (4/3) n-1. Ezért a határvonalnak nincs más választása, mint hogy végtelenül hosszú legyen.
3. A Koch-féle hópehely határolja a véges területet. És ez annak ellenére, hogy a kerülete végtelen. Ez a tulajdonság paradoxnak tűnhet, de nyilvánvaló - a hópehely teljesen beleillik egy körbe, így a területe nyilvánvalóan korlátozott. A terület kiszámítható, és ehhez nem is kell speciális tudás - a háromszög területének és a geometriai progresszió összegének képleteit az iskolában tanítják. Az érdeklődők számára a számítást alább felsoroljuk apró betűs betűkkel.
Legyen az eredeti szabályos háromszög oldala egyenlő a. Akkor a területe . Először az oldal 1, a terület pedig: . Mi történik az iteráció növekedésével? Feltételezhetjük, hogy egy meglévő sokszöghez kis egyenlő oldalú háromszögek kapcsolódnak. Első alkalommal csak 3 van belőlük, és minden következő alkalommal 4-szer több van belőlük, mint az előzőben. Vagyis bekapcsolva n az edik lépés befejeződik Tn= 3 4 n-1 háromszög. Mindegyik oldalának hossza az előző lépésben kitöltött háromszög oldalának egyharmada. Tehát egyenlő (1/3) n. A területek arányosak az oldalak négyzetével, tehát minden háromszög területe . Nagy értékekhez n Ez egyébként nagyon kevés. Ezeknek a háromszögeknek a teljes hozzájárulása a hópehely területéhez: Tn · S n= 3/4 · (4/9) n · S 0 . Ezért után n-lépés, az ábra területe egyenlő lesz az összeggel S 0 + T 1 · S 1 + T 2 · S 2 + ... +Tn S n = . A hópehely végtelen számú lépés után keletkezik, ami megfelel n→ ∞. Az eredmény egy végtelen összeg, de ez egy csökkenő geometriai progresszió összege, van rá egy képlet: . A hópehely területe .
4. Fraktál dimenzió egyenlő log4/log3 = log 3 4 ≈ 1,261859... . A pontos számítás jelentős erőfeszítést és részletes magyarázatot igényel, ezért itt inkább a fraktáldimenzió meghatározását illusztráljuk. A hatványtörvény képletéből N(δ ) ~ (1/δ )D, Ahol N- az egymást metsző négyzetek száma, δ - méretük és D a dimenzió, ezt kapjuk D= log 1/ δ N. Ez az egyenlőség egy állandó hozzáadásáig igaz (mindenkire ugyanaz δ ). Az ábrák a Koch-görbe megszerkesztésének ötödik iterációját mutatják, a vele metsző rácsnégyzetek zöld színűek. Az eredeti szegmens hossza 1, tehát a felső ábrán a négyzetek oldalhossza 1/9. 12 négyzet árnyékolt, log 9 12 ≈ 1,130929... . Még nem nagyon hasonlít az 1.261859-hez... . Nézzük tovább. A középső képen a négyzetek fele akkorák, méretük 1/18, árnyékolva 30. log 18 30 ≈ 1,176733... . Már jobban. Lent még feleakkorák a négyzetek, 72 darabot már átfestettek. log 72 30 ≈ 1,193426... . Még közelebb. Ezután növelni kell az iterációs számot, és ezzel egyidejűleg csökkenteni kell a négyzeteket, ekkor a Koch-görbe dimenziójának „empirikus” értéke folyamatosan megközelíti a log 3 4-et, és a határértékben teljesen egybeesik.
LehetőségekA Koch-hópehelyet „ellenkezőleg” kapjuk, ha az eredeti egyenlő oldalú háromszögben Koch-görbéket készítünk.
Cesaro vonalak. Az egyenlő oldalú háromszögek helyett egyenlő szárú háromszögeket használnak, amelyek alapszöge 60° és 90° között van. Az ábrán a szög 88°.
Négyzet alakú lehetőség. Itt elkészültek a négyzetek.
|
Hópehely Koch
vászon(
szegély: 1 képpont szaggatott fekete;
}
var cos = 0,5,
sin = Math.sqrt(3) / 2,
fok = Math.PI / 180;
canv, ctx;
függvény rebro(n, len) (
ctx.save(); // Mentse az aktuális átalakítást
if (n == 0) ( // Nem rekurzív eset - vonal húzása
ctx.lineTo(len, 0);
}
más(
ctx.scale(1/3, 1/3); // Kicsinyítés 3-szor
rebro(n-1, len); //RECUURSION a szélén
ctx.rotate(60 * fok);
rebro(n-1, len);
ctx.rotate(-120 * fok);
rebro(n-1, len);
ctx.rotate(60 * fok);
rebro(n-1, len);
}
ctx.restore(); // Az átalakítás visszaállítása
ctx.translate(len, 0); // menj az él végére
}
függvény drawKochSnowflake(x, y, len, n) (
x = x - len / 2;
y = y + len / 2 * Math.sqrt(3)/3;
ctx.save();
ctx.beginPath();
ctx.translate(x, y);
ctx.moveTo(0, 0);
rebro(n, len); ctx.rotate(-120 * fok); //RECUUUURSION már egy háromszög
rebro(n, len); ctx.rotate(-120 * fok);
rebro(n, len); ctx.closePath();
ctx.strokeStyle = "#000";
ctx.stroke();
ctx.restore();
}
függvény clearcanvas())( //a vászon törlése
ctx.save();
ctx.beginPath();
// Az identitásmátrix használata a vászon törlése közben
ctx.setTransform(1, 0, 0, 1, 0, 0);
ctx.clearRect(0, 0, vászon1.szélesség, vászon1.magasság);
// Az átalakítás visszaállítása
ctx.restore();
}
függvény run() (
canv = document.getElementById("canvas1");
ctx = canv.getContext("2d");
var numberiter = document.getElementById("mennyiség").érték;
drawKochSnowflake(vászon.szélesség/2, vászon.magasság/2, 380, számiter);
Ctx.stroke(); //megjelenítés
}
Koch hópehely - példa
A huszadik század elején a matematikusok olyan görbéket kerestek, amelyek egyetlen ponton sem rendelkeznek érintővel. Ez azt jelentette, hogy a görbe hirtelen megváltoztatta az irányát, és rendkívül nagy sebességgel (a derivált a végtelennel egyenlő volt). E görbék keresését nem csak a matematikusok tétlen érdeklődése okozta. A helyzet az, hogy a huszadik század elején a kvantummechanika nagyon gyorsan fejlődött. M. Brown kutató felvázolta a vízben lebegő részecskék mozgásának pályáját, és ezt a jelenséget a következőképpen magyarázta: a folyadék véletlenszerűen mozgó atomjai lebegő részecskéket ütköztetnek, és ezáltal mozgásba hozzák azokat. A Brown-mozgás e magyarázata után a tudósok azzal a feladattal szembesültek, hogy találjanak egy olyan görbét, amely a legjobban közelíti meg a Brown-részecskék mozgását. Ehhez a görbének a következő tulajdonságoknak kellett megfelelnie: egyetlen pontban sem lehet érintője. Koch matematikus javasolt egy ilyen görbét. Nem megyünk bele a felépítési szabályok magyarázatába, hanem egyszerűen bemutatjuk a képét, amelyből minden kiderül (1.1.1. ábra).
1.1.1. ábra. Hópehely Koch.
A Koch hópehely határának egyik fontos tulajdonsága a végtelen hossza. Ez meglepőnek tűnhet, mert hozzászoktunk a számítási kurzusok görbéihez. Általában a sima vagy legalábbis darabonként sima görbék mindig véges hosszúságúak (ami integrációval ellenőrizhető). Mandelbrot ezzel kapcsolatban számos lenyűgöző munkát publikált, amelyek Nagy-Britannia partvonalának hosszának mérésének kérdését vizsgálják. Modellként ő
Rizs. 1.1.2. A Koch hópehely építése.
fraktálgörbét használt, amely egy hópehely szélére emlékeztet, azzal a különbséggel, hogy bevezette a véletlenszerűség elemét, hogy figyelembe vegye a természet véletlenszerűségét. Ennek eredményeként kiderült, hogy a partvonalat leíró görbe végtelen hosszúságú.
Sierpinski szalvétája és szőnyegeEgy másik példa egy egyszerű önhasonló fraktálra --- Sierpinski szalvéta(1.2.1. ábra), Waclaw Sierpinski lengyel matematikus találta fel 1915-ben. Maga a kifejezés szalvéta Mandelbrothoz tartozik. Az alábbi szerkesztési módban egy bizonyos régióból indulunk ki, és szekvenciálisan kiküszöböljük a belső alrégiókat. Később más módszereket is megvizsgálunk, különösen az L-rendszereket, valamint az iterált függvényeken alapuló módszereket.
1.2.1. ábra. Sierpinski szalvéta
Legyen az S 0 kezdeti halmaz egy egyenlő oldalú háromszög az általa bezárt területtel együtt. Osszuk S0-t négy kisebb háromszögterületre, összekötve az eredeti háromszög oldalainak felezőpontjait szakaszokkal. Távolítsuk el a kis középső háromszög alakú terület belsejét. Nevezzük a maradék halmazt S 1-nek (1.2.2. ábra). Ezután megismételjük a folyamatot mind a három megmaradt kis háromszögre, hogy megkapjuk a következő S 2 közelítést. Így folytatva egy S n beágyazott halmaz sorozatát kapjuk, amelyek metszéspontját az S szalvéta képezi.
Rizs. 1.2.2. Sierpinski szalvéta felépítése
Nyilvánvaló, hogy az építés során kidobott alkatrészek összterülete pontosan megegyezik az eredeti háromszög területével. Az első lépésben a terület ¼ részét kidobtuk. A következő lépésben három háromszöget dobtunk ki, amelyek mindegyikének területe az eredeti területének ½ 2-e. Ilyen érveléssel meg vagyunk győződve arról, hogy a kiselejtezett terület teljes részesedése:
1/4 + 3 * (1/4 2) + 3 2 * (1/4 3) + … + 3 n-1 * (1/4 n) + … .
Ez az összeg egyenlő. Ezért azt állíthatjuk, hogy a fennmaradó S halmaz, vagyis a szalvéta területe nulla. Ez „tökéletes” halmazsá teszi S-t abban az értelemben, hogy a komplementjét végtelen számú háromszög alakú területre bontja, miközben nulla vastagságú.
A Sierpinski szőnyeg egy másik fraktálmodellnek számít. A következőképpen épül fel: vegyünk egy négyzetet, osszuk kilenc négyzetre, és vágjuk ki a központi négyzetet. Ezután hasonló eljárást kell végrehajtani a maradék nyolc négyzet mindegyikével. És így tovább a végtelenségig. Ennek eredményeként egy egész négyzet helyett egy sajátos szimmetrikus mintájú szőnyeget kapunk. Ezt a modellt először Sierpinski matematikus javasolta, akinek tiszteletére kapta a nevét. Egy Sierpinski szőnyeg példája látható az ábrán. 1.2.3.
A Helg von Koch által 1904-ben feltalált hópehely határát (2.2. ábra) három azonos méretű fraktálból álló görbe írja le. A hópehely minden harmada iteratív módon van megszerkesztve, az egyenlő oldalú háromszög egyik oldalától kezdve. Legyen a kezdő szegmens. Távolítsuk el a középső harmadot, és adjunk hozzá két új, azonos hosszúságú szegmenst, amint az ábra mutatja. 2.3. Nevezzük a kapott halmazt. Ismételjük meg ezt az eljárást sokszor, minden lépésnél a középső harmadot két új szegmensre cserélve. Jelöljük az n-edik lépés után kapott ábrával.
Rizs. 2.2. Hópehely Koch
Intuitív módon világos, hogy a görbék sorozata valamilyen K határgörbéhez konvergál. Az ilyen görbesorozatok és más halmazok konvergenciájának szigorú matematikai vizsgálatát a 3.5. szakaszban és a függelékben fogjuk elvégezni. A.3. Most tegyük fel, hogy a K görbe létezik, és vegyük figyelembe néhány tulajdonságát.
Rizs. 2.3. a B C D)
Ha elkészíti a K másolatát, háromszorosára csökkentve, akkor a teljes K halmaz ilyen másolatokból állhat. Következésképpen az önhasonlósági reláció (2.1) teljesül a megadott N és -re, és a fraktáldimenzió a következő lesz:
A Koch-hópehely határának másik fontos tulajdonsága a végtelen hosszúsága (lásd a 2.1.1. tételt). Ez meglepőnek tűnhet annak az olvasónak, aki hozzászokott ahhoz, hogy a számítási kurzus görbéivel foglalkozzon. Általában simák vagy legalábbis darabonként simák, mindig véges hosszúságúak (ami integrációval ellenőrizhető). Mandelbrot ezzel kapcsolatban számos lenyűgöző munkát publikált, amelyek a brit partvonal hosszának mérésének kérdését vizsgálják. Modellként egy hópehely határára emlékeztető fraktálgörbét használt, azzal a különbséggel, hogy ebbe a véletlenszerűség elemét vezették be, figyelembe véve a természetben előforduló véletlenszerűséget. Ennek eredményeként kiderült, hogy a partvonalat leíró görbe végtelen hosszúságú.