C++ Problem 1: (Monte Carlo Experiments) The Monte Carlo method is used in modeling a wide-range of physical systems at the forefront of scientific research today. Let’s consider the problem of estimating the area of the region x 2 + 2y 2 ≤ 1 by utilizing the Monte Carlo method. This region is enclosed by a blue ellipse, which is inscribed in a 2 × 2 red square (shown in the figure below). The experiment simply consists of throwing darts on this figure completely at random (meaning that every point in the red square has an equal chance of being hit by the dart). You keep throwing darts at random. All of the darts fall within the square, but not all of them fall within the ellipse. If you throw darts completely at random, this experiment estimates the ratio of the area of the ellipse to the area of the square, by counting the number of darts within each area. Program this Monte Carlo method to compute the area of the blue ellipse using different numbers of darts. For each experiment, use N darts where N = 10, 102 , · · · , 106 , and output the estimated area and the corresponding numerical error |estimated area−exact area|. The exact area for the ellipse is given by √ 2 2 π ≈ 2.22144146907918. A successful run of your code may look like: # darts: 10 estimated area = 2.40000 error = 0.17856 # darts: 100 estimated area = 2.16000 error = 0.06144 # darts: 1000 estimated area = 2.18000 error = 0.04144 # darts: 10000 estimated area = 2.23680 error = 0.01536 # darts: 100000 estimated area = 2.21072 error = 0.01072 # darts: 1000000 estimated area = 2.22037 error = 0.00107 About: This program is to give you practice using loops, the random number generator, math library, and output formatting. You may use to format your output.
C++
Problem 1: (Monte Carlo Experiments) The Monte Carlo method is used in modeling a wide-range of physical systems at the forefront of scientific research today. Let’s consider the problem of estimating the area of the region x 2 + 2y 2 ≤ 1 by utilizing the Monte Carlo method. This region is enclosed by a blue ellipse, which is inscribed in a 2 × 2 red square (shown in the figure below).
The experiment simply consists of throwing darts on this figure completely at random (meaning that every point in the red square has an equal chance of being hit by the dart). You keep throwing darts at random. All of the darts fall within the square, but not all of them fall within the ellipse. If you throw darts completely at random, this experiment estimates the ratio of the area of the ellipse to the area of the square, by counting the number of darts within each area.
Program this Monte Carlo method to compute the area of the blue ellipse using different numbers of darts. For each experiment, use N darts where N = 10, 102 , · · · , 106 , and output the estimated area and the corresponding numerical error |estimated area−exact area|. The exact area for the ellipse is given by √ 2 2 π ≈ 2.22144146907918.
A successful run of your code may look like:
# darts: 10 estimated area = 2.40000 error = 0.17856
# darts: 100 estimated area = 2.16000 error = 0.06144
# darts: 1000 estimated area = 2.18000 error = 0.04144
# darts: 10000 estimated area = 2.23680 error = 0.01536
# darts: 100000 estimated area = 2.21072 error = 0.01072
# darts: 1000000 estimated area = 2.22037 error = 0.00107
About: This program is to give you practice using loops, the random number generator, math library, and output formatting. You may use to format your output.
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 1 images