Monte Carlo Simulation Code

4 次查看(过去 30 天)
Hello! Can anyone help me out please!!!
I just started using matlab and I have to create a program that caculates the value of pi using the equation ? = ?/ ? 2 . First I need to calculate the value of A within a given radius of 4, and then im given this information: to estimate the area of a circle, we first note that we have a way to determine whether or not a point (x, y) is inside a circle that is centered at the origin and has radius r. Specifically, the distance from the origin to (x, y) is given by: ???????? = √? 2 + ? 2. If this distance is less than or equal to a radius r, then the point (x, y) is within the circle.
My program has to calculate the amount of sqaures that are within the circle because that eqauls the are. Can anyone help??
  3 个评论
Yidnekachew A sima
Yidnekachew A sima 2020-4-16
编辑:Yidnekachew A sima 2020-4-17
function [estimatepi,c] = estimatepi9(tol)
x=rand;
y=rand;
c=0;
hits=rand;
n= 0;
hit=[];
error=[];
estimatepi=[];
tol=0.0001;
error = abs(pi-estimatepi)-tol;
while error>tol
n=n+1;
x=rand;
y=rand;
hit=(x-0.5).^2+(y.^2)<=1;
for c=1:n;
hits=sum(hit);
estimatepi=4*hits/n;
end
end
end
I am geting un empty set for this file can anyone help?
Image Analyst
Image Analyst 2020-4-17
You need to index hit so that it's a vector.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2019-2-14
You need to set x and y to rand(), not zero.
You should know that all Monte Carlo simulations use random numbers, and nowhere in your program do you call rand().
You should also do the loop some number of times, not just once like r==4 would do
for counter = 1 : 10000000 % Try 10 million times.
x = r * rand
y = r * rand
% etc.
% DO NOT increment counter in the loop!
end
  1 个评论
Alejandra Bremuantz
Thank you so much for your respone!
The thing is that the guidelines of the assignment don't let me use a random number generator.
I have to place the center of the circle at the origin so x=0 and y=0 and then set the value of r=4. Only if the distance is equal to or less than the raidus the sqaure is inside of the circle.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Monte-Carlo 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by