C#,数值计算——对数正态分布(logarithmic normal distribution)的计算方法与源程序

news/2024/3/29 20:42:33/文章来源:https://blog.csdn.net/beijinghorn/article/details/131894187

 

对数正态分布(logarithmic normal distribution)是指一个随机变量的对数服从正态分布,则该随机变量服从对数正态分布。对数正态分布从短期来看,与正态分布非常接近。但长期来看,对数正态分布向上分布的数值更多一些。

有些量本身就是不对称的。例如,试想,人们完成某项特定任务需要的时间:因为每个人都是不同的,我们会得到一个分布。然而,所有的值都必然是正数(因为时间不可能为负数)。而且,我们还能预测到该分布可能的形状:有一个无人可及的最小时间,然后是少数一些非常快的“冠军”,接下来就是普通人的最具代表性的完成时间形成一个高峰,最后是尾部一长串的“掉队者”。显然,高斯分布不会很好地描述这样的分布,因为高斯分布中x可以定义为正值,也可定义为负值,它是对称的且尾部很短。
在很多应用中,特别是在可靠性和维修性方面,数据可能不符合正态分布。可是,随机变量的对数可能符合正态分布,对此情况称为对数正态分布。如果应用对数正态分布,在对数正态图纸上数据的图形将是一条直线。绘图的过程与其他分布是相同的。其分析的过程包括计算对数值的平均值和标准差,以及对最终结果取反对数。
对数正态分布与正态分布很类似,除了它的概率分布向右进行了移动。对数正态分布从短期来看,与正态分布非常接近。但长期来看,对数正态分布向上分布的数值更多一些。更准确地说,对数正态分布中,有更大向上波动的可能,更小向下波动的可能。
对数正态分布用于半导体器件的可靠性分析和某些种类的机械零件的疲劳寿命。其主要用途是在维修性分析中对修理时间数据进行确切的分析。
已知对数正态分布的密度函数,就可以根据可靠度与不可靠度函数的定义计算出该分布的可靠度函数和不可靠度函数的表达式。

对数正态分布具有如下性质:
(1)正态分布经指数变换后即为对数正态分布;对数正态分布经对数变换后即为正态分布。
(2)γ,t是正实数,X是参数为(μ,σ)的对数正态分布,则仍是对数正态分布,参数为。
(3)对数正态总是右偏的。
(4)对数正态分布的均值和方差是其参数(μ,σ)的增函数。
(5)对给定的参数μ,当σ趋于零时,对数正态分布的均值趋于exp(μ),方差趋于零。
 

using System;

namespace Legalsoft.Truffer
{
    public class Lognormaldist : Erf
    {
        private double mu { get; set; }
        private double sig { get; set; }

        public Lognormaldist(double mmu = 0.0, double ssig = 1.0)
        {
            this.mu = mmu;
            this.sig = ssig;
            if (sig <= 0.0)
            {
                throw new Exception("bad sig in Lognormaldist");
            }
        }

        public double p(double x)
        {
            if (x < 0.0)
            {
                throw new Exception("bad x in Lognormaldist");
            }
            //if (x == 0.0)
            if (Math.Abs(x) <= float.Epsilon)
            {
                return 0.0;
            }
            return (0.398942280401432678 / (sig * x)) * Math.Exp(-0.5 * Globals.SQR((Math.Log(x) - mu) / sig));
        }

        public double cdf(double x)
        {
            if (x < 0.0)
            {
                throw new Exception("bad x in Lognormaldist");
            }
            //if (x == 0.0)
            if (Math.Abs(x) <= float.Epsilon)
            {
                return 0.0;
            }
            return 0.5 * erfc(-0.707106781186547524 * (Math.Log(x) - mu) / sig);
        }

        public double invcdf(double p)
        {
            if (p <= 0.0 || p >= 1.0)
            {
                throw new Exception("bad p in Lognormaldist");
            }
            return Math.Exp(-1.41421356237309505 * sig * inverfc(2.0 * p) + mu);
        }
    }
}
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_337407.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于minio的dababend部署总结

Databend 是一款开源、弹性、低成本&#xff0c;基于对象存储也可以做实时分析的新式数仓。期待您的关注&#xff0c;一起探索云原生数仓解决方案&#xff0c;打造新一代开源 Data Cloud。 Minio搭建 minio 192.168.10.159 cd /data mkdir minio cd minio wget https://dl…

word2vec原理总结

参考文章&#xff1a;https://www.cnblogs.com/pinard/p/7160330.html word2vec是google在2013年推出的一个NLP工具&#xff0c;它的特点是将所有的词向量化&#xff0c;这样词与词之间就可以定量的去度量他们之间的关系&#xff0c;挖掘词之间的联系。 1 词向量编码 1.1 one…

Unity源码分享-黄金矿工游戏完整版

Unity源码分享-黄金矿工游戏完整版 项目地址&#xff1a;https://download.csdn.net/download/Highning0007/88118933

Python-Python基础综合案例--数据可视化 - 地图可视化

版本说明 当前版本号[20230729]。 版本修改说明20230729初版 目录 文章目录 版本说明目录知识总览图Python基础综合案例--数据可视化 - 地图可视化基础地图使用案例效果视觉映射器 疫情地图-国内疫情地图案例效果实操设置全局配置选项 疫情地图-省级疫情地图案例效果实操 知…

如何做好IT类的技术面试

目录 一、IT行业的招聘渠道 二、如何做好技术面试官 三、谈谈IT行业如何做好招聘工作 四、面试IT公司的小技巧 五、面试有哪些常见的问题 六、关于面试的一些建议 面试可能是我们每个人都必须会遇到的事情&#xff0c;而技术面试更具有专业性&#xff0c;以下会从几个方面…

IDEA将本地项目上传到码云

一、创建本地仓库并关联 用IDEA打开项目&#xff0c;在菜单栏点击vcs->create git repository创建本地仓库&#xff0c; 选择当前项目所在的文件夹当作仓库目录。 二、将项目提交本地仓库 项目名右键就会出现“GIT”这个选项->Add->Commit Directory, 先将项目add…

sql server表值函数

