"ETKF-N-16",
"MLEF",
"MLEF-B",
+ "MLEF-T",
],
)
self.defineRequiredParameter(
elif self._parameters["Minimizer"] in ["MLEF-B", "MLEF"]:
NumericObjects.mlef(self, Xb, Y, U, HO, EM, CM, R, B, Q, BnotT=False)
#
+ elif self._parameters["Minimizer"] == "MLEF-T":
+ NumericObjects.mlef(self, Xb, Y, U, HO, EM, CM, R, B, Q, BnotT=True)
+ #
#--------------------------
else:
raise ValueError("Error in Minimizer name: %s"%self._parameters["Minimizer"])
#
if BnotT:
EE = vx.reshape((__n,-1)) + _epsilon * EaX # 7:
+ else:
+ EE = vx.reshape((__n,-1)) + numpy.sqrt(__m-1) * EaX @ Ta # 8:
#
EZ = H( [(EE[:,i], Un) for i in range(__m)],
argsAsSerie = True,
#
if BnotT:
EY = (EZ - ybar) / _epsilon # 11:
+ else:
+ EY = ( (EZ - ybar) @ numpy.linalg.inv(Ta) ) / numpy.sqrt(__m-1) # 12:
#
GradJ = numpy.ravel(vw.reshape((__m,1)) - EY.transpose() @ (RI * (Ynpu - ybar))) # 13:
mH = numpy.eye(__m) + EY.transpose() @ (RI * EY) # 14: