(* Content-type: application/vnd.wolfram.mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 11.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 158, 7] NotebookDataLength[ 189735, 4443] NotebookOptionsPosition[ 187309, 4406] NotebookOutlinePosition[ 187683, 4422] CellTagsIndexPosition[ 187640, 4419] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[BoxData[ RowBox[{ RowBox[{"F", "[", "x_", "]"}], ":=", RowBox[{ FractionBox["1", "2"], " ", "\[ImaginaryI]", " ", RowBox[{"(", RowBox[{ RowBox[{"PolyLog", "[", RowBox[{"2", ",", RowBox[{ RowBox[{"-", "\[ImaginaryI]"}], " ", SuperscriptBox["\[ExponentialE]", "x"]}]}], "]"}], "-", RowBox[{"PolyLog", "[", RowBox[{"2", ",", RowBox[{"\[ImaginaryI]", " ", SuperscriptBox["\[ExponentialE]", "x"]}]}], "]"}]}], ")"}]}]}]], "Input", CellChangeTimes->{{3.737196866673444*^9, 3.737196875196076*^9}}, CellLabel->"In[23]:=",ExpressionUUID->"748eabe5-c3d2-4801-b8b7-aa7a789097c7"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"G3", "[", RowBox[{"a_", ",", "b_"}], "]"}], ":=", RowBox[{ RowBox[{"F", "[", RowBox[{"a", "-", "b"}], "]"}], "+", RowBox[{"F", "[", RowBox[{"b", "-", "a"}], "]"}], "-", RowBox[{ FractionBox["\[Pi]", "2"], RowBox[{"(", RowBox[{"a", "+", "b"}], ")"}]}]}]}], ";"}]], "Input", CellChangeTimes->{ 3.737201965981352*^9, {3.737202002231657*^9, 3.737202033142387*^9}, { 3.737202126146511*^9, 3.7372021534299583`*^9}, {3.7378972597648673`*^9, 3.7378972820313244`*^9}, {3.737897408257219*^9, 3.7378974198940997`*^9}}, CellLabel->"In[22]:=",ExpressionUUID->"0ab29ce4-3405-44f4-bf4a-16ef730ff686"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"EnergySetup", "[", RowBox[{"n_", ",", "FacesCW_"}], "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ "i", ",", "rhoV", ",", "rhoF", ",", "include", ",", "LineFaces", ",", "f", ",", "Faces", ",", "NM", ",", "nonlinefaces", ",", "radii", ",", "RADII"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"Faces", "=", RowBox[{"Sort", "/@", "FacesCW"}]}], ";", "\[IndentingNewLine]", RowBox[{"f", "=", RowBox[{"Length", "[", "Faces", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"LineFaces", "=", RowBox[{"{", "}"}]}], ";", RowBox[{"rhoV", "=", RowBox[{"Table", "[", RowBox[{ SubscriptBox["rV", "i"], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", RowBox[{"n", "-", "2"}]}], "}"}]}], "]"}]}], ";", RowBox[{"rhoF", "=", RowBox[{"Table", "[", RowBox[{ SubscriptBox["rF", "i"], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", RowBox[{"f", "-", "2"}]}], "}"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"include", " ", "=", " ", RowBox[{"{", "}"}]}], ";", "\[IndentingNewLine]", RowBox[{"nonlinefaces", "=", RowBox[{"{", "}"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", "f"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"!", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", RowBox[{"i", ",", RowBox[{"-", "2"}]}], "]"}], "]"}], "\[Equal]", RowBox[{"n", "-", "1"}]}], "&&", RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", RowBox[{"i", ",", RowBox[{"-", "1"}]}], "]"}], "]"}], "\[Equal]", "n"}]}], ")"}]}], ",", "\[IndentingNewLine]", RowBox[{"(*", " ", "then", " ", "*)"}], " ", RowBox[{ RowBox[{"AppendTo", "[", RowBox[{"include", ",", "i"}], "]"}], ";", RowBox[{"AppendTo", "[", RowBox[{"nonlinefaces", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"(*", " ", "else", " ", "*)"}], " ", RowBox[{"AppendTo", "[", RowBox[{"LineFaces", ",", "i"}], "]"}]}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"NM", "=", RowBox[{"NMinimize", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{ RowBox[{ UnderoverscriptBox["\[Sum]", RowBox[{"k", "=", "1"}], RowBox[{"f", "-", "2"}]], RowBox[{ UnderoverscriptBox["\[Sum]", RowBox[{"i", "=", "1"}], RowBox[{"Length", "[", RowBox[{"Faces", "[", RowBox[{"[", RowBox[{"include", "[", RowBox[{"[", "k", "]"}], "]"}], "]"}], "]"}], "]"}]], RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", RowBox[{ RowBox[{"include", "[", RowBox[{"[", "k", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "<", RowBox[{"n", "-", "1"}]}], ",", RowBox[{"G3", "[", RowBox[{ SubscriptBox["rV", RowBox[{"Faces", "[", RowBox[{"[", RowBox[{ RowBox[{"include", "[", RowBox[{"[", "k", "]"}], "]"}], ",", "i"}], "]"}], "]"}]], ",", SubscriptBox["rF", "k"]}], "]"}], ",", "0"}], "]"}]}]}], "+", RowBox[{ UnderoverscriptBox["\[Sum]", RowBox[{"i", "=", "1"}], RowBox[{"n", "-", "2"}]], RowBox[{ SubscriptBox["rV", "i"], "\[Pi]", " ", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Flatten", "@", RowBox[{"Table", "[", RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "m", "]"}], "]"}], "]"}], "]"}], ",", RowBox[{"{", RowBox[{"m", ",", "1", ",", "2"}], "}"}]}], "]"}]}], ",", "i"}], "]"}], ",", RowBox[{"(*", " ", "then", " ", "*)"}], " ", "1", ",", RowBox[{"(*", " ", "else", " ", "*)"}], " ", "2"}], "]"}]}]}], "+", RowBox[{ UnderoverscriptBox["\[Sum]", RowBox[{"j", "=", "1"}], RowBox[{"f", "-", "2"}]], RowBox[{ SubscriptBox["rF", "j"], "\[Pi]", " ", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", RowBox[{"include", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "]"}], ",", RowBox[{"n", "-", "1"}]}], "]"}], "||", RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", RowBox[{"include", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "]"}], ",", "n"}], "]"}]}], ",", RowBox[{"(*", " ", "then", " ", "*)"}], " ", "1", ",", RowBox[{"(*", " ", "else", " ", "*)"}], " ", "2"}], "]"}]}]}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{ UnderoverscriptBox["\[Sum]", RowBox[{"i", "=", "1"}], RowBox[{"n", "-", "2"}]], SubscriptBox["rV", "i"]}], "+", RowBox[{ UnderoverscriptBox["\[Sum]", RowBox[{"j", "=", "1"}], RowBox[{"f", "-", "2"}]], SubscriptBox["rF", "j"]}]}], "\[Equal]", "0"}]}], "}"}], ",", RowBox[{"Join", "[", RowBox[{"rhoV", ",", "rhoF"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"RADII", "=", RowBox[{"Exp", "[", RowBox[{"Re", "[", RowBox[{ RowBox[{"Join", "[", RowBox[{"rhoV", ",", "rhoF"}], "]"}], "/.", RowBox[{"(", RowBox[{"NM", "[", RowBox[{"[", "2", "]"}], "]"}], ")"}]}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"RADII", "/=", RowBox[{"RADII", "[", RowBox[{"[", "1", "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"radii", "=", RowBox[{"<|", "|>"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"n", "-", "2"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"radii", "[", "i", "]"}], "=", RowBox[{"RADII", "[", RowBox[{"[", "i", "]"}], "]"}]}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "nonlinefaces", "]"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"radii", "[", RowBox[{"nonlinefaces", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "=", RowBox[{"RADII", "[", RowBox[{"[", RowBox[{"n", "-", "2", "+", "i"}], "]"}], "]"}]}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"{", RowBox[{"radii", ",", "LineFaces"}], "}"}]}]}], "\[IndentingNewLine]", "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.7372045119396753`*^9, 3.7372046545187597`*^9}, { 3.737204685631832*^9, 3.7372047308167467`*^9}, {3.737204773625032*^9, 3.7372048110040503`*^9}, {3.737204842780097*^9, 3.737204924806987*^9}, { 3.7372050053122187`*^9, 3.737205008911607*^9}, {3.73720504639081*^9, 3.7372051214979887`*^9}, {3.7372051736233463`*^9, 3.737205179673382*^9}, { 3.737205261713398*^9, 3.7372052618754*^9}, {3.737205306100531*^9, 3.737205373527009*^9}, {3.737205491627762*^9, 3.737205535178033*^9}, { 3.737206922016953*^9, 3.737206989324239*^9}, {3.737207032865409*^9, 3.737207073209803*^9}, {3.737284915566703*^9, 3.737284955928123*^9}, { 3.737371291071519*^9, 3.7373713419977837`*^9}, {3.737468221809287*^9, 3.737468222498644*^9}, 3.737468268451545*^9, {3.7374683559250183`*^9, 3.737468513179357*^9}, {3.737468554130938*^9, 3.7374685561663094`*^9}, { 3.7374686045167637`*^9, 3.737468621354309*^9}, {3.737468670066434*^9, 3.737468700374711*^9}, {3.73746873598547*^9, 3.737468789149178*^9}, { 3.737469118685132*^9, 3.737469121422579*^9}, {3.737891244695794*^9, 3.737891247299219*^9}, {3.737995135349449*^9, 3.73799513678258*^9}}, CellLabel->"In[21]:=",ExpressionUUID->"72e544ec-21b3-4511-8714-78e40bf96f8f"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"Boundary", "[", RowBox[{"n_", ",", "FacesCW_", ",", "LineFaces_", ",", "radii_", ",", RowBox[{"\[Epsilon]_:", "0"}]}], "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ "i", ",", "j", ",", "faces", ",", "vertices", ",", "lastvisited", ",", "d", ",", "h", ",", "H", ",", "breaker", ",", "unvisited", ",", "f", ",", "endcircle", ",", "ComputeEndcircle", ",", "ComputeEndcircle2", ",", "delete"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"unvisited", " ", "=", "FacesCW"}], ";", RowBox[{"(*", RowBox[{ "Keeps", " ", "track", " ", "of", " ", "the", " ", "faces", " ", "we", " ", RowBox[{"haven", "'"}], "t", " ", "visited"}], "*)"}], "\[IndentingNewLine]", RowBox[{"f", "=", RowBox[{"Length", "[", "FacesCW", "]"}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"faces", "=", RowBox[{"<|", "|>"}]}], ";", " ", RowBox[{"(*", " ", RowBox[{"centers", " ", "of", " ", "face", " ", "circles", " ", RowBox[{"(", RowBox[{ RowBox[{"or", " ", "normals"}], ",", " ", RowBox[{"for", " ", "lines"}]}], ")"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", "f"}], ",", RowBox[{"i", "++"}], ",", RowBox[{ RowBox[{"faces", "[", RowBox[{"FacesCW", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"vertices", "=", RowBox[{"<|", "|>"}]}], ";", " ", RowBox[{"(*", " ", RowBox[{"centers", " ", "of", " ", "vertex", " ", "circles", " ", RowBox[{"(", RowBox[{ RowBox[{"or", " ", "normals"}], ",", " ", RowBox[{"for", " ", "lines"}]}], ")"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"n", "-", "2"}]}], ",", RowBox[{"i", "++"}], ",", RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{ "Radii", " ", "is", " ", "an", " ", "assoc", " ", "from", " ", "v"}], "\[Rule]", RowBox[{ RowBox[{"rad", " ", "and", " ", "facelist"}], "\[Rule]", "rad"}]}], " ", "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "Vertex", " ", "circles", " ", "going", " ", "vertically", " ", "upwards", " ", "along", " ", "first", " ", "FaceLine"}], "*)"}], "\[IndentingNewLine]", RowBox[{"h", "=", "0"}], ";", " ", RowBox[{"(*", " ", RowBox[{"height", " ", "along", " ", "the", " ", "left", " ", "line"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{ RowBox[{"Length", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}], "]"}], "-", "2"}]}], RowBox[{"(*", RowBox[{ "Number", " ", "of", " ", "vertex", " ", "circles", " ", "that", " ", "lie", " ", "along", " ", "first", " ", "LineFace"}], "*)"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"vertices", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{ RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{"0", ",", RowBox[{"h", "+", RowBox[{"radii", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{ RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "]"}]}]}], "}"}]}], ";", RowBox[{"(*", RowBox[{ "Set", " ", "the", " ", "center", " ", "of", " ", "this", " ", "vertex", " ", "circle"}], "*)"}], "\[IndentingNewLine]", RowBox[{"h", "+=", RowBox[{"2", RowBox[{"radii", "[", RowBox[{"[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{ RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "]"}], "]"}]}]}]}]}], "]"}], ";", RowBox[{"(*", RowBox[{ "Keeps", " ", "track", " ", "of", " ", "our", " ", "cumulative", " ", "height", " ", "as", " ", "we", " ", "climb", " ", "up", " ", "the", " ", "first", " ", "FaceLine"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"unvisited", "=", RowBox[{"Delete", "[", RowBox[{"unvisited", ",", RowBox[{"Position", "[", RowBox[{"unvisited", ",", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}]}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"d", "=", "0"}], ";", RowBox[{"(*", RowBox[{"Horizontal", " ", "distance"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"ComputeEndcircle", "[", RowBox[{"prev_", ",", "face_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "Returns", " ", "which", " ", "vertex", " ", "circle", " ", "we", " ", "calculated", " ", "last", " ", "based", " ", "on", " ", "previous", " ", "vertex", " ", "circle", " ", "and", " ", "face"}], "*)"}], "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"face", "[", RowBox[{"[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Position", "[", RowBox[{"face", ",", RowBox[{"n", "-", "1"}]}], "]"}], "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}], "-", "2"}], ",", RowBox[{"Length", "[", "face", "]"}]}], "]"}], "+", "1"}], "]"}], "]"}], "\[Equal]", "prev"}], ",", "\[IndentingNewLine]", RowBox[{"(*", "then", "*)"}], RowBox[{"face", "[", RowBox[{"[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"Position", "[", RowBox[{"face", ",", RowBox[{"n", "-", "1"}]}], "]"}], "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}], ",", RowBox[{"Length", "[", "face", "]"}]}], "]"}], "+", "1"}], "]"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"(*", "else", "*)"}], " ", RowBox[{"face", "[", RowBox[{"[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Position", "[", RowBox[{"face", ",", RowBox[{"n", "-", "1"}]}], "]"}], "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}], "-", "2"}], ",", RowBox[{"Length", "[", "face", "]"}]}], "]"}], "+", "1"}], "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"endcircle", "=", RowBox[{"ComputeEndcircle", "[", RowBox[{"n", ",", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}]}], "]"}]}], ";", RowBox[{"(*", RowBox[{ RowBox[{ "Previous", " ", "vertex", " ", "circle", " ", "is", " ", "bottom", " ", "line"}], ",", " ", RowBox[{"face", " ", "is", " ", "first", " ", "FaceLine"}]}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "Face", " ", "circles", " ", "going", " ", "horizontally", " ", "across", " ", "upper", " ", "vertex", " ", "line"}], "*)"}], "\[IndentingNewLine]", RowBox[{"breaker", "=", "True"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", "f"}], " ", ",", RowBox[{"j", "++"}], ",", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "unvisited", "]"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], ",", RowBox[{"n", "-", "1"}]}], "]"}], ",", " ", RowBox[{"(*", RowBox[{ RowBox[{ RowBox[{"determine", " ", "if", " ", "this", " ", "face"}], "-", RowBox[{"circle", " ", "contains", " ", "n"}], "-", "1"}], ",", " ", RowBox[{ "so", " ", "it", " ", "is", " ", "on", " ", "the", " ", "upper", " ", "vertex", " ", "line"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], ",", RowBox[{"ComputeEndcircle", "[", RowBox[{"endcircle", ",", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"determine", " ", "if", " ", "this", " ", "face"}], "-", RowBox[{ "circle", " ", "also", " ", "contains", " ", "the", " ", "vertex", " ", "right", " ", "before", " ", "n"}], "-", RowBox[{ "1", " ", "to", " ", "ensure", " ", "we", " ", "are", " ", "going", " ", "horizontally", " ", "across", " ", "in", " ", "the", " ", "right", " ", "order"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Equal]", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{"If", " ", RowBox[{"we", "'"}], "ve", " ", "reached", " ", "the", " ", "second", " ", "faceline"}], ",", " ", RowBox[{"then", " ", "do", " ", RowBox[{"nothing", "--"}], "find", " ", "the", " ", "other", " ", "face", " ", "circle", " ", "containing", " ", "endcircle"}]}], "*)"}], "\[IndentingNewLine]", ",", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ "else", " ", "if", " ", "the", " ", "face", " ", "circle", " ", "is", " ", "not", " ", "a", " ", "line"}], "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"faces", "[", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"d", "+", RowBox[{"radii", "[", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], ",", "h"}], "}"}]}], ";", " ", RowBox[{"(*", RowBox[{ "Set", " ", "the", " ", "center", " ", "of", " ", "this", " ", "face", " ", "circle"}], "*)"}], "\[IndentingNewLine]", RowBox[{"d", "+=", RowBox[{"2", RowBox[{"radii", "[", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}]}], ";", " ", RowBox[{"(*", " ", RowBox[{ "update", " ", "how", " ", "far", " ", "along", " ", "the", " ", "top", " ", "line", " ", "we", " ", "are"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"endcircle", "=", RowBox[{"ComputeEndcircle", "[", RowBox[{"endcircle", ",", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], ";", RowBox[{"(*", RowBox[{"Update", " ", "endcircle"}], "*)"}], "\[IndentingNewLine]", RowBox[{"unvisited", "=", RowBox[{"Delete", "[", RowBox[{"unvisited", ",", "i"}], "]"}]}], ";"}]}], "]"}]}], " ", RowBox[{"(*", " ", RowBox[{ "remove", " ", "that", " ", "face", " ", "from", " ", "the", " ", "unvisited", " ", "list"}], " ", "*)"}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{ "Vertex", " ", "circles", " ", "along", " ", "the", " ", "second", " ", "FaceLine"}], ",", " ", RowBox[{"climbing", " ", "vertically", " ", "upwards"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"h", "=", "0"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{ RowBox[{"Length", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "]"}], "]"}], "-", "2"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"vertices", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{ RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{"d", ",", RowBox[{"h", "+", RowBox[{"radii", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{ RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "]"}]}]}], "}"}]}], ";", RowBox[{"h", "+=", RowBox[{"2", RowBox[{"radii", "[", RowBox[{"[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{ RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], ",", "i"}], "]"}], "]"}], "]"}], "]"}]}]}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"H", "=", "h"}], ";", "\[IndentingNewLine]", RowBox[{"h", "=", "0"}], ";", RowBox[{"(*", RowBox[{"Reset", " ", "height"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"ComputeEndcircle2", "[", RowBox[{"prev_", ",", "face_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"face", "[", RowBox[{"[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Position", "[", RowBox[{"face", ",", "n"}], "]"}], "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}], "-", "2"}], ",", RowBox[{"Length", "[", "face", "]"}]}], "]"}], "+", "1"}], "]"}], "]"}], "\[Equal]", "prev"}], ",", "\[IndentingNewLine]", RowBox[{"(*", "then", "*)"}], RowBox[{"face", "[", RowBox[{"[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"Position", "[", RowBox[{"face", ",", "n"}], "]"}], "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}], ",", RowBox[{"Length", "[", "face", "]"}]}], "]"}], "+", "1"}], "]"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"(*", "else", "*)"}], " ", RowBox[{"face", "[", RowBox[{"[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Position", "[", RowBox[{"face", ",", "n"}], "]"}], "[", RowBox[{"[", RowBox[{"1", ",", "1"}], "]"}], "]"}], "-", "2"}], ",", RowBox[{"Length", "[", "face", "]"}]}], "]"}], "+", "1"}], "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"endcircle", "=", RowBox[{"ComputeEndcircle2", "[", RowBox[{ RowBox[{"n", "-", "1"}], ",", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{ "Face", " ", "circles", " ", "along", " ", "lower", " ", "vertex", " ", "line"}], ",", " ", RowBox[{ "moving", " ", "horizontally", " ", "from", " ", "origin", " ", "to", " ", "second", " ", "FaceLine"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"d", "=", "0"}], ";", RowBox[{"(*", RowBox[{"Reset", " ", "distance"}], "*)"}], "\[IndentingNewLine]", RowBox[{"breaker", "=", "True"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", "f"}], ",", RowBox[{"j", "++"}], ",", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "unvisited", "]"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], ",", "n"}], "]"}], ",", " ", RowBox[{"(*", " ", RowBox[{ RowBox[{"determine", " ", "if", " ", "this", " ", "face"}], "-", RowBox[{"circle", " ", "contains", " ", "n"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], ",", "endcircle"}], RowBox[{"(*", " ", RowBox[{"ComputeEndcircle2", "[", RowBox[{"endcircle", ",", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], " ", "*)"}], "]"}], ",", RowBox[{"(*", " ", RowBox[{ RowBox[{"determine", " ", "if", " ", "this", " ", "face"}], "-", RowBox[{ "cirlce", " ", "also", " ", "contains", " ", "the", " ", "vertex", " ", "right", " ", "before", " ", "n"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "\[Equal]", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{"If", " ", RowBox[{"we", "'"}], "ve", " ", "reached", " ", "the", " ", "second", " ", "faceline"}], ",", " ", RowBox[{"then", " ", "do", " ", "nothing"}]}], "*)"}], "\[IndentingNewLine]", ",", "\[IndentingNewLine]", RowBox[{"(*", " ", "else", " ", "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"faces", "[", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"d", "+", RowBox[{"radii", "[", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], ",", "h"}], "}"}]}], ";", " ", RowBox[{"(*", " ", RowBox[{"then", " ", RowBox[{"we", "'"}], "ll", " ", "make", " ", "this", " ", RowBox[{"face", "'"}], "s", " ", "center", " ", "be", " ", "where", " ", "we", " ", "know", " ", "it", " ", "is"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"d", "+=", RowBox[{"2", RowBox[{"radii", "[", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}]}], ";", " ", RowBox[{"(*", " ", RowBox[{ "update", " ", "how", " ", "far", " ", "along", " ", "the", " ", "bottom", " ", "line", " ", "we", " ", "are"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"endcircle", "=", RowBox[{"ComputeEndcircle2", "[", RowBox[{"endcircle", ",", RowBox[{"unvisited", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"unvisited", "=", RowBox[{"Delete", "[", RowBox[{"unvisited", ",", "i"}], "]"}]}], ";"}]}], "]"}]}], " ", RowBox[{"(*", " ", RowBox[{ "remove", " ", "that", " ", "face", " ", "from", " ", "the", " ", "unvisited", " ", "list"}], " ", "*)"}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "Set", " ", "the", " ", "normals", " ", "of", " ", "the", " ", "vertex", " ", "lines", " ", "and", " ", "face", " ", "lines"}], "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"faces", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{"1", ",", "0"}], "}"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"faces", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"-", "1"}], ",", "0"}], "}"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"vertices", "[", "n", "]"}], "=", RowBox[{"{", RowBox[{"0", ",", RowBox[{"-", "1"}]}], "}"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"vertices", "[", RowBox[{"n", "-", "1"}], "]"}], "=", RowBox[{"{", RowBox[{"0", ",", "1"}], "}"}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"ThrowOrderError", "[", RowBox[{ "faces", ",", "vertices", ",", "radii", ",", "d", ",", "H", ",", "n", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}], ",", "0"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"faces", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}], "]"}], "*=", RowBox[{"-", "1"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"faces", "[", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "]"}], "]"}], "*=", RowBox[{"-", "1"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", "n"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"i", "\[Equal]", RowBox[{"n", "-", "1"}]}], "||", RowBox[{"i", "\[Equal]", "n"}]}], ",", "\[IndentingNewLine]", ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Abs", "[", RowBox[{ RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "-", "d"}], "]"}], "\[LessEqual]", "\[Epsilon]"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "=", RowBox[{"{", RowBox[{"0", ",", RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "[", RowBox[{"[", "2", "]"}], "]"}]}], "}"}]}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Abs", "[", RowBox[{ RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "-", "0"}], "]"}], "\[LessEqual]", "\[Epsilon]"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "=", RowBox[{"{", RowBox[{"d", ",", RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "[", RowBox[{"[", "2", "]"}], "]"}]}], "}"}]}]}], "]"}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}]}], "]"}]}]}], "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{"Return", " ", "the", " ", RowBox[{"assoc", "'"}], "s", " ", "of", " ", "the", " ", "faces", " ", "to", " ", "their", " ", "centers", " ", "and", " ", "vertices", " ", "to", " ", "their", " ", "centers"}], "*)"}], "\[IndentingNewLine]", RowBox[{"{", RowBox[{"vertices", ",", "faces", ",", "d", ",", "H"}], "}"}]}]}], "\[IndentingNewLine]", "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.737219030683413*^9, 3.737219068499385*^9}, { 3.737219129031519*^9, 3.737219157331717*^9}, {3.737219214776095*^9, 3.737219232499251*^9}, {3.737219530428797*^9, 3.737219737723432*^9}, { 3.737219973681823*^9, 3.737219981058498*^9}, {3.7372852522441998`*^9, 3.737285273052194*^9}, {3.737285379557729*^9, 3.7372853808850813`*^9}, { 3.737285506667365*^9, 3.737285515803762*^9}, {3.7372856044249487`*^9, 3.737285632285976*^9}, {3.7372857006889677`*^9, 3.7372857800137577`*^9}, { 3.73728584887117*^9, 3.737285857200169*^9}, {3.737286074306966*^9, 3.7372860829425373`*^9}, {3.7372861272847137`*^9, 3.737286147655734*^9}, { 3.737286180526772*^9, 3.737286183012919*^9}, {3.737286465705851*^9, 3.7372864888059*^9}, {3.7372865215606728`*^9, 3.737286606697309*^9}, { 3.737286645970365*^9, 3.737286648042437*^9}, {3.737286686140306*^9, 3.7372867642027607`*^9}, {3.737287269374832*^9, 3.737287342750917*^9}, { 3.737287384822444*^9, 3.7372877639349957`*^9}, {3.737287798168841*^9, 3.737287798698641*^9}, {3.737287874201215*^9, 3.737287886754616*^9}, { 3.73728794855105*^9, 3.73728794906709*^9}, {3.737287984087804*^9, 3.737287984258391*^9}, {3.737288167935055*^9, 3.7372881688958406`*^9}, { 3.737288229464828*^9, 3.7372884829941387`*^9}, {3.7372889651024017`*^9, 3.737289028710766*^9}, {3.73728913478118*^9, 3.7372891349574013`*^9}, { 3.737289176488153*^9, 3.7372892189711437`*^9}, {3.737289296434997*^9, 3.737289307920455*^9}, {3.737289377154367*^9, 3.7372893780167713`*^9}, { 3.73728946731621*^9, 3.7372894685890083`*^9}, {3.737289519964464*^9, 3.7372895646104527`*^9}, {3.737289627498472*^9, 3.7372896504948683`*^9}, { 3.737289698936853*^9, 3.7372897006060762`*^9}, {3.737289761143084*^9, 3.737289790713337*^9}, {3.737289852057372*^9, 3.737289856144655*^9}, { 3.7372899307846327`*^9, 3.737289954524984*^9}, {3.737290111472128*^9, 3.737290137729048*^9}, {3.7372903101204*^9, 3.7372903238682327`*^9}, { 3.737290363021036*^9, 3.737290395639821*^9}, {3.737290434642714*^9, 3.737290436215727*^9}, {3.737290481178443*^9, 3.737290524071663*^9}, { 3.737290651768982*^9, 3.7372906712458363`*^9}, {3.737290704533799*^9, 3.7372907061133537`*^9}, {3.737290744976763*^9, 3.737290766875083*^9}, { 3.737290999240056*^9, 3.737291019271243*^9}, {3.737291057840662*^9, 3.737291080456534*^9}, {3.737291128953987*^9, 3.737291140451013*^9}, { 3.737291260286092*^9, 3.7372914176080303`*^9}, {3.7372914768350573`*^9, 3.737291536874617*^9}, {3.7372915673943977`*^9, 3.73729157857458*^9}, { 3.73729459361259*^9, 3.737294594755714*^9}, {3.737294841256043*^9, 3.737294872151122*^9}, {3.73729499894667*^9, 3.737295013697496*^9}, { 3.737295117321186*^9, 3.737295146177869*^9}, {3.737295198600103*^9, 3.737295201561144*^9}, {3.737295332216126*^9, 3.7372953659228153`*^9}, { 3.7372958344031277`*^9, 3.737296025548025*^9}, {3.737302057273785*^9, 3.737302228939927*^9}, 3.7373022837982073`*^9, {3.737302343644175*^9, 3.737302375974662*^9}, 3.737302421339328*^9, {3.737302477569655*^9, 3.737302565791008*^9}, {3.737302777019927*^9, 3.737302823909573*^9}, { 3.737303123387793*^9, 3.737303214311923*^9}, {3.7373032530403357`*^9, 3.7373032965502157`*^9}, {3.737303417213832*^9, 3.737303518053563*^9}, { 3.737303590633803*^9, 3.737303600566893*^9}, {3.737303631996339*^9, 3.737303736869626*^9}, {3.737303779146243*^9, 3.737303825046517*^9}, { 3.737304130063211*^9, 3.737304181026523*^9}, {3.7373042470907288`*^9, 3.737304349277087*^9}, {3.7373043812177143`*^9, 3.737304407351365*^9}, { 3.737304581411367*^9, 3.737304616831106*^9}, {3.7373046620344*^9, 3.7373047068712873`*^9}, {3.737304771496949*^9, 3.7373048444644938`*^9}, { 3.737305306432076*^9, 3.7373053158581667`*^9}, {3.7373053546618013`*^9, 3.737305355635768*^9}, 3.7373054429132357`*^9, {3.737306098271888*^9, 3.737306106600956*^9}, {3.737306417696192*^9, 3.737306447095158*^9}, { 3.7373064781213903`*^9, 3.737306483985478*^9}, {3.737306573567268*^9, 3.737306587589746*^9}, {3.737306720838073*^9, 3.73730674819695*^9}, { 3.737306852180376*^9, 3.737306861658111*^9}, {3.737306929352565*^9, 3.7373069458296127`*^9}, {3.737306985973919*^9, 3.73730703321769*^9}, { 3.737307104020858*^9, 3.737307104380198*^9}, {3.7373072016479588`*^9, 3.737307219827284*^9}, {3.737307283259153*^9, 3.737307449938692*^9}, { 3.737307507268676*^9, 3.737307531627266*^9}, {3.737307624863483*^9, 3.737307630803578*^9}, 3.7373692366355057`*^9, {3.737378768428591*^9, 3.737378772696554*^9}, {3.737456548739272*^9, 3.737456676468967*^9}, { 3.737456732055797*^9, 3.737456785246457*^9}, {3.737456880379624*^9, 3.73745693261576*^9}, {3.7374569872793217`*^9, 3.737457002918715*^9}, { 3.737457034354722*^9, 3.7374570868457327`*^9}, {3.7374573446089993`*^9, 3.737457359698818*^9}, {3.737457621684537*^9, 3.737457654757286*^9}, { 3.7374577893447638`*^9, 3.7374578203273153`*^9}, 3.73745786787053*^9, { 3.737458414579453*^9, 3.7374584346434393`*^9}, {3.73745848723744*^9, 3.737458515616708*^9}, {3.737458663428769*^9, 3.73745867379788*^9}, { 3.737458742757172*^9, 3.7374588188135767`*^9}, {3.7374589524311037`*^9, 3.737458970370059*^9}, {3.737459004685546*^9, 3.737459017734614*^9}, { 3.737469143102393*^9, 3.737469152438889*^9}, {3.7374723221463118`*^9, 3.7374723517302732`*^9}, {3.737472517403573*^9, 3.73747252044235*^9}, { 3.737472566196344*^9, 3.737472599816885*^9}, {3.737472901109223*^9, 3.737472904411367*^9}, {3.737472959283648*^9, 3.737472959747048*^9}, { 3.737472997133112*^9, 3.737473040080291*^9}, {3.7374732109292183`*^9, 3.73747321567245*^9}, {3.737474220810277*^9, 3.737474243746545*^9}, { 3.737720030799748*^9, 3.7377200552173643`*^9}, {3.737720087337412*^9, 3.7377201185616283`*^9}, {3.737720170734948*^9, 3.737720176149166*^9}, { 3.7377202115121927`*^9, 3.7377202116963243`*^9}, {3.7377202481305037`*^9, 3.737720253754922*^9}, {3.73772028641499*^9, 3.7377203344757833`*^9}, { 3.737891223277732*^9, 3.7378912238571*^9}, {3.737906075544756*^9, 3.7379060758948555`*^9}, {3.737991347709439*^9, 3.7379913481113663`*^9}, { 3.7379951711905804`*^9, 3.7379951715466285`*^9}}, CellLabel->"In[20]:=",ExpressionUUID->"34558bf5-30de-4efd-a85d-1e42927d2f41"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"FindRest", "[", RowBox[{ RowBox[{"{", RowBox[{"x_", ",", "y_"}], "}"}], ",", "r_", ",", "face_", ",", "vertices_", ",", "radii_", ",", "lines_"}], "]"}], ":=", RowBox[{"(*", " ", RowBox[{ "face", " ", "is", " ", "all", " ", "the", " ", "vertices", " ", "that", " ", "the", " ", "face", " ", "intersects"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"{", RowBox[{"x_", ",", "y_"}], "}"}], ",", RowBox[{"r", ":", " ", RowBox[{ "known", " ", "center", " ", "of", " ", "opposite", " ", "kind", " ", "and", " ", "its", " ", "radius", "\[IndentingNewLine]", "face"}], ":", " ", RowBox[{ "all", " ", "the", " ", "circles", " ", "of", " ", "its", " ", "kind", " ", "that", " ", "pass", " ", "thru", " ", "that", " ", "opposite", " ", "known", " ", "circle", "\[IndentingNewLine]", RowBox[{"vertices", ":", " ", RowBox[{ "all", " ", "the", " ", "circles", " ", "of", " ", "its", " ", "kind", " ", "that", " ", "are", " ", "tangent", " ", "to", " ", "the", " ", "one", " ", RowBox[{"we", "'"}], "e", " ", "looking", " ", "for"}]}]}]}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"verts", "=", "vertices"}], ",", "i", ",", "j", ",", "\[Phi]", ",", "\[Theta]", ",", "\[Omega]", ",", RowBox[{"face2", "=", "face"}], ",", "b", ",", RowBox[{"b2", "=", "True"}]}], "}"}], ",", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "\[Equal]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], "||", RowBox[{"MemberQ", "[", RowBox[{"lines", ",", RowBox[{"face2", "[", RowBox[{"[", "1", "]"}], "]"}]}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "2"}], ",", RowBox[{ RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "face2", "]"}]}], "&&", "b2"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[NotEqual]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], "&&", RowBox[{"!", RowBox[{"MemberQ", "[", RowBox[{"lines", ",", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"face2", "=", RowBox[{"Join", "[", RowBox[{ RowBox[{"face2", "[", RowBox[{"[", RowBox[{"i", ";;"}], "]"}], "]"}], ",", RowBox[{"face2", "[", RowBox[{"[", RowBox[{";;", RowBox[{"i", "-", "1"}]}], "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"b2", "=", "False"}], ";"}]}], "\[IndentingNewLine]", "]"}]}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"b", "=", "True"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "2"}], ",", RowBox[{ RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "face2", "]"}]}], "&&", "b"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{"lines", ",", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"AppendTo", "[", RowBox[{"face2", ",", RowBox[{"face2", "[", RowBox[{"[", "1", "]"}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", RowBox[{ RowBox[{"Length", "[", "face2", "]"}], "-", "1"}]}], ",", RowBox[{"j", ">", "i"}], ",", RowBox[{"j", "--"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "\[Equal]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"\[Phi]", "=", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", RowBox[{"j", "+", "1"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "-", "x"}], ",", RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", RowBox[{"j", "+", "1"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "2", "]"}], "]"}], "-", "y"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"\[Theta]", "=", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", RowBox[{"j", "+", "1"}], "]"}], "]"}], "]"}], "/", "r"}], "]"}]}], ";", RowBox[{"(*", " ", RowBox[{"j", "+", RowBox[{ "1", " ", "refers", " ", "to", " ", "previously", " ", RowBox[{"computed", " ", "/", " ", "known"}]}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"\[Omega]", "=", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "/", "r"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"x", "+", RowBox[{ SqrtBox[ RowBox[{ SuperscriptBox["r", "2"], "+", SuperscriptBox[ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "2"]}]], RowBox[{"Cos", "[", RowBox[{"\[Phi]", "-", "\[Theta]", "-", "\[Omega]"}], "]"}]}]}], ",", RowBox[{"y", "+", RowBox[{ SqrtBox[ RowBox[{ SuperscriptBox["r", "2"], "+", SuperscriptBox[ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "2"]}]], RowBox[{"Sin", "[", RowBox[{"\[Phi]", "-", "\[Theta]", "-", "\[Omega]"}], "]"}]}]}]}], "}"}]}]}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}], ";", RowBox[{"b", "=", "False"}], ";", "Break"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[Equal]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"\[Phi]", "=", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "-", "x"}], ",", RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "2", "]"}], "]"}], "-", "y"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"\[Theta]", "=", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", RowBox[{"i", "-", "1"}], "]"}], "]"}], "]"}], "/", "r"}], "]"}]}], ";", RowBox[{"(*", " ", RowBox[{"i", "-", RowBox[{ "1", " ", "refers", " ", "to", " ", "previously", " ", RowBox[{"computed", " ", "/", " ", "known"}]}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"\[Omega]", "=", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "/", "r"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"verts", "[", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "=", RowBox[{"{", RowBox[{ RowBox[{"x", "+", RowBox[{ SqrtBox[ RowBox[{ SuperscriptBox["r", "2"], "+", SuperscriptBox[ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "2"]}]], RowBox[{"Cos", "[", RowBox[{"\[Phi]", "+", "\[Theta]", "+", "\[Omega]"}], "]"}]}]}], ",", RowBox[{"y", "+", RowBox[{ SqrtBox[ RowBox[{ SuperscriptBox["r", "2"], "+", SuperscriptBox[ RowBox[{"radii", "[", RowBox[{"face2", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "2"]}]], RowBox[{"Sin", "[", RowBox[{"\[Phi]", "+", "\[Theta]", "+", "\[Omega]"}], "]"}]}]}]}], "}"}]}]}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}], "]"}], ";", "\[IndentingNewLine]", "verts"}]}], "\[IndentingNewLine]", "]"}]}], ";"}], "\[IndentingNewLine]"}]], "Input", CellChangeTimes->CompressedData[" 1:eJwd030s1HEcB/BfylGhk+tmultSuqz0uKhUSsyVHk/IlWr0YDJEU5e7DCc0 xE8RihBdiLsJV1mblsgqD7XuGnk4VNfJUw/S1Pq9v3989vrn8/lsn733WRwY LjplRFHUbqagpUVmqkRr2NG6wv0a7HQYuQXPRnmXwOv+3EpokxSqhF+2f38I lZsLGqBOPdYCk/t9u2FwUvkgPLRzgQFSUv4kVJm++QOL5xwwucQoqxYT51v7 mUGnzw+JDds9raDUoOPDKKO/ofC6yjQCpi1nxcGy28OJcBEtS4NU/lAWDGfb 58Nkn7W3oLjOuQwq3aOI5W6FatgYW/ACjnq2vyLzWroT0q+tNfC4W2sXbNHv 0sGevSnERzZheii6T8+IYbR0KjSFuoxG4nBt8xGomNtOFA28CyJ9m35JoTwj RQ7NFV40XHfKIhveiPxBvLxzpADy7vNL4Pkuk2pYvLRQBV/lmb2FNQFUNzT1 2DYIs/VaImvAVw+nDyYRU/7uG4WRvMeT8MJklbGM0VbQSdwaqOmNZbyaOasP zlJXfILdnDaiE+fpnnjk4K8lardZ1EDbc5wGmDplPgrr+DQrgXHEksODD35X Ewd/S4TQ7n3FMbhJ4BcEKcd1wVB+xicUFj35FA63rF9zAXI/512CPar5V6BP 2+l00n+6loZ3J1xyoNgvpgDuize+A1ewKAVkf/xeAQUlC5TwnOZ9ExwLbP4I n2kbB+BGrnoY9ndMjcEjs4t2p+GuLuF+yB2mg+CcBMcQyBp/GQYpm3lSyLZ1 yYIeFvJiyAt9Vg4V3hNKuKiqvgmK3AJa4HOxuo3st/PvgBnCsSEYwa00wD5b q5mFyCvagQ1POKa332HcvLKmAzYFeWlgvGU6UajzHoScEGocrr4pnYbub4X/ YH1tolER/qU3h8h2dHWGkqyFG+FRL9VBqBt6RPxl3HMYTn/7EwATv+VGwH/H FkZC694l0fCrRC6BveuzY6H96ityOFsWdg+WunYr4A8zWStcddmlDZaXxq2J /sD888pcYp/m5DIpY7PxBgEUXHT7qWBMtooi/gegIJ/I "], CellLabel->"In[19]:=",ExpressionUUID->"1669407f-19e4-41f4-83d2-404c097a4b8c"], Cell[BoxData[ RowBox[{ RowBox[{"Cull", "[", "assoc_", "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"vis", "=", RowBox[{"{", "}"}]}], ",", RowBox[{"unv", "=", RowBox[{"{", "}"}]}], ",", "i"}], "}"}], ",", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"Keys", "[", "assoc", "]"}], "]"}]}], ",", RowBox[{"i", "++"}], ",", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"assoc", "[", RowBox[{ RowBox[{"Keys", "[", "assoc", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[Equal]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], ",", RowBox[{"AppendTo", "[", RowBox[{"unv", ",", RowBox[{ RowBox[{"Keys", "[", "assoc", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], ",", RowBox[{"AppendTo", "[", RowBox[{"vis", ",", RowBox[{ RowBox[{"Keys", "[", "assoc", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], "]"}]}], "]"}], ";", RowBox[{"{", RowBox[{"vis", ",", "unv"}], "}"}]}]}], "]"}]}]], "Input", CellChangeTimes->{{3.737378883847493*^9, 3.7373790220179577`*^9}}, CellLabel->"In[18]:=",ExpressionUUID->"0ca661cb-0814-4baa-8045-ccb6be11fd34"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"Interior", "[", RowBox[{ "n_", ",", "FacesCW_", ",", "LineFaces_", ",", "radii_", ",", "vertices_", ",", "faces_", ",", "d_", ",", "h_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"Vunv", "=", RowBox[{"{", "}"}]}], ",", RowBox[{"Funv", "=", RowBox[{"{", "}"}]}], ",", RowBox[{"Vvis", "=", RowBox[{"{", "}"}]}], ",", RowBox[{"Fvis", "=", RowBox[{"{", "}"}]}], ",", "i", ",", "j", ",", "f", ",", RowBox[{"verts", "=", "vertices"}], ",", "verts2", ",", RowBox[{"fcs", "=", "faces"}], ",", "fcs2", ",", "fi", ",", "vi", ",", "x", ",", "y", ",", "k", ",", "b"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"f", "=", RowBox[{"Length", "[", "FacesCW", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", "n"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"vertices", "[", "i", "]"}], "\[Equal]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], ",", RowBox[{"AppendTo", "[", RowBox[{"Vunv", ",", "i"}], "]"}], ",", RowBox[{"AppendTo", "[", RowBox[{"Vvis", ",", "i"}], "]"}]}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", "f"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"faces", "[", RowBox[{"FacesCW", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[Equal]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], ",", RowBox[{"AppendTo", "[", RowBox[{"Funv", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], ",", RowBox[{"AppendTo", "[", RowBox[{"Fvis", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{ RowBox[{"j", "\[LessEqual]", RowBox[{"n", "+", RowBox[{"Length", "[", "FacesCW", "]"}]}]}], "&&", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"Length", "[", "Vunv", "]"}], "+", RowBox[{"Length", "[", "Funv", "]"}]}], ">", "0"}], ")"}]}], ",", RowBox[{"j", "++"}], ",", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "Fvis", "]"}]}], ",", RowBox[{"i", "++"}], ",", RowBox[{"(*", " ", RowBox[{ "for", " ", "a", " ", "known", " ", "face", " ", "circle"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Length", "[", RowBox[{"Intersection", "[", RowBox[{"Vvis", ",", RowBox[{"Fvis", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], "]"}], "*", RowBox[{"Length", "[", RowBox[{"Intersection", "[", RowBox[{"Vunv", ",", RowBox[{"Fvis", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], "]"}]}], ">", "0"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"fi", "=", RowBox[{"Fvis", "[", RowBox[{"[", "i", "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"{", RowBox[{"x", ",", "y"}], "}"}], "=", RowBox[{"fcs", "[", "fi", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"verts2", "=", RowBox[{"FindRest", "[", RowBox[{ RowBox[{"{", RowBox[{"x", ",", "y"}], "}"}], ",", RowBox[{"radii", "[", "fi", "]"}], ",", "fi", ",", "verts", ",", "radii", ",", RowBox[{"{", RowBox[{ RowBox[{"n", "-", "1"}], ",", "n"}], "}"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"ThrowOrderError", "[", RowBox[{ "fcs", ",", "verts2", ",", "radii", ",", "d", ",", "h", ",", "n", ",", RowBox[{"{", RowBox[{ RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "]"}], ",", RowBox[{"FacesCW", "[", RowBox[{"[", RowBox[{"LineFaces", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "]"}]}], "}"}], ",", "0"}], "]"}], ",", RowBox[{"verts", "=", RowBox[{"FindRest", "[", RowBox[{ RowBox[{"{", RowBox[{"x", ",", "y"}], "}"}], ",", RowBox[{"radii", "[", "fi", "]"}], ",", RowBox[{"Reverse", "[", "fi", "]"}], ",", "verts", ",", "radii", ",", RowBox[{"{", RowBox[{ RowBox[{"n", "-", "1"}], ",", "n"}], "}"}]}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"verts", "=", "verts2"}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"{", RowBox[{"Vvis", ",", "Vunv"}], "}"}], "=", RowBox[{"Cull", "[", "verts", "]"}]}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "Vvis", "]"}]}], ",", RowBox[{"i", "++"}], ",", " ", RowBox[{"(*", " ", RowBox[{ "for", " ", "a", " ", "known", " ", "vertex", " ", "circle"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"b", "=", "False"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"k", "=", "1"}], ",", RowBox[{"k", "\[LessEqual]", RowBox[{"Length", "[", "Fvis", "]"}]}], ",", RowBox[{"k", "++"}], ",", RowBox[{"b", "=", RowBox[{"b", "||", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Fvis", "[", RowBox[{"[", "k", "]"}], "]"}], ",", RowBox[{"Vvis", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], ",", "True", ",", "False"}], "]"}]}]}]}], "]"}], ";", "b"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"b", "=", "False"}], ";", RowBox[{"For", "[", RowBox[{ RowBox[{"k", "=", "1"}], ",", RowBox[{"k", "\[LessEqual]", RowBox[{"Length", "[", "Funv", "]"}]}], ",", RowBox[{"k", "++"}], ",", RowBox[{"b", "=", RowBox[{"b", "||", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Funv", "[", RowBox[{"[", "k", "]"}], "]"}], ",", RowBox[{"Vvis", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}], ",", "True", ",", "False"}], "]"}]}]}]}], "]"}], ";", "b"}], ",", "\[IndentingNewLine]", RowBox[{"(*", " ", "then", " ", "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"vi", "=", RowBox[{"Vvis", "[", RowBox[{"[", "i", "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"{", RowBox[{"x", ",", "y"}], "}"}], "=", RowBox[{"verts", "[", "vi", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"fcs2", "=", RowBox[{"FindRest", "[", RowBox[{ RowBox[{"{", RowBox[{"x", ",", "y"}], "}"}], ",", RowBox[{"radii", "[", "vi", "]"}], ",", RowBox[{"FacesList", "[", RowBox[{"vi", ",", "FacesCW"}], "]"}], ",", "fcs", ",", "radii", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"ThrowOrderError", "[", RowBox[{ "fcs2", ",", "verts", ",", "radii", ",", "d", ",", "h", ",", "n", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}], ",", "0"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"fcs", "=", RowBox[{"FindRest", "[", RowBox[{ RowBox[{"{", RowBox[{"x", ",", "y"}], "}"}], ",", RowBox[{"radii", "[", "vi", "]"}], ",", "\[IndentingNewLine]", RowBox[{"Reverse", "[", RowBox[{"FacesList", "[", RowBox[{"vi", ",", "FacesCW"}], "]"}], "]"}], ",", "fcs", ",", "radii", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}]}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"fcs", "=", "fcs2"}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"{", RowBox[{"Fvis", ",", "Funv"}], "}"}], "=", RowBox[{"Cull", "[", "fcs", "]"}]}], ";"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"{", RowBox[{"verts", ",", "fcs"}], "}"}]}]}], "\[IndentingNewLine]", "]"}]}], ";"}], "\[IndentingNewLine]"}]], "Input", CellChangeTimes->{{3.737371589519445*^9, 3.7373715939907503`*^9}, { 3.7373717937672253`*^9, 3.737371867174656*^9}, {3.737371907831069*^9, 3.73737217884262*^9}, {3.7373722186269712`*^9, 3.737372303076326*^9}, { 3.737372765799387*^9, 3.737372795651403*^9}, {3.737372858097958*^9, 3.73737290560703*^9}, {3.7373729483086967`*^9, 3.737372962791078*^9}, { 3.737376949244026*^9, 3.737377199857114*^9}, {3.737378821576833*^9, 3.737378856709831*^9}, {3.737379029954533*^9, 3.737379249070065*^9}, { 3.737379302218759*^9, 3.737379442833221*^9}, {3.737379504802657*^9, 3.737379571504554*^9}, {3.73737972110927*^9, 3.737379741421777*^9}, { 3.737380015082492*^9, 3.737380027586205*^9}, {3.737380096483328*^9, 3.737380123433268*^9}, {3.737380170681796*^9, 3.7373801708619337`*^9}, { 3.737380320948838*^9, 3.7373804262726393`*^9}, {3.73738047325154*^9, 3.737380485443796*^9}, {3.737380518592564*^9, 3.737380537424242*^9}, { 3.737380576718589*^9, 3.737380596012712*^9}, {3.7373859949503098`*^9, 3.7373860041894217`*^9}, {3.7373893401960897`*^9, 3.737389340516891*^9}, { 3.737390296785729*^9, 3.7373904116517477`*^9}, {3.7373904724338512`*^9, 3.737390578698831*^9}, {3.737390622302457*^9, 3.737390636926055*^9}, 3.737390871387472*^9, {3.737391458456609*^9, 3.7373915337313957`*^9}, { 3.7373916762920856`*^9, 3.7373916866307707`*^9}, {3.737391755289661*^9, 3.737391760387761*^9}, {3.737392424160388*^9, 3.737392446839201*^9}, { 3.7373926496569033`*^9, 3.7373926770265007`*^9}, {3.737415538959766*^9, 3.737415550423221*^9}, {3.7374157811082497`*^9, 3.737415783008522*^9}, { 3.737416229137042*^9, 3.73741626934859*^9}, {3.737416301320304*^9, 3.7374164268381977`*^9}, {3.737416488079246*^9, 3.737416506542727*^9}, { 3.737418543755864*^9, 3.737418614467947*^9}, {3.73745208819372*^9, 3.7374521079510527`*^9}, {3.737452248507903*^9, 3.737452260807358*^9}, 3.737452337464182*^9, {3.737452547756901*^9, 3.737452552175274*^9}, { 3.737452597327281*^9, 3.737452623027234*^9}, {3.737452951467626*^9, 3.7374529538565903`*^9}, {3.7374529931356688`*^9, 3.73745300450865*^9}, { 3.737453253031118*^9, 3.7374532838306513`*^9}, {3.737453448755361*^9, 3.7374535016621037`*^9}, {3.737453540364457*^9, 3.7374535737880087`*^9}, { 3.7374536292349997`*^9, 3.737453661316655*^9}, {3.737453692604967*^9, 3.737453705446292*^9}, {3.7374538230331917`*^9, 3.737453850633659*^9}, { 3.7374540473125362`*^9, 3.73745406845465*^9}, {3.737454116980228*^9, 3.737454141500236*^9}, {3.737454665545776*^9, 3.737454752199181*^9}, { 3.737454823087352*^9, 3.737454936342786*^9}, {3.73745497887639*^9, 3.7374549822716417`*^9}, {3.737455062923647*^9, 3.737455067024728*^9}, { 3.7374592709534693`*^9, 3.737459282809087*^9}, {3.737459718460556*^9, 3.7374598283067007`*^9}, {3.737459871128312*^9, 3.737459943923081*^9}, { 3.737460424909642*^9, 3.737460468107106*^9}, {3.737460531451869*^9, 3.7374605342064867`*^9}, {3.737460570370933*^9, 3.73746065914788*^9}, { 3.737469228334271*^9, 3.7374692297752113`*^9}, {3.7374759421424723`*^9, 3.737475959220735*^9}, {3.737475996982561*^9, 3.737476043275124*^9}, { 3.7374760741261263`*^9, 3.7374762044096413`*^9}, {3.737476237384112*^9, 3.737476257932431*^9}, {3.737476290722767*^9, 3.7374763178872833`*^9}, { 3.737476633241235*^9, 3.73747668584684*^9}, {3.737476775880768*^9, 3.737476807271324*^9}, {3.737476934280177*^9, 3.7374769365813828`*^9}, { 3.737476994438554*^9, 3.7374770257193117`*^9}, {3.737478615746154*^9, 3.737478664034655*^9}, {3.737478700737122*^9, 3.737478703803566*^9}, { 3.737891193943988*^9, 3.7378911945027657`*^9}, {3.7379034272313843`*^9, 3.737903448515432*^9}, 3.737903546475888*^9}, CellLabel->"In[17]:=",ExpressionUUID->"8eb99bd7-ecdf-447b-9254-91418df0046a"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ThrowOrderError", "[", RowBox[{ "fcs2_", ",", "verts_", ",", "radii_", ",", "d_", ",", "h_", ",", "n_", ",", "fls_", ",", "\[Epsilon]_"}], "]"}], RowBox[{"(*", " ", RowBox[{"fcs2", " ", "is", " ", "proposed", " ", "fcs", " ", RowBox[{"association", ".", " ", "fls"}], " ", "is", " ", "facelines"}], " ", "*)"}], ":=", "\[IndentingNewLine]", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"i", ",", "j", ",", "b", ",", "b2", ",", "K"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"K", "=", RowBox[{"{", "}"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"Keys", "[", "fcs2", "]"}], "]"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"!", RowBox[{"MemberQ", "[", RowBox[{"fls", ",", RowBox[{ RowBox[{"Keys", "[", "fcs2", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], ",", RowBox[{"AppendTo", "[", RowBox[{"K", ",", RowBox[{ RowBox[{"Keys", "[", "fcs2", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], "]"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"b", "=", "False"}], ";", " ", RowBox[{"(*", " ", "\"\\"", " ", "*)"}], "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{ RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "K", "]"}]}], "&&", RowBox[{"!", "b"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"b2", "=", "False"}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"-", "\[Infinity]"}], "<", RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "<", "0"}], "\[IndentingNewLine]", "||", RowBox[{ RowBox[{"-", "\[Infinity]"}], "<", RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "[", RowBox[{"[", "2", "]"}], "]"}], "<", "0"}], "\[IndentingNewLine]", "||", RowBox[{ RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], ">", "d"}], "\[IndentingNewLine]", "||", RowBox[{ RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "[", RowBox[{"[", "2", "]"}], "]"}], ">", "h"}], "\[IndentingNewLine]", "||", RowBox[{"(", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], ",", RowBox[{"j", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"K", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "\[NotEqual]", RowBox[{"n", "-", "1"}]}], "&&", RowBox[{ RowBox[{"K", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "\[NotEqual]", "n"}], "&&", RowBox[{ RowBox[{"verts", "[", RowBox[{"K", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "]"}], "\[NotEqual]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], "&&", RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[NotEqual]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}]}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"EuclideanDistance", "[", RowBox[{ RowBox[{"verts", "[", RowBox[{"K", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "]"}], ",", RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], "]"}], "\[GreaterEqual]", RowBox[{ RowBox[{"(", RowBox[{"1", "-", "\[Epsilon]"}], ")"}], RowBox[{"(", RowBox[{ RowBox[{"radii", "[", RowBox[{"K", "[", RowBox[{"[", RowBox[{"i", ",", "j"}], "]"}], "]"}], "]"}], "+", RowBox[{"radii", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], ")"}]}]}], ",", RowBox[{ RowBox[{"b2", "=", "True"}], ";", "Break"}]}], "]"}]}], "]"}]}], "]"}], ";", "b2"}], ")"}]}]}], ",", "\[IndentingNewLine]", RowBox[{"b", "=", "True"}], ",", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{ RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "K", "]"}]}], "&&", RowBox[{"!", "b"}]}], ",", RowBox[{"j", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"i", "\[NotEqual]", "j"}], "&&", RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[NotEqual]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], "&&", RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "\[NotEqual]", RowBox[{"{", RowBox[{ RowBox[{"-", "\[Infinity]"}], ",", RowBox[{"-", "\[Infinity]"}]}], "}"}]}], "&&", "\[IndentingNewLine]", RowBox[{ RowBox[{"EuclideanDistance", "[", RowBox[{ RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ",", RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}]}], "]"}], "<", RowBox[{ RowBox[{"(", RowBox[{"1", "+", "\[Epsilon]"}], ")"}], RowBox[{"(", RowBox[{ RowBox[{"radii", "[", RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], "]"}], "+", RowBox[{"radii", "[", RowBox[{"fcs2", "[", RowBox[{"K", "[", RowBox[{"[", "j", "]"}], "]"}], "]"}], "]"}]}], ")"}]}]}]}], "\[IndentingNewLine]", ",", RowBox[{"(*", " ", RowBox[{"then", ",", " ", "bad"}], " ", "*)"}], " ", RowBox[{"b", "=", "True"}]}], "]"}]}], "]"}]}], "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{ RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"fls", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "&&", RowBox[{"!", "b"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"fls", "[", RowBox[{"[", RowBox[{"1", ",", "i"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "\[NotEqual]", RowBox[{ FractionBox["d", "2"], "+", RowBox[{ RowBox[{ RowBox[{"fcs2", "[", RowBox[{"fls", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], FractionBox["d", "2"]}]}]}], "&&", RowBox[{ RowBox[{"fls", "[", RowBox[{"[", RowBox[{"1", ",", "i"}], "]"}], "]"}], "<", RowBox[{"n", "-", "1"}]}]}], ",", RowBox[{"b", "=", "True"}]}], "]"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{ RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"fls", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}]}], "&&", RowBox[{"!", "b"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"verts", "[", RowBox[{"fls", "[", RowBox[{"[", RowBox[{"2", ",", "i"}], "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "\[NotEqual]", RowBox[{ FractionBox["d", "2"], "+", RowBox[{ RowBox[{ RowBox[{"fcs2", "[", RowBox[{"fls", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], FractionBox["d", "2"]}]}]}], "&&", RowBox[{ RowBox[{"fls", "[", RowBox[{"[", RowBox[{"2", ",", "i"}], "]"}], "]"}], "<", RowBox[{"n", "-", "1"}]}]}], ",", RowBox[{"b", "=", "True"}]}], "]"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", "b"}]}], "\[IndentingNewLine]", "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.7373860513513117`*^9, 3.737386324009047*^9}, { 3.7373863565686207`*^9, 3.737386763058362*^9}, {3.737387011692689*^9, 3.7373874131979523`*^9}, {3.737387444285528*^9, 3.737387446417802*^9}, { 3.737387501724284*^9, 3.7373875162781897`*^9}, {3.7373875865809803`*^9, 3.7373876073787117`*^9}, {3.737387674890192*^9, 3.737387682382772*^9}, { 3.737387740454358*^9, 3.7373877582071867`*^9}, {3.737387870977488*^9, 3.737387912943714*^9}, {3.737388020284473*^9, 3.7373880216503363`*^9}, { 3.7373881133311872`*^9, 3.7373881231093473`*^9}, {3.737388218003031*^9, 3.737388251234787*^9}, {3.737388306336886*^9, 3.7373884325997267`*^9}, { 3.73738859353605*^9, 3.737388596101646*^9}, {3.7373886515625*^9, 3.737388731115857*^9}, {3.737388764603668*^9, 3.7373887825179358`*^9}, { 3.737388827395173*^9, 3.73738885534306*^9}, {3.7373889569580507`*^9, 3.7373891513974247`*^9}, {3.737389185971114*^9, 3.737389229300188*^9}, { 3.7373892871568117`*^9, 3.73738930336942*^9}, {3.737451960169162*^9, 3.737451962438613*^9}, {3.737452188533687*^9, 3.7374522140811863`*^9}, { 3.7374523846778708`*^9, 3.737452411688586*^9}, {3.7374524423850327`*^9, 3.7374525059763308`*^9}, {3.7374527627193413`*^9, 3.7374528272523108`*^9}, {3.7374529127507477`*^9, 3.737452943447597*^9}, { 3.737453021653625*^9, 3.737453033081242*^9}, 3.737453194007431*^9, { 3.737457949590412*^9, 3.737458106215234*^9}, {3.737458155680525*^9, 3.737458160666041*^9}, {3.7374582249762278`*^9, 3.737458233452886*^9}, 3.7379035853422227`*^9, {3.7379952037395506`*^9, 3.7379952046351557`*^9}}, CellLabel->"In[16]:=",ExpressionUUID->"df3b60f9-0301-4a00-901e-3f42ad1f6dcc"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"FacesList", "[", RowBox[{"v_", ",", "Faces_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"ContainV", "=", RowBox[{"{", "}"}]}], ",", "i", ",", RowBox[{"L", "=", "2"}], ",", RowBox[{"p", "=", "3"}], ",", "temp"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", "Faces", "]"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Faces", "[", RowBox[{"[", "i", "]"}], "]"}], ",", "v"}], "]"}], ",", RowBox[{"AppendTo", "[", RowBox[{"ContainV", ",", RowBox[{"Faces", "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"While", "[", RowBox[{ RowBox[{"L", "<", RowBox[{"Length", "[", "ContainV", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"While", "[", RowBox[{ RowBox[{"p", "\[LessEqual]", RowBox[{"Length", "[", "ContainV", "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Length", "[", RowBox[{"Intersection", "[", RowBox[{ RowBox[{"ContainV", "[", RowBox[{"[", RowBox[{"L", "-", "1"}], "]"}], "]"}], ",", RowBox[{"ContainV", "[", RowBox[{"[", "p", "]"}], "]"}]}], "]"}], "]"}], "\[Equal]", "2"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"temp", "=", RowBox[{"ContainV", "[", RowBox[{"[", "p", "]"}], "]"}]}], ";", RowBox[{ RowBox[{"ContainV", "[", RowBox[{"[", "p", "]"}], "]"}], "=", RowBox[{"ContainV", "[", RowBox[{"[", "L", "]"}], "]"}]}], ";", RowBox[{ RowBox[{"ContainV", "[", RowBox[{"[", "L", "]"}], "]"}], "=", "temp"}], ";", RowBox[{"p", "=", RowBox[{"1", "+", RowBox[{"Length", "[", "ContainV", "]"}]}]}]}], ",", "\[IndentingNewLine]", RowBox[{"p", "++"}]}], "]"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", RowBox[{"L", "++"}], ";", "\[IndentingNewLine]", RowBox[{"p", "=", RowBox[{"L", "+", "1"}]}], ";"}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "ContainV"}]}], "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.7373893963188553`*^9, 3.737389499461423*^9}, { 3.737389625681715*^9, 3.7373896502694798`*^9}, {3.7373897037433033`*^9, 3.737389735684783*^9}, {3.737389775354559*^9, 3.737389877602042*^9}, { 3.737389938671054*^9, 3.737389955021085*^9}, {3.737390098064752*^9, 3.7373901898598967`*^9}, {3.7373902333090754`*^9, 3.737390260404229*^9}, { 3.737477725750886*^9, 3.7374777259423532`*^9}, {3.737477772140749*^9, 3.737477809678876*^9}, {3.737477865110086*^9, 3.7374778881276903`*^9}, { 3.7374781429692793`*^9, 3.737478158525076*^9}, {3.737478266335372*^9, 3.737478275141066*^9}, {3.7374783969519587`*^9, 3.7374784008097754`*^9}, { 3.737903596846489*^9, 3.737903597250413*^9}}, CellLabel->"In[15]:=",ExpressionUUID->"94e58c8f-e9bc-4bc5-9f72-1e7d65b723b4"], Cell[BoxData[ RowBox[{ RowBox[{"Q", "=", RowBox[{"(", GridBox[{ {"0", RowBox[{"1", "/", "2"}], "0", "0"}, { RowBox[{"1", "/", "2"}], "0", "0", "0"}, {"0", "0", RowBox[{"-", "1"}], "0"}, {"0", "0", "0", RowBox[{"-", "1"}]} }], ")"}]}], ";"}]], "Input", CellLabel->"In[14]:=",ExpressionUUID->"e0269727-13f8-41e1-9bed-e3d214f9ade5"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"InvCoords", "[", RowBox[{"z_", ",", "r_", ",", RowBox[{"d_:", "0"}]}], "]"}], ":=", RowBox[{"If", "[", RowBox[{ RowBox[{"r", "\[Equal]", "\[Infinity]"}], ",", RowBox[{"{", RowBox[{ RowBox[{"2", "d"}], ",", "0", ",", "z"}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{ FractionBox[ SuperscriptBox[ RowBox[{"Norm", "[", "z", "]"}], "2"], "r"], "-", "r"}], ",", RowBox[{"1", "/", "r"}], ",", RowBox[{"z", "/", "r"}]}], "}"}]}], "]"}]}], ";"}]], "Input", CellLabel->"In[13]:=",ExpressionUUID->"335fc47c-61a3-4d42-b8dc-1a6e429b3dbb"], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"Gram", "[", "SC_", "]"}], ":=", RowBox[{"SC", ".", "Q", ".", RowBox[{"Transpose", "[", "SC", "]"}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"SuperCluster", "[", RowBox[{ "vertices_", ",", "faces_", ",", "radii_", ",", "fls_", ",", "d_", ",", "h_", ",", "n_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"sc", "=", RowBox[{"{", "}"}]}], ",", "i"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"n", "-", "2"}]}], ",", RowBox[{"i", "++"}], ",", RowBox[{"AppendTo", "[", RowBox[{"sc", ",", RowBox[{"Flatten", "[", RowBox[{"InvCoords", "[", RowBox[{ RowBox[{"vertices", "[", "i", "]"}], ",", RowBox[{"radii", "[", "i", "]"}]}], "]"}], "]"}]}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"AppendTo", "[", RowBox[{"sc", ",", RowBox[{"Flatten", "[", RowBox[{"InvCoords", "[", RowBox[{ RowBox[{"vertices", "[", RowBox[{"n", "-", "1"}], "]"}], ",", "\[Infinity]", ",", RowBox[{ FractionBox["h", "2"], "+", RowBox[{ RowBox[{ RowBox[{"vertices", "[", RowBox[{"n", "-", "1"}], "]"}], "[", RowBox[{"[", "2", "]"}], "]"}], FractionBox["h", "2"]}]}]}], "]"}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"AppendTo", "[", RowBox[{"sc", ",", RowBox[{"Flatten", "[", RowBox[{"InvCoords", "[", RowBox[{ RowBox[{"vertices", "[", "n", "]"}], ",", "\[Infinity]", ",", RowBox[{ FractionBox["h", "2"], "+", RowBox[{ RowBox[{ RowBox[{"vertices", "[", "n", "]"}], "[", RowBox[{"[", "2", "]"}], "]"}], FractionBox["h", "2"]}]}]}], "]"}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", RowBox[{"Length", "[", RowBox[{"Keys", "[", "faces", "]"}], "]"}]}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"!", RowBox[{"MemberQ", "[", RowBox[{"fls", ",", RowBox[{ RowBox[{"Keys", "[", "faces", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}]}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"AppendTo", "[", RowBox[{"sc", ",", RowBox[{"Flatten", "[", RowBox[{"InvCoords", "[", RowBox[{ RowBox[{"faces", "[", RowBox[{ RowBox[{"Keys", "[", "faces", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ",", RowBox[{"radii", "[", RowBox[{ RowBox[{"Keys", "[", "faces", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], "]"}], "]"}]}], "]"}]}], "\[IndentingNewLine]", "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"AppendTo", "[", RowBox[{"sc", ",", RowBox[{"Flatten", "[", RowBox[{"InvCoords", "[", RowBox[{ RowBox[{"faces", "[", RowBox[{"fls", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], ",", "\[Infinity]", ",", RowBox[{ FractionBox["d", "2"], "+", RowBox[{ RowBox[{ RowBox[{"faces", "[", RowBox[{"fls", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], FractionBox["d", "2"]}]}]}], "]"}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"AppendTo", "[", RowBox[{"sc", ",", RowBox[{"Flatten", "[", RowBox[{"InvCoords", "[", RowBox[{ RowBox[{"faces", "[", RowBox[{"fls", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], ",", "\[Infinity]", ",", RowBox[{ FractionBox["d", "2"], "+", RowBox[{ RowBox[{ RowBox[{"faces", "[", RowBox[{"fls", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], FractionBox["d", "2"]}]}]}], "]"}], "]"}]}], "]"}], ";", "\[IndentingNewLine]", "sc"}]}], "\[IndentingNewLine]", "]"}]}], ";"}]}], "Input", CellLabel->"In[11]:=",ExpressionUUID->"8f83b82e-c1db-40d9-ac4c-a723737f7704"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"DrawCircle", "[", RowBox[{"{", RowBox[{"bhat_", ",", "b_", ",", "bx_", ",", "by_"}], "}"}], "]"}], ":=", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Abs", "[", "b", "]"}], "\[GreaterEqual]", " ", ".01"}], ",", RowBox[{"Circle", "[", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{"bx", ",", "by"}], "}"}], "/", "b"}], ",", RowBox[{"1", "/", "b"}]}], "]"}], ",", RowBox[{"InfiniteLine", "[", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{"bx", ",", "by"}], "}"}], RowBox[{"bhat", "/", "2"}]}], ",", RowBox[{"{", RowBox[{ RowBox[{"-", "by"}], ",", "bx"}], "}"}]}], "]"}]}], "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.7383666121648498`*^9, 3.7383666304241414`*^9}, { 3.738366663056327*^9, 3.738366710683964*^9}, {3.7383669102892475`*^9, 3.73836691462473*^9}}, CellLabel->"In[10]:=",ExpressionUUID->"d37cc6ff-e0b5-488e-9c86-c606b2039282"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"Packing", "[", RowBox[{"n_", ",", "FacesCW_", ",", RowBox[{"\[Epsilon]_:", "0"}]}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ "radii", ",", "LineFaces", ",", "vertices", ",", "faces", ",", "d", ",", "h"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{"radii", ",", "LineFaces"}], "}"}], "=", RowBox[{"EnergySetup", "[", RowBox[{"n", ",", "FacesCW"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"{", RowBox[{"vertices", ",", "faces", ",", "d", ",", "h"}], "}"}], "=", RowBox[{"Boundary", "[", RowBox[{ "n", ",", "FacesCW", ",", "LineFaces", ",", "radii", ",", "\[Epsilon]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{ RowBox[{"{", RowBox[{"vertices", ",", "faces"}], "}"}], "=", RowBox[{"Interior", "[", RowBox[{ "n", ",", "FacesCW", ",", "LineFaces", ",", "radii", ",", "vertices", ",", "faces", ",", "d", ",", "h"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"{", RowBox[{ "vertices", ",", "faces", ",", "radii", ",", "d", ",", "h", ",", "LineFaces"}], "}"}]}]}], "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.737469007369687*^9, 3.737469107407995*^9}, { 3.73746916343927*^9, 3.737469194858486*^9}, {3.737469239984439*^9, 3.737469246965393*^9}, {3.737469315964088*^9, 3.737469336634994*^9}, { 3.737469428057992*^9, 3.737469432696295*^9}, {3.737469465014307*^9, 3.737469481114959*^9}, {3.7374695687460957`*^9, 3.7374696091341476`*^9}, { 3.737470455200612*^9, 3.7374704661283417`*^9}, {3.737478361306628*^9, 3.7374783619053802`*^9}, {3.737720455890616*^9, 3.737720462414033*^9}}, CellLabel->"In[9]:=",ExpressionUUID->"9a3eb7b4-a69e-4770-9009-32f6122d8145"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"Render", "[", RowBox[{ "radii_", ",", "fcs_", ",", "verts_", ",", "fls_", ",", "n_", ",", "d_", ",", "h_"}], "]"}], ":=", RowBox[{"Graphics", "[", RowBox[{"{", RowBox[{"Blue", ",", "Thick", ",", "\[IndentingNewLine]", RowBox[{"Table", "[", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{"i", "\[Equal]", RowBox[{"n", "-", "1"}]}], ",", RowBox[{"Line", "[", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"-", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}], ",", "h"}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{"d", "+", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}], ",", "h"}], "}"}]}], "}"}], "]"}], ",", RowBox[{"If", "[", RowBox[{ RowBox[{"i", "\[Equal]", "n"}], ",", RowBox[{"Line", "[", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"-", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}], ",", "0"}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{"d", "+", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}], ",", "0"}], "}"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Circle", "[", RowBox[{ RowBox[{"verts", "[", RowBox[{ RowBox[{"Keys", "[", "verts", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ",", RowBox[{"radii", "[", RowBox[{ RowBox[{"Keys", "[", "verts", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], "]"}]}], "]"}]}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "n"}], "}"}]}], "]"}], ",", "\[IndentingNewLine]", "Red", ",", "Dashed", ",", "\[IndentingNewLine]", RowBox[{"Table", "[", RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Keys", "[", "fcs", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "\[Equal]", RowBox[{"fls", "[", RowBox[{"[", "1", "]"}], "]"}]}], ",", RowBox[{"Line", "[", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"0", ",", RowBox[{"-", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}]}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", RowBox[{"h", "+", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}]}], "}"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"Keys", "[", "fcs", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "\[Equal]", RowBox[{"fls", "[", RowBox[{"[", "2", "]"}], "]"}]}], ",", RowBox[{"Line", "[", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"d", ",", RowBox[{"-", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}]}], "}"}], ",", RowBox[{"{", RowBox[{"d", ",", RowBox[{"h", "+", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}]}], "}"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Circle", "[", RowBox[{ RowBox[{"fcs", "[", RowBox[{ RowBox[{"Keys", "[", "fcs", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}], ",", RowBox[{"radii", "[", RowBox[{ RowBox[{"Keys", "[", "fcs", "]"}], "[", RowBox[{"[", "i", "]"}], "]"}], "]"}]}], "]"}]}], "]"}]}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", RowBox[{"Length", "[", RowBox[{"Keys", "[", "fcs", "]"}], "]"}]}], "}"}]}], "]"}]}], "\[IndentingNewLine]", "}"}], "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.7373911026555433`*^9, 3.737391276476068*^9}, { 3.737391324439508*^9, 3.737391325806115*^9}, {3.7373913655803022`*^9, 3.73739137356105*^9}, {3.737460834501174*^9, 3.7374608791258917`*^9}, { 3.737460909495472*^9, 3.737460979640925*^9}, {3.737469858560081*^9, 3.737469918056663*^9}, {3.73746995156046*^9, 3.7374701969102716`*^9}, { 3.737470230362206*^9, 3.737470299948655*^9}, 3.7378928141832247`*^9}, CellLabel->"In[8]:=",ExpressionUUID->"affbea28-f93e-449d-873a-65b52e624ef9"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"SendToInt", "[", RowBox[{"\[Epsilon]_:", "0"}], "]"}], "[", "y_", "]"}], ":=", RowBox[{"With", "[", RowBox[{ RowBox[{"{", RowBox[{"x", "=", RowBox[{"Simplify", "[", "y", "]"}]}], "}"}], ",", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Abs", "[", RowBox[{"x", "-", RowBox[{"Floor", "[", "x", "]"}]}], "]"}], "\[LessEqual]", "\[Epsilon]"}], " ", ",", RowBox[{"Floor", "[", "x", "]"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Abs", "[", RowBox[{"x", "-", RowBox[{"Ceiling", "[", "x", "]"}]}], "]"}], "\[LessEqual]", " ", "\[Epsilon]"}], " ", ",", RowBox[{"Ceiling", "[", "x", "]"}], ",", "x"}], "]"}], ",", "x"}], "]"}]}], "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.7384110559425135`*^9, 3.7384110603257904`*^9}, { 3.7384111195493803`*^9, 3.7384111627798147`*^9}, {3.738928265307067*^9, 3.738928278583568*^9}}, CellLabel->"In[47]:=",ExpressionUUID->"15495297-a588-42f2-9830-ff3a5a9d76a4"], Cell[BoxData[{ RowBox[{ RowBox[{"R", "[", "vhat_", "]"}], ":=", RowBox[{ RowBox[{"IdentityMatrix", "[", "4", "]"}], "+", RowBox[{"2", RowBox[{"Q", ".", RowBox[{"Transpose", "[", RowBox[{"{", "vhat", "}"}], "]"}], ".", RowBox[{"{", "vhat", "}"}]}]}]}]}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"BMat", "[", "n_", "]"}], ":=", RowBox[{"Table", "[", RowBox[{ RowBox[{"b", "[", RowBox[{"i", ",", "j"}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "n"}], "}"}], ",", RowBox[{"{", RowBox[{"j", ",", "1", ",", "n"}], "}"}]}], "]"}]}], ";"}]}], "Input", CellChangeTimes->{{3.7378245147847567`*^9, 3.737824531315222*^9}, { 3.737995674554207*^9, 3.7379956992022705`*^9}, 3.7380623568729105`*^9, { 3.739117149800373*^9, 3.7391171513243084`*^9}}, CellLabel-> "In[489]:=",ExpressionUUID->"cd35cdcc-79cb-420e-8b24-2c510cf42e01"], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"Bend4", "[", RowBox[{"V_", ",", "n_"}], "]"}], "[", "i_", "]"}], ":=", RowBox[{"With", "[", RowBox[{ RowBox[{"{", RowBox[{"B", "=", RowBox[{ RowBox[{"Bend3", "[", RowBox[{"V", ",", "n", ",", "Integers"}], "]"}], "[", "i", "]"}]}], "}"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"Length", "[", "B", "]"}], ">", "0"}], ",", "\[IndentingNewLine]", RowBox[{"{", RowBox[{"B", ",", "\"\\""}], "}"}], ",", "\[IndentingNewLine]", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{"Bend3", "[", RowBox[{"V", ",", "n", ",", "Reals"}], "]"}], "[", "i", "]"}], ",", "\"\\""}], "}"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"Bend3", "[", RowBox[{"V_", ",", "n_", ",", RowBox[{"RING_:", "Integers"}]}], "]"}], "[", "i_", "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{ "sol", ",", "assignments", ",", "rest", ",", "j", ",", "l", ",", "others1", ",", "others2", ",", "co", ",", "cl"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"cl", " ", "=", " ", RowBox[{"V", "[", RowBox[{"[", RowBox[{";;", "n"}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"co", " ", "=", " ", RowBox[{"V", "[", RowBox[{"[", RowBox[{ RowBox[{"n", "+", "1"}], ";;"}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"sol", "=", RowBox[{"Solve", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"BMat", "[", "n", "]"}], ".", "cl"}], "==", RowBox[{"cl", ".", RowBox[{"R", "[", RowBox[{ "co", "\[LeftDoubleBracket]", "i", "\[RightDoubleBracket]"}], "]"}]}]}], ",", "RING"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"sol", "==", RowBox[{"{", "}"}]}], ",", "Null", ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"sol", "=", RowBox[{ "sol", "\[LeftDoubleBracket]", "1", "\[RightDoubleBracket]"}]}], ";", "\[IndentingNewLine]", RowBox[{"assignments", "=", RowBox[{"Association", "[", "sol", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"rest", "=", RowBox[{"Complement", "[", RowBox[{ RowBox[{"Flatten", "[", RowBox[{"BMat", "[", "n", "]"}], "]"}], ",", RowBox[{"Keys", "[", "assignments", "]"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"l", "=", RowBox[{"Length", "[", "rest", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{"l", "==", "0"}], ",", RowBox[{"MatrixForm", "[", RowBox[{"Simplify", "[", RowBox[{ RowBox[{"BMat", "[", "n", "]"}], "/.", "assignments"}], "]"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"others1", "=", RowBox[{ RowBox[{"Solve", "[", RowBox[{"rest", "==", RowBox[{"Table", "[", RowBox[{"0", ",", RowBox[{"{", RowBox[{"j", ",", "1", ",", "l"}], "}"}]}], "]"}]}], "]"}], "\[LeftDoubleBracket]", "1", "\[RightDoubleBracket]"}]}], ";", "\[IndentingNewLine]", RowBox[{"others2", "=", RowBox[{"<|", "|>"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", "l"}], ",", RowBox[{"j", "++"}], ",", RowBox[{ RowBox[{"others2", "[", RowBox[{ "rest", "\[LeftDoubleBracket]", "j", "\[RightDoubleBracket]"}], "]"}], "=", RowBox[{"Subscript", "[", RowBox[{"a", ",", " ", "j"}], "]"}]}]}], "]"}], ";", "\[IndentingNewLine]", RowBox[{"others2", "=", RowBox[{"Normal", "[", "others2", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"MatrixForm", "[", RowBox[{"Simplify", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"BMat", "[", "n", "]"}], "/.", RowBox[{"(", RowBox[{"assignments", "/.", "others1"}], ")"}]}], ")"}], "/.", "others1"}], "]"}], "]"}]}]}], "\[IndentingNewLine]", "]"}]}]}], "\[IndentingNewLine]", "]"}]}]}], "\[IndentingNewLine]", "]"}]}]}], "Input", CellChangeTimes->{{3.7391171603495054`*^9, 3.739117168590618*^9}}, CellLabel-> "In[491]:=",ExpressionUUID->"dc2313cd-3560-424b-adb2-9515cebaa972"], Cell[BoxData[ RowBox[{ RowBox[{"Everything", "[", RowBox[{"n_", ",", "FacesCW_", ",", RowBox[{"\[Epsilon]_:", "0"}], ",", "steps_", ",", RowBox[{"sizemax_:", "\[Infinity]"}]}], "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"vertices", ",", "faces", ",", RowBox[{"f", "=", RowBox[{"Length", "[", "FacesCW", "]"}]}], ",", "radii", ",", "d", ",", "h", ",", "LineFaces", ",", "Vnye", ",", "Vout", ",", RowBox[{"bends", "=", RowBox[{"{", "}"}]}]}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{ "vertices", ",", "faces", ",", "radii", ",", "d", ",", "h", ",", "LineFaces"}], "}"}], "=", RowBox[{"Packing", "[", RowBox[{"n", ",", "FacesCW", ",", "\[Epsilon]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"Vnye", "=", RowBox[{ RowBox[{"SendToInt", "[", "\[Epsilon]", "]"}], "//@", RowBox[{"SuperCluster", "[", RowBox[{"vertices", ",", "faces", ",", "radii", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}], ",", "d", ",", "h", ",", "n"}], "]"}]}]}], ";", "\[IndentingNewLine]", RowBox[{"Vout", "=", RowBox[{"MatrixForm", "[", RowBox[{"Simplify", "[", RowBox[{"RootApproximant", "[", "Vnye", "]"}], "]"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"bends", "=", RowBox[{ RowBox[{"Bend4", "[", RowBox[{ RowBox[{"Vout", "[", RowBox[{"[", "1", "]"}], "]"}], ",", "n"}], "]"}], "/@", RowBox[{"Range", "@", "f"}]}]}], ";", "\[IndentingNewLine]", RowBox[{"Column", "[", RowBox[{"{", "\[IndentingNewLine]", RowBox[{ RowBox[{"Render", "[", RowBox[{"radii", ",", "faces", ",", "vertices", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}], ",", "n", ",", "d", ",", "h"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Graphics", "[", RowBox[{ RowBox[{"{", RowBox[{"Thick", ",", " ", RowBox[{"DrawCircle", "/@", RowBox[{"Orbit", "[", RowBox[{ RowBox[{"Vnye", "[", RowBox[{"[", RowBox[{ RowBox[{"-", "f"}], ";;"}], "]"}], "]"}], ",", RowBox[{"Vnye", "[", RowBox[{"[", RowBox[{";;", "n"}], "]"}], "]"}], ",", "steps", ",", "sizemax"}], "]"}]}], ",", "Red", ",", RowBox[{"DrawCircle", "/@", RowBox[{"Vnye", "[", RowBox[{"[", RowBox[{ RowBox[{"-", "f"}], ";;"}], "]"}], "]"}]}], ",", " ", "Blue", ",", " ", RowBox[{"DrawCircle", "/@", RowBox[{"Vnye", "[", RowBox[{"[", RowBox[{";;", "n"}], "]"}], "]"}]}]}], "}"}], ",", RowBox[{"PlotRange", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"-", "d"}], ",", RowBox[{"2", " ", "d"}]}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{"-", "1.2"}], " ", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}], ",", RowBox[{"h", "+", RowBox[{"1.2", " ", RowBox[{"Max", "[", RowBox[{"Values", "[", "radii", "]"}], "]"}]}]}]}], "}"}]}], "}"}]}], ",", RowBox[{"PlotRangeClipping", "->", "True"}]}], "]"}], ",", "\[IndentingNewLine]", "Vout", ",", "\[IndentingNewLine]", "bends", ",", "\[IndentingNewLine]", RowBox[{"MatrixForm", "[", RowBox[{"Simplify", "[", RowBox[{"RootApproximant", "[", "\[IndentingNewLine]", RowBox[{ RowBox[{"SendToInt", "[", "\[Epsilon]", "]"}], "//@", RowBox[{"Gram", "[", RowBox[{"SuperCluster", "[", RowBox[{"vertices", ",", "faces", ",", "radii", ",", RowBox[{"FacesCW", "[", RowBox[{"[", "LineFaces", "]"}], "]"}], ",", "d", ",", "h", ",", "n"}], "]"}], "]"}]}], "]"}], "\[IndentingNewLine]", "]"}], "]"}]}], "\[IndentingNewLine]", "}"}], "]"}]}]}], "]"}]}]], "Input", CellChangeTimes->{{3.737470377365205*^9, 3.737470438059895*^9}, { 3.737470482386249*^9, 3.7374706291316*^9}, {3.737471365625141*^9, 3.737471391640571*^9}, {3.737471696917704*^9, 3.7374717170638113`*^9}, { 3.737471876518211*^9, 3.737471941864938*^9}, {3.737716963448217*^9, 3.737716980888073*^9}, {3.737720445151472*^9, 3.737720446702874*^9}, { 3.737824443162737*^9, 3.737824455449666*^9}, {3.7378912948360367`*^9, 3.73789135603367*^9}, {3.737891444682703*^9, 3.7378914866810017`*^9}, { 3.7378915925235357`*^9, 3.737891593055147*^9}, {3.737905867803301*^9, 3.737905868137411*^9}, {3.73799267567642*^9, 3.737992677471591*^9}, { 3.7379929469710035`*^9, 3.7379929651434455`*^9}, {3.7379930588897543`*^9, 3.737993076943515*^9}, {3.7380635255102654`*^9, 3.7380635290957108`*^9}, { 3.7380636676088915`*^9, 3.7380636745872297`*^9}, {3.7380638177433786`*^9, 3.738063855095478*^9}, {3.738063909642552*^9, 3.7380639110946693`*^9}, { 3.7380639502698975`*^9, 3.738063956902152*^9}, {3.7380640873173466`*^9, 3.7380641169740276`*^9}, {3.7380642823624744`*^9, 3.738064323475514*^9}, { 3.7380643636749973`*^9, 3.7380643981976967`*^9}, {3.738064443997203*^9, 3.738064444270455*^9}, {3.7380646319055905`*^9, 3.7380646323294573`*^9}, { 3.738064693256534*^9, 3.738064738370883*^9}, {3.738064780948996*^9, 3.738064783577959*^9}, {3.738064816492895*^9, 3.738064820860215*^9}, { 3.738064905554728*^9, 3.738064908135788*^9}, {3.73806511977873*^9, 3.7380651218093004`*^9}, {3.738065157856887*^9, 3.7380651636254597`*^9}, { 3.738065275188075*^9, 3.738065299386354*^9}, {3.738065349198165*^9, 3.738065417491501*^9}, {3.738065502923974*^9, 3.7380655312192965`*^9}, { 3.738065586862509*^9, 3.7380656114477196`*^9}, {3.7383667450964403`*^9, 3.7383667808971167`*^9}, {3.7383668404673557`*^9, 3.7383668491723013`*^9}, {3.738366884492676*^9, 3.738366899165487*^9}, { 3.7383669350551987`*^9, 3.738366935597023*^9}, {3.738406454334059*^9, 3.7384064778900304`*^9}, {3.7384065311871557`*^9, 3.7384065390999947`*^9}, {3.7384088785270195`*^9, 3.738408882012842*^9}, { 3.7384089293051987`*^9, 3.738408929489704*^9}, {3.7384091549149723`*^9, 3.7384091574651527`*^9}, {3.7384095341398277`*^9, 3.738409537195654*^9}, { 3.738410849524389*^9, 3.7384108842784495`*^9}, {3.73841104193098*^9, 3.738411045112468*^9}, {3.738411222945875*^9, 3.738411223086499*^9}, { 3.738411291901064*^9, 3.7384112938647933`*^9}, {3.7384113284900064`*^9, 3.738411336118482*^9}, {3.7384113742605715`*^9, 3.738411385112833*^9}, { 3.738411497441986*^9, 3.7384115195708466`*^9}, {3.7384115693655043`*^9, 3.73841163508772*^9}, {3.738411670899951*^9, 3.7384116724797554`*^9}, { 3.738411750114659*^9, 3.73841176516743*^9}, {3.738411889531969*^9, 3.738411889696562*^9}, {3.7385985625147996`*^9, 3.738598562667409*^9}, { 3.738598719985386*^9, 3.738598730957058*^9}, {3.738928284037984*^9, 3.7389282958643665`*^9}, 3.739113935482582*^9}, CellLabel-> "In[493]:=",ExpressionUUID->"b49300f9-4eb0-4e74-b00e-238ad2cc61d5"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"Orbit", "[", RowBox[{"co_", ",", "cl_", ",", "steps_", ",", RowBox[{"sizemax_:", "\[Infinity]"}]}], "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"i", ",", "j", ",", "k", ",", RowBox[{"orbit", "=", "cl"}], ",", "L"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"For", "[", RowBox[{ RowBox[{"i", "=", "1"}], ",", RowBox[{"i", "\[LessEqual]", "steps"}], ",", RowBox[{"i", "++"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"L", "=", RowBox[{"Length", "[", "orbit", "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"j", "=", "1"}], ",", RowBox[{"j", "\[LessEqual]", RowBox[{"Length", "[", "co", "]"}]}], ",", RowBox[{"j", "++"}], ",", "\[IndentingNewLine]", RowBox[{"For", "[", RowBox[{ RowBox[{"k", "=", "1"}], ",", RowBox[{"k", "\[LessEqual]", "L"}], ",", RowBox[{"k", "++"}], ",", "\[IndentingNewLine]", RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{ "orbit", "\[LeftDoubleBracket]", "k", "\[RightDoubleBracket]"}], ".", RowBox[{"R", "[", RowBox[{ "co", "\[LeftDoubleBracket]", "j", "\[RightDoubleBracket]"}], "]"}]}], ")"}], "\[LeftDoubleBracket]", "2", "\[RightDoubleBracket]"}], "\[LessEqual]", "sizemax"}], "&&", RowBox[{"!", RowBox[{"MemberQ", "[", RowBox[{ RowBox[{"Round", "[", RowBox[{ RowBox[{"N", "[", "orbit", "]"}], ",", ".001"}], "]"}], ",", RowBox[{"Round", "[", RowBox[{ RowBox[{"N", "[", RowBox[{ RowBox[{ "orbit", "\[LeftDoubleBracket]", "k", "\[RightDoubleBracket]"}], ".", RowBox[{"R", "[", RowBox[{ "co", "\[LeftDoubleBracket]", "j", "\[RightDoubleBracket]"}], "]"}]}], "]"}], ",", ".001"}], "]"}]}], RowBox[{"(*", RowBox[{"new", " ", "thing"}], "*)"}], "]"}]}]}], ",", RowBox[{"AppendTo", "[", RowBox[{"orbit", ",", RowBox[{ RowBox[{ "orbit", "\[LeftDoubleBracket]", "k", "\[RightDoubleBracket]"}], ".", RowBox[{"R", "[", RowBox[{ "co", "\[LeftDoubleBracket]", "j", "\[RightDoubleBracket]"}], "]"}]}]}], RowBox[{"(*", "newthing", "*)"}], "]"}]}], "]"}]}], "\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", "]"}]}]}], "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]", "orbit"}]}], "\[IndentingNewLine]", "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.738062389806858*^9, 3.738062427087122*^9}, { 3.7380625273360224`*^9, 3.7380625840383434`*^9}, {3.738064608037428*^9, 3.738064608439394*^9}, {3.738408767299783*^9, 3.738408799676605*^9}, { 3.7385983894314737`*^9, 3.738598391136881*^9}}, CellLabel->"In[45]:=",ExpressionUUID->"b43a5c15-ff8f-4841-a157-1d63bba9b7c4"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Everything", "[", RowBox[{"6", ",", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", "2", ",", "6"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "3", ",", "6"}], "}"}], ",", RowBox[{"{", RowBox[{"3", ",", "4", ",", "6"}], "}"}], ",", RowBox[{"{", RowBox[{"4", ",", "5", ",", "6"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", "5", ",", "4"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", "6", ",", "5"}], "}"}], ",", RowBox[{"{", RowBox[{"1", ",", "2", ",", "3", ",", "4"}], "}"}]}], "}"}], ",", RowBox[{"1", "/", "100"}], ",", "6", ",", "35"}], "]"}]], "Input", CellChangeTimes->{{3.737720388591385*^9, 3.7377204147139273`*^9}, { 3.73799104566405*^9, 3.737991046219566*^9}, {3.7379911247406125`*^9, 3.737991126272558*^9}, 3.737992714004908*^9, {3.7383399270780163`*^9, 3.738339928102619*^9}, {3.7383399833318253`*^9, 3.738340023435418*^9}, { 3.7383669397920876`*^9, 3.73836699772031*^9}, {3.7383676488210897`*^9, 3.738367650275752*^9}, {3.738411438453149*^9, 3.738411446817583*^9}, { 3.7384118416165533`*^9, 3.7384118445254*^9}, {3.738598401775426*^9, 3.7385984461068387`*^9}, {3.7385990810798445`*^9, 3.738599088815607*^9}, { 3.7389283024657135`*^9, 3.738928304928131*^9}}, CellLabel-> "In[494]:=",ExpressionUUID->"8c0d00eb-3a38-4d87-9e21-66e5a04e235e"], Cell[BoxData[ TagBox[GridBox[{ { GraphicsBox[ {RGBColor[0, 0, 1], Thickness[ Large], {CircleBox[{2., 1.}], CircleBox[{1.1715728752538104, 0.17157287525380976}, 0.17157287525381], CircleBox[{0.8284271247461905, 0.17157287525381007}, 0.17157287525381], CircleBox[{0, 1.}], LineBox[{{-1., 2.}, {3.000000000000001, 2.}}], LineBox[{{-1., 0}, {3.000000000000001, 0}}]}, {RGBColor[1, 0, 0], Dashing[{Small, Small}], CircleBox[{1.5857864376269055, 0}, 0.41421356237309503], CircleBox[{1.0000000000000004, 0}, 0.17157287525381], CircleBox[{0.41421356237309526, 0}, 0.41421356237309526], LineBox[{{0, -1.}, {0, 3.}}], CircleBox[{1., 2.}], LineBox[{{2.000000000000001, -1.}, {2.000000000000001, 3.}}], CircleBox[{1.0000000000000002, 0.5857864376269044}, 0.41421356237309515]}}]}, { GraphicsBox[ {Thickness[ Large], {CircleBox[{2, 1}], CircleBox[{1.1715728752538104, 0.17157287525381}, 0.17157287525381], CircleBox[{0.8284271247461905, 0.17157287525381}, 0.17157287525381], CircleBox[{0, 1}], TagBox[ConicHullRegionBox[{0, 2}, {{-1, 0}}], "InfiniteLine"], TagBox[ConicHullRegionBox[{0, 0}, {{1, 0}}], "InfiniteLine"], CircleBox[{1.3592455179659189, 0.05132078828084555}, 0.05132078828084555], CircleBox[{1.4775922500725176, 0.06822746429607383}, 0.06822746429607383], CircleBox[{1.5857864376269053, 0.042893218813452476}, 0.042893218813452476], CircleBox[{1.0294372515228603, 0.02943725152285947}, 0.02943725152285947], CircleBox[{0.9705627484771411, 0.02943725152285942}, 0.02943725152285942], CircleBox[{0.5224077499274832, 0.06822746429607394}, 0.06822746429607394], CircleBox[{0.6407544820340821, 0.05132078828084559}, 0.05132078828084559], CircleBox[{0.4142135623730952, 0.04289321881345251}, 0.04289321881345251], CircleBox[{1.0513207882808457, 1.4530818393219727}, 0.05132078828084554], CircleBox[{0.9486792117191547, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{1, Rational[7, 4]}, {1, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{1.0000000000000002, 0.6464466094067257}, 0.0606601717798213], CircleBox[{1.0000000000000004, 0.43933982822017803}, 0.14644660940672646], CircleBox[{-2, 1}], CircleBox[{-1.1715728752538104, 0.17157287525381}, 0.17157287525381], CircleBox[{-0.8284271247461905, 0.17157287525381}, 0.17157287525381], CircleBox[{2.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[{3.1715728752538097, 0.17157287525381}, 0.17157287525381], CircleBox[{4, 1}], CircleBox[{1.3905242917512708, 0.1464466094067261}, 0.048815536468908856], CircleBox[{1.6568542494923808, 0.02943725152285943}, 0.02943725152285943], CircleBox[{0.6094757082487307, 0.14644660940672627}, 0.048815536468908904], CircleBox[{0.34314575050761986, 0.02943725152285943}, 0.02943725152285943], CircleBox[{1., 1.2597170692372195}, 0.033176149576232994], CircleBox[{1.0000000000000004, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[2, 3], Rational[17, 9]}, {0.6666666666666666, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[4, 3], Rational[17, 9]}, {1.3333333333333333`, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{1.0000000000000002, 0.7402829307627801}, 0.03317614957623301], CircleBox[{-1.3592455179659189, 0.05132078828084555}, 0.05132078828084555], CircleBox[{-1.4775922500725176, 0.06822746429607383}, 0.06822746429607383], CircleBox[{-1.5857864376269053, 0.042893218813452476}, 0.042893218813452476], CircleBox[{-1.0294372515228603, 0.02943725152285947}, 0.02943725152285947], CircleBox[{-0.9705627484771411, 0.02943725152285942}, 0.02943725152285942], CircleBox[{-0.5224077499274832, 0.06822746429607394}, 0.06822746429607394], CircleBox[{-0.6407544820340821, 0.05132078828084559}, 0.05132078828084559], CircleBox[{-0.4142135623730952, 0.04289321881345251}, 0.04289321881345251], CircleBox[{-1.0513207882808457, 1.4530818393219727}, 0.05132078828084554], CircleBox[{-0.9486792117191547, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{-1, Rational[7, 4]}, {-1, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{-1.0000000000000002, 0.6464466094067257}, 0.0606601717798213], CircleBox[{-1.0000000000000004, 0.43933982822017803}, 0.14644660940672646], CircleBox[{-2.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[{-3.1715728752538097, 0.17157287525381}, 0.17157287525381], CircleBox[{-4, 1}], CircleBox[{2.640754482034081, 0.05132078828084555}, 0.05132078828084555], CircleBox[{2.522407749927482, 0.06822746429607383}, 0.06822746429607383], CircleBox[{2.4142135623730945, 0.042893218813452476}, 0.042893218813452476], CircleBox[{2.97056274847714, 0.02943725152285947}, 0.02943725152285947], CircleBox[{3.029437251522859, 0.02943725152285942}, 0.02943725152285942], CircleBox[{3.477592250072517, 0.06822746429607394}, 0.06822746429607394], CircleBox[{3.3592455179659177, 0.05132078828084559}, 0.05132078828084559], CircleBox[{3.5857864376269046, 0.04289321881345251}, 0.04289321881345251], CircleBox[{2.9486792117191545, 1.4530818393219727}, 0.05132078828084554], CircleBox[{3.0513207882808455, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{3, Rational[7, 4]}, {3, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{3., 0.6464466094067257}, 0.0606601717798213], CircleBox[{3., 0.43933982822017803}, 0.14644660940672646], CircleBox[{6, 1}], CircleBox[{5.17157287525381, 0.17157287525381}, 0.17157287525381], CircleBox[{4.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[NCache[{Rational[1, 2], Rational[31, 16]}, {0.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[4, 5], Rational[49, 25]}, {0.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[3, 2], Rational[31, 16]}, {1.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[6, 5], Rational[49, 25]}, {1.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{-1.3905242917512708, 0.1464466094067261}, 0.048815536468908856], CircleBox[{-1.6568542494923808, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-0.6094757082487307, 0.14644660940672627}, 0.048815536468908904], CircleBox[{-0.34314575050761986, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-1., 1.2597170692372195}, 0.033176149576232994], CircleBox[{-1.0000000000000004, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[-2, 3], Rational[17, 9]}, {-0.6666666666666666, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[-4, 3], Rational[17, 9]}, {-1.3333333333333333`, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{-1.0000000000000002, 0.7402829307627801}, 0.03317614957623301], CircleBox[{-2.640754482034081, 0.05132078828084555}, 0.05132078828084555], CircleBox[{-2.522407749927482, 0.06822746429607383}, 0.06822746429607383], CircleBox[{-2.4142135623730945, 0.042893218813452476}, 0.042893218813452476], CircleBox[{-2.97056274847714, 0.02943725152285947}, 0.02943725152285947], CircleBox[{-3.029437251522859, 0.02943725152285942}, 0.02943725152285942], CircleBox[{-3.477592250072517, 0.06822746429607394}, 0.06822746429607394], CircleBox[{-3.3592455179659177, 0.05132078828084559}, 0.05132078828084559], CircleBox[{-3.5857864376269046, 0.04289321881345251}, 0.04289321881345251], CircleBox[{-2.9486792117191545, 1.4530818393219727}, 0.05132078828084554], CircleBox[{-3.0513207882808455, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{-3, Rational[7, 4]}, {-3, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{-3., 0.6464466094067257}, 0.0606601717798213], CircleBox[{-3., 0.43933982822017803}, 0.14644660940672646], CircleBox[{-6, 1}], CircleBox[{-5.17157287525381, 0.17157287525381}, 0.17157287525381], CircleBox[{-4.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[{2.609475708248729, 0.1464466094067261}, 0.048815536468908856], CircleBox[{2.3431457505076194, 0.02943725152285943}, 0.02943725152285943], CircleBox[{3.3905242917512695, 0.14644660940672627}, 0.048815536468908904], CircleBox[{3.65685424949238, 0.02943725152285943}, 0.02943725152285943], CircleBox[{3., 1.2597170692372195}, 0.033176149576232994], CircleBox[{2.9999999999999996, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[10, 3], Rational[17, 9]}, {3.3333333333333335`, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[8, 3], Rational[17, 9]}, {2.6666666666666665`, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{2.999999999999999, 0.7402829307627801}, 0.03317614957623301], CircleBox[{5.359245517965919, 0.05132078828084555}, 0.05132078828084555], CircleBox[{5.477592250072518, 0.06822746429607383}, 0.06822746429607383], CircleBox[{5.585786437626904, 0.042893218813452476}, 0.042893218813452476], CircleBox[{5.02943725152286, 0.02943725152285947}, 0.02943725152285947], CircleBox[{4.970562748477142, 0.02943725152285942}, 0.02943725152285942], CircleBox[{4.522407749927484, 0.06822746429607394}, 0.06822746429607394], CircleBox[{4.640754482034082, 0.05132078828084559}, 0.05132078828084559], CircleBox[{4.414213562373096, 0.04289321881345251}, 0.04289321881345251], CircleBox[{5.051320788280846, 1.4530818393219727}, 0.05132078828084554], CircleBox[{4.948679211719155, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{5, Rational[7, 4]}, {5, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{5., 0.6464466094067257}, 0.0606601717798213], CircleBox[{5.000000000000001, 0.43933982822017803}, 0.14644660940672646], CircleBox[{6.828427124746189, 0.17157287525381}, 0.17157287525381], CircleBox[{7.171572875253809, 0.17157287525381}, 0.17157287525381], CircleBox[{8, 1}], CircleBox[NCache[{Rational[2, 5], Rational[49, 25]}, {0.4, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[8, 5], Rational[49, 25]}, {1.6, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-1, 2], Rational[31, 16]}, {-0.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[-4, 5], Rational[49, 25]}, {-0.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-3, 2], Rational[31, 16]}, {-1.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[-6, 5], Rational[49, 25]}, {-1.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{-2.609475708248729, 0.1464466094067261}, 0.048815536468908856], CircleBox[{-2.3431457505076194, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-3.3905242917512695, 0.14644660940672627}, 0.048815536468908904], CircleBox[{-3.65685424949238, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-3., 1.2597170692372195}, 0.033176149576232994], CircleBox[{-2.9999999999999996, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[-10, 3], Rational[17, 9]}, {-3.3333333333333335`, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[-8, 3], Rational[17, 9]}, {-2.6666666666666665`, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{-2.999999999999999, 0.7402829307627801}, 0.03317614957623301], CircleBox[{-5.359245517965919, 0.05132078828084555}, 0.05132078828084555], CircleBox[{-5.477592250072518, 0.06822746429607383}, 0.06822746429607383], CircleBox[{-5.585786437626904, 0.042893218813452476}, 0.042893218813452476], CircleBox[{-5.02943725152286, 0.02943725152285947}, 0.02943725152285947], CircleBox[{-4.970562748477142, 0.02943725152285942}, 0.02943725152285942], CircleBox[{-4.522407749927484, 0.06822746429607394}, 0.06822746429607394], CircleBox[{-4.640754482034082, 0.05132078828084559}, 0.05132078828084559], CircleBox[{-4.414213562373096, 0.04289321881345251}, 0.04289321881345251], CircleBox[{-5.051320788280846, 1.4530818393219727}, 0.05132078828084554], CircleBox[{-4.948679211719155, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{-5, Rational[7, 4]}, {-5, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{-5., 0.6464466094067257}, 0.0606601717798213], CircleBox[{-5.000000000000001, 0.43933982822017803}, 0.14644660940672646], CircleBox[{-6.828427124746189, 0.17157287525381}, 0.17157287525381], CircleBox[{-7.171572875253809, 0.17157287525381}, 0.17157287525381], CircleBox[{-8, 1}], CircleBox[NCache[{Rational[7, 2], Rational[31, 16]}, {3.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[16, 5], Rational[49, 25]}, {3.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[5, 2], Rational[31, 16]}, {2.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[14, 5], Rational[49, 25]}, {2.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{5.390524291751271, 0.1464466094067261}, 0.048815536468908856], CircleBox[{5.6568542494923815, 0.02943725152285943}, 0.02943725152285943], CircleBox[{4.6094757082487305, 0.14644660940672627}, 0.048815536468908904], CircleBox[{4.343145750507619, 0.02943725152285943}, 0.02943725152285943], CircleBox[{5., 1.2597170692372195}, 0.033176149576232994], CircleBox[{5.000000000000001, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[14, 3], Rational[17, 9]}, {4.666666666666667, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[16, 3], Rational[17, 9]}, {5.333333333333333, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{5., 0.7402829307627801}, 0.03317614957623301], CircleBox[{6.640754482034081, 0.05132078828084555}, 0.05132078828084555], CircleBox[{6.522407749927481, 0.06822746429607383}, 0.06822746429607383], CircleBox[{6.414213562373094, 0.042893218813452476}, 0.042893218813452476], CircleBox[{6.97056274847714, 0.02943725152285947}, 0.02943725152285947], CircleBox[{7.029437251522859, 0.02943725152285942}, 0.02943725152285942], CircleBox[{7.477592250072518, 0.06822746429607394}, 0.06822746429607394], CircleBox[{7.359245517965918, 0.05132078828084559}, 0.05132078828084559], CircleBox[{7.585786437626904, 0.04289321881345251}, 0.04289321881345251], CircleBox[{6.9486792117191545, 1.4530818393219727}, 0.05132078828084554], CircleBox[{7.0513207882808455, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{7, Rational[7, 4]}, {7, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{7., 0.6464466094067257}, 0.0606601717798213], CircleBox[{7.000000000000001, 0.43933982822017803}, 0.14644660940672646], CircleBox[{10, 1}], CircleBox[{9.17157287525381, 0.17157287525381}, 0.17157287525381], CircleBox[{8.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[NCache[{Rational[-2, 5], Rational[49, 25]}, {-0.4, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-8, 5], Rational[49, 25]}, {-1.6, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-7, 2], Rational[31, 16]}, {-3.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[-16, 5], Rational[49, 25]}, {-3.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-5, 2], Rational[31, 16]}, {-2.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[-14, 5], Rational[49, 25]}, {-2.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{-5.390524291751271, 0.1464466094067261}, 0.048815536468908856], CircleBox[{-5.6568542494923815, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-4.6094757082487305, 0.14644660940672627}, 0.048815536468908904], CircleBox[{-4.343145750507619, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-5., 1.2597170692372195}, 0.033176149576232994], CircleBox[{-5.000000000000001, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[-14, 3], Rational[17, 9]}, {-4.666666666666667, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[-16, 3], Rational[17, 9]}, {-5.333333333333333, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{-5., 0.7402829307627801}, 0.03317614957623301], CircleBox[{-6.640754482034081, 0.05132078828084555}, 0.05132078828084555], CircleBox[{-6.522407749927481, 0.06822746429607383}, 0.06822746429607383], CircleBox[{-6.414213562373094, 0.042893218813452476}, 0.042893218813452476], CircleBox[{-6.97056274847714, 0.02943725152285947}, 0.02943725152285947], CircleBox[{-7.029437251522859, 0.02943725152285942}, 0.02943725152285942], CircleBox[{-7.477592250072518, 0.06822746429607394}, 0.06822746429607394], CircleBox[{-7.359245517965918, 0.05132078828084559}, 0.05132078828084559], CircleBox[{-7.585786437626904, 0.04289321881345251}, 0.04289321881345251], CircleBox[{-6.9486792117191545, 1.4530818393219727}, 0.05132078828084554], CircleBox[{-7.0513207882808455, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{-7, Rational[7, 4]}, {-7, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{-7., 0.6464466094067257}, 0.0606601717798213], CircleBox[{-7.000000000000001, 0.43933982822017803}, 0.14644660940672646], CircleBox[{-10, 1}], CircleBox[{-9.17157287525381, 0.17157287525381}, 0.17157287525381], CircleBox[{-8.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[NCache[{Rational[18, 5], Rational[49, 25]}, {3.6, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[12, 5], Rational[49, 25]}, {2.4, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[9, 2], Rational[31, 16]}, {4.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[24, 5], Rational[49, 25]}, {4.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[11, 2], Rational[31, 16]}, {5.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[26, 5], Rational[49, 25]}, {5.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{6.60947570824873, 0.1464466094067261}, 0.048815536468908856], CircleBox[{6.3431457505076185, 0.02943725152285943}, 0.02943725152285943], CircleBox[{7.39052429175127, 0.14644660940672627}, 0.048815536468908904], CircleBox[{7.656854249492381, 0.02943725152285943}, 0.02943725152285943], CircleBox[{7., 1.2597170692372195}, 0.033176149576232994], CircleBox[{7., 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[22, 3], Rational[17, 9]}, {7.333333333333333, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[20, 3], Rational[17, 9]}, {6.666666666666667, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{6.999999999999999, 0.7402829307627801}, 0.03317614957623301], CircleBox[{9.359245517965919, 0.05132078828084555}, 0.05132078828084555], CircleBox[{9.477592250072519, 0.06822746429607383}, 0.06822746429607383], CircleBox[{9.585786437626904, 0.042893218813452476}, 0.042893218813452476], CircleBox[{9.029437251522861, 0.02943725152285947}, 0.02943725152285947], CircleBox[{8.970562748477143, 0.02943725152285942}, 0.02943725152285942], CircleBox[{8.522407749927483, 0.06822746429607394}, 0.06822746429607394], CircleBox[{8.640754482034083, 0.05132078828084559}, 0.05132078828084559], CircleBox[{8.414213562373096, 0.04289321881345251}, 0.04289321881345251], CircleBox[{9.051320788280846, 1.4530818393219727}, 0.05132078828084554], CircleBox[{8.948679211719154, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{9, Rational[7, 4]}, {9, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{9.000000000000002, 0.6464466094067257}, 0.0606601717798213], CircleBox[{9., 0.43933982822017803}, 0.14644660940672646], CircleBox[{10.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[{11.17157287525381, 0.17157287525381}, 0.17157287525381], CircleBox[{12, 1}], CircleBox[NCache[{Rational[-18, 5], Rational[49, 25]}, {-3.6, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-12, 5], Rational[49, 25]}, {-2.4, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[-9, 2], Rational[31, 16]}, {-4.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[-24, 5], Rational[49, 25]}, {-4.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[ NCache[{Rational[-11, 2], Rational[31, 16]}, {-5.5, 1.9375}], NCache[ Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[-26, 5], Rational[49, 25]}, {-5.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{-6.60947570824873, 0.1464466094067261}, 0.048815536468908856], CircleBox[{-6.3431457505076185, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-7.39052429175127, 0.14644660940672627}, 0.048815536468908904], CircleBox[{-7.656854249492381, 0.02943725152285943}, 0.02943725152285943], CircleBox[{-7., 1.2597170692372195}, 0.033176149576232994], CircleBox[{-7., 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[-22, 3], Rational[17, 9]}, {-7.333333333333333, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[-20, 3], Rational[17, 9]}, {-6.666666666666667, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{-6.999999999999999, 0.7402829307627801}, 0.03317614957623301], CircleBox[{-9.359245517965919, 0.05132078828084555}, 0.05132078828084555], CircleBox[{-9.477592250072519, 0.06822746429607383}, 0.06822746429607383], CircleBox[{-9.585786437626904, 0.042893218813452476}, 0.042893218813452476], CircleBox[{-9.029437251522861, 0.02943725152285947}, 0.02943725152285947], CircleBox[{-8.970562748477143, 0.02943725152285942}, 0.02943725152285942], CircleBox[{-8.522407749927483, 0.06822746429607394}, 0.06822746429607394], CircleBox[{-8.640754482034083, 0.05132078828084559}, 0.05132078828084559], CircleBox[{-8.414213562373096, 0.04289321881345251}, 0.04289321881345251], CircleBox[{-9.051320788280846, 1.4530818393219727}, 0.05132078828084554], CircleBox[{-8.948679211719154, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{-9, Rational[7, 4]}, {-9, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{-9.000000000000002, 0.6464466094067257}, 0.0606601717798213], CircleBox[{-9., 0.43933982822017803}, 0.14644660940672646], CircleBox[{-10.82842712474619, 0.17157287525381}, 0.17157287525381], CircleBox[{-11.17157287525381, 0.17157287525381}, 0.17157287525381], CircleBox[{-12, 1}], CircleBox[NCache[{Rational[22, 5], Rational[49, 25]}, {4.4, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[28, 5], Rational[49, 25]}, {5.6, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[15, 2], Rational[31, 16]}, {7.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[36, 5], Rational[49, 25]}, {7.2, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[NCache[{Rational[13, 2], Rational[31, 16]}, {6.5, 1.9375}], NCache[Rational[1, 16], 0.0625]], CircleBox[NCache[{Rational[34, 5], Rational[49, 25]}, {6.8, 1.96}], NCache[Rational[1, 25], 0.04]], CircleBox[{9.390524291751271, 0.1464466094067261}, 0.048815536468908856], CircleBox[{9.656854249492381, 0.02943725152285943}, 0.02943725152285943], CircleBox[{8.60947570824873, 0.14644660940672627}, 0.048815536468908904], CircleBox[{8.34314575050762, 0.02943725152285943}, 0.02943725152285943], CircleBox[{8.999999999999998, 1.2597170692372195}, 0.033176149576232994], CircleBox[{9.000000000000002, 1.3535533905932746}, 0.060660171779821324], CircleBox[ NCache[{Rational[26, 3], Rational[17, 9]}, {8.666666666666666, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[ NCache[{Rational[28, 3], Rational[17, 9]}, {9.333333333333334, 1.8888888888888888`}], NCache[Rational[1, 9], 0.1111111111111111]], CircleBox[{8.999999999999998, 0.7402829307627801}, 0.03317614957623301], CircleBox[{10.640754482034081, 0.05132078828084555}, 0.05132078828084555], CircleBox[{10.522407749927481, 0.06822746429607383}, 0.06822746429607383], CircleBox[{10.414213562373094, 0.042893218813452476}, 0.042893218813452476], CircleBox[{10.970562748477139, 0.02943725152285947}, 0.02943725152285947], CircleBox[{11.02943725152286, 0.02943725152285942}, 0.02943725152285942], CircleBox[{11.477592250072517, 0.06822746429607394}, 0.06822746429607394], CircleBox[{11.359245517965917, 0.05132078828084559}, 0.05132078828084559], CircleBox[{11.585786437626904, 0.04289321881345251}, 0.04289321881345251], CircleBox[{10.948679211719154, 1.4530818393219727}, 0.05132078828084554], CircleBox[{11.051320788280846, 1.4530818393219727}, 0.05132078828084554], CircleBox[NCache[{11, Rational[7, 4]}, {11, 1.75}], NCache[ Rational[1, 4], 0.25]], CircleBox[{11., 0.6464466094067257}, 0.0606601717798213], CircleBox[{11.000000000000002, 0.43933982822017803}, 0.14644660940672646], CircleBox[{14, 1}], CircleBox[{13.171572875253812, 0.17157287525381}, 0.17157287525381], CircleBox[{12.828427124746192, 0.17157287525381}, 0.17157287525381]}, {RGBColor[1, 0, 0], CircleBox[{1.5857864376269055, 0.}, 0.4142135623730951], CircleBox[{1.0000000000000004, 0.}, 0.17157287525381], CircleBox[{0.4142135623730952, 0.}, 0.4142135623730952], CircleBox[{1, 2}], CircleBox[{1.0000000000000002, 0.5857864376269044}, 0.41421356237309515], TagBox[ConicHullRegionBox[{0, 0}, {{0, -1}}], "InfiniteLine"], TagBox[ConicHullRegionBox[{2, 0}, {{0, 1}}], "InfiniteLine"]}, {RGBColor[0, 0, 1], CircleBox[{2, 1}], CircleBox[{1.1715728752538104, 0.17157287525381}, 0.17157287525381], CircleBox[{0.8284271247461905, 0.17157287525381}, 0.17157287525381], CircleBox[{0, 1}], TagBox[ConicHullRegionBox[{0, 2}, {{-1, 0}}], "InfiniteLine"], TagBox[ConicHullRegionBox[{0, 0}, {{1, 0}}], "InfiniteLine"]}}, PlotRange->{{-2.000000000000001, 4.000000000000002}, {-1.2, 3.2}}, PlotRangeClipping->True]}, { TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"4", "1", "2", "1"}, {"8", RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], "1"}, {"4", RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], "1"}, {"0", "1", "0", "1"}, {"4", "0", "0", "1"}, {"0", "0", "0", RowBox[{"-", "1"}]}, { RowBox[{"4", " ", SqrtBox["2"]}], RowBox[{"1", "+", SqrtBox["2"]}], RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "0"}, { RowBox[{"4", " ", SqrtBox["2"]}], RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "0"}, {"0", RowBox[{"1", "+", SqrtBox["2"]}], "1", "0"}, {"4", "1", "1", "2"}, { RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"1", "+", SqrtBox["2"]}], RowBox[{"1", "+", SqrtBox["2"]}], SqrtBox["2"]}, {"0", "0", RowBox[{"-", "1"}], "0"}, {"4", "0", "1", "0"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]]}, { RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{ RowBox[{"-", "1"}], "+", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", SqrtBox["2"], RowBox[{ RowBox[{"-", "1"}], "-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", RowBox[{ RowBox[{"-", "3"}], "+", RowBox[{"6", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "4"}], "-", RowBox[{"6", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "6"}], " ", RowBox[{"(", RowBox[{ RowBox[{"-", "2"}], "+", SqrtBox["2"]}], ")"}]}], RowBox[{"4", "-", RowBox[{"6", " ", SqrtBox["2"]}]}]}, {"0", "0", RowBox[{ RowBox[{"-", "4"}], "+", RowBox[{"6", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "3"}], "-", RowBox[{"6", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "6"}], " ", RowBox[{"(", RowBox[{ RowBox[{"-", "2"}], "+", SqrtBox["2"]}], ")"}]}], RowBox[{"4", "-", RowBox[{"6", " ", SqrtBox["2"]}]}]}, {"0", "0", RowBox[{"2", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "2"}], " ", RowBox[{"(", RowBox[{"5", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], ")"}]}], "7", RowBox[{ RowBox[{"-", "2"}], "-", RowBox[{"4", " ", SqrtBox["2"]}]}]}, {"0", "0", "0", "0", "0", "1"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{"3", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], RowBox[{ RowBox[{"-", "4"}], "-", RowBox[{"3", " ", SqrtBox["2"]}]}], RowBox[{"6", "-", RowBox[{"3", " ", SqrtBox["2"]}]}], RowBox[{"4", "-", RowBox[{"3", " ", SqrtBox["2"]}]}]}, {"0", "0", SqrtBox["2"], RowBox[{ RowBox[{"-", "1"}], "-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", "1", "0", "0", "0"}, {"0", "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], RowBox[{ RowBox[{"-", "3"}], "-", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"4", "-", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"4", "-", RowBox[{"2", " ", SqrtBox["2"]}]}]}, {"0", "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"7", "+", RowBox[{"5", " ", SqrtBox["2"]}]}], ")"}]}], RowBox[{ RowBox[{"-", "2"}], " ", RowBox[{"(", RowBox[{"7", "+", RowBox[{"5", " ", SqrtBox["2"]}]}], ")"}]}], RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}]}, {"0", "0", "0", "0", "0", "1"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{"3", "-", SqrtBox["2"]}], RowBox[{"4", "+", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "2"}], "+", SqrtBox["2"]}], RowBox[{"4", "+", SqrtBox["2"]}]}, {"0", "0", RowBox[{"4", "-", SqrtBox["2"]}], RowBox[{"3", "+", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "2"}], "+", SqrtBox["2"]}], RowBox[{"4", "+", SqrtBox["2"]}]}, {"0", "0", "1", "0", "0", "0"}, {"0", "0", "0", "1", "0", "0"}, {"0", "0", "2", RowBox[{"6", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], RowBox[{"-", "1"}], RowBox[{"6", "+", RowBox[{"4", " ", SqrtBox["2"]}]}]}, {"0", "0", "0", "0", "0", "1"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{ RowBox[{"-", "1"}], "+", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", RowBox[{"3", " ", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "1"}], "-", RowBox[{"3", " ", SqrtBox["2"]}]}], RowBox[{"10", "+", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "8"}], "-", RowBox[{"7", " ", SqrtBox["2"]}]}]}, {"0", "0", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "2"}], " ", SqrtBox["2"]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"4", "+", SqrtBox["2"]}], ")"}]}], RowBox[{ RowBox[{"-", "8"}], "-", RowBox[{"6", " ", SqrtBox["2"]}]}]}, {"0", "0", "0", "1", "0", "0"}, {"0", "0", "0", "0", "1", "0"}, {"0", "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{ RowBox[{"-", "1"}], "+", SqrtBox["2"]}], ")"}]}], RowBox[{"2", "-", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"6", "-", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "1"}], "-", RowBox[{"2", " ", SqrtBox["2"]}]}]} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{ RowBox[{"-", "1"}], "+", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", SqrtBox["2"], RowBox[{ RowBox[{"-", "1"}], "-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", "1", "0", "0", "0"}, {"0", "0", "0", "1", "0", "0"}, {"0", "0", RowBox[{"2", "+", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "2"}], "-", SqrtBox["2"]}], RowBox[{"1", "+", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "4"}], "-", RowBox[{"3", " ", SqrtBox["2"]}]}]}, {"0", "0", SqrtBox["2"], RowBox[{"-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "1"}], "-", SqrtBox["2"]}]} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{"1", "-", SqrtBox["2"]}], RowBox[{"2", "+", SqrtBox["2"]}], SqrtBox["2"], RowBox[{"2", "+", SqrtBox["2"]}]}, {"0", "0", RowBox[{"-", SqrtBox["2"]}], RowBox[{"7", "+", RowBox[{"5", " ", SqrtBox["2"]}]}], RowBox[{"2", "+", SqrtBox["2"]}], RowBox[{"8", "+", RowBox[{"5", " ", SqrtBox["2"]}]}]}, {"0", "0", RowBox[{"-", "1"}], RowBox[{"6", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], "2", RowBox[{"6", "+", RowBox[{"4", " ", SqrtBox["2"]}]}]}, {"0", "0", "0", "1", "0", "0"}, {"0", "0", "0", "0", "1", "0"}, {"0", "0", "0", "0", "0", "1"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ {"0", "0", RowBox[{ RowBox[{"-", "1"}], "+", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}], RowBox[{"2", "-", SqrtBox["2"]}], RowBox[{"-", SqrtBox["2"]}]}, {"0", "0", RowBox[{"2", "+", SqrtBox["2"]}], RowBox[{ RowBox[{"-", "7"}], "-", RowBox[{"5", " ", SqrtBox["2"]}]}], RowBox[{"4", "+", RowBox[{"3", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "2"}], "-", SqrtBox["2"]}]}, {"0", "0", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{ RowBox[{"-", "8"}], "-", RowBox[{"6", " ", SqrtBox["2"]}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"4", "+", SqrtBox["2"]}], ")"}]}], RowBox[{ RowBox[{"-", "2"}], " ", SqrtBox["2"]}]}, {"0", "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{ RowBox[{"-", "1"}], "+", SqrtBox["2"]}], ")"}]}], RowBox[{ RowBox[{"-", "1"}], "-", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"6", "-", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"2", "-", RowBox[{"2", " ", SqrtBox["2"]}]}]}, {"0", "0", "0", "0", "1", "0"}, {"0", "0", "0", "0", "0", "1"} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]], ",", "\<\"nonintegral\"\>"}], "}"}]}], "}"}]}, { TagBox[ RowBox[{"(", "\[NoBreak]", GridBox[{ { RowBox[{"-", "1"}], "1", "3", "1", "1", "1", "0", RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"2", " ", SqrtBox["2"]}], "0", "0", "2", "0"}, {"1", RowBox[{"-", "1"}], "1", "3", RowBox[{"5", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], "1", "0", "0", RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}]}, {"3", "1", RowBox[{"-", "1"}], "1", RowBox[{"5", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], "1", RowBox[{"2", " ", SqrtBox["2"]}], "0", "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}]}, {"1", "3", "1", RowBox[{"-", "1"}], "1", "1", RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"2", " ", SqrtBox["2"]}], "0", "0", "0", "0", "2"}, {"1", RowBox[{"5", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], RowBox[{"5", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], "1", RowBox[{"-", "1"}], "1", RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], RowBox[{"6", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], "0", RowBox[{"2", "+", SqrtBox["2"]}], "0", "0"}, {"1", "1", "1", "1", "1", RowBox[{"-", "1"}], "0", "0", "0", "2", SqrtBox["2"], "0", "0"}, {"0", "0", RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], "0", RowBox[{"-", "1"}], "1", "3", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "1", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "1"}, { RowBox[{"2", " ", SqrtBox["2"]}], "0", "0", RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"6", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], "0", "1", RowBox[{"-", "1"}], "1", RowBox[{"3", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], "1", RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}]}, { RowBox[{"2", " ", SqrtBox["2"]}], RowBox[{"2", " ", SqrtBox["2"]}], "0", "0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], "0", "3", "1", RowBox[{"-", "1"}], RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "1", "1", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}]}, {"0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], "0", "0", "2", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"3", "+", RowBox[{"4", " ", SqrtBox["2"]}]}], RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"-", "1"}], "1", "1", "1"}, {"0", "0", "0", "0", RowBox[{"2", "+", SqrtBox["2"]}], SqrtBox["2"], "1", "1", "1", "1", RowBox[{"-", "1"}], RowBox[{"1", "+", SqrtBox["2"]}], RowBox[{"1", "+", SqrtBox["2"]}]}, {"2", RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], "0", "0", "0", RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "1", "1", RowBox[{"1", "+", SqrtBox["2"]}], RowBox[{"-", "1"}], "1"}, {"0", RowBox[{"2", " ", RowBox[{"(", RowBox[{"1", "+", SqrtBox["2"]}], ")"}]}], RowBox[{"2", " ", RowBox[{"(", RowBox[{"2", "+", SqrtBox["2"]}], ")"}]}], "2", "0", "0", "1", RowBox[{"3", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], RowBox[{"1", "+", RowBox[{"2", " ", SqrtBox["2"]}]}], "1", RowBox[{"1", "+", SqrtBox["2"]}], "1", RowBox[{"-", "1"}]} }, GridBoxAlignment->{ "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, "RowsIndexed" -> {}}, GridBoxSpacings->{"Columns" -> { Offset[0.27999999999999997`], { Offset[0.7]}, Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> { Offset[0.2], { Offset[0.4]}, Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}], Function[BoxForm`e$, MatrixForm[BoxForm`e$]]]} }, DefaultBaseStyle->"Column", GridBoxAlignment->{"Columns" -> {{Left}}}, GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], "Column"]], "Output", CellChangeTimes->{3.7389283309884477`*^9, 3.7391139682904253`*^9, 3.7391172028902397`*^9}, CellLabel-> "Out[494]=",ExpressionUUID->"fb258c68-e1f8-48f6-8a3a-23a024ca84c2"] }, Open ]] }, WindowSize->{1060, 661}, WindowMargins->{{Automatic, -1}, {Automatic, 37}}, Magnification:>1.05 Inherited, FrontEndVersion->"11.3 for Microsoft Windows (64-bit) (March 6, 2018)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[558, 20, 665, 18, 54, "Input",ExpressionUUID->"748eabe5-c3d2-4801-b8b7-aa7a789097c7"], Cell[1226, 40, 696, 18, 52, "Input",ExpressionUUID->"0ab29ce4-3405-44f4-bf4a-16ef730ff686"], Cell[1925, 60, 9876, 235, 785, "Input",ExpressionUUID->"72e544ec-21b3-4511-8714-78e40bf96f8f"], Cell[11804, 297, 35697, 782, 2451, "Input",ExpressionUUID->"34558bf5-30de-4efd-a85d-1e42927d2f41"], Cell[47504, 1081, 13767, 317, 921, "Input",ExpressionUUID->"1669407f-19e4-41f4-83d2-404c097a4b8c"], Cell[61274, 1400, 1573, 43, 97, "Input",ExpressionUUID->"0ca661cb-0814-4baa-8045-ccb6be11fd34"], Cell[62850, 1445, 16049, 333, 955, "Input",ExpressionUUID->"8eb99bd7-ecdf-447b-9254-91418df0046a"], Cell[78902, 1780, 13583, 313, 948, "Input",ExpressionUUID->"df3b60f9-0301-4a00-901e-3f42ad1f6dcc"], Cell[92488, 2095, 3769, 87, 383, "Input",ExpressionUUID->"94e58c8f-e9bc-4bc5-9f72-1e7d65b723b4"], Cell[96260, 2184, 397, 13, 82, "Input",ExpressionUUID->"e0269727-13f8-41e1-9bed-e3d214f9ade5"], Cell[96660, 2199, 682, 20, 58, "Input",ExpressionUUID->"335fc47c-61a3-4d42-b8dc-1a6e429b3dbb"], Cell[97345, 2221, 4976, 131, 450, "Input",ExpressionUUID->"8f83b82e-c1db-40d9-ac4c-a723737f7704"], Cell[102324, 2354, 1032, 29, 30, "Input",ExpressionUUID->"d37cc6ff-e0b5-488e-9c86-c606b2039282"], Cell[103359, 2385, 1960, 44, 141, "Input",ExpressionUUID->"9a3eb7b4-a69e-4770-9009-32f6122d8145"], Cell[105322, 2431, 5279, 132, 207, "Input",ExpressionUUID->"affbea28-f93e-449d-873a-65b52e624ef9"], Cell[110604, 2565, 1182, 31, 53, "Input",ExpressionUUID->"15495297-a588-42f2-9830-ff3a5a9d76a4"], Cell[111789, 2598, 934, 25, 53, "Input",ExpressionUUID->"cd35cdcc-79cb-420e-8b24-2c510cf42e01"], Cell[112726, 2625, 5117, 135, 559, "Input",ExpressionUUID->"dc2313cd-3560-424b-adb2-9515cebaa972"], Cell[117846, 2762, 7614, 153, 416, "Input",ExpressionUUID->"b49300f9-4eb0-4e74-b00e-238ad2cc61d5"], Cell[125463, 2917, 3749, 87, 295, "Input",ExpressionUUID->"b43a5c15-ff8f-4841-a157-1d63bba9b7c4"], Cell[CellGroupData[{ Cell[129237, 3008, 1418, 30, 30, "Input",ExpressionUUID->"8c0d00eb-3a38-4d87-9e21-66e5a04e235e"], Cell[130658, 3040, 56635, 1363, 1980, "Output",ExpressionUUID->"fb258c68-e1f8-48f6-8a3a-23a024ca84c2"] }, Open ]] } ] *)