Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Parallel Programming Question : Using language C , write a Pthreads program that uses a Monte Carlo method to estimate as follows: Suppose we toss

Parallel Programming Question: Using language C, write a Pthreads program that uses a Monte Carlo method to estimate as follows:

Suppose we toss darts randomly at a square dartboard, whose bullseye is at the origin, and whose sides are 2 feet in length. Suppose also that there is a circle inscribed in the square dartboard. The radius of the circle is 1 foot, and its area is square feet. If the points that are hit by the darts are uniformly distributed (and we always hit the square), then the number of darts that hit inside the circle should approximately satisfy the equation

number in circle/total number of tosses = /4 ,

since the ratio of the area of the circle to the area of the square is /4.

We can use this formula to estimate the value of with a random number generator:

number in circle = 0;

for (toss = 0; toss < number of tosses; toss++) {

x = random double between 1 and 1;

y = random double between 1 and 1;

distance squared = xx + yy;

if (distance squared <= 1) number in circle++;

}

pi estimate = 4number in circle/((double) number of tosses);

This is called a Monte Carlo method, since it uses randomness (the dart tosses).

Write a Pthreads program that uses a Monte Carlo method to estimate . The main thread should read in the total number of tosses and print the estimate. You may want to use long long ints for the number of hits in the circle and the number of tosses, since both may have to be very large to get a reasonable estimate of .

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions