Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

The Monte-Carlo method tries to estimate a numerical quantity by using random sa

ID: 3938598 • Letter: T

Question

The Monte-Carlo method tries to estimate a numerical quantity by using random sampling. We will try to use this method to approximately find certain areas. Imagine a disk of radius r with center at (a, b) where 0 lessthanorequalto a, b lessthanorequalto 1. Consider the intersection of this disk with the unit square [0, 1| times [0, 1]. We want to find the area of this intersection. The Monte carlo approach would do the following: Generate many random points inside the unit square. Find which of these also lie within the disk. The fraction of points in the disk is the area of the intersection (approximately) since the area of the unit square is 1. Write a program to do this. Your program should take as input three floating point numbers a, r and its output will be the approximate area of the intersection of the unit square with the disk (x - a)^2 + (y - b)^2 lessthanorequalto r^2. Experiment with how many random points you should choose to make the area estimate quite accurate. We will assume that r greaterthanorequalto 0.5 - this will guarantee that the intersection area is not too small.

Explanation / Answer

function res = monteCarlo(a,b,r)
   %reading number of points
   n = input('Number of points: ')
   figure('color','white')
   hold all
  
   axis square
   x = a-1;
   y = b-1;
  
   %calculating number of points inside square
   res = 0;
   for i=1:n
       if r(i)<=0.25
           res=res+1;
           plot(x(i),y(i),'b.');
       else

           plot(x(i),y(i),'r.');
       end
   end
   res/(0.25*n)
end

%calling function
monteCarlo(5,5,2);

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote