Commit 135b1c5b authored by NourElh's avatar NourElh

Update toy_document_en.Rmd

parent e391755a
--- ---
title: "Your title" title: "On the computation of pi"
author: "Your name" author: "El hassane Nour"
date: "Today's date" date: "November 1st, 2022"
output: html_document output: html_document
--- ---
...@@ -10,16 +10,41 @@ output: html_document ...@@ -10,16 +10,41 @@ output: html_document
knitr::opts_chunk$set(echo = TRUE) knitr::opts_chunk$set(echo = TRUE)
``` ```
## Some explanations
This is an R Markdown document that you can easily export to HTML, PDF, and MS Word formats. For more information on R Markdown, see <http://rmarkdown.rstudio.com>. ## Asking the maths library
My computer tells me that $\pi$ is approximatively
```{r pi}
pi
```
##Buffon’s needle
Applying the method of [Buffon’s needle](https://en.wikipedia.org/wiki/Buffon%27s_needle_problem), we get the approssimazione
```{r Buffon}
set.seed(42)
N = 100000
x = runif(N)
theta = pi/2*runif(N)
2/(mean(x+sin(theta)>1))
```
When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows:
```{r cars} ##Using a surface fraction argument
summary(cars) A method that is easier to understand and does not make use of the $\sin$ function is based on the fact that if $X \sim U(0,1)$ and $Y \sim U(0,1)$, then $P[X^2+Y^2 \le 1]=\pi / 4 (see [“Monte Carlo method” on Wikipedia](https://en.wikipedia.org/wiki/Monte_Carlo_method)). The following code uses this approach:
```{r surface-frac}
set.seed(42)
N = 1000
df = data.frame(X = runif(N), Y = runif(N))
df$Accept = (df$X**2 + df$Y**2 <=1)
library(ggplot2)
ggplot(df, aes(x=X,y=Y,color=Accept)) + geom_point(alpha=.2) + coord_fixed() + theme_bw()
```
It is therefore straightforward to obtain a (not really good) approximation to \pi by counting how many times, on average, $X^2 + Y^2$ is smaller than 1 :
```{r surface-frac2}
4*mean(df$Accept)
``` ```
It is also straightforward to include figures. For example: It is also straightforward to include figures. For example:
```{r pressure, echo=FALSE} ```{r pressure, echo=FALSE}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment