Matlab-两个正态分布的交点

Matlab-两个正态分布的交点,matlab,statistics,gaussian,Matlab,Statistics,Gaussian,我试图计算给定H0和H1的某个检测器的虚警概率和检测概率。为此,我计算了H0和H1的pdf。但是为了计算这些概率,我需要知道两个pdf的交叉点,以便计算H1的右尾和H0的左尾 你能给我一些提示,在Matlab中计算两个正态分布的交点吗 编辑: 正如Ander Biguri所建议的,我试图用符号计算交叉点: mu1 = 24; mu2 = 25; sigma1 = sqrt(0.5); sigma2 = sqrt(0.5); dist1 =@(x) exp(-(x-mu1).^2 / (2*si

我试图计算给定H0和H1的某个检测器的虚警概率和检测概率。为此,我计算了H0和H1的pdf。但是为了计算这些概率,我需要知道两个pdf的交叉点,以便计算H1的右尾和H0的左尾

你能给我一些提示,在Matlab中计算两个正态分布的交点吗

编辑:

正如Ander Biguri所建议的,我试图用符号计算交叉点:

mu1 = 24;
mu2 = 25;
sigma1 = sqrt(0.5);
sigma2 = sqrt(0.5);
dist1 =@(x) exp(-(x-mu1).^2 / (2*sigma1^2)) / sqrt(2*sigma1^2*pi);
dist2 =@(x) exp(-(x-mu2).^2 / (2*sigma2^2)) / sqrt(2*sigma2^2*pi);
fzero(@(x) dist1(x) - dist2(x), rand * (mu1 - mu2) + (mu1 + mu2))
但我知道交叉点是“70”。我应该正常化吗?我如何解释这个结果

编辑2:


我还尝试了Douglas Schwarz开发的奇妙函数。但是我得到了太多的交叉点(正如预期的那样,当它们接近零时,两条尾巴交叉了好几次)。

作为@Ander Biguri评论的补充材料。(无法在此发表评论)

请使用以下代码:

fzero(@(x) dist1(x) - dist2(x),25)
替换“编辑”部分的最后一行。它仅更改名为“x0”(fzero开始的点)的第二个参数


有许多@(x)dist1(x)-dist2(x)的零。fzero从“x0”开始,以数字形式找到函数的第一个零(第一个x满足dist1(x)-dist2(x)<误差,实际上)。如果你想在数值上找到函数的一个特定零点,你应该给fzero一个合适的起点。

这看起来是最好通过数学来解决的问题。把两个高斯方程,用不同的平均值和西格玛,解出相同的值。或者你同意用数值近似法吗?我试过你告诉我的,但我得到的结果我不知道如何解释。因为你是用数值计算的。你没有按我说的做,然后我就不太明白了。“为相同的值求解”是什么意思?你理解正确。你不明白的是,用解析法和数值法解决问题是一件完全不同的事情。你在用数字求解,如果你测试答案,它是正确的(它只是没有唯一的解决方案)。我的意思是,拿一些纸,用手解交点的方程。或者使用符号数学。不客气。如果您想多次进行大量的模拟,也许可以添加一些代码,而不是像25这样的特定起点。合适的起点应位于mu1和mu2之间。也许你应该考虑一下F0的精确性。