]> SALOME platform Git repositories - modules/adao.git/commitdiff
Salome HOME
Improving size checking and conversions
authorJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Wed, 5 Jun 2013 13:50:23 +0000 (15:50 +0200)
committerJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Wed, 5 Jun 2013 13:50:23 +0000 (15:50 +0200)
src/daComposant/daAlgorithms/EnsembleBlue.py
src/daComposant/daAlgorithms/ExtendedKalmanFilter.py

index 8643cf19b0e23804142b5f44c5e128d4a4443447..7fe31fbf8019553e6d8f566718fdb8b26259febd 100644 (file)
@@ -78,7 +78,9 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         # Initialisation des opérateurs d'observation et de la matrice gain
         # -----------------------------------------------------------------
         Hm = HO["Tangent"].asMatrix(None)
+        Hm = Hm.reshape(Y.size,Xb[0].size) # ADAO & check shape
         Ha = HO["Adjoint"].asMatrix(None)
+        Ha = Ha.reshape(Xb[0].size,Y.size) # ADAO & check shape
         #
         # Calcul de la matrice de gain dans l'espace le plus petit et de l'analyse
         # ------------------------------------------------------------------------
index 775f7b4d39c28d485fe2b201f9ffb3ce4801a441..65a79165e402178a08f7b3b8d800c5d8b607b8a1 100644 (file)
@@ -152,6 +152,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             if self._parameters["EstimationOf"] == "State":
                 Xn_predicted = numpy.asmatrix(numpy.ravel( M( (Xn, Un) ) )).T
                 if Cm is not None and Un is not None: # Attention : si Cm est aussi dans M, doublon !
+                    Cm = Cm.reshape(Xn.size,Un.size) # ADAO & check shape
                     Xn_predicted = Xn_predicted + Cm * Un
                 Pn_predicted = Mt * Pn * Ma + Q
             elif self._parameters["EstimationOf"] == "Parameters":