5
$\begingroup$

I've imported a 2D element mesh from another program as a list of triangle coordinates {{x1,y1},{x2,y2}....} ("nodes") and element connections {{n1,n2,n3},...} ("elements"). Then I create an ElementMesh as follows:

mesh = ToElementMesh["Coordinates" -> nodes, "MeshElements" -> {TriangleElement[elements]}, "BoundaryMarkerFunction" -> boundaryMarkerFunction]; 

I was hoping this would automatically assign ElementMarkers to each boundary edge, using the boundaryMarkerFunction specified in the documentation for ToBoundaryMesh:

boundaryMarkerFunction = Compile[{{boundaryElementCoords, _Real, 3}, {pointMarkres, _Integer, 2}}, Range[Length[boundaryElementCoords]]]; 

However, no boundary edges actually get ElementMarkers assigned to them: mesh showing no unique elementMarkers

How can I assign ElementMarkers to these boundary edges? (Even a randomized assignment would be okay, as long as each edge gets a unique marker). I just need a way to reference particular boundary edges for a NeumannValue condition.

Any help would be greatly appreciated. Thanks!

Edit: Here is what I get from running

Show[ mesh["Wireframe"], mesh["Wireframe"["MeshElement" -> "BoundaryElements", "MeshElementMarkerStyle" -> Red]]]:

after trying the suggestions from @user21 : enter image description here

$\endgroup$
2
  • 2
    $\begingroup$ What application created this mesh? $\endgroup$ Commented Apr 16, 2020 at 6:23
  • $\begingroup$ @user21 A MATLAB package for electrical impedance tomography (eidors3d.sourceforge.net). Thanks for your help! $\endgroup$ Commented Apr 16, 2020 at 16:16

1 Answer 1

2
$\begingroup$

I downloaded your $nodes$ and $elements$ from your GitHub link and created mesh that subsequently Compress. Now, we have your mesh that we can expand with Uncompress. Now, I modified version of @user21's work flow to your problem and verify that it works.

