java实现对数正态分布

 

 

 

Java内部实现:标准正态分布。即:Polar Method方法

public double nextDouble() {

        return (((long)(next(26)) << 27) + next(27))

        / (double)(1L << 53);

}

 

    private double nextNextGaussian;

private boolean haveNextNextGaussian = false;

 

synchronized public double nextGaussian() {

        // See Knuth, ACP, Section 3.4.1 Algorithm C.

        if (haveNextNextGaussian) {

        haveNextNextGaussian = false;

        return nextNextGaussian;

    } else {

            double v1, v2, s;

        do {

                v1 = 2 * nextDouble() - 1; // between -1 and 1

              v2 = 2 * nextDouble() - 1; // between -1 and 1

                s = v1 * v1 + v2 * v2;

         } while (s >= 1 || s == 0);

        double multiplier = StrictMath.sqrt(-2 * StrictMath.log(s)/s);

        nextNextGaussian = v2 * multiplier;

        haveNextNextGaussian = true;

        return v1 * multiplier;

        }

    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab是一种强大的数值计算和科学编程软件,它提供了丰富的函数和工具箱来处理各种数学和统计问题,包括对数正态分布对数正态分布是一种连续概率分布,其随机变量的对数服从正态分布。在Matlab中,可以使用lognstat函数来计算对数正态分布的统计特性,例如均值、方差等。lognpdf函数可以用于计算对数正态分布的概率密度函数值,而logncdf函数可以用于计算对数正态分布的累积分布函数值。 以下是Matlab中对数正态分布的一些常用函数和用法示例: 1. lognstat(mu, sigma):计算对数正态分布的均值和方差,其中mu为对数正态分布的均值参数,sigma为对数正态分布的标准差参数。 示例: mu = 1; % 均值参数 sigma = 0.5; % 标准差参数 [mu_hat, sigma_hat] = lognstat(mu, sigma); % 计算对数正态分布的均值和方差 disp(['均值:', num2str(mu_hat)]); disp(['方差:', num2str(sigma_hat)]); 2. lognpdf(x, mu, sigma):计算对数正态分布在给定点x处的概率密度函数值。 示例: x = 2; % 给定点 pdf_value = lognpdf(x, mu, sigma); % 计算对数正态分布在x处的概率密度函数值 disp(['概率密度函数值:', num2str(pdf_value)]); 3. logncdf(x, mu, sigma):计算对数正态分布在给定点x处的累积分布函数值。 示例: x = 2; % 给定点 cdf_value = logncdf(x, mu, sigma); % 计算对数正态分布在x处的累积分布函数值 disp(['累积分布函数值:', num2str(cdf_value)]);

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值