def variance_x(self): trm1 = (np.nan_to_num(self.zlb) * normal_pdf(self.zlb) - np.nan_to_num(self.zub) * normal_pdf(self.zub)) / self.Z trm2 = ((normal_pdf(self.zlb) - normal_pdf(self.zub)) / self.Z)**2 return self.sigmasq * (1 + trm1 - trm2)
def expected_x(self): return self.mu + \ np.sqrt(self.sigmasq) * (normal_pdf(self.zlb) - normal_pdf(self.zub))/self.Z