Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save genkuroki/20f00518c2759ea4fa459623ff06dd4e to your computer and use it in GitHub Desktop.
Save genkuroki/20f00518c2759ea4fa459623ff06dd4e to your computer and use it in GitHub Desktop.
probability of existsgap in circle dist.ipynb
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "using Random\n\nfunction randsimplex!(x)\n x[end] = 1\n rand!(@view(x[1:end-1]))\n sort!(@view(x[1:end-1]))\n @view(x[2:end]) .= @view(x[2:end]) .- @view(x[1:end-1])\n x\nend\n\nfunction existsgap(x)\n for i in 2:lastindex(x)-1\n x[i] ≥ 1/2 && return true\n end\n x[1] + x[end] ≥ 1/2 && return true\n false\nend\n\nfunction calcprob(n; N=10^6)\n x = Array{Float64,1}(undef, n+1)\n c = 0 \n for i in 1:N\n randsimplex!(x)\n c += ifelse(existsgap(x), 1, 0)\n end\n c/N\nend",
"execution_count": 1,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 1,
"data": {
"text/plain": "calcprob (generic function with 1 method)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@time calcprob(2), 2/2",
"execution_count": 2,
"outputs": [
{
"output_type": "stream",
"text": " 0.730522 seconds (7.98 M allocations: 411.659 MiB, 6.39% gc time)\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 2,
"data": {
"text/plain": "(1.0, 1.0)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@time calcprob(3), 3/2^2",
"execution_count": 3,
"outputs": [
{
"output_type": "stream",
"text": " 0.310951 seconds (7.00 M allocations: 381.514 MiB, 9.65% gc time)\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 3,
"data": {
"text/plain": "(0.750013, 0.75)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@time calcprob(4), 4/2^3",
"execution_count": 4,
"outputs": [
{
"output_type": "stream",
"text": " 0.324761 seconds (7.00 M allocations: 381.549 MiB, 8.53% gc time)\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 4,
"data": {
"text/plain": "(0.499977, 0.5)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@time calcprob(5), 5/2^4",
"execution_count": 5,
"outputs": [
{
"output_type": "stream",
"text": " 0.346287 seconds (7.00 M allocations: 396.843 MiB, 7.36% gc time)\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 5,
"data": {
"text/plain": "(0.313086, 0.3125)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@time calcprob(6), 6/2^5",
"execution_count": 6,
"outputs": [
{
"output_type": "stream",
"text": " 0.368784 seconds (7.00 M allocations: 396.843 MiB, 6.54% gc time)\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 6,
"data": {
"text/plain": "(0.187504, 0.1875)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@time calcprob(7), 7/2^6",
"execution_count": 7,
"outputs": [
{
"output_type": "stream",
"text": " 0.377003 seconds (7.00 M allocations: 411.991 MiB, 6.07% gc time)\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 7,
"data": {
"text/plain": "(0.109335, 0.109375)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "using PyPlot\nnmax = 20\nns = 1:nmax\nsol_exact = (n -> n/2^(n-1)).(ns)\n@time sol_approx = calcprob.(ns)\n@show sol_exact\n@show sol_approx;",
"execution_count": 8,
"outputs": [
{
"output_type": "stream",
"text": " 11.295135 seconds (138.42 M allocations: 8.379 GiB, 12.48% gc time)\nsol_exact = [1.0, 1.0, 0.75, 0.5, 0.3125, 0.1875, 0.109375, 0.0625, 0.0351563, 0.0195313, 0.0107422, 0.00585938, 0.00317383, 0.00170898, 0.000915527, 0.000488281, 0.000259399, 0.000137329, 7.24792e-5, 3.8147e-5]\nsol_approx = [1.0, 1.0, 0.750291, 0.500091, 0.312973, 0.187605, 0.109378, 0.06254, 0.035363, 0.019587, 0.010619, 0.005884, 0.003162, 0.001699, 0.000905, 0.000498, 0.000275, 0.000135, 7.2e-5, 2.5e-5]\n",
"name": "stdout"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "figure(figsize=(6,3))\nplot(ns, log.(sol_exact), label=\"\\$n/2^{n-1}\\$\")\nplot(ns, log.(sol_approx), label=\"simulation\", ls=\"dashed\")\nlegend()\ngrid(ls=\":\")\nxlabel(\"n\")\nylabel(\"log(probability)\")\ntitle(\"log of probabilities\");",
"execution_count": 9,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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",
"text/plain": "Figure(PyObject <Figure size 600x300 with 1 Axes>)"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "",
"execution_count": null,
"outputs": []
}
],
"metadata": {
"kernelspec": {
"name": "julia-1.0",
"display_name": "Julia 1.0.3",
"language": "julia"
},
"language_info": {
"mimetype": "application/julia",
"file_extension": ".jl",
"version": "1.0.3",
"name": "julia"
},
"gist": {
"id": "20f00518c2759ea4fa459623ff06dd4e",
"data": {
"description": "probability of existsgap in circle dist.ipynb",
"public": true
}
},
"_draft": {
"nbviewer_url": "https://gist.github.com/20f00518c2759ea4fa459623ff06dd4e"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment