% モンテカルロ法による数値解を解析解と比較

rng(0, 'twister');

n = 10000000;

adata = [];
vdata = []; % 数値解
udata = []; % 解析解

for a=0:0.25:10
    v = integral_Monte_Carlo(a, n);
    u = atan(a);
    fprintf('%f\t%f\t%f\n', a, v, u);
    adata = [adata; a];
    vdata = [vdata; v];
    udata = [udata; u];
end

set(0,'defaultAxesFontSize',16);
set(0,'defaultTextFontSize',16);

plot(adata, vdata, '-', adata, udata, '--');
xlabel('a');
%ylabel('integral');
ylabel('積分値');
fprintf("数値解と解析解\n");
fprintf("一時停止：何かのキーを押してください\n");
pause;

plot(adata, vdata, '-');
xlabel('a');
%ylabel('integral');
ylabel('積分値');
saveas(gcf, 'integral_computed.eps', 'eps');
fprintf("数値解\n");
fprintf("一時停止：何かのキーを押してください\n");
pause;

plot(adata, udata, '-');
xlabel('a');
%ylabel('integral');
ylabel('積分値');
saveas(gcf, 'integral_analytical.eps', 'eps');
fprintf("解析解\n");
fprintf("一時停止：何かのキーを押してください\n");
pause;
