C#、数値計算 - 指数微分の計算方法とソースプログラム

1 テキスト形式

システムを使用する;

namespace Legalsoft.Truffer
{     /// <summary>     /// 指数偏差     /// 指数偏差の構造。     /// </summary>     public class Expondev : Ran     {         private double beta { get; セット; }






        /// <summary>
        /// コンストラクター引数はベータ版であり、ランダム シーケンス シードです。
        /// </summary>
        /// <param name="bbeta"></param>
        /// <param name="i"></param>
        public Expondev(double bbeta, ulong i) :base(i )
        {             this.beta = bbeta;         }

        /// <summary>
        /// 指数偏差を返します。
        /// </summary>
        /// <returns></returns>
        public double dev()
        {             double u;             do             {                 u = doub();             } while (Math.Abs​​(u) <= float.Epsilon);// (u == 0.0);                     return -Math.Log(u) / ベータ;         } }     }









 

2コード形式

using System;

namespace Legalsoft.Truffer
{
    /// <summary>
    /// 指数偏差
    /// Structure for exponential deviates.
    /// </summary>
    public class Expondev : Ran
    {
        private double beta { get; set; }

        /// <summary>
        /// Constructor arguments are beta and a random sequence seed.
        /// </summary>
        /// <param name="bbeta"></param>
        /// <param name="i"></param>
        public Expondev(double bbeta, ulong i) : base(i)
        {
            this.beta = bbeta;
        }

        /// <summary>
        /// Return an exponential deviate.
        /// </summary>
        /// <returns></returns>
        public double dev()
        {
            double u;
            do
            {
                u = doub();
            } while (Math.Abs(u) <= float.Epsilon);// (u == 0.0);        
            return -Math.Log(u) / beta;
        }
    }
}

おすすめ

転載: blog.csdn.net/beijinghorn/article/details/132747406