资源简介
matlab代码,通过蒙特卡罗方法计算n维球的体积,此仿真程序计算复杂度较高,并有与公式方法结果之间的对比;
代码片段和文件信息
close all;
clear all;
clc;
Ns=10000;
% 蒙特卡洛采样点数,这里取10000,主要是考虑到程序的运行时间;
% 题目要求取1000000,这样的话,程序运行就要超过十个小时;
% 程序流程是没问题的,结果也没有问题,把这个数字改成1000000,经过足够长的时间,也可以得到相应的结果;
Nd = 12;
% 空间维度,这里取12,也是考虑到程序运行时间,当取样点数比较小的时候,维度太高,就会出现
% 由于点数不够导致计算结果为零的情况,这也就是作业的最后一个问题的答案:)
V = zeros(115);
V(1) = 0;
R = 0;
count = 0;
count_v = 0;
% 下面这段程序是主要的计算环节,最外层是维度循环,内层是采样点数的循环,约束条件是欧式距离小于等于1;
% 如果选取的点符合条件,计数,然后再除以总共的点数,得到的就是n维球体的体积;
for i=2:Nd
for j=1:Ns
x = rand(iNs);
[mn]=size(x);
for k=1:m;
R = R + x(ki)^2;
end
if R <=1;
count_v = count_v + 1;
end
count = count + 1;
R = 0;
end
V(i) = count_v / count * (2^i);
count
count_v
count = 0;
count_v = 0;
clear x;
end
% 下面这段是利用公式计算n维球体积,使用了伽马函数;
for i=1:15
V_G(i) = pi^(i/2) / gamma(i/2+1);
end
i=1:15;
figure;
plot(iV‘-‘iV_G‘--‘);
grid on;
title(‘Comparison of Monte Carlo & Formula of n ball volumn‘);
legend(‘Monte Carlo Method‘‘Formula‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1371 2018-09-13 21:37 test.m
文件 933 2019-03-24 09:39 test.rar
----------- --------- ---------- ----- ----
2304 2
- 上一篇:基于MATLAB的眼图画法
- 下一篇:matlab版hog+svm图像二分类
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论