2 ASSIMILATION_STUDY(Study_name='aster_zzzz159a_LBFGSB',
3 Study_repertory='@prefix@/tests/daSalome',
6 Background=_F(INPUT_TYPE='Vector',
9 'test_aster_zzzz159a_background.py',),),
10 BackgroundError=_F(INPUT_TYPE='Matrix',
11 data=_F(FROM='Script',
13 'test_aster_zzzz159a_background_error.py',),),
14 Observation=_F(INPUT_TYPE='Vector',
15 data=_F(FROM='Script',
17 'test_aster_zzzz159a_observation.py',),),
18 ObservationError=_F(INPUT_TYPE='Matrix',
19 data=_F(FROM='Script',
21 'test_aster_zzzz159a_observation_error.py',),),
22 ObservationOperator=_F(INPUT_TYPE='Function',
23 data=_F(FROM='FunctionDict',
25 'test_aster_zzzz159a_functions.py',),),
26 AlgorithmParameters=_F(INPUT_TYPE='Dict',
27 data=_F(FROM='Script',
29 'test_aster_zzzz159a_init_algorithm_LBFGSB.py',),),
30 UserDataInit=_F(INIT_FILE=
31 'test_aster_zzzz159a_init_parameters.py',
33 ('BackgroundError','Observation',
34 'ObservationError','ObservationOperator','AlgorithmParameters',
35 'UserPostAnalysis','Background',),),
36 UserPostAnalysis=_F(FROM='String',
40 xa = ADD.get("Analysis")[0]
41 Innovation = ADD.get("Innovation")[0]
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",
54 nbmesures = 11 # De 0 vers 1 par pas de 0.1
55 instants = numpy.array([0.1*i for i in range(nbmesures)])
57 for reponse in init_data['experience']:
58 for t,v in list(reponse):
59 if min(abs(t - instants)) < 1.e-8:
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)))
73 import test_aster_zzzz159a_aster_functions as Code_Aster
74 Hxa = Code_Aster.Calcul_Aster_Ponctuel( xa )
78 rms = math.sqrt( ((V2 - V1)**2).sum() / float(V1.size) )
85 print "NbSteps = ",len(J)
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
95 InputVariables=_F(NAMES=('YOUN__','DSDE__','SIGY__',),
97 OutputVariables=_F(NAMES=('REPONSE1','REPONSE2',),