This minimal surface is the subject of Michael Foster's beautiful wood-turned sculpture "Inversion" (see http://breezyhillturning.com/styled-2/photos-2/index.html).
In addition, how can one create 2D projections of this minimal surface?
This minimal surface is the subject of Michael Foster's beautiful wood-turned sculpture "Inversion" (see http://breezyhillturning.com/styled-2/photos-2/index.html).
In addition, how can one create 2D projections of this minimal surface?
Let's start with a very coarse triangle mesh that is spanned into coarse approximations of both a round circle and a trefoil knot:
R0 = MeshRegion[
{{0.06511806662509892`, 0.36930290737957805`,
0.21650635094610968`}, {-0.04922815553835633`,
0.27918674351799316`,
0.12499999999999999`}, {-0.12499999999999996`,
0.21650635094610968`, 0.`}, {-0.21716873451725435`,
0.18222620503666484`, -0.12499999999999994`}, \
{-0.3523847327947155`,
0.1282575537471258`, -0.2165063509461096`}, \
{-0.35238473279471594`, -0.12825755374712558`,
0.21650635094610982`}, {-0.21716873451725482`, \
-0.1822262050366647`,
0.1250000000000004`}, {-0.12500000000000033`, \
-0.21650635094610945`,
0.`}, {-0.04922815553835688`, -0.279186743517993`, \
-0.12499999999999974`}, {0.06511806662509857`, -0.36930290737957766`, \
-0.21650635094610943`}, {0.2872666661696168`, -0.2410453536324525`,
0.2165063509461098`}, {0.26639689005561085`, -0.09696053848132867`,
0.12500000000000033`}, {0.25`, 0.`, 0.`}, {0.2663968900556108`,
0.09696053848132849`, -0.12500000000000017`}, {0.2872666661696168`,
0.24104535363245225`, -0.21650635094610968`}, \
{0.47877777694936124`, 0.40174225605408703`,
0.21650635094610965`}, {0.25000000000000006`, 0.4330127018922193`,
0.25`}, {0.25000000000000033`,
0.43301270189221847`, -0.25`}, {0.10853011104183204`,
0.6155048456326297`, -0.2165063509461098`}, {-0.49999999999999994`,
0.`, -0.25`}, {-0.5873078879911928`, -0.2137625895785429`, \
-0.21650635094610965`}, {-0.5873078879911928`, 0.21376258957854294`,
0.21650635094610968`}, {-0.5000000000000001`, 0.`,
0.25`}, {0.10853011104183125`, -0.6155048456326302`,
0.2165063509461096`}, {0.24999999999999983`, -0.4330127018922198`,
0.25`}, {0.24999999999999925`, -0.433012701892219`, -0.25`}, \
{0.4787777769493602`, -0.40174225605408737`, -0.21650635094611004`}, \
{1.`, 0.`, 0.`}, {0.9135454576426009`, 0.40673664307580015`,
0.`}, {0.6691306063588582`, 0.7431448254773942`,
0.`}, {0.30901699437494745`, 0.9510565162951535`,
0.`}, {-0.10452846326765333`, 0.9945218953682734`,
0.`}, {-0.49999999999999983`, 0.8660254037844387`,
0.`}, {-0.8090169943749473`, 0.5877852522924732`,
0.`}, {-0.9781476007338057`, 0.20791169081775931`,
0.`}, {-0.9781476007338057`, -0.20791169081775907`,
0.`}, {-0.8090169943749475`, -0.587785252292473`,
0.`}, {-0.5000000000000004`, -0.8660254037844384`,
0.`}, {-0.10452846326765423`, -0.9945218953682733`,
0.`}, {0.30901699437494723`, -0.9510565162951536`,
0.`}, {0.6691306063588585`, -0.743144825477394`,
0.`}, {0.9135454576426009`, -0.40673664307580015`, 0.`}, {0.75`,
0.`, 0.`}, {0.6732957307302977`, 0.24505960484434033`,
0.12499999999999999`}, {-0.12442002212857366`,
0.7056210094942149`, -0.12499999999999997`}, \
{-0.37499999999999944`, 0.6495190528383293`,
0.`}, {-0.5488757086017232`, 0.46056140464987533`,
0.12499999999999976`}, {-0.5488757086017237`, \
-0.46056140464987416`, -0.1250000000000001`}, {-0.37500000000000033`, \
-0.6495190528383288`,
0.`}, {-0.12442002212857398`, -0.7056210094942147`,
0.125`}, {0.6732957307302975`, -0.24505960484434036`, \
-0.12500000000000003`}, {0.00022642978703151428`, \
-0.000053911132731432446`,
0.`}, {0.08451270723710645`, -0.14555477919587`,
0.0008046339353186091`}, {0.14959432722100258`,
0.03080352754629143`, -0.019239089305391588`}, \
{0.014802554482304487`, 0.16122053468474534`,
0.03255203011577134`}, {-0.1489018094676656`,
0.06717768827259343`, -0.026929642982139897`}, \
{-0.10112792147523154`, -0.11117010884007944`,
0.012812068236442318`}, {0.13619748794767547`, \
-0.2410762593781877`, -0.007705503731291969`}, {0.2155886883181115`,
0.042733110914102014`, -0.04272210037580941`}, \
{0.01167487084033338`, 0.2599310639563641`,
0.11213983416013465`}, {-0.22889938795733097`,
0.11683632152471791`, -0.10405934980452558`}, \
{-0.14415768443516944`, -0.16561197820199575`,
0.04234711975149307`}, {0.08971097261083522`, \
-0.04135591329715762`,
0.0038940454797954847`}, {0.17975662980720386`, \
-0.09575771555014341`, 0.05161761996455287`}, {0.06705248096252674`,
0.07360385808498833`, -0.007122805645809209`}, \
{0.16582307919292918`,
0.1438750683951079`, -0.06412206192847551`}, \
{-0.04921572627024561`, 0.08364755704025399`,
0.0025165331566319314`}, {-0.08092091013432585`,
0.17036469344621072`,
0.014061347061605518`}, {-0.008062155886663593`, \
-0.0962515190895886`, -0.003634940894882077`}, \
{-0.03765505491363363`, -0.1905626808027816`, \
-0.040070509560903925`}, {-0.09835342248129515`, \
-0.019913538402153298`,
0.004347167904264664`}, {-0.22036665124817`, \
-0.034901587409363534`, 0.03851360446322189`}, {0.2399487701309849`,
0.4156034610805308`, 0.`}, {-0.4798975402619694`, 0.`,
0.`}, {0.2399487701309843`, -0.41560346108053103`,
0.`}, {0.7778820420723157`, 0.`, 0.`}, {0.7082488605516865`,
0.3030855397268472`, 0.01570933651607177`}, {0.5122319001519359`,
0.5555332549323216`, 0.014177151827625535`}, {0.22498996134247956`,
0.7213724656265113`, -0.014177151827625557`}, \
{-0.09164465335267566`,
0.7649042753025667`, -0.01570933651607179`}, {-0.3889410210361576`,
0.6736656095823411`, 0.`}, {-0.6166042071990103`,
0.4618187355757195`, 0.01570933651607174`}, {-0.7372218614944152`,
0.16583921069418966`,
0.014177151827625523`}, {-0.7372218614944154`, \
-0.16583921069418955`, -0.014177151827625583`}, \
{-0.6166042071990109`, -0.4618187355757193`, -0.015709336516071818`}, \
{-0.38894102103615813`, -0.6736656095823411`,
0.`}, {-0.09164465335267626`, -0.7649042753025664`,
0.015709336516071735`}, {0.22498996134247923`, \
-0.7213724656265113`,
0.014177151827625488`}, {0.5122319001519356`, \
-0.5555332549323216`, -0.014177151827625599`}, {0.7082488605516863`, \
-0.30308553972684743`, -0.015709336516071825`}, {0.697084738867801`,
0.`, 0.`}, {0.6312003054685501`, 0.2508192098353393`,
0.048914520642697225`}, {0.4479038146924463`, 0.4558077345062095`,
0.055572070606834736`}, {0.17078916997758745`,
0.6157999492287207`, -0.05557207060683479`}, \
{-0.09838434525973114`,
0.6720451043299317`, -0.04891452064269725`}, {-0.3485423694339001`,
0.6036930924499576`, 0.`}, {-0.5328159602088183`,
0.42122589449459275`, 0.04891452064269715`}, {-0.6186929846700333`,
0.15999221472251146`,
0.05557207060683475`}, {-0.6186929846700336`, \
-0.1599922147225113`, -0.055572070606834834`}, {-0.5328159602088188`, \
-0.4212258944945923`, -0.048914520642697315`}, \
{-0.34854236943390066`, -0.6036930924499574`,
0.`}, {-0.09838434525973164`, -0.6720451043299316`,
0.04891452064269716`}, {0.17078916997758697`, -0.6157999492287209`,
0.055572070606834646`}, {0.44790381469244583`, \
-0.4558077345062098`, -0.05557207060683491`}, {0.6312003054685498`, \
-0.2508192098353396`, -0.04891452064269733`}},
Triangle[{{10, 11, 58}, {58, 53, 70}, {64, 11, 12}, {13, 59,
64}, {68, 4, 61}, {53, 69, 70}, {11, 64, 58}, {8, 62, 7}, {10, 58,
70}, {72, 57, 71}, {54, 63, 64}, {66, 14, 15}, {66, 1, 60}, {70,
62, 8}, {65, 66, 55}, {5, 72, 61}, {67, 52, 65}, {2, 60, 1}, {14,
66, 59}, {72, 7, 62}, {2, 68, 60}, {56, 67, 68}, {5, 61, 4}, {63,
52, 69}, {65, 52, 63}, {13, 14, 59}, {71, 52, 67}, {69, 53,
63}, {59, 54, 64}, {68, 2, 3}, {60, 55, 66}, {72, 5, 6}, {61, 56,
68}, {70, 8, 9}, {62, 57, 72}, {64, 63, 53}, {65, 63, 54}, {58,
64, 53}, {12, 13, 64}, {66, 65, 54}, {67, 65, 55}, {59, 66,
54}, {15, 1, 66}, {68, 67, 55}, {71, 67, 56}, {60, 68, 55}, {3, 4,
68}, {71, 69, 52}, {70, 69, 57}, {62, 70, 57}, {9, 10, 70}, {72,
71, 56}, {69, 71, 57}, {61, 72, 56}, {6, 7, 72}, {18, 73,
15}, {15, 73, 1}, {19, 73, 18}, {17, 1, 73}, {73, 19, 16}, {17,
73, 16}, {23, 74, 22}, {22, 74, 21}, {6, 74, 23}, {20, 21,
74}, {74, 6, 5}, {20, 74, 5}, {26, 75, 10}, {10, 75, 11}, {27, 75,
26}, {25, 11, 75}, {75, 27, 24}, {25, 75, 24}, {28, 29, 77}, {28,
77, 76}, {76, 77, 92}, {76, 92, 91}, {91, 92, 44}, {91, 44,
43}, {29, 30, 78}, {29, 78, 77}, {77, 78, 93}, {77, 93, 92}, {92,
93, 16}, {92, 16, 44}, {30, 31, 79}, {30, 79, 78}, {78, 79,
94}, {78, 94, 93}, {93, 94, 19}, {93, 19, 16}, {31, 32, 80}, {31,
80, 79}, {79, 80, 95}, {79, 95, 94}, {94, 95, 45}, {94, 45,
19}, {32, 33, 81}, {32, 81, 80}, {80, 81, 96}, {80, 96, 95}, {95,
96, 46}, {95, 46, 45}, {33, 34, 82}, {33, 82, 81}, {81, 82,
97}, {81, 97, 96}, {96, 97, 47}, {96, 47, 46}, {34, 35, 83}, {34,
83, 82}, {82, 83, 98}, {82, 98, 97}, {97, 98, 22}, {97, 22,
47}, {35, 36, 84}, {35, 84, 83}, {83, 84, 99}, {83, 99, 98}, {98,
99, 21}, {98, 21, 22}, {36, 37, 85}, {36, 85, 84}, {84, 85,
100}, {84, 100, 99}, {99, 100, 48}, {99, 48, 21}, {37, 38,
86}, {37, 86, 85}, {85, 86, 101}, {85, 101, 100}, {100, 101,
49}, {100, 49, 48}, {38, 39, 87}, {38, 87, 86}, {86, 87,
102}, {86, 102, 101}, {101, 102, 50}, {101, 50, 49}, {39, 40,
88}, {39, 88, 87}, {87, 88, 103}, {87, 103, 102}, {102, 103,
24}, {102, 24, 50}, {40, 41, 89}, {40, 89, 88}, {88, 89,
104}, {88, 104, 103}, {103, 104, 27}, {103, 27, 24}, {41, 42,
90}, {41, 90, 89}, {89, 90, 105}, {89, 105, 104}, {104, 105,
51}, {104, 51, 27}, {42, 28, 76}, {42, 76, 90}, {90, 76, 91}, {90,
91, 105}, {105, 91, 43}, {105, 43, 51}}]
]
Building this from
γ = t \[Function] Evaluate[1/4 KnotData[{"TorusKnot", {2, 3}}, "SpaceCurve"][t]];
δ = t \[Function] {Cos[t], Sin[t], 0};
involved already quite a lot of handcraft (solving several Possion problems and glueing pieces together).
Next, we refine this mesh utilizing the function LoopSubdivide
from this post:
R = Nest[LoopSubdivide, R0, 5]
Finally, we apply areaGradientDescent
from this post:
areaGradientDescent[R]
Initial area = 2.92354
Final area = 2.7772
This is a view from the top: