首页 > 编程知识 正文

matlab蒙特卡洛求体积,matlab计算面积

时间:2023-05-06 04:48:28 阅读:263161 作者:714

下面给出几个常用的α与的数值: ? 关于蒙特卡罗方法的误差需说明两点:第一,蒙特卡罗方法的误差为概率误差,这与其他数值计算方法是有区别的。第二,误差中的均方差σ是未知的,必须使用其估计值 来代替,在计算所求量的同时,可计算出 。 α 0.5 0.05 0.003 0.6745 1.96 3 减小方差的各种技巧 显然,当给定置信度α后,误差ε由σ和N决定。要减小ε,或者是增大N,或者是减小方差σ2。在σ固定的情况下,要把精度提高一个数量级,试验次数N需增加两个数量级。因此,单纯增大N不是一个有效的办法。 另一方面,如能减小估计的均方差σ,比如降低一半,那误差就减小一半,这相当于N增大四倍的效果。因此降低方差的各种技巧,引起了人们的普遍注意。后面课程将会介绍一些降低方差的技巧。 效率 一般来说,降低方差的技巧,往往会使观察一个子样的时间增加。在固定时间内,使观察的样本数减少。所以,一种方法的优劣,需要由方差和观察一个子样的费用(使用计算机的时间)两者来衡量。这就 是蒙特卡罗方法中效率的概念。它定义为 ,其中c 是观察一个子样的平均费用。显然 越小,方法越有效。 蒙特卡罗方法的特点 优点 能够比较逼真地描述具有随机性质的事物的特点及物理实验过程。 受几何条件限制小。 收敛速度与问题的维数无关。 具有同时计算多个方案与多个未知量的能力。 误差容易确定。 程序结构简单,易于实现。 缺点 收敛速度慢。 误差具有概率性。 在粒子输运问题中,计算结果与系统大小有关。 能够比较逼真地描述具有随机性质的事物的特点及物理实验过程 从这个意义上讲,蒙特卡罗方法可以部分代替物理实验,甚至可以得到物理实验难以得到的结果。用蒙特卡罗方法解决实际问题,可以直接从实际问题本身出发,而不从方程或数学表达式出发。它有直观、形象的特点。 受几何条件限制小 在计算s维空间中的任一区域Ds上的积分 时,无论区域Ds的形状多么特殊,只要能给出描述Ds的几何特征的条件,就可以从Ds中均匀产生N个点 ,得到积分的近似值。 其中Ds为区域Ds的体积。这是数值方法难以作到的。 另外,在具有随机性质的问题中,如考虑的系统形状很复杂,难以用一般数值方法求解,而使用蒙特卡罗方法,不会有原则上的困难。 收敛速度与问题的维数无关 由误差定义可知,在给定置信水平情况下,蒙特卡罗方法的收敛速度为    ,与问题本身的维数无关。维数的变化,只引起抽样时间及估计量计算时间的变化,不影响误差。也就是说,使用蒙特卡罗方法时,抽取的子样总数N与维数s无关。维数的增加,除了增加相应的计算量外,不影响问题的误差。这一特点,决定了蒙特卡罗方法对多维问题的适应性。而一般数值方法,比如计算定积分时,计算时间随维数的幂次方而增加,而且,由于分点数与维数的幂次方成正比,需占用相当数量的计算机内存,这些都是一般数值方法计算高维积分时难以克服的问题。 具有同时计算多个方案与多个未知量的能力 对于那些需要计算多个方案的问题,使用蒙特卡罗方法有时不需要像常规方法那样逐个计算,而可以同时计算所有的方案,其全部计算量几乎与计算一个方案的计算量相当。例如,对于屏蔽层为均匀介质的平板几何,要计算若干种厚度的穿透概率时,只需计算最厚的一种情况,其他厚度的穿透概率在计算最厚一种情况时稍加处理便可同时得到。 另外,使用蒙特卡罗方法还可以同时得到若干个所求量。例如,在模拟粒子过程中,可以同时得到不同区域的通量、能谱、角分布等,而不像常规方法那样,需要逐一计算所求量。 误差容易确定 对于一般计算方法,要给出计算结果与真值的误差并不是一件容易的事情,而蒙特卡罗方法则不然。根据蒙特卡罗方法的误差公式,可以在计算所求量的同时计算出误差。对干很复杂的蒙特卡罗方法计算问题,也是容易确定的。 一般计算方法常存在着有效位数损失问题,而要解决这一问题有时相当困难,蒙特卡罗方法则不存在这一问题。 程序结构简单,易于实现 在计算机上进行蒙特卡罗方法计算时,程序结构简单,分块性强,易于实现。 收敛速度慢 如前所述,蒙特卡罗方法的收敛速度为 ,一般不容易得到精确度较高的近似结果。对于

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。