求解具有随机变量的非线性方程

计算科学 matlab 非线性方程 随机
2021-12-02 13:19:09

我想解一个看起来像这样的方程

更新

E[(R1γ)(rk+θrz)]=0, 在哪里R=ϕrz+(1ϕ)(rk+θ)ϕ[0,1],

θ, 是正态分布的随机变量,均值为零,有一些方差σ2. 就这样E[.]代表这个随机变量的期望算子。

该问题的另一个版本,解决了一个类似的方程,但现在θ对数正态分布的。

计算任务是找到ϕ,例如上面的条件/等式成立,对于某些给定的数字/值rz,rkγ所有这些都是正实数。

有人可以帮助我如何计算这个,最好是在 MATLAB 中?

1个回答

自从ϕ是之间的标量01,最简单的求根方法是二分法如果无法计算非线性函数的期望

fϕ(θ)=(ϕrz+(1ϕ)(rk+θ))1γ(rk+θrz)
按照ϕ在分析上,您可以使用正交来近似。对于第一个变体,这相当于
E[fϕ(θ)]=1σ2πet22σ2fϕ(t)dti=1Nwiπfϕ(2σti),
在哪里tiwiGauss-Hermite 正交节点和阶权重N. 如果θ是对数正态分布的,那么θ=eβ, 在哪里β是正态分布的,所以你可以替换ti经过si:=eti在上面得到对数正态变量的求积规则(具有相同的权重)。

这个过程在 Matlab 中很容易实现;您可以在此处此处下载计算正交权重和节点的函数