1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
AlexFokin [52]
3 years ago
12

The Monte Carlo method is commonly used to approximate areas or volumes of shapes. In this problem, we will use Monte Carlo to f

ind the area of a circle, allowing us to estimate the value of Ï. Furthermore, we will use several different sample sizes to see how the accuracy increases with larger samples. PYTHON
Part 1

According to the formula A=Ïr^2, for a circle of radius 1, the area of the circle will be equal to Ï. Therefore, if we can use Monte Carlo to approximate the area of the circle, we can find an estimate for Ï.

Write a function calculate_pi that accepts a sample of x and corresponding y coordinates as arguments and returns an estimate for Ï (since we want to calculate Ï for various sample sizes, it will be useful for it to be a function). To simplify things, we will only consider a single quadrant of the unit circle (see gif above). Therefore, the area of the full circle will be 4 times the area we calculate for the single quadrant (and your function should take this into account).

Part 2

Using the calculate_pi function you wrote in Part 1, estimate the value of ÏÏ for different sample size of powers of 10 ranging from 10^0 to 10^6 (inclusive). Store these values in an array of size 7 named pi. Use the first portion of the coordinates for this purpose. So, if you needed 10 samples, you would do: xs[:10] to get the first 10 samples in xs

Part 3

Plot the absolute error of your approximations vs. the sample size on a log-log plot. The error can be obtained by subtracting the true value of ÏÏ from your approximations.

You should notice that the error decreases with larger sample sizes, although there may be a considerable amount of noise due to randomization. The order of convergence of Monte Carlo is O(1ân), so the slope of your plot should be around â1/2.

Output

The setup code gives the following variables:

Name Type Description
xs 1-d numpy array random numbers from 0 to 1
ys 1-d numpy array random numbers from 0 to 1
Your code snippet should define the following function(s) and variable(s):

Name Type Description
calculate_pi function function accepting 2 arrays (x and y sample coordinates, respectively) and returning an estimate for ÏÏ
pi 1-d numpy array estimates for ÏÏ as described above
We also ask for a plot of error vs. sample size. (Provide appropriate axes labels and a title.)
Computers and Technology
1 answer:
sdas [7]3 years ago
4 0

Answer:

import numpy as np

import matplotlib.pyplot as plt

def calculate_pi(x,y):

   points_in_circle=0

   for i in range(len(x)):

       if np.sqrt(x[i]**2+y[i]**2)<=1:

           points_in_circle+=1

       pi_value=4*points_in_circle/len(x)

       return pi_value

length=np.power(10,6)

x=np.random.rand(length)

y=np.random.rand(length)

pi=np.zeros(7)

sample_size=np.zeros(7)

for i in range(len(pi)):

   xs=x[:np.power(10,i)]

   ys=y[:np.power(10,i)]

   sample_size[i]=len(xs)

   pi_value=calculate_pi(xs,ys)

   pi[i]=pi_value

 

print("The value of pi at different sample size is")

print(pi)

plt.plot(sample_size,np.abs(pi-np.pi))

plt.xscale('log')

plt.yscale('log')

plt.xlabel('sample size')

plt.ylabel('absolute error')

plt.title('Error Vs Sample Size')

plt.show()

Explanation:

The python program gets the sample size of circles and the areas and returns a plot of one against the other as a line plot. The numpy package is used to mathematically create the circle samples as a series of random numbers while matplotlib's pyplot is used to plot for the visual statistics of the features of the samples.

You might be interested in
Hi!
baherus [9]

Answer:

Radius = 14 cm = 0.00014 km

Circumference = 2πr = 2 × 22/7 × 14/100000 = 0.00088 km

As it went thousand times , distance covered = 0.00088 × 1000 = 0.88 km

8 0
3 years ago
The program below is used to calcualte the sum of 3 numbers. There is an error in this program. Which line contains the error? n
djyliett [7]

Answer:

  1. num1=10
  2. num2 =20
  3. num3="30"
  4. sum = num1+num2+num3
  5. print (num1)
  6. print (num2)
  7. print (num3)
  8. print (sum)

The error is at line 3. The variable num3 has been assigned a string value with use of the quotes.

To fix the error, take away the quotes from the number 30, since the arithemetic operation cannot be carried out on the string in python program language.

Explanation:

5 0
3 years ago
Wireless displays connect to a computer using a wireless networking connection such as wi-fi or ____.
Semmy [17]
Wireless displays connect to a computer using a wireless networking connection such as wi-fi or Bluetooth
7 0
3 years ago
How do you add a coloring on after effects<br><br> ill give brainly and 50pts
jonny [76]

Answer:

You just have to highlight the composition in the timeline, then expand the Effects menu, and select the Hue/Saturation option from the Color Correction submenu. In order to change the color of the entire composition you just have to adjust Master Hue setting in the Effect Controls panel

Explanation:

5 0
3 years ago
Why is making a prototype so important in the design process
marta [7]
Making a prototype is a great example of double checking. A prototype is the first made, which means it'll be tested. If a prototype was untested when complete, then it would be exceptionally harder to determine that everything is in working condition. No matter how skilled someone is.

In fact, skilled workers would prefer to test their prototypes to make sure it works. That way they'd stay on top.
6 0
3 years ago
Other questions:
  • Which of the following might not exist in a URL?
    10·2 answers
  • 1. Write a recursive method to determine if a character is in a list of characters in O(logN) time. Mathematically prove (as we
    13·1 answer
  • Write a script that will read from a file x and y data points in thefollowing format:
    9·1 answer
  • What is employee Internet management (EIM) software?
    5·2 answers
  • What tab on the ribbon do I go into to create new database objects in Access?
    13·1 answer
  • Wanda works for a large company. She and her team maintain a set of servers that support their office, and their office is conne
    12·1 answer
  • Help me asap please
    15·1 answer
  • Which font is most suitable for an academic article on a website? Which is most suitable for casual information?
    5·2 answers
  • What does it NOT mean for something to be open source?
    13·1 answer
  • What is the difference between a computer’s RAM and its hard disk?
    13·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!