Needs["NDSolve`FEM`"] (* place nodes and elements from GitHub link into Element Mesh *) mesh = ToElementMesh["Coordinates" -> nodes, "MeshElements" -> {TriangleElement[elements]}]; (* Compress it so others may copy it without going the link *) Compress[mesh]; (* Copy output string from Compress *) mesh = Uncompress[ "1:eJyNnWV4VFcTgJFQJAQCxYsEd1gXbHB3dyvBXYpb0eJWoLgEt0KCBhgkBILEiBN3\ ojgU/VJy52zuMnu/8oN9NvPuHLlHZ+acW3nklJ6j8+bKlWuGfdZ/\ bSY6T3KePLOL84yxznmyvkPWf/9+Bn/7918m5pL+dX/e0Jjp+RS/9W79c5EpGXDszY7ds+\ Oew7CBs+yq+\ sTCCen70OzvWFviH2bzWDpx39BPbnfx6ELY3WtfJh5z2DhmyecLOPu9fujU55m4ot3O8pP\ aLYaB9nP972SlOzcuSX+0+\ yWo79lppl90JhZbMaXJpPtP8HKhh7lMlTKxYN8Fvxu63cFR93y37xiYjgsn//X67rTzaB9\ Z/E3QlXRcl39lr2uj5kHXZR3ODsN0rPFx7S/l7S+\ CWXXjQ8z2dJxaZu3HPk734MaRuMZHN2ZiWtvwK/5x3tAEmr6JcsjErgHDz0/\ 9NQAi3UPGq/tkYOc1Ho3C7kbjq+Rxu2+0SEW/\ X0ucuFs2Ah06REfVXZKGg9cN9HNbHoJN6/\ jE5t6Yjrnijk9o0cUfuzY6kHepNg2PRcw6uXTjI+yS/+nUq4FpGPLkos8vvW+hQ4/\ xjn9XSsXLATfbtXc6iZd3LSz2un8qBromvipY4wD0aGpYc7xPKu5N/\ lb17Ii7kFmoSYmC9dJxx80z88r7PIZOf+RrXetxGu72TLZr+8IfNoVd2FSyWhoefNxjbw+\ 7YFjQvHNvv+qp2OnUu/JlyoTCL6rGU/NNTcfRa3vcv7s4Ag5q+\ 5xPdk7DtqVvLIx5GovDPxfbZxf9HE/euNWs1MdIvLS7+1pNrec40qhZs+JzGE4fks/\ kNjQFFy5/m9LhYhBeX9Z8UrGOqdi81TqP8vt88aLDTDvvrN9Pr5Oc1771A+\ xx8c6s1v1T8HDume5/qi/jnPTC2OZbMj7o/XGyJmE41Ox9pXBkg6z0GtXp+\ Tb0KiSeHZLv8PkU7Gfcn3HyrScs6OnxvOb6FFzfbVCJazt8QfV0YEbuvCk4Jl8Xr1ZnA+\ B911ItmiYm4+\ Z6RRqdaPkMit3a7nbcmIKO5grBY4pFQZmihspeH5Mxyvv3vaGR0WA41rm0ozoVo7eWqPfh\ dCKWmzLZr+m2RPQZc/f17cfxuG5Uy/\ DxPZJx69SG9waNi8G0Xn0vfwpLwlLjSr3bMiIcE8pW76Z6nYjG0xt72+\ 0Pwap957zYVDEZm4dF9H04NQA7lZu6ouHzZPSodGWdbtBjXNXeu4yjSxK6Fs1ffdbBO1i/\ YZkiVX2TcNCCCpPGdjyC5TftelvHnISLzzTsPbDd3zBq6aSlb1XJOLuqe+3DXe9AWJ/\ YKfc1yZgxauL5J+seQ+69J5slxyXh7yc8roVU8IePV+Y/m3A9EaG0asV07xAoVH54zS7/\ JOGwMmfcl80Nh51Djg9pfCER67dK+NBnYgzsP+L0al1WeZps/s07T3IsbK/\ n9bSn33O80D7BK/pJPEStNc+b1T0ZX3/YUfTNmGR8s7pgRKcL8Vh8+vKHy/\ Mm4JqW35qWeRuPh2e9XDKlTRx+HttkYdv5idhu9PqiZ4pEo/HLCbu+\ ZxPwSEzZfAOuhmKRK0eWvnGPx4AV0KdhiSB08Ly6u2FYAg7J9XVzPnc/\ TL1V2Ovs0kS0n7BluXa1J9YM+HKgVe8EdOr099j7LS7jnV2hy1z2J+\ BBCLv9YsE6uF++6ZajUQn4z/HwvhnhVyBx98vS+\ 7wScPLwYzMe17oPexPer17mkYAdWy3Y80uYNzTdnbdd0K54nBLX7GxY2SCoGhLp/\ OhSAt5x67Ni6P1QGNHj3e7ji+JxS+4VZb6po2HA68+tnLYk4KO8g2efaBEH+\ ndLzsWNy3reUffazvsSD8X9N+UpnxmP5Z8k+MfuSYS+54yDB7gk4rZ1pT54/\ vMcJw0fubzd37GYT71o9MKjiTjpL7fTLk3i0P91jeJXXOLw4DTzwY2RsTh2c4BucnAMjr7\ x0yDToHjMnyvP7Z4jI3BfsZEPFy6JwyW5nyxsXzgY3d0cMq8vjsWdezJ/\ G971KR7ufb9i751xWK1oifkfVj/\ Bfsfc26xrEI97E6fdO9frFp54Njh9UKs4DDt37VpCvsOYN3z9378+icPj/\ zw++3eFE7Cqj8OoHovjsLc2qn/fpNvwxLvL2vrr43B8twX3u27zgrURGc53R8Vip6dHbo/\ o/xRqrc9fePyUOKz728dN2ysHQ//5p1o26xSLv01M+f33GxHg/+\ 2n282HxmGBqPyxlfPEQkTJEa1W5YrHpe2q9isZFgfvB9jfGLI2FsfP/\ VxwwrpEOFGrf1tT0zicuCn26tT+yVA6M3/dPzzicVSpnc4vhmf1S/\ RtcGlTNF6L7hDwpnQyDnN6frlE7xjc2ezAuMyeCZiZxzFe9zoaq9q1CSjUNRbhn8k3xoRH\ 41uXN05Vp0RjAb/DF8pXjsVJroN/DbgThg73HX7yaB2DI3YW2NJ/\ WAB22bquy7c20bh8xLkXUfN8cfmL5fWmDo/B7eODDh5qfB/XbP/l8de0GJwZ97ZXw+\ pu2Ebv+Mfy8TH4VzmVU6vIiRDR0f9M434xmDqiyoBzL69AqW/\ DRmaMisGM2iNGGM0e8Lbf7EqvtNHYe86kwsaNvnA+T0SLck1isN4/\ R3p6TQ4A7wJ9r5yrFI3DGv3lUrbsM3CoGnJ6kD4G12z2GNjsdDTUOnbU7t2tGGzjkL+\ 8elssVJm8pnLizGgMyJ2yqdiuBKi4YnKpfLujMbNny1u1nZKhSt7lBe9PjMHkvu/\ XXhiSCkeWH1nruD0aP7Qf0+v63jT87WOqwyOXcHT6+Nw9ZNxzPLfngvP9K5HoMHFS/\ KqgRFz9tNLW5rsicFP3BtG/ZMShKtC5x7rjEdji3R7H12Vi8J6zKjqtVwSu+\ bXtxD29InF3mRuldiyJwqLlMqa4NgvBfm+\ XXJxQIxJbuo97dOeEH3puDbzTsGY49r429nSZ7o9wWIeHLwYujsSr7QLOPQi5hSFbxxZYM\ yUKxzRYsCG4rQvubhWX/LBEJD5p69svoOopqDR25izj5khc/\ Hh8Obs8N8D3RFz70tXC8XyDygFPjI9hgMk7arlTJNZt9/7wtEL+MHFKLu9p959h9yalh/\ YaGwJ1k47syF8sEg+svJWr+rpIWF9hU9t2jaJwy/Y3X/\ voY2D9zr1DRt0NxzEDNtVcYoyHhht6lz5jF4GbF7bVB1RJgsifCrfcaB+B9T/XmNh2+\ nNob+/y7afQSFxZfPesQcfT4Pe29Yeo54Wj74aYmVfOpOPruo4TlmQE4x33Qws3HE7B3HY\ fBi7ZE4aTH/QbtbNzMhbX++1+\ rQnFCz5PPsybkoDjx6y697RFKPrsKFZgj1ssOg261XP22xD0fzTLf2TBaDzkXnVgX98Q3L\ ffbfwZ32fY+dVk30ePwnDrsOF1Yt0CMaZYSok5L0Ix/U/NspRB3tjstxF281KC8VDhuo/\ 737uHuVyjS9/sHIbtu0w8uNftEr6Nf/LPsBlhmKTbMy5u9HI4v2uN9nKtMGw0IP+\ wRRVcYdqa+\ 6qqMcG4fEIPdYU4T5jZLdqh1qdQvFxxy5DVu71h0aeSjz4vCcY8k07D7EJB0Hdds8qDN4e\ idtHD1a8/PYP1/VtFm2+\ EoWpyvf6FvaKgWf5xs18PD8E9ueo4vouKheDiwXPsMAQXz767f6F7Aph+\ 3jAftoZgifaldaYFydCj9/SHI2+HYJe36qiOR1Pg7/R6kx/tCsO8+/\ u4O99Ih6gI9xM1DwTju6Zpu9ouy8D9N3xS3Ns/xTMuayJOT03F4a/\ qPlmmCcJgfcrGlvAcP8ypq9/xRwC2zDPHuPN8ItapGKd59zgAce280ys+\ xOGa5c2WJM0IwLi2qZ83T41Buwtv332Ie4qdj2XYB06KwOQl3ROL7w3Aw2lTA3ffzcrn3G\ FetcoFYVJT9XjnAk+xi9PLk1NnBeKdhIgVV088wHkRLb41aBCAnT8Vibz29SaW+\ mtat4A1gfi0cesj7x4dwp7thl4KyBOEI+4k9hud5xB0mpwZH+r1FP+\ 8Ps01V8JtqDw1pXWjPYF4u/zEmel+XhCba8yE1yWe4qufdzQI7Zg1/\ j5uXPJSh0BsXrfwyjmDQ+He5Y4ub4sEYacy1ZYW7xQBO1uElLGLeooVLj6+\ NX5JDMQutsvoNyEAHbwcXD37x0O3lVX+7qkKwBUORzRLCydBaoXiPqn3n+\ KGhY06npnxHA72HqoO6xeAZZZ2+3ZpayrkX3wqpJ1dEOb9+e7q5bsz4KGT95Odp/2xqmf/\ KM9amfjrvS9lHlZ/gp/ST9ntapuGo1OPT+221g+\ NrgkDdfYpeCOk6o3uZXyxc8BKXeyuJKxS4FO+Ts19MH36ydUtOybgqh7j24WV9MWZe5/\ kXXIrFj8NG9XkdWtvbHvKp5L5fhQu+XIz8+JIH3S1L/aoTPUwnNn6W7P6G31x/\ PUeRaYPCcR9tzvGxxbyw3P3V51a/dgHL4y4/U/5RF/\ EzQ90jpU8MOZjzb47s35fQ7U0xK23G35xDuplfueL1xs/y7craQbOX/ZXfK+\ XPjj59vO4VuWuwp3gAdPudvTDw0Xm71tywAM+bI8J3F/AG41xXeu5x/\ hCZLFCpetc9UXVjtM96q4NghmuU5pdn5w1zhXd/mn14TCYUyp404t0b+\ xa8OqO7ZWi4WXlfhMK2/vg1neTfKq5xsL7PDW2T7jig3fafW61t0cCpNZe/\ 237Im98Un5Yc/s9SXArr3rbgN+\ f4PLU0lfbv38OE68kfut6zwf3XV1b0fvXNNiyzP38qK5+\ qHtwulu1VpnQbtqD0it7PcL7JQ95/HYgE5sX/7OL98K7+\ HF5fpeemWkY8b57Rt5aXrgPDlYP3pqC5R66lvo24j6WmbVCV84/a93X++se+MsT+\ 03b++vBN/Ho9NcU50lJntiq+\ IGL9bLmudLTftJ3WeyJh8p5djEcDMfTxSqlrXS5j3N8QiMdOgbjz83U+0/\ MuI8ty37tdLyxP35aFV29bp8H6JnrytmXlR7imfiHgc2d7+\ OS9SmfVH9fR92k2fYlYjxxy8aGXWoPOogNw3pN3erniaptFar8EnAaXl7THn7Y0wuL5Bqw\ /NKgW1AxbEWC8cg9xPhPjhX2PYbjFedM9NI/\ wNSMRd2HJT6FTlX679ka8QAbvo1pFbk1BBYmDo9taPTEv0vnv3ipZSQY/\ Fab8lXyxB6w9ffqhWLhWZ/OJ084euLt63UK9HKPB88Sd5rvG+CJjxYtHpLyOgm8bnTMH+\ PngXmj6lbzXpsCZS+Mejw62BMTmzmonr1MgzMz+h/1GuSFx0p0rTDrYibMSwr+\ NLXRbRw96ok+\ MClrn1pryLLOR13xnlPD0NNt09F9turikC03cOaZghMWFE7FYoGFZrYf4451HiV/cT+\ djJffdCqY+\ ukaPnwysHORUokYXzO4QV3763jgy5Lf11eKww4vftuw2O0WpuxcdODXnVFYPy6k/\ KPgm9htmT5+ZL4wvJAU1ieg+HVMGVByeOCeAMxMvRrdOModVbWzdmStfHBs726xpR644/\ bixT50WuSBI1IWFvS/5I5NNrXODO/riiVjVu+8GHwVx+/\ c19swcwUsuTT0208lbuDHmK0TNdsuws/9F62vn3ENh+/\ te6f2FU94EVvT3L3cdZyy6NHUget94cix97c9w2/\ gwks1j60cFwhjwyqd9KjpjhEZl057FHoGqr6qK790vIYd2p0tVmhwNDRd9xKGPL2GnR3vz\ DLWioORbYcf/7n8VfRtmnfBMt8EGHdyfvyxP2/ggHND80w7lgyDTv18efCiS9h/xuEX7T+\ mwEwf17aL61zHuvMqNoqclA5zPoyqqHqIWC+9wrqUN5nwZWv99Iz9J3Hakk4rcX46Oq+\ K6NrI/iC6F9/7okDlVLzQKcXjwIYDGPQ5X5ln25Jx8Um7zqrrB3HFjAahMyolYsfxs+\ Z2jTqEn9I6e9e8FIf5/\ q797VaN09h64OmlxZrHYFfXV6kz557DYsEbXkzJFYG38td5UaHbUbz18uvijxOCMWPapy7\ tch/CMzVOnajb3h93HO3ZtKjDXuxd03Xo40YPscau8B0FLh7A1Ap3X7VIuIldEgrs/\ ppnHz5/ss6py+ODeHNHUOErEw9gx241dT4NjkHZzYnnXq/fg5vqz3/paLoFX7/\ 1hIPpB7FjYubOP8IfwoKvQ8JPJR7EU//8Mze8qz8E9Nz1efuZA1njVcMyJV2DYV/\ DAaOcnQ/gzS8+5waaImC6l2uRHqsOYMu+j6tXbB4DHc+GvRtwej/\ eX31repOPcXAg8VuuJn67cWbSoTZ7OifC54WFV277dAxfV+x7fuvg55C/\ XuMCB89txNPvPH46szoVQhe2Wqi5eggnr3ZzqXs9HXJPTlva4tlxfJ/\ 3lzcfkjPxq2ty0XENXOHTp82HQyak45m9G3Z3Hncc/o6ILx9QLBVrd3Vt+nKzC+\ R53uP6znXJWKrFjU5/FT0E5z0q74wNTcBaA4b1fVh/D+Q5OSTmhCYOG1bUFrXLuwW+\ ftqTVGhNNPrP/bRwY+dNsG/\ 1zptTRz3Dat2WDXtWaB9M1q36MKVWEPZconr2avRRgLt35rrt9sWTYx3sp+w7Bo/\ 3Lyr0sLgnem5Ojaw+5Ag4F5uVMq/XJay6u+\ eIVP9jUD0wOax9u8moHxD3fMOro5C387nTK9a5QdmhA6Z9GXsCLv11Zde5yR5QKl/J3x/\ Oc4HVR0q+b3TZG+yeVu13N+0YOO7Y/eDVgQBonRR8tLbLESh+dLPn+CJhcKna2Y9jih+\ BiC5po0IbRUFI/S2/\ 65YehagdUMeoj4VZR65uWvD7UWj8qfGuMtHxMDA1Yva210fhuNOH0AcdksCn8raye5f9Cd\ tLjuyYMiAVWs2q2+74+uOQuT384xWPdAhstjGPavh+\ mFtpQuGYT5kw4ssF31dNDsDYSzMPDTqSiffrfxlf+MsdeN4kdMdPddLx8V3XJq+\ r3YIXhZaOH30mBVfVKRA0ptF1uPQi9n3fssm499yZZPfR1yDZbcDRNX8kYN70SZ+cn1+\ GE0OOx7z5HIsTF58zVfh6CU6oRzTy2hqNqdeq21XIfQnCzh3zm9oqHB/VH3E5d8IVaLH/\ z0yXScHYuu/oCwscboKqTYd/0rb6Y26HjW/mV0GYm1ajboXSD/HQgZili7bfgIAi4/\ sWLnALu+WdpJ0yHOFJUb+\ DUyoexuMNitivC78JPYMznIrdcYEVpfN7tA9GUJmNzd5eugVDr55PLLYUwXX8vp+\ 2FXsI7fe2aeCuQvg4e/\ iMhZv8YfunEYPKnL0JvRdcSaj0Ihg8Sid929r1BqT2rl8ptyYCJntUKHzuwk1YkKpdMrxa\ DJQZNeUy+t8EN49xX13vxMGqDqaOCcabkJY/\ b1Pcngjr51e8s3uAO3SOdzqYWv45TCi7rMXeAm5Qp3DG4Brd0qH/tIFHFrS4Dg4+\ Q8dGPcyEO163Z5/55QZMGqmrVr5hJvq1zQzef+Ux9LnuvXF73nS8FTw2pN+Qh6A+E9/\ 9zZQUbHwtyTU6yRMC37p8a/U+CRcHVC8ZCp6wbJtfYolFCfj+yPgyu594QNm/\ 39yNzxOHQR9m/jr4hAc86Jw+IGlGNH6NHzLPfN0D/J32xnY9/gw/VjJ1/BTsCRVq/ja1/\ owgHNQmptHqDl6wofOkejDCF1ulBfjHf7wPHys9mbbW1ROvnq386JqzF4x/\ dOV8saNumMfe6chR/QPoXKxTjamq2rixduO7ib8+hLF/\ mFosd70ELSN8Z6ZUfAALuz7Kf6aLJ8w51PxwUvJDeGS3ocrKZz5Q6t2VinFTHgBstVNFxA\ TCwy1L9hVu/AAuDC67enSbZ+B/+\ e77Lb89gLJNp5fqOTQaNDtqlKjW1wvcqrzokZgUC4MLOq4o4f8Aqt4+9pv2cAIkOF+\ pWaP8fXgwJPT6jDHJELlal1zqHw/YX7rdOXVwCnw541PhRuBtOFJl6GW3semwT6M/\ EzXsAeR32Ho59+hMyHxWr8Y51wfw7fSSY5XWZeC8+V33jnB8Cj/d/\ KtBYMNUdDzU6cDQjr6wYeLZuRljkvHagb3bNl32gffGivdrH01At5EZjh+03uBqDB7/\ ulgcuv5uf2vR709gc3P/\ rtN3RePYEqWcdQW94eGGt18vzgzHfUvaF9yVyxf676rgWqZuCNb9kDG3wwI/iIi+\ Prv8cH88f7jqk4V6X8i7pWNUy8uP8MN4Y438UX5Q56x7fa9gxIbNG4+\ r1dgXfnF0cVFdOIEHanxNiH/kB6W2p64pO+kkbAw7GFL9Zz/\ Ys77F8axlIAQV3VxqptEPVux527Ld/cdwcvKHwsEaf+jbSjdofpA/VOvzy+\ mkLH3FTlaqNft6CDSK8rr7IWude27buO0F60TC1c6NXb0L+sHEk/\ Ga8z4xsGb29PYdLvmB5z8VIht3iAejpsXAand8oVXSpml9fRPh9uBBHSod94HhpcoH9tA+\ h99HeL09HfMEog8afZwGp8Lpfp3Pb7/8CJb92f2u+50MmBF6b+qSw34wP7PAkPe/\ pmGdmIuN7mWt65r8o3ccMuc5vm17a0z0nACYMfzJ4FwuidipcEHviPincHv1rJAJz+Nw+\ 6Bmc96ueQo/f/av82ZADLYMM25vcvIptKr2cvj7wpGYu/\ OL1LVHAuDWvjunKlYKwzY9H00ftTMIjhetNqqjPgB3HJ6+0XAqAJxig+YOK+uLZ7r+\ nRR6Kgj2dVGN2rDhLqZXb3N2rHsAnMjTZ/\ fs6Zfw5Jl7fWquCYIF9W8sXrduJZS8nf9EfrcAOFhOnf9Pu8sweFifSje+\ BMHJPsXyD3jlAeo7dqv2OARCszd5Uj8W9YPdGavSH10Ogjr458/\ JRQLhZPefPJ9uCACXfOXblMz/DI6tyDdm/\ elA8O5kP1vlFA0Vqx348OpNICQdLPPO9XosRPfd4Vc0MAgyfLf9FXknHlwvXF7/\ pW4g5Pdq72ZumARlx051rDckALpu2m2feuU5dJ7dMrDL3qewrfHPb8p0SYMi6yb1XNbOH4\ 5MNrwvuj4dvU2nCpXYEAKVFvZfH5+\ WgpeeRta3PxUCHzvXWR5UIhmH2BVsN2NPCMxybDpuV/\ 8EzF1jz4u4jiEwcMTE8VfcYvGnkEYnbncLgX7tFg4qbIxGnwJFM1s7hoI2/uph/\ 6z9wvXTBc3Y7BnM2Nc+LrJVEL5t4tQhb6NQKP5RP6X0aH+s/6TxLyXGPQP7ux+Prav2AE+\ kepZMfhkCvxQZ/zm45C3s4hd2/VHrZ+\ BzIvjoYIcDOGDHBDfUh0LjUytaVIw9CNvy5RqTtjAM3K5N2tTG/za0Kn3v4utuz+\ BwWIlxNUs+BPvQId7LX4WA77NFhe4ufQp9A5e/OmF8Bo063Nw9fFEwOP0843x6/lAYc/\ GVXePfIqBor8zQhH1hsH1obzO2jgG3QwumlTFn8XZ/VeiZFgcNzvfQNbrzDJY/\ 3lyvYUgCRNUuUmTqrlCY8I/\ P8CHLkmF70Qu5Zt0MgddJG1of7ZgK1zp1b15nTzAUGtljIMSkQ6GYZq0mJQdBd/+\ eeR0npWGBqQ67a46KgOB5i2OOXHqO7593c7rWJAJMbp65Ur4lYrHl4TWHfwyHL8nHar3tE\ Y+O6T4Hc78Ph/\ blA56suhmDmsHx9u5TIiDAZ8egZ2Oi8G9n77MHNkbBtfEuj2IxBEvfOHzCYVUEDHtXuPHx\ woEY5fhgVf8vUfBk9NGe+74+\ xohzQ6897RcBcduPb75f7h42WeK8pNTJKCiwdv7mi6vP4oaG3YZ9vRAB1T4e8Slimgwl71\ XIVf5VFDQoXHnFq1FucNovebFddAQkO97NvKy9D41H1b39D0bBIVOc1/\ hr3lDi48fTeQwR8G798/IZDwMh1aP+1zcnoiD/+Fa/1QgJBbfIBnaqwxGQ+\ rh41JP4KHDb69/r1O0omPlg/8NVh2Nhb/r5zBNlo0GV+\ HXIt2EJ0GnluIpra0fDwOJTHX41JYGbS/\ OBI7LyV7thSP0pxVMAIjZGtfgzHIaOnPs6r0cafL5fs+\ qDguGwusuthufLp2L3o5WKLPsWDUkVcF/8qGQc3WbzvFGZ0WA/\ 2yt3zYis9Y3ru2ItvKMh4a7fw67N49C/\ 5vTXSz5Gw9gq665nvI3G8nVvf5waHAOV44uanRc9w72D9mhXPY+\ GG55LvSb6BOOk8r6FBtWJhc1QvUFSXj/87B72rdmLaHhR6+bo5lUfYoH8+\ je5c8eC47n95xfWu4bn5zSqHZSVflCHxp/3HHXBfg33tJnmFAtnK404NbbQSTj/\ ckCPI46x4Lf7qvvxCzfgcp2QBx8zosFndqfhruUew76mlb7El40F31Nj8g0IzRqXO814Gx\ EUDW+8TzRsVjEEtnj/VnhGyVioX3ePw8MK4ZBWNDHypH0MjFva7nTNWjHgOC1p+\ qXGsdC16B9p7gXi4WahAvvfjoyFcu02fKoYmQhHIjdUnD84Fmo6jEsNOZEMmlwF49aci4b\ 4KhO7u0xOhYIjj3f4NDcrP0ELqrXd+hwrn5x3eH/jOLgz9lHDKW8ScUcHlxq/\ zogDl3Hdt83yjMcLRXu1+\ tQ5DnzHdf7pfr9YbNLOv4PuWRxMef0pV2bNSBz66UiunRXjoOPrC4/\ 9VoWhx7VJnsP6x8OQ4uc03YOeovu49n2vqeIgONG5cHIeXxy5t9ues5p4eJXeOqVXhTtof\ jPqryMV4qCG/9XFrvfd8I+FSaNfdI0HaNJuYdMz8yBXv8MNZ/aKBxzhPE+\ 79DKcr37IdYM5HtJdql5psP8uJL880mt64ThYW8hhVe9+vlC6UKmGnj3joXD+\ P2I2mQOgeY/Inw9UiYNFnx65Hx4VBkXy3u0TOy0ecqfXUB/qHAlO5Qe+\ bd49DibHzboBw2LhRqmFnuP6xEOet9rxuScnwKutThH5VsfDzwMPZZaangzLziwu0PNoVv\ pFepc/fTUJXeLe5jLOTYA5xz/btxkQjz/1/D3o9N8J0Pjv2V+WbYvGx71/m/\ xVl5C1fqr6OPzXCGywVj/20cJECN1wauDna0E4zeAxrvHsBGhwMML9Qbg/XoyqE+mdJe+\ fqJ4M7+/j/\ psh33ZoE8C1deVdA3vcwmOL2s1dOykRXnjVmlG1jQumvLyZ5L8tEbaP6D1y2bVjMPDg/\ ENDXBKh4xrfl1U33oKHnxFLDkiEQa/KTem35wF4ntkTatc6Af4uGvyxQ4A/\ DM21KnfHlYmwslHMIf2+IEiHBWdqzkyASnu3PqqfHA5zmv05sNTZRAjR+HU5Mzoaelfp+/\ fKPxIg5qx5kWF9HNgfu14O+yfCrFGn+zp7JsKb3Cvsds5LhLvRPjjAMRGH/\ OXQY0T9JJgeU3RQ5dqxWNcQfvhu5SSId8rtOKtENOo8/hq+\ ZnMyePwZGwNjQvFr2709m55JgkedXhco3SkQ+6Uk5/7lTjI0WDbu/YR+\ T3B1VGW7zCFJ0OBC8yH5f72HszN3N9r6ezK8mvXz6J2DL+K+\ yhdf9vZNhqi9R4vtcO0C9bps7/VTajL4VDm8aGD+SzDq3rEx+VKSIWCI/\ tCN9vegw5vCY9fMSgbnIrvr/3bzCbjYB7nVX5oElS5d6ljl50AY/+\ 1uQcfwZHCZ1n5E7i9Z/XPh+\ sXHvZLg122PC4cMj4KqLWYVbvgpGRatnO9QziUGwD69zHvPJBjz0/qzEz/\ Hw4xniyr0rpUMY91KjSihjccEH58CR/ySwT934ICb3WLR+5ifa/\ 1mKbAj43I156BneHDg7IRbvs9hVoker3F+MM5RJ/fP9TEF/jh8+\ UO5z774a2IdfJe1TqhdYVx5Fw8vdNh32FRiRwpgrfeVNF1u4eSvCebe5VLh9rXuDY5/\ OoalAuwq+LVKhe7RvUtVszsEbRY53nBqmQpjrve063zwJpxSl7p3KIu/FrDc+\ 8ogLyhcuEoX3J0C05bNvfvwvS90bvBlYL5Hz7Pad72MIX2CoYC5YCGneqkwqaNns8vOz2D\ IHNP4Xo4p4KYKrzwuVwx8rGVOcyqfCpnDTnXq6xAHmszNbk8vPod/\ Fl9o79QrGpuedOwZuCIV2p3eGL1qQzjOWlD6ZqfDadB88+ZKv3/\ 1x0rRGcf6fkmF2uevVJvf9DH28DmTr9ntNGjhtXGF1/47uGtXmUEFR6dD3Xaf/\ 9nc8QIWHzusXLET6bC1Vd3xySsmgP2RDX8Nu5QOO9OMU+\ 80d4NSH++t8jyaDvNLrmjodPMuHNrduWruAelQdIV+yWn7J2A4WFq1MTQNGsx1rrU30x+\ KzV88rJFdGhT2irJ37BQKDV/Xdv/FOR38t9wdXfBu1rydVPdL395p0HtV+E8j2oVg9O0t+\ Y/tToczzbokr7T3Ro8Hhxc6/ZIJHwqoL0d+vos/l2q7YOnuTFg47p3vFKMrRtc+\ ZYhLztrH6B83O5gxC2Y51HkV8y0TEvOO94q4fRGc89eoPzg2E853+GvKHO09+Pw0/\ HXIhkxYt8np5aiDPnB8ft4ZL3JnQvzB0se7Hw2AY9c7FI/ukAGjc/8bEWSX9V/\ ncTNmZn8rmvVf7+njRkweM9FZihMaXd8uJ5Y35486/PtNrdFmf6q0Hf5VomMYrU6d/\ anWS58GK+rfCCSN6fuH2vj9Q6viEHNO8geE8vGv0KTJ/tCyeVZJn9n5UuvUDKVX6bI/\ JUqv4nRZpBKtNXGU3pz9acxOWW8wK6aoUdClM6m+17RW+\ o2GYTRGrfSZrVFj5jRpVdm50WoM0qeeo7SSVEtPj6t3rVotp3nKoJLr0lq3hOzy66VPqT5\ URra2sutUZ87WqWPrVGcwSrVmVtClM5iyP3UGJV0iJZNiiiY5beIorV6qAb1Oqgm2vrT0h\ MzSE2P7F+kgiu08BsP3D112/9JxDUKjzi6+\ RuqwGh2XKY3UjS00S2nNcpqnpIeoUWVXmtrEFZCkgtay3dqUnZLaIHVrLVfxQko0myJJKU\ UblNRA/x0EbQ5+huzOrDUZpU+uyQsp0QauhFo1dWcVDajMg9aqs5+\ wzvZAKsmk8VRprNVppSGXHWvV8nFUwz1indQQdFLF6/hRTWomgmYprdkkfUrVZWSbi1ka/\ cya74+FG91FT9cZFfqyXk+jujR6aPg5QCOn+\ DlA6NAo6NKZaLyikYgbk0kqdLHjgk5qxIJmKb2edEmjro6bUcQMpjdJFK/\ LJKf5WjWY5LSNujdZ0ewsoNPKS2Ej9wYrWlGXxvhfykg0T4mUFHMv9aB/5/\ Ts72zuNSoZbYMiKdFqdnbSUnuXZid2BhaUWiv1N7ZnS1JB87r0ZnmKJi73Qkr0D7osax6d\ Sa2kiaSkiaeElGh+raWWpcvWgt5olSuWEukYFdLT66X+bJDaq5br/\ WJ1p5OmQ34UJKlepUSRlGh2DWiR6hQordQCaV2pMbJTHa06idZwlCXXeoXcW1LSK6RoWQV\ LpWBXwyS1rIr5utfLddmYgcwyOksnN39KCyi11PbVWm6MUEstVS2trH+kvs/\ h2fsdg43V3fc/mnMiWutekUNGS0VrLf92hWxCnT2zcvs4SWT8/j+\ XD312VvXZyxS2hYv9gbT84ncTWctAqa1Iy0N2jNVItavR0+\ KRfa5S7Qqap4SUaG5toZX6ulZPSz5uBBJl00qrdxW74hFSotn1gE4jfUojFbtq0OtohqB9\ Jkvp9XLawM+\ VkpRmVp4S865aKUVaeahoZuXnN5MVze7kxD7PpESZVTKK36PpDLQGoxGe3zsaSKpQ95Yno\ 7yuM8lStLVbNcppPl8mqgGDAkVtwULz6xSDnNKwo7E0L2mlsZtfnQtrg15pnNXq1VYUP5e\ QHYHmFHY0NqnktA1KLaM07DxukRLNzzhmq5TZFInSK6VIKWmkvmRjlCMdRPG6hFStQIn2p\ aP9A9s7SGpQ7EOCov0Wu1MRUqIVrTQaGu3Y9SbpIMrAruyEDr1CvrQ0f1Mr1LPjPVG0O+\ XbvegVeiVKJc0ZWo1C+1JLrVCtyt7I89aJLOi7kFhutjZJTLaeHwYl2e/\ 1fFo5rEqSNlaNtKiQEB23iKHMGJQyLFNjYHufOrsOhRnrB3vzd/\ VkJZBoNbsL1ahNcsrM7dpFikSzFmW1OfuZqnUGxRSNcpql1NIMZjHG8QYqsnBTymy+\ SCpo1rxGlEGrpEtIiWZHPmnnqDaZlXIvSS1lZXXRWkzahfJrMotU818otYbyyeZeI6fZfa\ 8wIaql3KvY50gmRGkcUrNWITL4aczCk8KNHdQWBMWOj7SnN9Coxc5zUt0TpWNrQivZ9Cx2\ fXaWFhSZQllKeBCMSrpISjqVUxQ0t9uRXE0aaUvDOqWMMpLbzhCit62FZLrveyLrZvB9OD\ TIbLZsz5L2pRarK+//Ugs62w/\ GpZZt1NVpbJdKkknkD8aK7zJ1TpJHNDmrSKn6KD3rkmerzv7I3r8auZmD8mnm85JdIxpRQ\ 2zNSN3PCmaHQpWGnIy2IWHvllq9jvVFCqmwjrPeImk01eqo73LrIyElWs2uotTSil9Y3Hl\ Lu9RzzAal1YqQahUonU4lLytbRiEVNGtrl1LSS/\ OMnk1RWHA1StZqnZnsqWSh5FewRhltyzdI3khpjcrbvkxS3dMqj28TQko0u4LVqmW0DYqk\ RLN+Rh3tAqms7MpaK+1XtEZpnavn18wSRR5Ofh9FUkHzz5H8G+\ QRZtsESVUGBcriBSFdvJVBTtnYNQup4t46a7/\ y74AvleGHfVtOmcEGQ9IcLG9pUVn5CFjrv15aW+q1SvZlISVr9P+hyNOh6LuQZmIb+\ dJa5csGZZDTevY5SzsnnVSnOj1raRH9QaNE0chAlI2eqJHrtEFJFiDhAeA9Lxormqe0Vvl\ idxJkrScrOW/RpnWFNIKpjRxFUosu3udgktM8ZdTIaI2RXfOSVHg5eMosp/\ kUNWQ7UawJozTuSn2I9yaopTFSbZRWWkZ2HSb5HEStsj4HS53rlOpemvMsOlldQodE6/\ n1Ie03pCfF1oQoG1FGdrFEUqoRXhdJhS52dUspmvUKtaqRdkkaDT1Hfp9tlNeEjfrSWtFs\ GaVRRC1Z8tRGdhdHlNS31eycJyip96q17K6XdAhaKSRGbaKdNL+DlqQi6EWZUhGtRAl/\ FOutIh1Es5SwQ0rjlw2bJkmFn0eRoiAhPjhI2sKZDbY3EdJiVk0GGN5spDXJC8pTpINonh\ KRShJlI2JJZZUy+3hESoq6BEVlZLuGnnRQs+b2rFptTrci609Um3KSPJK9lVKrbTsUs/\ dratX/IzSSKi6cSWvIifAuVENO9+\ QPa57vzcaQc0P6QyP63vykRbtw2LGLAeFIlGjNDzX8/bdkVtErOf9omyAoA7/\ gNstpduthSUmnmKJerotPkSgyxvBmHyHVK+rSySh+\ iWWRmhUoiyNYqnve1UtOZa3SE7JIlQYfS9yiTokiKRkM+\ XwJKS3u2O2otI3RmsjkprTRtNA8ZZDTfKgqObulmrDh9Kb2RRQ7uYlcC118WzXJddowsND\ Wlgwt7ELfoJXTJqWwO0HZ0KWT06wu4RKXzB28S1VsRwXFboBJKjbAfEiaSp4yu+URFIU+\ KqdIwQL89l247BWD84RUq0SJ4DwqI+/ONsoptneQ1BIGoESJIAHeUC71Co204LEx3ktSy+\ ygSImAFnbMoTlD0OzcYSTTHLkwWdeltMUXNEvpJMeQxSjIu1Sl7a9wrfJuUDpOQH2cNWWK\ 8Hgamfgxh6RqJUqE4xiUUtSq5Snzo5wIOFArUVrrFPkQB4OVLnbEJKkIXuDdIhormqeojd\ JGlw850sp1siEhlhS1irWqs0pZMUUxovNtwmSVP3ZjRA4+\ k1KIFkmF04kPMCOHmpacwLwD0mRF8ysFo5z+\ wSUl16X9LykKdyW75THTlpq2deyGzUxOctLFO8tJFzlG2bWvVAMWnbwulRXFmg1oH6Oj3Q\ +/N9LKKd4pTW1BTZtTNkWKO5DmbzVr1LVQtGnmt9S0PScHt5IjmWgbz1Hkx6SYL5OVTv5p\ U1ugUvC6zHKKnfnESlTqQ7bWqxoZxefLIjX8h7oXKdrotZQfg2K+\ 1PL88U58csvrpGfAroaElOrLRgCFTq6Tr3uhQ6dIkfmOdPL2BZM8RXZdaMmPSSlFEY5i+\ i8p0nihOOZYaHYspL4jtX8Nv/5S6+Q031YpnEFLAcXsjoLOrBHNj77UCunMlpqfYYxymh/\ vaQw0kC42oEmSCppdIYt6MuiVasIgZilJlyJFOnm3NIWQSG3W1jERaT0ojovwYSm0UzUTz\ VFSYLg4vsEf26AUiWafkOWoiV4pX0KHRoGyhMvoqGbY+\ qLVkFL7EpTQqdRWLSnyFAXTSGsnthUKXUTZCPbRWOniUzRZ5c+a+\ m6HM8iCP7ioDwoaMUghNLa1qHW2EbU256EE7kCDmThb5xVIvfb/\ Ru9IoY1cgKQUmWI2KpifySRrg8kpNCuabzUUl0JxfbaCWOQ0u3QiqZi8FKc2jWKK4pyoRk\ mXyopifTw6io0gw40Ngw1RZPxRjMEhmjckmbQyir8PwCL9LxSd0ORPZmrVNKXReVb+\ dgVpANDRYMxHEFG8hUqRovN+\ FLHHbsRIaqaBnR3sKF5GrVPQJaSC5nVpZSnayD2VjWieIqmg+\ SgWKqNekVJZ0Xz8E9WTNOGw7Z5iqYjKSpltq1LLkYx4OnYpIGKoiOLbvZDqFCi9ZKDXS15\ 7Peu/FVJB87pUVhSvSyWneUqcMSaKW3yIODGpj+vZiw+\ EVESVKdYE0TwlLXP0UsvWs9GcOslbT5SOfdpCaiSKvS9DZ5bn3kYZKV5HKgV/\ ksxI0W5SW2VjICz5MSrkS8TCEcXrElK9Yop6K5rtaRTHpqFTHbyhkk6IGBQp0iWN++wZTi\ EVEXRs7skkSjRPSREJOiPFJLEpmqnlUDtjzeWiXSm1L4suoVOBEvnjdQkp0ezIpKLRl5w2\ bBmNdBpNRa2RXcAbZLSNGC6SUsu2QRnlNJuiyI+RThnyNwepZZSNE+EkFefHFU+\ XC5pvOWarmuApk1Xu2RGTIgnVSjVBfZsoPWsQtOhQrFXSIaL/\ lHRZ8qcYIyjyxbcccmVKbZXfRoooO6LYFQxJxdaU16WX0+\ yWVC25YURMHhsPppHGQHEPgI3z7ERpiGYpg4zWsqttjYai6+\ jEIqtLSHVKlNGa4t3vkqmDIvdYd584jU80f/\ 5fSIlmTR4iRlCtQKklB6PlBB5rBtPQETYd0UoURcaxuwCRotDJ6tJTNKKUIp97ISWaPfBH\ CRkVi2iWU/x1bBTOJ00KNoIlSWoW4X3sAyK/ATUJPvhPb0XxKRpllI3gPyFV/\ xdKhC6yXYg2cZLNk9/\ MaXQWytbVRRYNWpuMWvIDqvVapadjNMgp3uZAUnrirC6NinRQmCfrBZMoy4DCpmik+\ 740CvkSugTFDoPUrSXKxkBCUpE/viakJ0yhmXwwKNUA0f8nZFSifogJ+\ m4EUuWMSfuhYeWUSSSHGMw5kR/Oaee4+cNEF4Bww4Ix5wFc9uStmq5Lo+Zn445Gs5SR7K+\ sF0eoUNmivhdXlTPAkC08VYxC/UgyifzBapAzBZUU88ghupwxjz+\ sO3IgkrIfjHffbZoqmTIFLURyQzhdrqKzjVBQps52vWi0sgBMLnxTQvQ623GVUsylRLIIB\ XBKl82xCalzBmnyJTLkJJW0aLJjSVmbskqWHGtTFohNJZqcSviWKx2b1Nru2RSQKlUxVx5\ JRrXC1a30aPQ2qj+7r9G4RnM5uxARFI1v/\ BhpktO8X5Wk0sbTBkVStaIuktJ1SjbKaLDSxdrgrRK04QCk+zqkFSwbsmqhFG9EpdBQCn/\ lXdoi5Evci6SUIgUXK4a+\ WGieojAaETKkQFkCitj1t7htROlOC0uKtP7mTw6Y5DRPiXA7otiwI3FvB1lcecogp9g9GU\ kt9iDW0SZ0UEitkk1J6GQpS4pqhdxbpGaFfFmCkmj5yTuYqVaNipROTvPhUEJqUqDUBvIU\ UdgKf/GrQU7zlNAhUcop0q0n/4eicBX+\ 5BPlhwIs2GGVpBTeo0zpFH1nQgfp5HNvsNLJhx3p5TR/jzG57bX/JRhC0CxlcT8TxV+Ca+\ WG5k8YGciuIY0mysEQgmYpEaRBFx7z7Z6Ck0xKFEmFLra+dNYp8rk3yEvBUpbACgqmZ5+\ jkNKNGWzdU0gC0TYoydpHwZVsMJeFIu8Y2yYovEFHfks+\ sMIgp9hategwKOkiim6rV9YlLVFs3MgiUiSKiw0waHJGEbDxEoRIEQbc9sygy0kqaTFIF3\ fwtkVah5DvmfdMS89f+\ J75nmqS6dLyAeEkVQuzhmKK0tzIB6CSf1ikzLY8kZJGKUXymOsokJ6dhYVUrURRGTUqpZo\ QUr0CJZ4Q0ayFW+SLKNZYZkmR+g/bium0Ld32oaiL8qdhfYKixRjE82T7M93zrf4vlNDJ+\ /s1ctoGpbZKmV+/\ Sas7tUGBIqnwwvP3ndD9K0TzIXYixoKiA9gnJFqfVFbWQ2eRGpQocacLHQ1hfYIUy6ChSA\ M+ssZgRfFeW5Wc5nURRcdMbOhSy2itmfXZCKnhP1CWiAy2RZvpOVLLYfNF9SUo1gtJ/\ jIRKcJHd6jlNH9giuIipL6tZ/d5ejUdLKOjWrzvjXxudI8rG2EgdNHtpbznUC2n+\ cNXWhGvIX1ncy8oM9FsvnRyWlmXRP+fWAuhiz8eRxEZUso2Imu0coq/y0hI9f+\ FEvljU9RTZA21Cf4GYDrcR/EubE1QfoROVhfliyh29yxSIur/5F6nQIlbWCT/\ oo0bj0hqVIxNETpIp2LsANH8wUoawUXMDN9WiVLyq5MOC83mnuIQKDaFtzYIiqJi+\ Bg2ijCg0Ze1Nggp0ez4RfEtRPFxLiI6x6yUIkmJ5nVRvowqxdyr5PWlHBckdLFPiKQU16h\ MUf7MfKwYSTVKlJnGL5UCZZESzVOUolKMEUkttctTGitdfO61cpp1oloonWK+\ dFb5Yylq7yqKzeL7EN2wpFWktDJay7r8KObJQvE3tlGKakVKbZV75RuNyPLKHwKW9lT0/\ ij+XjdBmYhmy2iS07wujTXFr6Np/Uy1y6+jiaKxmp8VdHKab4WS1HLBBX/YQy/\ XxeaLLCkWnfyxF7UVxbunddInBUjw932Z5DRL0U1GRNly1OvlFH+\ fuMiXVlGX1ipfvKOeDr0rOupJKuKDFCmhk49EMlrpZCmSEq0cYyRo/jghHZ6je7/\ 4e7VIqlWiRPSQmXQr6SLaRsCFVk7z0UNCl1GJooAgDUU18eFD5ERUK+\ kiKdF8ixYpGf8LpVEOa7LKPR8rpqZb3ahF8/ZZsvUq2dKElGjeLid06JV0kZRo/\ hY1ERlIcXH8OyTVcppdY4oUBc2/\ D0FtRfO3u5G1m0Y53jZukJdRub6IVk5R1ATnqjdJZ7fowi+\ OEUK1DYikEvz9QyFcxawQq2OWaWFDB8yyiBb+\ xj26hY4OjPNOf1Egovjb1TTyArJ5yo5AMEvxSpyBmhBpzuFvhadwND2dD+PDqzRymh+\ PBaX+L7ooXI6/pVGMZBoFSkOn24Qu5XA0tSKlklH8rZaWmGI1/UohX5Z4W6XcW4Lp+\ Fol36lym1HLKRthYBormj8zSDOAUoiiJaDVpEhZZpPseDduSLBosslIsWIGk+2QMUlGb+\ 1SQCgwjwtakRC9QviadAxWo1OI5NLJYr44xCiLWfphZZ8T0dnu5BIijWJ8TKM2J8mPcBoZ\ YiMhGpzYQSmnkDLFFducXRgK72XPGUv3SpqzHXT8+V5JpnQDpZ6UZadkK9xJlh3+\ xgAK1aBwGd4RppFRvMPdItUo6BIpiRASPnSK8qN0D4O4y0HoZI9U0+\ Hx7G9cMCXd12jkkewuLM20Nt4KkENG7lMuM4RI7+\ PhmiO9klxtGzHK3nTwgxskByIdJGcv5jSpcrp52VdfmEShpTqwXSTSxvrDpLt9Ld5G3ldu\ kNPsesQi1ShQOjXtqslzw3uniCIPiaIucZaWj58wWNE8RVejUewW7wUyWdH8rfeSDZ+\ 8LTZO+KnlNO+TEW9AkKz1Nt5WS7Z8sxJFKRHNpyikRPN+FIkiLxV7iZ0l1+SvULTla+\ hCD57SyCneE6Ely6LiWTSixFla1l8hdNHt9oq+D6Jt3LZP9lq9UopCqvtP+\ dJTWRV1kf2WpwwymqfoCj6dZAGycepTkoozojZORJK1WaKVT6MSzVNCF509ZnstUdSC+\ AhQ8T5bOknHv7FQI6d4i6zGym7L9jRB0bsS+\ RQFRRcuKqYoLLO8TcAky5eG35fQ8R064cdbBYkSVjje+\ qaz0slfBUunio0KubdciUnX3rKxOqRDXInJ6zJapczHDlNKaoUULZZ+o4IuNcVFq2g/\ x19iRxRFgPJ2NaOMtkWZ5BQf8C900J6VfxuaRq6THe8FJVJkLcXixnep5bCXSlryY1TIF0\ npvnpburRymr+YVejSKFFashTTeVP+\ fcRqeVnZE92CojKyV4hapGrFmqCLwejdCnwZDXKKbYWi1xJlo4wqOc2nSJSoN+\ X6UimVUdhYpRR52yHZH4nirbskpUhJZUqkzF8EabbKF/+\ uE3qvJY2cinZbonlK2FqFLZijpHsrBG3jyK1BTts4Q66R0Wo25sqSIpWV3wNryV6Y/\ ZXbkgkh2R1tKPr+KU4rKZ58UttKL/\ uvGiudPGUxu9rOltQjxCFIZdsY0Twl7KUSZeOQr05O8+8gFDpM/\ 0kXHYDlXzKhsyoFexbdJDOUsZMGGeGEDZDXI2MV7GgmBYSyQwdY2eyYZWq43NBZSJNtQ5p\ kjpOQH+5T+\ y4zyxDWRiLTwlvJhDkp29alYLkiA5ZtLZKlhUVIJpFsDLsqp41Dyf5hIBsHg0hv0ZSQHya\ VHDLptZEsIsXaE8kG7qtlCNt+JXeO2XZ26R1QdOfHD/NIDgX0FiLehi/u8KBdA7/\ Sl6Rkb1GkLN4/3rpA0YYi1pTdb6rkNG/PIIruNeKjNIVUpaBL7PH1FAHE7/60VjS7+\ 6O9odDFRwrSflOnRNF7A+mVGjbexmiW0zxFUpF7viZMcpqn6HJ5cZE+TxmsaCVdlr0+\ a3sTuaf8sXVPFgEN7aP4yHCTFcVHhhvkFB8pKOK8jPQrVhdFjWqVdImUyMrA594oLwX/\ hEiH0MnuSkWcl4jVUtzF09leVhdFgwlKMZJLpMjGQlEEEN36xesSFK1v2f0ArQylU7IaPu\ 5FvIFQ6R1wlrcGEsXHVWmsUuRXrlbvk+NTJB1iNcy+\ zliauqR7Zdm7GQw5SXYBTA4SlW0tkowcJOzMrsu52OARfU5SSYvk4Fdy/\ hPJehd1siULi5hlywQbE24OkkWknxvp1l6utQrfh9QD2H2WZbals0q8PZnmT6PSPEpScVs\ lO0OSrVzQLCXuw6QUeVu+\ SU7xc7KQqmxQORqQRmH5J8moUSog5Mhm75bWy9JjF9fSC9m1tjsPdUG9bUSvz7m4/\ uH4Vs4uobeN0CZAb7tn6GX9i+880r3Q0jaHvVqGWjN5EDk1Vi/dYO+\ X1tJ7Zek2AzZWREu3GIiVJK9LK+8f/L0JQpeOaHb9a5bRtlLUWVF8HDP1W7qxgT8jarKi+\ Nzr5BSbeyHVq5RSJKlOse6FVKdAqdWygZCtB2LMNCDaYL5/0gVt/\ EtYSJOAOUg0PLMNVbJWTpBqdO6cUPY3++/fJju3meg8yXnyzNHdZEieH9NWZd+\ npmNkWnI3Z+Unzw/5kS5lz1qm/yij96BmrVx/VKuXTivqeamWzuRZJ/r9r+\ KWZLOV9N9CSLukrJXdj1nSSesCE/M7ySajsa6E7PJlf3C50Ul3I+u01lqz+\ 5hGuqqOKQe9aE5rXQ7pr1QXnNRA5+xYqbQa1musH0x2TqWVtIGTas10qsDIllaSmqzrV/\ pr9jNgS0tzt4F7MtJUYq31+4tPv/\ 9vnZvvf5NeXcDVD70pXc82eClahXvYJsmIYv3D7D9K7YhTaqDQaK74aroFUc1lV62ji0ms\ m8L3Xia97cE61e9/\ lKZp60rN8YIHriBa6SYE659lP0V6JSTXarX0whYd1wK0OrqHgG09WooC4YYaPd0MbmTbj3\ QxJNdCqGVxaeol+0RW+2PHIVq5sb/\ VUitiH6mRRn22OWjonlSurDnfHM48Hel9vtZN5fsf6W3AXFEt76TkMqSjtsYNVDnew8NIp\ ceqYas451twfnw4JuntIdwwRS+W4Ko35+sTuMZiuZSfk9J19uxDN9Il/\ NwAmPPG1h9LQy4m6xxnP6/sD7YPS4tybqYUl/L9mJzUu7l85rxuh+\ uIdK0DO9yKG1eYMS57b2DgVwNkFOXr1XJQm+vAlqPXnJR+y0lzHDvhcixiD7mWS+Ou+\ X8aDOxA"]; (* Display Uncompressed Mesh *) mesh["Wireframe"]; (* Line Markers and Point Markers to 1 *) bcEle = {LineElement[ElementIncidents[mesh["BoundaryElements"]][[1]], ElementMarkers[mesh["BoundaryElements"]][[1]] /. {0 -> 1}]}; pEle = {PointElement[ElementIncidents[mesh["PointElements"]][[1]], Flatten[ElementMarkers[mesh["PointElements"]]] /. {0 -> 1}]}; mesh = ToElementMesh["Coordinates" -> mesh["Coordinates"], "MeshElements" -> mesh["MeshElements"], "BoundaryElements" -> bcEle, "PointElements" -> pEle] (* Bob's Display *) Show[mesh["Wireframe"], mesh["Wireframe"["MeshElement" -> "BoundaryElements", "MeshElementMarkerStyle" -> Red]]] 

New work flow

It looks like a modified @user21's workflow works for your mesh.

$\endgroup$
5
  • $\begingroup$ thank you for taking the time to walk through this. As I mentioned, user21's answer works fine for displaying the "bmesh" ElementMarkers alongside the "mesh" wireframe. But if you change your last line to display the marked boundary elements of the "mesh" itself, you will get the scrambled picture I posted. For applying boundary conditions, I need to have these markers correctly set in the actual ElementMesh, not a boundary mesh (please correct me if I am mistaken). Perhaps I am missing something $\endgroup$ Commented Apr 16, 2020 at 23:37
  • 1
    $\begingroup$ @bob800 I think that I may have fixed the issue using you Show command. Let me know if it works for you. $\endgroup$ Commented Apr 17, 2020 at 1:09
  • $\begingroup$ that did the trick, thank you very much! $\endgroup$ Commented Apr 17, 2020 at 2:28
  • $\begingroup$ @bob800 You are welcome! I believe the mesher under the hood may reorder coordinates and renumber the incidents from the user supplied and that is how they got garbled. $\endgroup$ Commented Apr 17, 2020 at 2:44
  • $\begingroup$ Thanks Tim, stupid mistake in my side. $\endgroup$ Commented Apr 17, 2020 at 4:40

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.