|
|
@@ -0,0 +1,478 @@
|
|
|
+import matplotlib
|
|
|
+matplotlib.use('module://ipympl.backend_nbagg')
|
|
|
+# Allow oldsymbol{} etc in title, labels, etc
|
|
|
+matplotlib.rc('text', usetex=True)
|
|
|
+#matplotlib.rcParams['text.latex.preamble'] = '\usepackage{amsmath}'
|
|
|
+import matplotlib.pyplot as mpl
|
|
|
+import matplotlib.transforms as transforms
|
|
|
+
|
|
|
+mpl.ion() # for interactive drawing
|
|
|
+fig = mpl.figure()
|
|
|
+
|
|
|
+ax = fig.gca()
|
|
|
+xmin, xmax, ymin, ymax = -2.0, 15.0, -3.0, 12.0
|
|
|
+ax.set_xlim(xmin, xmax)
|
|
|
+ax.set_ylim(ymin, ymax)
|
|
|
+ax.set_aspect('equal')
|
|
|
+mpl.axis('off') # do not show axes with tickmarks
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+mpl.delaxes() # erase
|
|
|
+
|
|
|
+ax = fig.gca()
|
|
|
+xmin, xmax, ymin, ymax = -2.0, 15.0, -3.0, 12.0
|
|
|
+ax.set_xlim(xmin, xmax)
|
|
|
+ax.set_ylim(ymin, ymax)
|
|
|
+ax.set_aspect('equal')
|
|
|
+mpl.axis('off') # do not show axes with tickmarks
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# rectangle
|
|
|
+x = [3.133974596215561,
|
|
|
+ 4.866025403784439,
|
|
|
+ 5.366025403784439,
|
|
|
+ 3.633974596215561,
|
|
|
+ 3.133974596215561]
|
|
|
+y = [4.54145188432738,
|
|
|
+ 3.5414518843273797,
|
|
|
+ 4.407477288111818,
|
|
|
+ 5.407477288111818,
|
|
|
+ 4.54145188432738]
|
|
|
+[line] = ax.fill(x, y, 'b', edgecolor='k', linewidth=2, hatch='')
|
|
|
+
|
|
|
+# Shadow effect for last ax.plot
|
|
|
+dx, dy = 3/72., -3/72.
|
|
|
+offset = matplotlib.transforms.ScaledTranslation(dx, dy, fig.dpi_scale_trans)
|
|
|
+shadow_transform = ax.transData + offset
|
|
|
+self.ax.plot(x, y, linewidth=2, color='gray',
|
|
|
+ transform=shadow_transform,
|
|
|
+ zorder=0.5*line.get_zorder())
|
|
|
+
|
|
|
+# line
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='solid')
|
|
|
+mpl.arrow(x=3, y=2.3094, dx=1, dy=1.73205,
|
|
|
+ facecolor='k', edgecolor='k',
|
|
|
+ linestyle='solid',
|
|
|
+ linewidth=2, head_width=0.1,
|
|
|
+ length_includes_head=True,
|
|
|
+ shape='full')
|
|
|
+ax.text(2.75917, 1.89227, '$N$',
|
|
|
+ horizontalalignment='center', fontsize=14)
|
|
|
+ax.text(4.25, 4.47446, '$c$',
|
|
|
+ horizontalalignment='center', fontsize=14)
|
|
|
+
|
|
|
+# wall
|
|
|
+x = [1.0, 11.0, 11.0, 1.0]
|
|
|
+y = [5.773502691896257, 0.0, -0.25, 5.523502691896257]
|
|
|
+[line] = ax.fill(x, y, 'white', edgecolor='k', linewidth=2, hatch='/')
|
|
|
+
|
|
|
+# line
|
|
|
+x = [4.0, 6.0]
|
|
|
+y = [4.04145188432738, 7.505553499465135]
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='dotted')
|
|
|
+
|
|
|
+# line
|
|
|
+x = [6.0, 9.464101615137755]
|
|
|
+y = [7.505553499465135, 5.505553499465135]
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='solid')
|
|
|
+
|
|
|
+# line
|
|
|
+x = [9.294101615137754, 9.464101615137755]
|
|
|
+y = [5.800002136751845, 5.505553499465135]
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='solid')
|
|
|
+
|
|
|
+# line
|
|
|
+x = [9.124101615137755, 9.464101615137755]
|
|
|
+y = [5.505553499465135, 5.505553499465135]
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='solid')
|
|
|
+ax.text(9.79127, 5.31666, '$x$',
|
|
|
+ horizontalalignment='center', fontsize=14)
|
|
|
+ax.text(1, 5.7735, '$A$',
|
|
|
+ horizontalalignment='center', fontsize=14)
|
|
|
+ax.text(11, 0, '$B$',
|
|
|
+ horizontalalignment='center', fontsize=14)
|
|
|
+
|
|
|
+# line
|
|
|
+x = [10.0, 6.0]
|
|
|
+y = [0.0, 0.0]
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='solid')
|
|
|
+
|
|
|
+# line
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=2, linestyle='solid')
|
|
|
+mpl.arrow(x=4.25, y=4.47446, dx=0, dy=-2,
|
|
|
+ facecolor='k', edgecolor='k',
|
|
|
+ linestyle='solid',
|
|
|
+ linewidth=2, head_width=0.1,
|
|
|
+ length_includes_head=True,
|
|
|
+ shape='full')
|
|
|
+ax.text(4.25, 1.9928, '$Mg$',
|
|
|
+ horizontalalignment='center', fontsize=14)
|
|
|
+
|
|
|
+# arc
|
|
|
+x = [8.401923788646684,
|
|
|
+ 8.397571463596723,
|
|
|
+ 8.39324115922751,
|
|
|
+ 8.388932912180302,
|
|
|
+ 8.384646758909714,
|
|
|
+ 8.380382735683412,
|
|
|
+ 8.376140878581813,
|
|
|
+ 8.371921223497765,
|
|
|
+ 8.367723806136254,
|
|
|
+ 8.363548662014104,
|
|
|
+ 8.359395826459666,
|
|
|
+ 8.355265334612529,
|
|
|
+ 8.351157221423218,
|
|
|
+ 8.347071521652898,
|
|
|
+ 8.343008269873081,
|
|
|
+ 8.338967500465335,
|
|
|
+ 8.334949247620987,
|
|
|
+ 8.330953545340844,
|
|
|
+ 8.326980427434897,
|
|
|
+ 8.323029927522034,
|
|
|
+ 8.319102079029763,
|
|
|
+ 8.315196915193924,
|
|
|
+ 8.31131446905841,
|
|
|
+ 8.307454773474882,
|
|
|
+ 8.303617861102499,
|
|
|
+ 8.299803764407637,
|
|
|
+ 8.296012515663612,
|
|
|
+ 8.292244146950418,
|
|
|
+ 8.288498690154439,
|
|
|
+ 8.28477617696819,
|
|
|
+ 8.28107663889005,
|
|
|
+ 8.27740010722399,
|
|
|
+ 8.273746613079307,
|
|
|
+ 8.27011618737037,
|
|
|
+ 8.26650886081635,
|
|
|
+ 8.262924663940957,
|
|
|
+ 8.259363627072197,
|
|
|
+ 8.255825780342098,
|
|
|
+ 8.252311153686467,
|
|
|
+ 8.248819776844627,
|
|
|
+ 8.245351679359178,
|
|
|
+ 8.241906890575732,
|
|
|
+ 8.238485439642679,
|
|
|
+ 8.23508735551093,
|
|
|
+ 8.231712666933673,
|
|
|
+ 8.22836140246614,
|
|
|
+ 8.225033590465351,
|
|
|
+ 8.221729259089887,
|
|
|
+ 8.218448436299639,
|
|
|
+ 8.21519114985558,
|
|
|
+ 8.211957427319533,
|
|
|
+ 8.208747296053925,
|
|
|
+ 8.205560783221573,
|
|
|
+ 8.202397915785435,
|
|
|
+ 8.199258720508395,
|
|
|
+ 8.196143223953035,
|
|
|
+ 8.193051452481406,
|
|
|
+ 8.189983432254808,
|
|
|
+ 8.186939189233566,
|
|
|
+ 8.183918749176813,
|
|
|
+ 8.180922137642275,
|
|
|
+ 8.177949379986044,
|
|
|
+ 8.175000501362375,
|
|
|
+ 8.172075526723464,
|
|
|
+ 8.16917448081925,
|
|
|
+ 8.166297388197187,
|
|
|
+ 8.16344427320205,
|
|
|
+ 8.160615159975727,
|
|
|
+ 8.157810072457012,
|
|
|
+ 8.155029034381402,
|
|
|
+ 8.152272069280897,
|
|
|
+ 8.149539200483806,
|
|
|
+ 8.146830451114539,
|
|
|
+ 8.144145844093421,
|
|
|
+ 8.141485402136492,
|
|
|
+ 8.13884914775532,
|
|
|
+ 8.136237103256803,
|
|
|
+ 8.133649290742994,
|
|
|
+ 8.131085732110893,
|
|
|
+ 8.128546449052283,
|
|
|
+ 8.126031463053533,
|
|
|
+ 8.12354079539542,
|
|
|
+ 8.121074467152951,
|
|
|
+ 8.118632499195183,
|
|
|
+ 8.116214912185043,
|
|
|
+ 8.113821726579161,
|
|
|
+ 8.111452962627688,
|
|
|
+ 8.109108640374131,
|
|
|
+ 8.106788779655183,
|
|
|
+ 8.104493400100552,
|
|
|
+ 8.102222521132795,
|
|
|
+ 8.099976161967158,
|
|
|
+ 8.097754341611408,
|
|
|
+ 8.095557078865678,
|
|
|
+ 8.093384392322298,
|
|
|
+ 8.091236300365651,
|
|
|
+ 8.08911282117201,
|
|
|
+ 8.087013972709382,
|
|
|
+ 8.08493977273736,
|
|
|
+ 8.082890238806971,
|
|
|
+ 8.080865388260529,
|
|
|
+ 8.078865238231487,
|
|
|
+ 8.076889805644296,
|
|
|
+ 8.074939107214249,
|
|
|
+ 8.073013159447358,
|
|
|
+ 8.0711119786402,
|
|
|
+ 8.069235580879788,
|
|
|
+ 8.067383982043426,
|
|
|
+ 8.065557197798583,
|
|
|
+ 8.063755243602758,
|
|
|
+ 8.061978134703345,
|
|
|
+ 8.060225886137511,
|
|
|
+ 8.058498512732061,
|
|
|
+ 8.056796029103323,
|
|
|
+ 8.055118449657009,
|
|
|
+ 8.053465788588108,
|
|
|
+ 8.05183805988076,
|
|
|
+ 8.050235277308136,
|
|
|
+ 8.048657454432323,
|
|
|
+ 8.047104604604211,
|
|
|
+ 8.045576740963376,
|
|
|
+ 8.044073876437972,
|
|
|
+ 8.042596023744622,
|
|
|
+ 8.041143195388305,
|
|
|
+ 8.039715403662262,
|
|
|
+ 8.038312660647879,
|
|
|
+ 8.036934978214587,
|
|
|
+ 8.035582368019773,
|
|
|
+ 8.034254841508666,
|
|
|
+ 8.03295240991425,
|
|
|
+ 8.031675084257166,
|
|
|
+ 8.030422875345621,
|
|
|
+ 8.029195793775289,
|
|
|
+ 8.027993849929231,
|
|
|
+ 8.026817053977805,
|
|
|
+ 8.025665415878569,
|
|
|
+ 8.024538945376214,
|
|
|
+ 8.023437652002473,
|
|
|
+ 8.022361545076034,
|
|
|
+ 8.021310633702473,
|
|
|
+ 8.02028492677417,
|
|
|
+ 8.019284432970238,
|
|
|
+ 8.01830916075644,
|
|
|
+ 8.017359118385132,
|
|
|
+ 8.01643431389518,
|
|
|
+ 8.0155347551119,
|
|
|
+ 8.01466044964699,
|
|
|
+ 8.013811404898464,
|
|
|
+ 8.012987628050587,
|
|
|
+ 8.012189126073821,
|
|
|
+ 8.011415905724764,
|
|
|
+ 8.010667973546084,
|
|
|
+ 8.009945335866481,
|
|
|
+ 8.009247998800616,
|
|
|
+ 8.008575968249069,
|
|
|
+ 8.007929249898282,
|
|
|
+ 8.007307849220528,
|
|
|
+ 8.006711771473837,
|
|
|
+ 8.006141021701978,
|
|
|
+ 8.005595604734399,
|
|
|
+ 8.005075525186196,
|
|
|
+ 8.004580787458066,
|
|
|
+ 8.004111395736278,
|
|
|
+ 8.003667353992633,
|
|
|
+ 8.003248665984426,
|
|
|
+ 8.002855335254427,
|
|
|
+ 8.002487365130836,
|
|
|
+ 8.002144758727267,
|
|
|
+ 8.001827518942713,
|
|
|
+ 8.001535648461527,
|
|
|
+ 8.001269149753398,
|
|
|
+ 8.001028025073328,
|
|
|
+ 8.000812276461614,
|
|
|
+ 8.000621905743834,
|
|
|
+ 8.000456914530826,
|
|
|
+ 8.000317304218678,
|
|
|
+ 8.000203075988713,
|
|
|
+ 8.000114230807487,
|
|
|
+ 8.000050769426768,
|
|
|
+ 8.00001269238354,
|
|
|
+ 8.0]
|
|
|
+y = [1.4999999999999998,
|
|
|
+ 1.4924361671153292,
|
|
|
+ 1.4848597058491626,
|
|
|
+ 1.4772706803104014,
|
|
|
+ 1.4696691547142613,
|
|
|
+ 1.4620551933817274,
|
|
|
+ 1.4544288607390115,
|
|
|
+ 1.4467902213170052,
|
|
|
+ 1.4391393397507382,
|
|
|
+ 1.4314762807788246,
|
|
|
+ 1.4238011092429208,
|
|
|
+ 1.4161138900871735,
|
|
|
+ 1.408414688357672,
|
|
|
+ 1.4007035692018974,
|
|
|
+ 1.3929805978681709,
|
|
|
+ 1.3852458397051017,
|
|
|
+ 1.377499360161035,
|
|
|
+ 1.369741224783497,
|
|
|
+ 1.3619714992186407,
|
|
|
+ 1.3541902492106908,
|
|
|
+ 1.346397540601387,
|
|
|
+ 1.3385934393294259,
|
|
|
+ 1.330778011429907,
|
|
|
+ 1.322951323033769,
|
|
|
+ 1.3151134403672318,
|
|
|
+ 1.3072644297512377,
|
|
|
+ 1.299404357600889,
|
|
|
+ 1.2915332904248853,
|
|
|
+ 1.2836512948249628,
|
|
|
+ 1.275758437495329,
|
|
|
+ 1.2678547852220985,
|
|
|
+ 1.259940404882729,
|
|
|
+ 1.252015363445454,
|
|
|
+ 1.2440797279687175,
|
|
|
+ 1.2361335656006056,
|
|
|
+ 1.2281769435782772,
|
|
|
+ 1.2202099292274,
|
|
|
+ 1.212232589961575,
|
|
|
+ 1.2042449932817674,
|
|
|
+ 1.1962472067757384,
|
|
|
+ 1.1882392981174703,
|
|
|
+ 1.180221335066595,
|
|
|
+ 1.1721933854678213,
|
|
|
+ 1.1641555172503588,
|
|
|
+ 1.1561077984273451,
|
|
|
+ 1.1480502970952697,
|
|
|
+ 1.139983081433397,
|
|
|
+ 1.1319062197031915,
|
|
|
+ 1.1238197802477368,
|
|
|
+ 1.1157238314911593,
|
|
|
+ 1.1076184419380528,
|
|
|
+ 1.0995036801728915,
|
|
|
+ 1.0913796148594541,
|
|
|
+ 1.083246314740243,
|
|
|
+ 1.0751038486359006,
|
|
|
+ 1.0669522854446294,
|
|
|
+ 1.0587916941416067,
|
|
|
+ 1.0506221437784027,
|
|
|
+ 1.0424437034823946,
|
|
|
+ 1.034256442456183,
|
|
|
+ 1.0260604299770066,
|
|
|
+ 1.0178557353961544,
|
|
|
+ 1.0096424281383785,
|
|
|
+ 1.001420577701312,
|
|
|
+ 0.9931902536548738,
|
|
|
+ 0.9849515256406827,
|
|
|
+ 0.9767044633714698,
|
|
|
+ 0.9684491366304864,
|
|
|
+ 0.9601856152709146,
|
|
|
+ 0.9519139692152765,
|
|
|
+ 0.9436342684548411,
|
|
|
+ 0.935346583049034,
|
|
|
+ 0.9270509831248426,
|
|
|
+ 0.9187475388762245,
|
|
|
+ 0.9104363205635124,
|
|
|
+ 0.90211739851282,
|
|
|
+ 0.8937908431154467,
|
|
|
+ 0.8854567248272813,
|
|
|
+ 0.8771151141682099,
|
|
|
+ 0.8687660817215126,
|
|
|
+ 0.8604096981332706,
|
|
|
+ 0.8520460341117677,
|
|
|
+ 0.8436751604268917,
|
|
|
+ 0.8352971479095355,
|
|
|
+ 0.8269120674509977,
|
|
|
+ 0.8185199900023834,
|
|
|
+ 0.8101209865740027,
|
|
|
+ 0.801715128234771,
|
|
|
+ 0.7933024861116071,
|
|
|
+ 0.7848831313888314,
|
|
|
+ 0.7764571353075618,
|
|
|
+ 0.7680245691651169,
|
|
|
+ 0.7595855043144049,
|
|
|
+ 0.751140012163324,
|
|
|
+ 0.7426881641741581,
|
|
|
+ 0.7342300318629713,
|
|
|
+ 0.7257656867990032,
|
|
|
+ 0.7172952006040632,
|
|
|
+ 0.7088186449519241,
|
|
|
+ 0.7003360915677166,
|
|
|
+ 0.6918476122273209,
|
|
|
+ 0.683353278756761,
|
|
|
+ 0.6748531630315956,
|
|
|
+ 0.6663473369763094,
|
|
|
+ 0.6578358725637108,
|
|
|
+ 0.6493188418143082,
|
|
|
+ 0.6407963167957198,
|
|
|
+ 0.6322683696220484,
|
|
|
+ 0.623735072453278,
|
|
|
+ 0.6151964974946623,
|
|
|
+ 0.6066527169961139,
|
|
|
+ 0.5981038032515917,
|
|
|
+ 0.5895498285984907,
|
|
|
+ 0.5809908654170288,
|
|
|
+ 0.5724269861296349,
|
|
|
+ 0.5638582632003362,
|
|
|
+ 0.5552847691341445,
|
|
|
+ 0.5467065764764432,
|
|
|
+ 0.5381237578123717,
|
|
|
+ 0.529536385766217,
|
|
|
+ 0.5209445330007908,
|
|
|
+ 0.5123482722168202,
|
|
|
+ 0.5037476761523312,
|
|
|
+ 0.49514281758203293,
|
|
|
+ 0.4865337693167025,
|
|
|
+ 0.477920604202568,
|
|
|
+ 0.46930339512069297,
|
|
|
+ 0.4606822149863592,
|
|
|
+ 0.4520571367484499,
|
|
|
+ 0.44342823338883247,
|
|
|
+ 0.43479557792174095,
|
|
|
+ 0.42615924339315675,
|
|
|
+ 0.41751930288019723,
|
|
|
+ 0.4088758294904832,
|
|
|
+ 0.4002288963615379,
|
|
|
+ 0.3915785766601547,
|
|
|
+ 0.38292494358178375,
|
|
|
+ 0.37426807034991194,
|
|
|
+ 0.36560803021544264,
|
|
|
+ 0.3569448964560765,
|
|
|
+ 0.34827874237569106,
|
|
|
+ 0.3396096413037207,
|
|
|
+ 0.3309376665945357,
|
|
|
+ 0.32226289162682237,
|
|
|
+ 0.3135853898029612,
|
|
|
+ 0.3049052345484065,
|
|
|
+ 0.29622249931106337,
|
|
|
+ 0.2875372575606717,
|
|
|
+ 0.2788495827881765,
|
|
|
+ 0.2701595485051112,
|
|
|
+ 0.2614672282429746,
|
|
|
+ 0.2527726955526084,
|
|
|
+ 0.24407602400357511,
|
|
|
+ 0.2353772871835352,
|
|
|
+ 0.22667655869762474,
|
|
|
+ 0.21797391216783238,
|
|
|
+ 0.20926942123237657,
|
|
|
+ 0.20056315954508225,
|
|
|
+ 0.1918552007747578,
|
|
|
+ 0.18314561860457024,
|
|
|
+ 0.17443448673142853,
|
|
|
+ 0.16572187886534523,
|
|
|
+ 0.15700786872883143,
|
|
|
+ 0.14829253005625834,
|
|
|
+ 0.13957593659324005,
|
|
|
+ 0.1308581620960082,
|
|
|
+ 0.1221392803307878,
|
|
|
+ 0.11341936507317313,
|
|
|
+ 0.10469849010750343,
|
|
|
+ 0.09597672922623865,
|
|
|
+ 0.08725415622933494,
|
|
|
+ 0.07853084492362027,
|
|
|
+ 0.06980686912216855,
|
|
|
+ 0.061082302643681675,
|
|
|
+ 0.05235721931185032,
|
|
|
+ 0.04363169295474784,
|
|
|
+ 0.034905797404191016,
|
|
|
+ 0.026179606495121875,
|
|
|
+ 0.01745319406498167,
|
|
|
+ 0.008726633953086073,
|
|
|
+ 3.6739403974420594e-16]
|
|
|
+[line] = ax.plot(x, y, 'k', linewidth=1, linestyle='solid')
|
|
|
+ax.text(7.82854, 0.849789, '$\\theta$',
|
|
|
+ horizontalalignment='center', fontsize=18)
|