|
| 1 | +# Pi Estimation |
| 2 | + |
| 3 | +Estimates the value of π using a Monte Carlo simulation. |
| 4 | + |
| 5 | +## Method |
| 6 | + |
| 7 | +We generate random points within the unit square and count how many fall within a circle of radius 1 centered at the origin. |
| 8 | +The ratio of the number of points within the circle to the total number of points approaches π/4. |
| 9 | + |
| 10 | +<svg width="400" height="400" xmlns="http://www.w3.org/2000/svg"> |
| 11 | + <circle cx="0" cy="400" r="400" fill="rgba(55, 55, 55, .1)" stroke="black" stroke-width="2"/> |
| 12 | + <rect x="0" y="0" width="400" height="400" fill="none" stroke="black" stroke-width="2"/> |
| 13 | + <circle cx="292" cy="354" r="4" fill="blue"/> |
| 14 | + <circle cx="199" cy="352" r="4" fill="blue"/> |
| 15 | + <circle cx="344" cy="53" r="4" fill="black"/> |
| 16 | + <circle cx="192" cy="52" r="4" fill="blue"/> |
| 17 | + <circle cx="346" cy="126" r="4" fill="black"/> |
| 18 | + <circle cx="4" cy="2" r="4" fill="blue"/> |
| 19 | + <circle cx="267" cy="154" r="4" fill="blue"/> |
| 20 | + <circle cx="88" cy="359" r="4" fill="blue"/> |
| 21 | + <circle cx="285" cy="303" r="4" fill="blue"/> |
| 22 | + <circle cx="371" cy="307" r="4" fill="blue"/> |
| 23 | + <circle cx="335" cy="155" r="4" fill="black"/> |
| 24 | + <circle cx="282" cy="302" r="4" fill="blue"/> |
| 25 | + <circle cx="38" cy="211" r="4" fill="blue"/> |
| 26 | + <circle cx="113" cy="201" r="4" fill="blue"/> |
| 27 | + <circle cx="92" cy="177" r="4" fill="blue"/> |
| 28 | + <circle cx="359" cy="5" r="4" fill="black"/> |
| 29 | + <circle cx="55" cy="213" r="4" fill="blue"/> |
| 30 | + <circle cx="324" cy="399" r="4" fill="blue"/> |
| 31 | + <circle cx="349" cy="15" r="4" fill="black"/> |
| 32 | + <circle cx="29" cy="386" r="4" fill="blue"/> |
| 33 | + <circle cx="127" cy="123" r="4" fill="blue"/> |
| 34 | + <circle cx="312" cy="308" r="4" fill="blue"/> |
| 35 | + <circle cx="257" cy="313" r="4" fill="blue"/> |
| 36 | + <circle cx="8" cy="234" r="4" fill="blue"/> |
| 37 | + <circle cx="99" cy="253" r="4" fill="blue"/> |
| 38 | + <circle cx="218" cy="5" r="4" fill="black"/> |
| 39 | + <circle cx="265" cy="335" r="4" fill="blue"/> |
| 40 | + <circle cx="83" cy="360" r="4" fill="blue"/> |
| 41 | + <circle cx="128" cy="106" r="4" fill="blue"/> |
| 42 | + <circle cx="303" cy="119" r="4" fill="black"/> |
| 43 | + <circle cx="127" cy="361" r="4" fill="blue"/> |
| 44 | + <circle cx="249" cy="303" r="4" fill="blue"/> |
| 45 | + <circle cx="111" cy="255" r="4" fill="blue"/> |
| 46 | + <circle cx="329" cy="273" r="4" fill="blue"/> |
| 47 | + <circle cx="189" cy="229" r="4" fill="blue"/> |
| 48 | + <circle cx="308" cy="120" r="4" fill="black"/> |
| 49 | + <circle cx="170" cy="310" r="4" fill="blue"/> |
| 50 | + <circle cx="187" cy="59" r="4" fill="blue"/> |
| 51 | + <circle cx="237" cy="266" r="4" fill="blue"/> |
| 52 | + <circle cx="227" cy="42" r="4" fill="black"/> |
| 53 | + <circle cx="108" cy="118" r="4" fill="blue"/> |
| 54 | + <circle cx="377" cy="206" r="4" fill="black"/> |
| 55 | + <circle cx="236" cy="125" r="4" fill="blue"/> |
| 56 | + <circle cx="349" cy="86" r="4" fill="black"/> |
| 57 | + <circle cx="361" cy="177" r="4" fill="black"/> |
| 58 | + <circle cx="88" cy="62" r="4" fill="blue"/> |
| 59 | + <circle cx="282" cy="99" r="4" fill="black"/> |
| 60 | + <circle cx="286" cy="62" r="4" fill="black"/> |
| 61 | + <circle cx="316" cy="26" r="4" fill="black"/> |
| 62 | + <circle cx="246" cy="201" r="4" fill="blue"/> |
| 63 | + <circle cx="223" cy="255" r="4" fill="blue"/> |
| 64 | + <circle cx="370" cy="28" r="4" fill="black"/> |
| 65 | + <circle cx="313" cy="140" r="4" fill="black"/> |
| 66 | + <circle cx="379" cy="354" r="4" fill="blue"/> |
| 67 | + <circle cx="125" cy="179" r="4" fill="blue"/> |
| 68 | + <circle cx="274" cy="393" r="4" fill="blue"/> |
| 69 | + <circle cx="18" cy="333" r="4" fill="blue"/> |
| 70 | + <circle cx="108" cy="12" r="4" fill="black"/> |
| 71 | + <circle cx="277" cy="135" r="4" fill="blue"/> |
| 72 | + <circle cx="52" cy="179" r="4" fill="blue"/> |
| 73 | + <circle cx="196" cy="143" r="4" fill="blue"/> |
| 74 | + <circle cx="301" cy="39" r="4" fill="black"/> |
| 75 | + <circle cx="257" cy="197" r="4" fill="blue"/> |
| 76 | + <circle cx="183" cy="167" r="4" fill="blue"/> |
| 77 | + <circle cx="149" cy="268" r="4" fill="blue"/> |
| 78 | + <circle cx="262" cy="202" r="4" fill="blue"/> |
| 79 | + <circle cx="184" cy="352" r="4" fill="blue"/> |
| 80 | + <circle cx="229" cy="324" r="4" fill="blue"/> |
| 81 | + <circle cx="259" cy="231" r="4" fill="blue"/> |
| 82 | + <circle cx="311" cy="266" r="4" fill="blue"/> |
| 83 | + <circle cx="283" cy="393" r="4" fill="blue"/> |
| 84 | + <circle cx="212" cy="332" r="4" fill="blue"/> |
| 85 | + <circle cx="279" cy="273" r="4" fill="blue"/> |
| 86 | + <circle cx="91" cy="92" r="4" fill="blue"/> |
| 87 | + <circle cx="331" cy="172" r="4" fill="black"/> |
| 88 | + <circle cx="264" cy="120" r="4" fill="blue"/> |
| 89 | + <circle cx="298" cy="355" r="4" fill="blue"/> |
| 90 | + <circle cx="172" cy="354" r="4" fill="blue"/> |
| 91 | + <circle cx="115" cy="332" r="4" fill="blue"/> |
| 92 | + <circle cx="225" cy="390" r="4" fill="blue"/> |
| 93 | + <circle cx="397" cy="95" r="4" fill="black"/> |
| 94 | + <circle cx="139" cy="109" r="4" fill="blue"/> |
| 95 | + <circle cx="299" cy="297" r="4" fill="blue"/> |
| 96 | + <circle cx="80" cy="267" r="4" fill="blue"/> |
| 97 | + <circle cx="137" cy="216" r="4" fill="blue"/> |
| 98 | + <circle cx="343" cy="25" r="4" fill="black"/> |
| 99 | + <circle cx="44" cy="96" r="4" fill="blue"/> |
| 100 | + <circle cx="231" cy="112" r="4" fill="blue"/> |
| 101 | + <circle cx="341" cy="214" r="4" fill="blue"/> |
| 102 | + <circle cx="302" cy="349" r="4" fill="blue"/> |
| 103 | + <circle cx="209" cy="274" r="4" fill="blue"/> |
| 104 | + <circle cx="375" cy="269" r="4" fill="blue"/> |
| 105 | + <circle cx="299" cy="387" r="4" fill="blue"/> |
| 106 | + <circle cx="379" cy="310" r="4" fill="blue"/> |
| 107 | + <circle cx="210" cy="98" r="4" fill="blue"/> |
| 108 | + <circle cx="272" cy="3" r="4" fill="black"/> |
| 109 | + <circle cx="130" cy="44" r="4" fill="blue"/> |
| 110 | + <circle cx="348" cy="226" r="4" fill="blue"/> |
| 111 | + <circle cx="29" cy="54" r="4" fill="blue"/> |
| 112 | + <circle cx="392" cy="278" r="4" fill="black"/> |
| 113 | + <circle cx="391" cy="311" r="4" fill="black"/> |
| 114 | + <circle cx="348" cy="153" r="4" fill="black"/> |
| 115 | + <circle cx="271" cy="34" r="4" fill="black"/> |
| 116 | + <circle cx="305" cy="350" r="4" fill="blue"/> |
| 117 | + <circle cx="324" cy="191" r="4" fill="blue"/> |
| 118 | + <circle cx="6" cy="272" r="4" fill="blue"/> |
| 119 | + <circle cx="115" cy="70" r="4" fill="blue"/> |
| 120 | + <circle cx="100" cy="52" r="4" fill="blue"/> |
| 121 | + <circle cx="374" cy="332" r="4" fill="blue"/> |
| 122 | + <circle cx="134" cy="96" r="4" fill="blue"/> |
| 123 | + <circle cx="369" cy="272" r="4" fill="blue"/> |
| 124 | + <circle cx="335" cy="26" r="4" fill="black"/> |
| 125 | + <circle cx="224" cy="207" r="4" fill="blue"/> |
| 126 | + <circle cx="340" cy="222" r="4" fill="blue"/> |
| 127 | + <circle cx="375" cy="74" r="4" fill="black"/> |
| 128 | + <circle cx="106" cy="177" r="4" fill="blue"/> |
| 129 | + <circle cx="333" cy="346" r="4" fill="blue"/> |
| 130 | + <circle cx="9" cy="345" r="4" fill="blue"/> |
| 131 | + <circle cx="202" cy="108" r="4" fill="blue"/> |
| 132 | + <circle cx="354" cy="117" r="4" fill="black"/> |
| 133 | + <circle cx="51" cy="270" r="4" fill="blue"/> |
| 134 | + <circle cx="357" cy="328" r="4" fill="blue"/> |
| 135 | + <circle cx="137" cy="309" r="4" fill="blue"/> |
| 136 | + <circle cx="20" cy="180" r="4" fill="blue"/> |
| 137 | + <circle cx="152" cy="16" r="4" fill="black"/> |
| 138 | + <circle cx="113" cy="157" r="4" fill="blue"/> |
| 139 | + <circle cx="388" cy="231" r="4" fill="black"/> |
| 140 | + <circle cx="15" cy="202" r="4" fill="blue"/> |
| 141 | + <circle cx="72" cy="67" r="4" fill="blue"/> |
| 142 | + <circle cx="242" cy="174" r="4" fill="blue"/> |
| 143 | + <circle cx="289" cy="214" r="4" fill="blue"/> |
| 144 | + <circle cx="130" cy="220" r="4" fill="blue"/> |
| 145 | + <circle cx="125" cy="199" r="4" fill="blue"/> |
| 146 | + <circle cx="275" cy="355" r="4" fill="blue"/> |
| 147 | + <circle cx="98" cy="44" r="4" fill="blue"/> |
| 148 | + <circle cx="232" cy="183" r="4" fill="blue"/> |
| 149 | + <circle cx="309" cy="247" r="4" fill="blue"/> |
| 150 | + <circle cx="74" cy="245" r="4" fill="blue"/> |
| 151 | + <circle cx="344" cy="225" r="4" fill="blue"/> |
| 152 | + <circle cx="233" cy="209" r="4" fill="blue"/> |
| 153 | + <circle cx="345" cy="285" r="4" fill="blue"/> |
| 154 | + <circle cx="148" cy="242" r="4" fill="blue"/> |
| 155 | + <circle cx="79" cy="209" r="4" fill="blue"/> |
| 156 | + <circle cx="186" cy="182" r="4" fill="blue"/> |
| 157 | + <circle cx="253" cy="269" r="4" fill="blue"/> |
| 158 | + <circle cx="173" cy="123" r="4" fill="blue"/> |
| 159 | + <circle cx="209" cy="47" r="4" fill="black"/> |
| 160 | + <circle cx="300" cy="317" r="4" fill="blue"/> |
| 161 | + <circle cx="73" cy="350" r="4" fill="blue"/> |
| 162 | + <circle cx="81" cy="188" r="4" fill="blue"/> |
| 163 | + <circle cx="118" cy="395" r="4" fill="blue"/> |
| 164 | + <circle cx="59" cy="229" r="4" fill="blue"/> |
| 165 | + <circle cx="101" cy="265" r="4" fill="blue"/> |
| 166 | + <circle cx="25" cy="21" r="4" fill="blue"/> |
| 167 | + <circle cx="8" cy="2" r="4" fill="blue"/> |
| 168 | + <circle cx="263" cy="84" r="4" fill="black"/> |
| 169 | + <circle cx="64" cy="91" r="4" fill="blue"/> |
| 170 | + <circle cx="145" cy="153" r="4" fill="blue"/> |
| 171 | + <circle cx="275" cy="343" r="4" fill="blue"/> |
| 172 | + <circle cx="45" cy="330" r="4" fill="blue"/> |
| 173 | + <circle cx="47" cy="36" r="4" fill="blue"/> |
| 174 | + <circle cx="238" cy="250" r="4" fill="blue"/> |
| 175 | + <circle cx="180" cy="391" r="4" fill="blue"/> |
| 176 | + <circle cx="296" cy="10" r="4" fill="black"/> |
| 177 | + <circle cx="329" cy="59" r="4" fill="black"/> |
| 178 | + <circle cx="263" cy="224" r="4" fill="blue"/> |
| 179 | + <circle cx="354" cy="160" r="4" fill="black"/> |
| 180 | + <circle cx="94" cy="51" r="4" fill="blue"/> |
| 181 | + <circle cx="367" cy="353" r="4" fill="blue"/> |
| 182 | + <circle cx="106" cy="27" r="4" fill="blue"/> |
| 183 | + <circle cx="270" cy="81" r="4" fill="black"/> |
| 184 | + <circle cx="136" cy="46" r="4" fill="blue"/> |
| 185 | + <circle cx="321" cy="174" r="4" fill="blue"/> |
| 186 | + <circle cx="308" cy="55" r="4" fill="black"/> |
| 187 | + <circle cx="192" cy="54" r="4" fill="blue"/> |
| 188 | + <circle cx="353" cy="264" r="4" fill="blue"/> |
| 189 | + <circle cx="233" cy="230" r="4" fill="blue"/> |
| 190 | + <circle cx="108" cy="269" r="4" fill="blue"/> |
| 191 | + <circle cx="154" cy="168" r="4" fill="blue"/> |
| 192 | + <circle cx="342" cy="34" r="4" fill="black"/> |
| 193 | + <circle cx="139" cy="82" r="4" fill="blue"/> |
| 194 | + <circle cx="273" cy="111" r="4" fill="blue"/> |
| 195 | + <circle cx="182" cy="149" r="4" fill="blue"/> |
| 196 | + <circle cx="199" cy="38" r="4" fill="black"/> |
| 197 | + <circle cx="140" cy="38" r="4" fill="blue"/> |
| 198 | + <circle cx="14" cy="352" r="4" fill="blue"/> |
| 199 | + <circle cx="309" cy="361" r="4" fill="blue"/> |
| 200 | + <circle cx="264" cy="139" r="4" fill="blue"/> |
| 201 | + <circle cx="119" cy="5" r="4" fill="black"/> |
| 202 | + <circle cx="204" cy="360" r="4" fill="blue"/> |
| 203 | + <circle cx="134" cy="317" r="4" fill="blue"/> |
| 204 | + <circle cx="165" cy="208" r="4" fill="blue"/> |
| 205 | + <circle cx="273" cy="350" r="4" fill="blue"/> |
| 206 | + <circle cx="123" cy="198" r="4" fill="blue"/> |
| 207 | + <circle cx="260" cy="24" r="4" fill="black"/> |
| 208 | + <circle cx="394" cy="242" r="4" fill="black"/> |
| 209 | + <circle cx="218" cy="192" r="4" fill="blue"/> |
| 210 | + <circle cx="74" cy="124" r="4" fill="blue"/> |
| 211 | + <circle cx="155" cy="72" r="4" fill="blue"/> |
| 212 | + <circle cx="192" cy="232" r="4" fill="blue"/> |
| 213 | +</svg> |
0 commit comments