一、创建测试表 Employees 二、创建表值函数 -- DROP FUNCTION TableIntSplit;CREATE FUNCTION TableIntSplit(Text NVARCHAR(4000),Sign NVARCHAR(4000)) RETURNS tempTable TABLE(Id INT ) AS BEGIN DECLARE StartIndex INT DECLARE FindIndex INT DECLARE Content VARCHAR(…

玩转Tomcat:从安装到部署

文章目录 一、什么是 Tomcat二、Tomcat 的安装与使用2.1 下载安装2.2 目录结构2.3 启动 Tomcat 三、部署程序到 Tomcat3.1 Windows环境3.2 Linux环境 一、什么是 Tomcat 一看到 Tomcat&#xff0c;我们一般会想到什么&#xff1f;没错&#xff0c;就是他&#xff0c;童年的回忆…

操作系统攻击:早期WindowsMS10-046漏洞

目录 概述 漏洞成因 利用过程 漏洞复现 漏洞修复 概述 本次介绍早期的windows高危漏洞——MS10_046_SHORTCUT_ICON_DLLLOADER &#xff0c; 该漏洞可以通过浏览器跳转网络资源的方式利用&#xff0c;结合xss攻击用户的系统 危险性极高。 漏洞成因 漏洞成因&#xff1a; m…

17-C++ 数据结构 - 栈

&#x1f4d6; 1.1 什么是栈 栈是一种线性数据结构&#xff0c;具有后进先出&#xff08;Last-In-First-Out&#xff0c;LIFO&#xff09;的特点。可以类比为装满盘子的餐桌&#xff0c;每次放盘子都放在最上面&#xff0c;取盘子时也从最上面取&#xff0c;因此最后放进去的盘…

maven引入本地jar包的简单方式【IDEA】【SpringBoot】

前言 想必点进来看这篇文章的各位&#xff0c;都是已经习惯了Maven从中央仓库或者阿里仓库直接拉取jar包进行使用。我也是&#x1f921;&#x1f921;。 前两天遇到一个工作场景&#xff0c;对接三方平台&#xff0c;结果对方就是提供的一个jar包下载链接&#xff0c;可给我整…

RustDesk 1.2 现已发布

RustDesk 1.2 现已发布&#xff0c;此版本采用 Flutter 重写桌面版本&#xff0c;支持 Wayland 被控。 一些值得关注的变化有&#xff1a; 用 Flutter 重写支持 ipv6&#xff08;Beta&#xff09;增加一次性密码QuickSupport &#xff08;Beta&#xff09;硬件编解码器 H264 /…

51单片机——串行口通信

目录 1、51单片机串口通信介绍 2、串行口相关寄存器 2.1 、串行口控制寄存器SCON和PCON 2.1.1 SCON&#xff1a;串行控制寄存器 (可位寻址) 2.1.2 PCON&#xff1a;电源控制寄存器&#xff08;不可位寻址&#xff09; 2.2、串行口数据缓冲寄存器SBUF 2.3、从机地址控制…

关于element ui 安装失败的问题解决方法、查看是否安装成功及如何引入

Vue2引入 执行npm i element-ui -S报错 原因&#xff1a;npm版本太高 报错信息&#xff1a; 解决办法&#xff1a; 使用命令&#xff1a; npm install --legacy-peer-deps element-ui --save 引入&#xff1a; 在main.js文件中引入 //引入Vue import Vue from vue; //引入…

ubuntu23.04 flush DNS caches

如何在Ubuntu 23.04中刷新DNS缓存 现在&#xff0c;如果你运行的是Ubuntu 23.04&#xff0c;"系统解决 "的方法将不再适用于你。让我们检查一下你目前的缓存大小。打开你的Ubuntu终端&#xff0c;运行以下command&#xff1a; resolvectl statistics现在&#xff0c…

Android Unit Test

一、测试基础知识 1.1 测试级别 测试金字塔&#xff08;如图 2 所示&#xff09;说明了应用应如何包含三类测试&#xff08;即小型、中型和大型测试&#xff09;&#xff1a; 小型测试是指单元测试&#xff0c;用于验证应用的行为&#xff0c;一次验证一个类。 中型测试是指…

Spring Cloud Alibaba - Nacos源码分析(三)

目录 一、Nacos客户端服务订阅的事件机制 1、监听事件的注册 2、ServiceInfo处理 serviceInfoHolder.processServiceInfo 一、Nacos客户端服务订阅的事件机制 Nacos客户端订阅的核心流程&#xff1a;Nacos客户端通过一个定时任务&#xff0c;每6秒从注册中心获取实例列表&…

内网隧道代理技术(十四)之 Earthworm的使用(一级代理)

Earthworm的使用(一级代理) ew 全称是EarchWorm,是一套轻量便携且功能强大的网络穿透工具,基于标准C开发,具有socks5代理、端口转发和端口映射三大功能,可在复杂网络环境下完成网络穿透,且支持全平台(Windows/Linux/Mac)。该工具能够以“正向”、“反向”、“多级级联”…

51单片机双机通信

对于这个51单片机双机通信&#xff0c;之前无聊做的玩的&#xff0c;但是既然写了一篇51单片机串行口通信的博客&#xff0c;那就顺便出来供大家学习&#xff0c;希望能够帮助到一些刚刚接触51单片机的朋友。废话不多讲&#xff0c;直接上正题。 1、实习任务 1.1 任务目的 通…

oCPC实践录 | oCPC下机制设计变得毫无意义?(2)无声的战争

接上回oCPC实践录 | oCPC下机制设计变得毫无意义&#xff1f;&#xff08;1&#xff09;事出异常必有妖&#xff0c;互联网广告最开始采用的广义第一价格密封拍卖&#xff08;GFP)&#xff0c;对广告主而言&#xff0c;需要不断感知竞争对手的变化&#xff0c;修改报价&#xf…