"Mon ordinateur m’indique que π vaut approximativement"
]
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count": 2,
"execution_count": null,
"metadata": {},
"metadata": {},
"outputs": [
"outputs": [],
{
"name": "stdout",
"output_type": "stream",
"text": [
"3.141592653589793\n"
]
}
],
"source": [
"source": [
"In [1]: from math import *\n",
"In [1]: from math import *\n",
"print(pi)"
"print(pi)"
]
]
},
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"1.2 En utilisant la méthode des aiguilles de Buffon\n",
"Mais calculé avec la méthode des aiguilles de Buffon, on obtiendrait comme approximation :"
]
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count": 3,
"execution_count": 3,
...
@@ -33,10 +42,21 @@
...
@@ -33,10 +42,21 @@
"Out[2]: 3.1289111389236548"
"Out[2]: 3.1289111389236548"
]
]
},
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"1.3 Avec un argument \"fréquentiel\" de surface\n",
"Sinon, une méthode plus simple à comprendre et ne faisant pas intervenir d’appel à la fonction\n",
"sinus se base sur le fait que si X ∼ U(0, 1) et Y ∼ U(0, 1) alors P[X2 + Y2 ≤ 1] = π/4 (voir méthode de Monte Carlo sur Wikipedia). Le code suivant illustre ce fait :"
]
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count": 4,
"execution_count": 4,
"metadata": {},
"metadata": {
"scrolled": true
},
"outputs": [
"outputs": [
{
{
"data": {
"data": {
...
@@ -68,21 +88,22 @@
...
@@ -68,21 +88,22 @@
]
]
},
},
{
{
"cell_type": "code",
"cell_type": "markdown",
"execution_count": 5,
"metadata": {},
"metadata": {},
"outputs": [],
"source": [
"source": [
"In [4]: 4*np.mean(accept)\n",
"Il est alors aisé d’obtenir une approximation (pas terrible) de π en comptant combien de fois,\n",