]> SALOME platform Git repositories - modules/adao.git/blob - src/tests/daSalome/test_aster_zzzz159a_LBFGSB.comm.in
Salome HOME
Adding UnscentedKalmanFilter algorithm
[modules/adao.git] / src / tests / daSalome / test_aster_zzzz159a_LBFGSB.comm.in
1
2 ASSIMILATION_STUDY(Study_name='aster_zzzz159a_LBFGSB',
3                    Study_repertory='@prefix@/tests/daSalome',
4                    Debug=0,
5                    Algorithm='3DVAR',
6                    Background=_F(INPUT_TYPE='Vector',
7                                  data=_F(FROM='Script',
8                                          SCRIPT_FILE=
9                             'test_aster_zzzz159a_background.py',),),
10                    BackgroundError=_F(INPUT_TYPE='Matrix',
11                                       data=_F(FROM='Script',
12                                               SCRIPT_FILE=
13                       'test_aster_zzzz159a_background_error.py',),),
14                    Observation=_F(INPUT_TYPE='Vector',
15                                   data=_F(FROM='Script',
16                                           SCRIPT_FILE=
17                            'test_aster_zzzz159a_observation.py',),),
18                    ObservationError=_F(INPUT_TYPE='Matrix',
19                                        data=_F(FROM='Script',
20                                                SCRIPT_FILE=
21                      'test_aster_zzzz159a_observation_error.py',),),
22                    ObservationOperator=_F(INPUT_TYPE='Function',
23                                           data=_F(FROM='FunctionDict',
24                                                   FUNCTIONDICT_FILE=
25                              'test_aster_zzzz159a_functions.py',),),
26                    AlgorithmParameters=_F(INPUT_TYPE='Dict',
27                                           data=_F(FROM='Script',
28                                                   SCRIPT_FILE=
29                  'test_aster_zzzz159a_init_algorithm_LBFGSB.py',),),
30                    UserDataInit=_F(INIT_FILE=
31                        'test_aster_zzzz159a_init_parameters.py',
32                                    TARGET_LIST=
33                                    ('BackgroundError','Observation',
34                                                  'ObservationError','ObservationOperator','AlgorithmParameters',
35                                                  'UserPostAnalysis','Background',),),
36                    UserPostAnalysis=_F(FROM='String',
37                                        STRING=
38 """import numpy
39 import os
40 xa = ADD.get("Analysis")[0]
41 Innovation = ADD.get("Innovation")[0]
42 A = []
43 J = ADD.get("CostFunctionJ")[:]
44 ADD.setDiagnostic("PlotVectors", "J")
45 MonPlot = ADD.get("J")
46 if os.path.isfile("recherche_xx_Fonctionnelles.ps"):
47   os.remove("recherche_xx_Fonctionnelles.ps")
48 MonPlot.calculate([J,ADD.get("CostFunctionJb")[:],ADD.get("CostFunctionJo")[:]],
49     title = "Fonctionnelles J, Jb et Jo",
50     ltitle = ["J","Jb","Jo"],
51     xlabel = "Pas", ylabel = "Valeur",
52     filename = "recherche_xx_Fonctionnelles.ps",
53     pause = False )
54 nbmesures = 11 # De 0 vers 1 par pas de 0.1
55 instants = numpy.array([0.1*i for i in range(nbmesures)])
56 yo = []
57 for reponse in init_data['experience']:
58     for t,v in list(reponse):
59         if min(abs(t - instants)) < 1.e-8:
60             yo.append(v)
61 xb = []
62 Bornes = []
63 for parametre in init_data['parametres']:
64     xb.append( parametre[1] )
65     Bornes.append( parametre[2:4] )
66 B  = numpy.matrix(numpy.core.identity(len(xb)))
67 alpha  = 1.e14
68 B[0,0] = alpha * 100
69 B[1,1] = alpha * 10
70 B[2,2] = alpha * 1
71 # Calcul de la RMS
72 # ----------------
73 import test_aster_zzzz159a_aster_functions as Code_Aster
74 Hxa = Code_Aster.Calcul_Aster_Ponctuel( xa )
75 V1 = numpy.array(Hxa)
76 V2 = numpy.array(yo)
77 import math
78 rms = math.sqrt( ((V2 - V1)**2).sum() / float(V1.size) )
79 print
80 print "========="
81 print "Ebauche = ",xb
82 print "Analyse = ",xa
83 print "RMS     = ",rms
84 print
85 print "NbSteps = ",len(J)
86 print "J       = ",J
87 print
88 print "B[0,0]  = ",B[0,0]
89 print "B[1,1]  = ",B[1,1]
90 print "B[2,2]  = ",B[2,2]
91 print "Bornes  = ",Bornes
92 print "========="
93 print
94 """,),
95                    InputVariables=_F(NAMES=('YOUN__','DSDE__','SIGY__',),
96                                      SIZES=(1,1,1,),),
97                    OutputVariables=_F(NAMES=('REPONSE1','REPONSE2',),
98                                       SIZES=(11,11,),),);