Salome HOME
mise à jour catalogues Telemac branche v7p2
[tools/eficas.git] / Openturns_Study / OpenTURNS_Cata_Study_V8.py
1 # -*- coding: iso-8859-1 -*-
2 # Copyright (C) 2007-2013   EDF R&D
3 #
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License.
8 #
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # Lesser General Public License for more details.
13 #
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
17 #
18 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19 #
20
21 # --------------------------------------------------
22 # debut entete
23 # --------------------------------------------------
24
25 #from Accas import ASSD, JDC_CATA, AU_MOINS_UN, PROC, SIMP, FACT, OPER, MACRO, BLOC, A_VALIDATOR
26 from Accas import *
27
28 class loi      ( ASSD ) : pass
29 class variable ( ASSD ) : pass
30
31 import types
32 class Tuple:
33   def __init__(self,ntuple):
34     self.ntuple=ntuple
35
36   def __convert__(self,valeur):
37     if type(valeur) == types.StringType:
38       return None
39     if len(valeur) != self.ntuple:
40       return None
41     return valeur
42
43   def info(self):
44     return "Tuple de %s elements" % self.ntuple
45
46   __repr__=info
47   __str__=info
48
49 class Matrice:
50   def __init__(self,nbLigs=None,nbCols=None,methodeCalculTaille=None,formatSortie="ligne",valSup=None,valMin=None,structure=None):
51       self.nbLigs=nbLigs
52       self.nbCols=nbCols
53       self.methodeCalculTaille=methodeCalculTaille
54       self.formatSortie=formatSortie
55       self.valSup=valSup
56       self.valMin=valMin
57       self.structure=structure
58
59   def __convert__(self,valeur):
60     # Attention ne verifie pas grand chose
61     if type(valeur) != types.ListType :
62       return None
63     return valeur
64
65   def info(self):
66       return "Matrice %s x %s" % (self.nbLigs, self.nbCols)
67
68       __repr__=info
69       __str__=info
70
71
72 #CONTEXT.debug = 1
73 JdC = JDC_CATA ( code = 'OPENTURNS_STUDY',
74                  execmodul = None,
75                  regles = ( AU_MOINS_UN ( 'CRITERIA' ),
76                             AU_MOINS_UN ( 'MODEL' ),
77 #                            AVANT ( ('DISTRIBUTION', 'MODEL'), 'VARIABLE' ),
78 #                            A_CLASSER ( 'VARIABLE',                'CORRELATION' ),
79 #                            A_CLASSER ( 'VARIABLE',                'CRITERIA' ),
80 #                            A_CLASSER ( 'CORRELATION',             'CRITERIA' ),
81                             ),
82                  ) # Fin JDC_CATA
83
84
85 # --------------------------------------------------
86 # fin entete
87 # --------------------------------------------------
88
89 SIMULATION = PROC ( nom = "SIMULATION",
90              op = None,
91              docu = "",
92                
93   FileName = SIMP ( statut = "o",
94                     typ = ('Fichier', 'Wrapper Files (*.csv);;All Files (*)',),
95                     fr = "Nom du modele physique",
96  ),
97   SAMPLE = SIMP ( statut = "o",
98                  typ = "R",
99                  ),
100                
101   WrapperMessages = SIMP ( statut = "o",
102                  typ = "TXM",
103                  into = ( 'yes', 'no' ),
104                  defaut = 'no',
105                  fr = "Affichage du niveau de wrapper de la bibliotheque Open TURNS",
106                  ang = "Open TURNS library debug level print",
107                  ),
108                
109   UserMessages = SIMP ( statut = "o",
110                  typ = "TXM",
111                  into = ( 'yes', 'no' ),
112                  defaut = 'no',
113                  fr = "Affichage du niveau de user de la bibliotheque Open TURNS",
114                  ang = "Open TURNS library user level print",
115                  ),
116                
117   InfoMessages = SIMP ( statut = "o",
118                  typ = "TXM",
119                  into = ( 'yes', 'no' ),
120                  defaut = 'yes',
121                  fr = "Affichage du niveau de info de la bibliotheque Open TURNS",
122                  ang = "Open TURNS library info level print",
123                  ),
124                
125   WarningMessages = SIMP ( statut = "o",
126                  typ = "TXM",
127                  into = ( 'yes', 'no' ),
128                  defaut = 'yes',
129                  fr = "Affichage du niveau de warning de la bibliotheque Open TURNS",
130                  ang = "Open TURNS library warning level print",
131                  ),
132                
133   ErrorMessages = SIMP ( statut = "o",
134                  typ = "TXM",
135                  into = ( 'yes', 'no' ),
136                  defaut = 'yes',
137                  fr = "Affichage du niveau de error de la bibliotheque Open TURNS",
138                  ang = "Open TURNS library error level print",
139                  ),
140                
141 ) # Fin PROC SIMULATION
142 # Ordre Catalogue SIMULATION
143
144
145
146
147
148 #================================
149 # Definition des LOIS
150 #================================
151
152 # Nota : les variables de type OPER doivent etre en majuscules !
153 # Nota : les variables de type OPER doivent etre de premier niveau (pas imbriquees dans un autre type)
154 #VARIABLE2=OPER( nom= "VARIABLE2",
155              
156 #DISTRIBUTION = OPER ( nom = "DISTRIBUTION",
157 VARIABLE2=OPER(nom="VARIABLE2",
158                       sd_prod = variable,
159                       #sd_prod = None,
160                       op = None,
161                       fr = "Definitions des lois marginales utilisees par les variables d'entree", 
162                       
163  #VARIABLE = FACT (statut='f',max='**',
164  #             NOM=SIMP(statut = "o", typ = "TXM",),
165                       
166 #DISTRIBUTION= FACT(statut = "o",
167 #====
168 # Type de distribution
169 #====
170
171   Kind = SIMP ( statut = "o", typ = "TXM",
172                 into = ( "Beta",
173                          "Exponential",
174                          "Gamma",
175                          "Geometric",
176                          "Gumbel",
177                          "Histogram",
178                          "Laplace",
179                          "Logistic",
180                          "LogNormal",
181                          "MultiNomial",
182                          "NonCentralStudent",
183                          "Normal",
184                          "Poisson",
185                          "Rayleigh",
186                          "Student",
187                          "Triangular",
188                          "TruncatedNormal",
189                          "Uniform",
190                          #"UserDefined",
191                          "Weibull",
192                          ),
193                 fr = "Choix du type de la loi marginale",
194                 ang = "1D marginal distribution",
195                 defaut="Beta",
196                 ),
197
198 #====
199 # Definition des parametres selon le type de la loi
200 #====
201
202   BETA = BLOC ( condition = " Kind in ( 'Beta', ) ",
203
204                   Settings = SIMP ( statut = "o",
205                                        typ = "TXM",
206                                        max = 1,
207                                        into = ( "RT", "MuSigma" ),
208                                        defaut = "RT",
209                                        fr = "Parametrage de la loi beta",
210                                        ang = "Beta distribution parameter set",
211                                        ),
212
213                   RT_Parameters = BLOC ( condition = " Settings in ( 'RT', ) ",
214
215                                       R = SIMP ( statut = "o",
216                                                  typ = "R",
217                                                  max = 1,
218                                                  val_min = 0.,
219                                                  fr = "Parametre R de la loi | R > 0",
220                                                  ang = "R parameter | R > 0",
221                                                  defaut=1,
222                                                  ),
223
224                                       # T > R
225                                       T = SIMP ( statut = "o",
226                                                  typ = "R",
227                                                  max = 1,
228                                                  val_min = 0.,
229                                                  fr = "Parametre T de la loi | T > R",
230                                                  ang = "T parameter | T > R",
231                                                  defaut=2,
232                                                  ),
233
234                                       ), # Fin BLOC RT_Parameters
235
236
237                   MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ",
238
239                                       Mu = SIMP ( statut = "o",
240                                                   typ = "R",
241                                                   max = 1,
242                                                   fr = "Moyenne de la loi",
243                                                   ang = "Mean value",
244                                                   ),
245
246                                       Sigma = SIMP ( statut = "o",
247                                                      typ = "R",
248                                                      max = 1,
249                                                      val_min = 0.,
250                                                      fr = "Ecart type de la loi",
251                                                      ang = "Standard deviation",
252                                                      ),
253
254                                       ), # Fin BLOC MuSigma_Parameters
255
256
257                   A = SIMP ( statut = "o",
258                              typ = "R",
259                              max = 1,
260                              fr = "Borne inferieure du support de la loi",
261                              ang = "Support lower bound",
262                              ),
263
264                   # B > A
265                   B = SIMP ( statut = "o",
266                              typ = "R",
267                              max = 1,
268                              fr = "Borne superieure du support de la loi",
269                              ang = "Support upper bound",
270                              ),
271
272   ), # Fin BLOC BETA
273
274
275
276   EXPONENTIAL = BLOC ( condition = " Kind in ( 'Exponential', ) ",
277
278                          Lambda = SIMP ( statut = "o",
279                                          typ = "R",
280                                          max = 1,
281                                          val_min = 0.,
282                                          fr = "Parametre Lambda | Lambda > 0",
283                                          ang = "Lambda parameter | Lambda > 0",
284                                          ),
285
286                          Gamma = SIMP ( statut = "o",
287                                         typ = "R",
288                                         max = 1,
289                                         fr = "Borne inferieure du support de la loi",
290                                         ang = "Support lower bound",
291                                         ),
292
293   ), # Fin BLOC EXPONENTIAL
294
295
296
297   GAMMA = BLOC ( condition = " Kind in ( 'Gamma', ) ",
298
299                    Settings = SIMP ( statut = "o",
300                                         typ = "TXM",
301                                         max = 1,
302                                         into = ( "KLambda", "MuSigma" ),
303                                         defaut = "KLambda",
304                                         fr = "Parametrage de la loi gamma",
305                                         ang = "Gamma distribution parameter set",
306                                         ),
307
308                    KLambda_Parameters = BLOC ( condition = " Settings in ( 'KLambda', ) ",
309
310                                        K = SIMP ( statut = "o",
311                                                   typ = "R",
312                                                   max = 1,
313                                                   val_min = 0.,
314                                                   fr = "Parametre K de la loi | K > 0",
315                                                   ang = "K parameter | K > 0",
316                                                   ),
317
318                                        Lambda = SIMP ( statut = "o",
319                                                        typ = "R",
320                                                        max = 1,
321                                                        val_min = 0.,
322                                                        fr = "Parametre Lambda de la loi | Lambda > 0",
323                                                        ang = "Lambda parameter | Lambda > 0",
324                                                        ),
325
326                                        ), # Fin BLOC KLambda_Parameters
327
328
329                    MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ",
330
331                                        Mu = SIMP ( statut = "o",
332                                                    typ = "R",
333                                                    max = 1,
334                                                    fr = "Moyenne de la loi",
335                                                    ang = "Mean value",
336                                                    ),
337
338                                        Sigma = SIMP ( statut = "o",
339                                                       typ = "R",
340                                                       max = 1,
341                                                       val_min = 0.,
342                                                       fr = "Ecart type de la loi",
343                                                       ang = "Standard deviation",
344                                                       ),
345
346                                        ), # Fin BLOC MuSigma_Parameters
347
348                    Gamma = SIMP ( statut = "o",
349                                   typ = "R",
350                                   max = 1,
351                                   fr = "Borne inferieure du supoport de la loi",
352                                   ang = "Support lower bound",
353                                   ),
354
355
356   ), # Fin BLOC GAMMA
357
358
359
360   GEOMETRIC = BLOC ( condition = " Kind in ( 'Geometric', ) ",
361
362                        P = SIMP ( statut = "o",
363                                   typ = "R",
364                                   max = 1,
365                                   val_min = 0.,
366                                   val_max = 1.,
367                                   fr = "Parametre P | 0 < P < 1",
368                                   ang = "P parameter | 0 < P < 1",
369                                   ),
370
371   ), # Fin BLOC GEOMETRIC
372
373
374
375   GUMBEL = BLOC ( condition = " Kind in ( 'Gumbel', ) ",
376
377                     Settings = SIMP ( statut = "o",
378                                          typ = "TXM",
379                                          max = 1,
380                                          into = ( "AlphaBeta", "MuSigma" ),
381                                          defaut = "AlphaBeta",
382                                          fr = "Parametrage de la loi gumbel",
383                                          ang = "Gumbel distribution parameter set",
384                                          ),
385
386                     AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ",
387
388                                         Alpha = SIMP ( statut = "o",
389                                                        typ = "R",
390                                                        max = 1,
391                                                        val_min = 0.,
392                                                        fr = "Parametre Alpha de la loi | Alpha > 0",
393                                                        ang = "Alpha parameter | Alpha > 0",
394                                                        ),
395
396                                         Beta = SIMP ( statut = "o",
397                                                       typ = "R",
398                                                       max = 1,
399                                                       fr = "Parametre Beta de la loi",
400                                                       ang = "Beta parameter",
401                                                       ),
402
403                                         ), # Fin BLOC AlphaBeta_Parameters
404
405
406                     MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ",
407
408                                         Mu = SIMP ( statut = "o",
409                                                     typ = "R",
410                                                     max = 1,
411                                                     fr = "Moyenne de la loi",
412                                                     ang = "Mean value",
413                                                     ),
414
415                                         Sigma = SIMP ( statut = "o",
416                                                        typ = "R",
417                                                        max = 1,
418                                                        val_min = 0.,
419                                                        fr = "Ecart type de la loi",
420                                                        ang = "Standard deviation",
421                                                        ),
422
423                                         ), # Fin BLOC MuSigma_Parameters
424
425   ), # Fin BLOC GUMBEL
426
427
428
429   HISTOGRAM = BLOC ( condition = " Kind in ( 'Histogram', ) ",
430
431                        First = SIMP ( statut = "o",
432                                     typ = "R",
433                                     max = 1,
434                                     fr = "Borne inferieure du supoport de la loi",
435                                     ang = "Support lower bound",
436                                     ),
437
438                        # Il faut definir une collection de couples ( x,p ) 
439                        Values = SIMP ( statut = 'o',
440                                        typ = Tuple(2),
441                                        #max = '**', 
442                                        fr = "Liste de couples : largeur de classe, hauteur de classe",
443                                        ang = "Class bandwidth, class height couple list",
444                                        validators=VerifTypeTuple(('R','R')),
445                                        ),
446
447   ), # Fin BLOC HISTOGRAM
448
449
450
451   LAPLACE = BLOC ( condition = " Kind in ( 'Laplace', ) ",
452
453                    Lambda = SIMP ( statut = "o",
454                                    typ = "R",
455                                    max = 1,
456                                    val_min = 0.,
457                                    fr = "Parametre Lambda | Lambda > 0",
458                                    ang = "Lambda parameter | Lambda > 0",
459                                    ),
460                    
461                    Mu = SIMP ( statut = "o",
462                                typ = "R",
463                                max = 1,
464                                fr = "Moyenne de la loi",
465                                ang = "Mean value",
466                               ),
467
468   ), # Fin BLOC LAPLACE
469
470   LOGNORMAL = BLOC ( condition = " Kind in ( 'LogNormal', ) ",
471
472                      Settings = SIMP ( statut = "o",
473                                        typ = "TXM",
474                                        max = 1,
475                                        into = ( "MuSigmaLog", "MuSigma", "MuSigmaOverMu" ),
476                                        defaut = "MuSigmaLog",
477                                        fr = "Parametrage de la loi lognormale",
478                                        ang = "Lognormal distribution parameter set",
479                                        ),
480
481                      MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ",
482
483                                                  Mu = SIMP ( statut = "o",
484                                                              typ = "R",
485                                                              max = 1,
486                                                              fr = "Moyenne de la loi",
487                                                              ang = "Mean value",
488                                                              ),
489
490                                                  Sigma = SIMP ( statut = "o",
491                                                                 typ = "R",
492                                                                 max = 1,
493                                                                 val_min = 0.,
494                                                                 fr = "Ecart type de la loi",
495                                                                 ang = "Standard deviation",
496                                                                 ),
497
498                                                  ), # Fin BLOC MuSigma_Parameters
499
500                      MuSigmaOverMu_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaOverMu', ) ",
501
502                                                  Mu = SIMP ( statut = "o",
503                                                              typ = "R",
504                                                              max = 1,
505                                                              fr = "Moyenne de la loi",
506                                                              ang = "Mean value",
507                                                              ),
508
509                                                  SigmaOverMu = SIMP ( statut = "o",
510                                                                 typ = "R",
511                                                                 max = 1,
512                                                                 val_min = 0.,
513                                                                 fr = "Rapport ecart type / moyenne de la loi",
514                                                                 ang = "Standard deviation / mean value ratio",
515                                                                 ),
516
517                                                  ), # Fin BLOC MuSigmaOverMu_Parameters
518
519                      MuSigmaLog_Parameters = BLOC ( condition = " Settings in ( 'MuSigmaLog', ) ",
520
521                                                     MuLog = SIMP ( statut = "o",
522                                                                    typ = "R",
523                                                                    max = 1,
524                                                                    fr = "Moyenne du log",
525                                                                    ang = "Log mean value",
526                                                                    ),
527
528                                                     SigmaLog = SIMP ( statut = "o",
529                                                                       typ = "R",
530                                                                       max = 1,
531                                                                       val_min = 0.,
532                                                                       fr = "Ecart type du log",
533                                                                       ang = "Log standard deviation",
534                                                                       ),
535                                             
536                                                     ), # Fin BLOC MuSigmaLog_Parameters
537
538                      Gamma = SIMP ( statut = "o",
539                                     typ = "R",
540                                     max = 1,
541                                     fr = "Borne inferieure du support de la loi",
542                                     ang = "Support lower bound",
543                                     ),
544
545    ), # Fin BLOC LOGNORMAL
546
547
548
549    LOGISTIC = BLOC ( condition = " Kind in ( 'Logistic', ) ",
550
551                        Alpha = SIMP ( statut = "o",
552                                       typ = "R",
553                                       max = 1,
554                                       fr = "Borne inferieure du supoport de la loi",
555                                       ang = "Support lower bound",
556                                       ),
557
558                        Beta = SIMP ( statut = "o",
559                                      typ = "R",
560                                      max = 1,
561                                      val_min = 0.,
562                                      fr = "Parametre Beta de la loi | Beta > 0",
563                                      ang = "Beta parameter | Beta > 0",
564                                      ),
565
566    ), # Fin BLOC LOGISTIC
567
568
569
570    MULTINOMIAL = BLOC ( condition = " Kind in ( 'MultiNomial', ) ",
571                          
572                          N = SIMP ( statut = "o",
573                                     typ = "I",
574                                     max = 1,
575                                     fr = "Parametre N de la loi | N > 0",
576                                     ang = "N parameter | N > 0",
577                                     ),
578
579                        # Il faut definir une collection de couples ( x,p ) 
580                        Values = SIMP ( statut = 'o',
581                                        typ = "R",
582                                        max = '**',
583                                        fr = "Liste de probabilités",
584                                        ang = "Probability list",
585                                        validators=VerifTypeTuple(('R','R')),
586                                        ),
587
588    ), # Fin BLOC MULTINOMIAL
589
590
591   NONCENTRALSTUDENT = BLOC ( condition = " Kind in ( 'NonCentralStudent', ) ",
592
593                    Nu = SIMP ( statut = "o",
594                                typ = "R",
595                                max = 1,
596                                fr = "Parametre Nu de la loi | Nu > 0",
597                                ang = "Nu parameter | Nu > 0",
598                               ),
599
600                    Delta = SIMP ( statut = "o",
601                                   typ = "R",
602                                   max = 1,
603                                   fr = "Parametre Delta de la loi | Delta > 0",
604                                   ang = "Delta parameter | Delta > 0",
605                                   ),
606                    
607                    Gamma = SIMP ( statut = "o",
608                                   typ = "R",
609                                   max = 1,
610                                   fr = "Parametre Gamma de centrage de la loi",
611                                   ang = "Gamma parameter",
612                                   ),
613
614   ), # Fin BLOC NONCENTRALSTUDENT
615
616
617    NORMAL = BLOC ( condition = " Kind in ( 'Normal', ) ",
618
619                     Mu = SIMP ( statut = "o",
620                                 typ = "R",
621                                 max = 1,
622                                 fr = "Moyenne de la loi",
623                                 ang = "Mean value",
624                                 ),
625
626                    Sigma = SIMP ( statut = "o",
627                                   typ = "R",
628                                   max = 1,
629                                   val_min = 0.,
630                                   fr = "Ecart type de la loi",
631                                   ang = "Standard deviation",
632                                   ),
633
634    ), # Fin BLOC NORMAL
635
636
637
638    POISSON = BLOC ( condition = " Kind in ( 'Poisson', ) ",
639
640                      Lambda = SIMP ( statut = "o",
641                                      typ = "R",
642                                      max = 1,
643                                      val_min = 0.,
644                                      fr = "Parametre Lambda de la loi | Lambda > 0",
645                                      ang = "Lambda parameter | Lambda > 0",
646                                      ),
647
648    ), # Fin BLOC POISSON
649
650
651
652   RAYLEIGH = BLOC ( condition = " Kind in ( 'Rayleigh', ) ",
653
654                    Sigma = SIMP ( statut = "o",
655                                   typ = "R",
656                                   max = 1,
657                                   fr = "Parametre Sigma de la loi | Sigma > 0",
658                                   ang = "Sigma parameter | Sigma > 0",
659                                   ),
660
661                    Gamma = SIMP ( statut = "o",
662                                   typ = "R",
663                                   max = 1,
664                                   fr = "Borne inferieure du support de la loi",
665                                   ang = "Support lower bound",
666                                   ),
667  ), # Fin BLOC RAYLEIGH
668
669
670    STUDENT = BLOC ( condition = " Kind in ( 'Student', ) ",
671
672                      Mu = SIMP ( statut = "o",
673                                  typ = "R",
674                                  max = 1,
675                                  fr = "Parametre Mu de la loi",
676                                  ang = "Mu parameter",
677                                  ),
678
679                      Nu = SIMP ( statut = "o",
680                                  typ = "R",
681                                  max = 1,
682                                  val_min = 2.,
683                                  fr = "Parametre Nu de la loi | Nu > 2",
684                                  ang = "Nu parameter | Nu > 2",
685                                  ),
686
687                    Sigma = SIMP ( statut = "o",
688                                   typ = "R",
689                                   max = 1,
690                                   fr = "Parametre Sigma de la loi",
691                                   ang = "Sigma parameter",
692                                   ),
693
694    ), # Fin BLOC STUDENT
695
696
697
698    TRIANGULAR = BLOC ( condition = " Kind in ( 'Triangular', ) ",
699
700                          A = SIMP ( statut = "o",
701                                     typ = "R",
702                                     max = 1,
703                                     fr = "Borne inferieure du support de la loi | A < M < B",
704                                     ang = "Support lower bound | A < M < B",
705                                     ),
706
707                          M = SIMP ( statut = "o",
708                                     typ = "R",
709                                     max = 1,
710                                     fr = "Mode de la loi | A < M < B",
711                                     ang = "Mode | A < M < B",
712                                     ),
713
714                          B = SIMP ( statut = "o",
715                                     typ = "R",
716                                     max = 1,
717                                     fr = "Borne superieure du support de la loi | A < M < B",
718                                     ang = "Support upper bound | A < M < B",
719                                     ),
720
721    ), # Fin BLOC TRIANGULAR
722
723
724
725    TRUNCATEDNORMAL = BLOC ( condition = " Kind in ( 'TruncatedNormal', ) ",
726
727                              MuN = SIMP ( statut = "o",
728                                           typ = "R",
729                                           max = 1,
730                                           fr = "Moyenne de la loi Normale non tronquée",
731                                           ang = "Mean value of the associated non truncated normal distribution",
732                                           ),
733
734                              SigmaN = SIMP ( statut = "o",
735                                              typ = "R",
736                                              max = 1,
737                                              val_min = 0.,
738                                              fr = "Ecart-type de la loi Normale non tronquée",
739                                              ang = "Standard deviation of the associated non truncated normal distribution",
740                                              ),
741
742                              A = SIMP ( statut = "o",
743                                         typ = "R",
744                                         max = 1,
745                                         fr = "Borne inferieure de la loi | A < B",
746                                         ang = "Lower bound | A < B",
747                                         ),
748
749                              B = SIMP ( statut = "o",
750                                         typ = "R",
751                                         max = 1,
752                                         fr = "Borne superieure de la loi | A < B",
753                                         ang = "Upper bound | A < B",
754                                         ),
755
756    ), # Fin BLOC TRUNCATEDNORMAL
757
758
759
760    UNIFORM = BLOC ( condition = " Kind in ( 'Uniform', ) ",
761
762                      A = SIMP ( statut = "o",
763                                 typ = "R",
764                                 max = 1,
765                                 fr = "Borne inferieure du support de la loi | A < B",
766                                 ang = "Support lower bound | A < B",
767                                 ),
768
769                      B = SIMP ( statut = "o",
770                                 typ = "R",
771                                 max = 1,
772                                 fr = "Borne superieure du support de la loi | A < B",
773                                 ang = "Support upper bound | A < B",
774                                 ),
775
776    ), # Fin BLOC UNIFORM
777
778
779
780    USERDEFINED = BLOC ( condition = " Kind in ( 'UserDefined', ) ",
781
782                            # Il faut definir une collection de couples ( x,p ) 
783                          Values = SIMP ( statut = 'o',
784                                          typ = 'R',
785                                          max = '**',
786                                          ),
787
788    ), # Fin BLOC USERDEFINED
789
790
791
792    WEIBULL = BLOC ( condition = " Kind in ( 'Weibull', ) ",
793
794                      Settings = SIMP ( statut = "o",
795                                           typ = "TXM",
796                                           max = 1,
797                                           into = ( "AlphaBeta", "MuSigma" ),
798                                           defaut = "AlphaBeta",
799                                           fr = "Parametrage de la loi weibull",
800                                           ang = "Weibull distribution parameter set",
801                                           ),
802
803                      AlphaBeta_Parameters = BLOC ( condition = " Settings in ( 'AlphaBeta', ) ",
804
805                                          Alpha = SIMP ( statut = "o",
806                                                         typ = "R",
807                                                         max = 1,
808                                                         val_min = 0.,
809                                                         fr = "Parametre Alpha de la loi | Alpha > 0",
810                                                         ang = "Alpha parameter | Alpha > 0",
811                                                         ),
812
813                                          Beta = SIMP ( statut = "o",
814                                                        typ = "R",
815                                                        max = 1,
816                                                        val_min = 0.,
817                                                        fr = "Parametre Beta de la loi | Beta > 0",
818                                                        ang = "Beta parameter | Beta > 0",
819                                                        ),
820
821                                          ), # Fin BLOC AlphaBeta_Parameters
822
823
824                      MuSigma_Parameters = BLOC ( condition = " Settings in ( 'MuSigma', ) ",
825
826                                          Mu = SIMP ( statut = "o",
827                                                      typ = "R",
828                                                      max = 1,
829                                                      fr = "Moyenne de la loi",
830                                                      ang = "Mean value",
831                                                      ),
832
833                                          Sigma = SIMP ( statut = "o",
834                                                         typ = "R",
835                                                         max = 1,
836                                                         val_min = 0.,
837                                                         fr = "Ecart type de la loi",
838                                                         ang = "Standard deviation",
839                                                         ),
840
841                                          ), # Fin BLOC MuSigma_Parameters
842
843                      Gamma = SIMP ( statut = "o",
844                                     typ = "R",
845                                     max = 1,
846                                     fr = "Borne inferieure du support de la loi",
847                                     ang = "Support lower bound",
848                                     ),
849
850     ), # Fin BLOC WEIBULL
851
852 #), # Fin OPER DISTRIBUTION
853 #), # Fin OPER DISTRIBUTION
854 ) # Fin OPER DISTRIBUTION
855
856
857
858 #================================
859 # Definition du modele physique
860 #================================
861
862
863 DETERMINISTICVARIABLE = OPER ( nom = "DETERMINISTICVARIABLE",
864             sd_prod = variable,
865             op = None,
866             fr = "Variable deterministe",
867             ang = "Deterministic variable",
868             UIinfo = {"groupes": ("CACHE")},
869             
870   N = SIMP ( statut = 'o',
871              typ = "TXM",
872              fr = "Nom",
873              ang = "Name",
874              ),
875             
876   T = SIMP ( statut = 'o',
877              defaut = "in",
878              into = ( "in" , "out", ),
879              typ = "TXM",
880              fr = "Type",
881              ang = "Type",
882              ),
883             
884   R = SIMP ( statut = 'o',
885              defaut = 0,
886              typ = "I",
887              fr = "Rang",
888              ang = "Rank",
889              ),
890             
891 ) # Fin OPER DETERMINISTICVARIABLE
892 # Ordre Catalogue DETERMINISTICVARIABLE
893
894
895
896 import opsOT
897 MODEL = MACRO ( nom = "MODEL",
898                 op = None,
899                 UIinfo = { "groupes" : ( "Gestion du travail", ) },
900                 fr = "Chargement du wrapper du modele physique",
901                 ang = "Physical model wrapper load",
902                 sd_prod = opsOT.INCLUDE,
903                 op_init = opsOT.INCLUDE_context,
904                 fichier_ini = 1,
905                
906   FileName = SIMP ( statut = "o",
907                     typ = ('Fichier', 'Wrapper Files (*.xml);;All Files (*)',),
908                     fr = "Nom du modele physique",
909                     ang = "Physical model identifier",
910                     ),
911                
912 ) # Fin PROC MODEL
913 # Ordre Catalogue MODEL
914
915
916
917
918 VARIABLE = PROC ( nom = "VARIABLE",
919                   op = None,
920                   docu = "",
921                   fr = "Variable probabiliste",
922                   ang = "Probabilistic variable",
923
924   ModelVariable = SIMP ( statut = "o",
925                          typ = ( variable, ),
926                          fr = "Variable d'entrée du modèle",
927                          ang = "Input variable of the model",
928                          ),
929
930   Distribution = SIMP ( statut = "o",
931                         typ = ( loi, ),
932                         fr = "Modélisation probabiliste",
933                         ang = "Probabilistic modelisation",
934                         ),
935                   
936 ) # Fin PROC VARIABLE
937 # Ordre Catalogue VARIABLE
938
939
940 CORRELATION = PROC ( nom = 'CORRELATION',
941                      op = None,
942                      docu = "",
943                      fr = "Correlation entre variables",
944                      ang = "Variable correlation",
945
946   Copula = SIMP ( statut = "o",
947                   typ = 'TXM',
948                   into = ( "Independent", "Normal" ),
949                   defaut = "Independent",
950                   fr = "Type de la copule",
951                   ang = "Copula kind",
952                   ),
953
954   Matrix = BLOC ( condition = "Copula in ( 'Normal', )",
955                   
956     CorrelationMatrix = SIMP ( statut = "o",
957                                typ = Matrice(nbLigs=None,
958                                              nbCols=None,
959                                              methodeCalculTaille='NbDeVariables',
960                                              valSup=1,
961                                              valMin=-1,
962                                              structure="symetrique"),
963                                fr = "Matrice de correlation entre les variables d'entree",
964                                ang = "Correlation matrix for input variables",
965                                ),
966   ), # Fin BLOC Matrix
967
968
969 ) # Fin PROC CORRELATION
970 # Ordre Catalogue CORRELATION
971
972
973
974
975
976 #================================
977 # Definition de l'etude
978 #================================
979
980 # Nota : les variables de type PROC doivent etre en majuscules !
981 CRITERIA = PROC ( nom = "CRITERIA",
982                   op = None,
983                   docu = "",
984                   fr = "Critère de l'étude d'incertitudes",
985                   ang = "Uncertainty study criteria",
986
987
988
989   Type = SIMP ( statut = "o",
990                 typ = "TXM",
991                 into = ( "Min/Max", "Central Uncertainty", "Threshold Exceedence" ),
992                 fr = "Type du critère",
993                 ang = "Criteria type",
994                 ),
995
996
997
998
999
1000
1001
1002   MinMax = BLOC ( condition = " Type in ( 'Min/Max', ) ",
1003
1004                   Method = SIMP ( statut = "o",
1005                                   typ = "TXM",
1006                                   into = ( "Experiment Plane", "Random Sampling" ),
1007                                   fr = "Methode",
1008                                   ang = "Method",
1009                                   ),
1010                   # UC 3.1.1
1011                   ExperimentPlaneSettings = BLOC ( condition = " Method in ( 'Experiment Plane', ) ",
1012
1013                           ExperimentPlane = SIMP ( statut = "o",
1014                                                    typ = "TXM",
1015                                                    into = ( "Axial", "Factorial", "Composite", ),
1016                                                    fr = "Type du plan d'expérience",
1017                                                    ang = "Experiment plane type",
1018                                                    ),
1019
1020                           Levels = SIMP ( statut = "o",
1021                                           typ = "R",
1022                                           val_min = 0.0,
1023                                           max = '**',    
1024                                           fr = "Liste de niveaux dans chaque direction",
1025                                           ang = "Levels in each direction",
1026                                           ),
1027
1028                           # Scaled Vector
1029                           UnitPerDimension = SIMP ( statut = "o",
1030                                           typ = "R",
1031                                           max = '**',    
1032                                           fr = "Unité par dimension (autant que de variables declarées)",
1033                                           ang = "Units per dimension (as much as declared variables)",
1034                                           ),
1035
1036                           # Translation Vector
1037                           Center = SIMP ( statut = "o",
1038                                           typ = "R",
1039                                           max = '**',    
1040                                           fr = "Centre du plan d'expérience",
1041                                           ang = "Experiment plan center",
1042                                           ),
1043
1044                     ), # Fin BLOC ExperimentPlaneSettings
1045
1046
1047
1048                   RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ",
1049
1050                           SimulationsNumber = SIMP ( statut = "o",
1051                                                 typ = "I",
1052                                                 val_min = 1,
1053                                                 fr = "Nombre de points",
1054                                                 ang = "Points number",
1055                                                 ),
1056
1057                     ), # Fin BLOC RandomSamplingSettings
1058
1059                   Result = SIMP (  statut = "o",
1060                                    typ = "TXM",
1061                                    into = ( "Min/Max", ),
1062                                    defaut = "Min/Max",
1063                                    fr = "Le minimum et le maximum de la variable d'intérêt",
1064                                    ang = "The min and max values",
1065                                    ),
1066
1067
1068   ), # Fin BLOC MinMax
1069
1070
1071
1072
1073   CentralUncertainty = BLOC ( condition = " Type in ( 'Central Uncertainty', ) ",
1074
1075                   Method = SIMP ( statut = "o",
1076                                   typ = "TXM",
1077                                   into = ( "Taylor Variance Decomposition", "Random Sampling" ),
1078                                   fr = "Methode",
1079                                   ang = "Method",
1080                                   ),
1081                               
1082                   # UC 3.2.
1083                   TaylorVarianceDecompositionSettings = BLOC ( condition = " Method in ( 'Taylor Variance Decomposition', ) ",
1084
1085                       Result = FACT ( statut = "o",
1086                                       min = 1,
1087                                       max = "**",
1088
1089                               MeanFirstOrder = SIMP ( statut = "o",
1090                                                 typ = 'TXM',
1091                                                 into = ( 'yes', 'no' ),
1092                                                 defaut = 'yes',
1093                                                 max = 1,
1094                                                 fr = "Moyenne au premier ordre",
1095                                                 ang = "MeanFirstOrder",
1096                                                 ),
1097
1098                               StandardDeviationFirstOrder = SIMP ( statut = "o",
1099                                                                    typ = 'TXM',
1100                                                                    into = ( 'yes', 'no' ),
1101                                                                    defaut = 'yes',
1102                                                                    max = 1,
1103                                                                    fr = "Ecart-type au premier ordre",
1104                                                                    ang = "StandardDeviationFirstOrder",
1105                                                                    ),
1106
1107                               MeanSecondOrder = SIMP ( statut = "o",
1108                                                        typ = 'TXM',
1109                                                        into = ( 'yes', 'no' ),
1110                                                        defaut = 'no',
1111                                                        max = 1,
1112                                                        fr = "Moyenne au second ordre",
1113                                                        ang = "MeanSecondOrder",
1114                                                        ),
1115
1116                               ImportanceFactor = SIMP ( statut = "o",
1117                                                         typ = 'TXM',
1118                                                         into = ( 'yes', 'no' ),
1119                                                         defaut = 'yes',
1120                                                         max = 1,
1121                                                         fr = "Facteur d'importance pour variable de sortie scalaire",
1122                                                         ang = "ImportanceFactor",
1123                                                         ),
1124                               ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ",
1125
1126                                      ImportanceFactorDrawingFilename = SIMP ( statut = "o",
1127                                                                               typ = "TXM",
1128                                                                               max = 1,
1129                                                                               fr = "Nom du fichier graphique des facteurs d'importance",
1130                                                                               ang = "Importance Factor Drawing Filename",
1131                                                                               ),
1132                                                                              
1133
1134                               ), # Fin BLOC ImportanceFactorSettings
1135                                       
1136                       ), # Fin FACT Result
1137                                                                
1138                   ), # Fin BLOC TaylorVarianceDecompositionSettings
1139
1140
1141
1142                   RandomSamplingSettings = BLOC ( condition = " Method in ( 'Random Sampling', ) ",
1143
1144                           SimulationsNumber = SIMP ( statut = "o",
1145                                                 typ = "I",
1146                                                 val_min = 1,
1147                                                 fr = "Nombre de points",
1148                                                 ang = "Points number",
1149                                                 ),
1150
1151                        Result = FACT ( statut = "o",
1152                                       min = 1,
1153                                       max = "**",
1154
1155                               EmpiricalMean = SIMP ( statut = "o",
1156                                                      typ = 'TXM',
1157                                                      into = ( 'yes', 'no' ),
1158                                                      defaut = 'yes',
1159                                                      max = 1,
1160                                                      fr = "Moyenne empirique",
1161                                                      ang = "Empirical mean",
1162                                                      ),
1163
1164                               EmpiricalStandardDeviation = SIMP ( statut = "o",
1165                                                                   typ = 'TXM',
1166                                                                   into = ( 'yes', 'no' ),
1167                                                                   defaut = 'yes',
1168                                                                   max = 1,
1169                                                                   fr = "Ecart-type empirique",
1170                                                                   ang = "Empirical standard deviation",
1171                                                                   ),
1172
1173                               EmpiricalQuantile = SIMP ( statut = "o",
1174                                                          typ = 'TXM',
1175                                                          into = ( 'yes', 'no' ),
1176                                                          defaut = 'yes',
1177                                                          max = 1,
1178                                                          fr = "Quantile empirique",
1179                                                          ang = "Empirical quantile",
1180                                                          ),
1181
1182                               EmpiricalQuantileSettings = BLOC ( condition = " EmpiricalQuantile in ( 'yes', ) ",
1183
1184                                   EmpiricalQuantile_Order = SIMP ( statut = "o",
1185                                                                    typ = 'R',
1186                                                                    defaut = 0.95,
1187                                                                    max = 1,
1188                                                                    val_min = 0.0,
1189                                                                    val_max = 1.0,
1190                                                                    fr = "Ordre du quantile empirique",
1191                                                                    ang = "Empirical quantile order",
1192                                                                    ),
1193
1194                               ), # Fin BLOC EmpiricalQuantileSettings
1195
1196                               CorrelationAnalysis = SIMP ( statut = "o",
1197                                                             typ = 'TXM',
1198                                                             into = ( 'yes', 'no' ),
1199                                                             defaut = 'yes',
1200                                                             max = 1,
1201                                                             fr = "Correlations analysees",
1202                                                             ang = "Analysed correlations",
1203                                                             ),
1204
1205                               KernelSmoothing = SIMP ( statut = "o",
1206                                                        typ = 'TXM',
1207                                                        into = ( 'yes', 'no' ),
1208                                                        defaut = 'yes',
1209                                                        max = 1,
1210                                                        fr = "Kernel smoothing de l'echantillon",
1211                                                        ang = "Kernel smoothing of the sample",
1212                                                        ),
1213
1214                               KernelSmoothingSettings = BLOC ( condition = " KernelSmoothing in ( 'yes', ) ",
1215
1216                                      KernelSmoothingDrawingFilename = SIMP ( statut = "o",
1217                                                                               typ = "TXM",
1218                                                                               max = 1,
1219                                                                               fr = "Nom du fichier graphique de la reconstruction a noyau",
1220                                                                               ang = "Kernel Smoothing Drawing Filename",
1221                                                                               ),
1222                                                                              
1223
1224                               ), # Fin BLOC KernelSmoothingSettings
1225                                       
1226                       ), # Fin FACT Result
1227                                                                
1228                   ), # Fin BLOC RandomSamplingSettings
1229
1230   ), # Fin BLOC CentralUncertainty
1231
1232
1233
1234
1235   ThresholdExceedence = BLOC ( condition = " Type in ( 'Threshold Exceedence', ) ",
1236
1237          Event =  FACT ( statut = "o",
1238                          min = 1,
1239                          max = 1,
1240
1241                          Threshold = SIMP ( statut = "o",
1242                                             typ = "R",
1243                                             max = 1,
1244                                             fr = "Le seuil de defaillance",
1245                                             ang = "Failure threshold",
1246                                             ),
1247
1248                          ComparisonOperator = SIMP ( statut = "o",
1249                                                      typ = "TXM",
1250                                                      max = 1,
1251                                                      into = ( "Less", "LessOrEqual", "Equal", "GreaterOrEqual", "Greater" ),
1252                                                      fr = "Que faut-il ne pas depasser : un maximum ou un minimum",
1253                                                      ang = "What is the failure threshold : maximum or minimum",
1254                                                      ),
1255          ), # Fin FACT Event
1256                          
1257
1258          Method = SIMP ( statut = "o",
1259                          typ = "TXM",
1260                          into = ( "Simulation", "FORM_SORM" ),
1261                          fr = "Methode",
1262                          ang = "Method",
1263                          ),
1264
1265          SimulationSettings = BLOC ( condition = " Method in ( 'Simulation', ) ",
1266
1267                Algorithm = SIMP ( statut = "o",
1268                                   typ = "TXM",
1269                                   into = ( "MonteCarlo", "LHS", "ImportanceSampling" ),
1270                                   fr = "Algorithme de simulation",
1271                                   ang = "Simulation algorithm",
1272                                   ),
1273
1274                                  
1275                RandomGenerator = FACT ( statut = "o",
1276                                         min = 1,
1277                                         max = 1,
1278
1279                            SeedToBeSet = SIMP ( statut = "o",
1280                                                 typ = 'TXM',
1281                                                 into = ( 'yes', 'no' ),
1282                                                 defaut = 'no',
1283                                                 max = 1,
1284                                                 fr = "La racine du generateur aleatoire doit-elle etre positionnee ?",
1285                                                 ang = "Does the random generator seed need to be set ?",
1286                                                 ),
1287
1288                            SeedSettings = BLOC ( condition = " SeedToBeSet in ( 'yes', ) ",
1289
1290                                                  RandomGeneratorSeed = SIMP ( statut = "o",
1291                                                                               typ = "I",
1292                                                                               max = 1,
1293                                                                               fr = "Racine du generateur aleatoire",
1294                                                                               ang = "Random generator seed",
1295                                                                               ),
1296
1297                                                ), # Fin BLOC SeedSettings
1298
1299                ), # Fin FACT RandomGenerator
1300
1301
1302                BlockSize = SIMP ( statut = "o",
1303                                   typ = "I",
1304                                   max = 1,
1305                                   val_min = 1,
1306                                   defaut = 1,
1307                                   fr = "Nombre de calculs realises en bloc",
1308                                   ang = "Number of computations as a block",
1309                                   ),
1310
1311                MaximumOuterSampling = SIMP ( statut = "o",
1312                                              typ = "I",
1313                                              max = 1,
1314                                              val_min = 1,
1315                                              fr = "Maximum d'iterations externes",
1316                                              ang = "Maximum outer Sampling value",
1317                                              ),
1318
1319                MaximumCoefficientOfVariation = SIMP ( statut = "o",
1320                                                       typ = "R",
1321                                                       max = 1,
1322                                                       defaut = 0.1,
1323                                                       val_min = 0.0,
1324                                                       val_max = 1.0,
1325                                                       fr = "Coefficient de variation maximum",
1326                                                       ang = "Maximum coefficient of variation"
1327                                                       ),
1328
1329                ImportanceSamplingSettings = BLOC ( condition = " Algorithm in ( 'ImportanceSampling', ) ",
1330
1331                             MeanVector = SIMP ( statut = "o",
1332                                                 typ = "R",
1333                                                 max = "**",
1334                                                 fr = "Moyenne",
1335                                                 ang = "Mean vector",
1336                                                 ),
1337
1338
1339                ), # Fin BLOC ImportanceSamplingSettings
1340
1341                Result = FACT ( statut = "o",
1342                                       min = 1,
1343                                       max = "**",
1344
1345                     Probability = SIMP ( statut = "o",
1346                                          typ = 'TXM',
1347                                          into = ( 'yes', ),
1348                                          defaut = 'yes',
1349                                          max = 1,
1350                                          fr = "Probabiblite",
1351                                          ang = "Probability",
1352                                          ),
1353
1354                     StandardDeviation = SIMP ( statut = "o",
1355                                          typ = 'TXM',
1356                                          into = ( 'yes', ),
1357                                          defaut = 'yes',
1358                                          max = 1,
1359                                          fr = "Ecart type",
1360                                          ang = "Standard deviation",
1361                                          ),
1362
1363                     ConfidenceInterval = SIMP ( statut = "o",
1364                                                 typ = 'TXM',
1365                                                 into = ( 'yes', 'no' ),
1366                                                 defaut = 'yes',
1367                                                 max = 1,
1368                                                 fr = "Intervale de confiance",
1369                                                 ang = "Confidence interval",
1370                                                 ),
1371
1372                     ConfidenceIntervalSettings = BLOC ( condition = " ConfidenceInterval in ( 'yes', ) ",
1373
1374                           Level = SIMP ( statut = "o",
1375                                          typ = 'R',
1376                                          defaut = 0.9,
1377                                          max = 1,
1378                                          val_min = 0.0,
1379                                          val_max = 1.0,
1380                                          fr = "Niveau de confiance",
1381                                          ang = "Confidence level",
1382                                          ),
1383                                                      
1384                     ), # Fin BLOC ConfidenceIntervalSettings
1385                                
1386                     VariationCoefficient = SIMP ( statut = "o",
1387                                                   typ = 'TXM',
1388                                                   into = ( 'yes', 'no' ),
1389                                                   defaut = 'yes',
1390                                                   max = 1,
1391                                                   fr = "Coefficient de variation",
1392                                                   ang = "Coefficient of variation",
1393                                                   ),
1394
1395                     SimulationsNumber = SIMP ( statut = "o",
1396                                              typ = 'TXM',
1397                                              into = ( 'yes', 'no' ),
1398                                              defaut = 'yes',
1399                                              max = 1,
1400                                              fr = "Nombre d'iterations",
1401                                              ang = "Iteration number",
1402                                              ),
1403
1404                     ConvergenceGraph = SIMP ( statut = "o",
1405                                              typ = 'TXM',
1406                                              into = ( 'yes', 'no' ),
1407                                              defaut = 'yes',
1408                                              max = 1,
1409                                              fr = "Graphe de convergence",
1410                                              ang = "Convergence graph",
1411                                              ),
1412                                
1413                     ConvergenceGraphSettings = BLOC ( condition = " ConvergenceGraph in ( 'yes', ) ",
1414
1415                                      ConvergenceDrawingFilename = SIMP ( statut = "o",
1416                                                                          typ = "TXM",
1417                                                                          max = 1,
1418                                                                          fr = "Nom du fichier graphique de la convergence",
1419                                                                          ang = "Convergence Drawing Filename",
1420                                                                          ),
1421                                                                              
1422
1423                               ), # Fin BLOC ConvergenceGraphSettings
1424                                       
1425              ), # Fin FACT Result
1426                                                                
1427
1428
1429          ), # Fin BLOC SimulationSettings
1430
1431
1432                                
1433          FORM_SORMSettings = BLOC ( condition = " Method in ( 'FORM_SORM', ) ",
1434
1435                 Approximation = SIMP ( statut = "o",
1436                                        typ = "TXM",
1437                                        defaut = "FirstOrder",
1438                                        into = ( "FirstOrder", "SecondOrder" ),
1439                                        max = 1,
1440                                        fr = "Approximation",
1441                                        ang = "Approximation",
1442                                        ),
1443
1444                 OptimizationAlgorithm = SIMP ( statut = "o",
1445                                                typ = "TXM",
1446                                                defaut = "Cobyla",
1447                                                into = ( "Cobyla", "AbdoRackwitz" ),
1448                                                max = 1,
1449                                                fr = "Methode d'optimisation",
1450                                                ang = "Optimization method",
1451                                                ),
1452
1453                                      
1454                 PhysicalStartingPoint = SIMP ( statut = "f",
1455                                                typ = "R",
1456                                                max = "**",
1457                                                fr = "Point de demarrage de l'algorithme iteratif",
1458                                                ang = "Initial point for iterative process",
1459                                                ),
1460
1461                 MaximumIterationsNumber = SIMP ( statut = "f",
1462                                                  typ = "I",
1463                                                  max = 1,
1464                                                  val_min = 1,
1465                                                  fr = "Nombre maximum d'iterations",
1466                                                  ang = "Maximum number of iterations",
1467                                                  ),
1468
1469                                      
1470                 MaximumAbsoluteError = SIMP ( statut = "o",
1471                                               typ = "R",
1472                                               max = 1,
1473                                               defaut = 1E-4,
1474                                               val_min = 0.0,
1475                                               fr = "Distance maximum absolue entre 2 iterations successives",
1476                                               ang = "Absolute maximum distance between 2 successive iterates",
1477                                               ),
1478
1479                 MaximumRelativeError = SIMP ( statut = "o",
1480                                                typ = "R",
1481                                                max = 1,
1482                                                defaut = 1E-4,
1483                                                val_min = 0.0,
1484                                                fr = "Distance maximum relative entre 2 iterations successives",
1485                                                ang = "Relative maximum distance between 2 successive iterates",
1486                                                ),
1487                                      
1488                 MaximumConstraintError = SIMP ( statut = "o",
1489                                                 typ = "R",
1490                                                 max = 1,
1491                                                 defaut = 1E-4,
1492                                                 val_min = 0.0,
1493                                                 fr = "Valeur maximum absolue de la fonction moins la valeur du niveau",
1494                                                 ang = "Maximum absolute value of the constraint function minus the level value",
1495                                                 ),
1496
1497                 ImportanceSampling = SIMP ( statut = "o",
1498                                             typ = 'TXM',
1499                                             into = ( 'yes', 'no' ),
1500                                             defaut = 'no',
1501                                             max = 1,
1502                                             fr = "Tirage d'importance au point de conception",
1503                                             ang = "Importance sampling at design point",
1504                                             ),
1505
1506                 FORMResult = BLOC ( condition = " Approximation in ( 'FirstOrder', ) ",
1507
1508                     Probability = SIMP ( statut = "o",
1509                                          typ = 'TXM',
1510                                          into = ( 'yes', ),
1511                                          defaut = 'yes',
1512                                          max = 1,
1513                                          fr = "Probabiblite",
1514                                          ang = "Probability",
1515                                          ),
1516
1517                     DesignPoint = SIMP ( statut = "o",
1518                                          typ = 'TXM',
1519                                          into = ( 'yes', 'no' ),
1520                                          defaut = 'yes',
1521                                          max = 1,
1522                                          fr = "Point de conception",
1523                                          ang = "Design point",
1524                                          ),
1525
1526                     HasoferReliabilityIndex = SIMP ( statut = "o",
1527                                                  typ = 'TXM',
1528                                                  into = ( 'yes', 'no' ),
1529                                                  defaut = 'yes',
1530                                                  max = 1,
1531                                                  fr = "Indice de fiabilite",
1532                                                  ang = "Reliability index",
1533                                                  ),
1534
1535                     ImportanceFactor = SIMP ( statut = "o",
1536                                               typ = 'TXM',
1537                                               into = ( 'yes', 'no' ),
1538                                               defaut = 'yes',
1539                                               max = 1,
1540                                               fr = "Facteur d'importance pour variable de sortie scalaire",
1541                                               ang = "Importance factor",
1542                                               ),
1543
1544                     ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ",
1545
1546                                      ImportanceFactorDrawingFilename = SIMP ( statut = "o",
1547                                                                               typ = "TXM",
1548                                                                               max = 1,
1549                                                                               fr = "Nom du fichier graphique des facteurs d'importance",
1550                                                                               ang = "Importance Factor Drawing Filename",
1551                                                                               ),
1552                                                                              
1553
1554                               ), # Fin BLOC ImportanceFactorSettings
1555                                       
1556                     SensitivityAnalysis = SIMP ( statut = "o",
1557                                                  typ = 'TXM',
1558                                                  into = ( 'yes', 'no' ),
1559                                                  defaut = 'yes',
1560                                                  max = 1,
1561                                                  fr = "Analyse de sensibilite",
1562                                                  ang = "Sensitivity analysis",
1563                                                  ),
1564
1565                     SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ",
1566
1567                             FORMEventProbabilitySensitivity = SIMP ( statut = "o",
1568                                                              typ = 'TXM',
1569                                                              into = ( 'yes', 'no' ),
1570                                                              defaut = 'yes',
1571                                                              max = 1,
1572                                                              fr = "Indice de fiabilite de Hasofer",
1573                                                              ang = "Hasofer reliability index",
1574                                                              ),
1575         
1576                             FORMEventProbabilitySensitivitySettings = BLOC ( condition = " FORMEventProbabilitySensitivity in ( 'yes', ) ",
1577
1578                                      FORMEventProbabilitySensitivityDrawingFilename = SIMP ( statut = "o",
1579                                                                          typ = "TXM",
1580                                                                          max = 1,
1581                                                                          fr = "Nom du fichier graphique des sensibilites",
1582                                                                          ang = "Sensitivity Drawing Filename",
1583                                                                          ),
1584                                                                              
1585
1586                               ), # Fin BLOC FORMEventProbabilitySensitivitySettings
1587                                       
1588                             HasoferReliabilityIndexSensitivity = SIMP ( statut = "o",
1589                                                              typ = 'TXM',
1590                                                              into = ( 'yes', 'no' ),
1591                                                              defaut = 'yes',
1592                                                              max = 1,
1593                                                              fr = "Indice de fiabilite de Hasofer",
1594                                                              ang = "Hasofer reliability index",
1595                                                              ),
1596         
1597                             HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ",
1598
1599                                      HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o",
1600                                                                          typ = "TXM",
1601                                                                          max = 1,
1602                                                                          fr = "Nom du fichier graphique des sensibilites",
1603                                                                          ang = "Sensitivity Drawing Filename",
1604                                                                          ),
1605                                                                              
1606
1607                               ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings
1608                                       
1609                     ), # Fin BLOC SensitivityAnalysisSettings
1610
1611                     FunctionCallsNumber = SIMP ( statut = "o",
1612                                                  typ = 'TXM',
1613                                                  into = ( 'yes', 'no' ),
1614                                                  defaut = 'yes',
1615                                                  max = 1,
1616                                                  fr = "Nombre d'appels a la fonction",
1617                                                  ang = "Function calls number",
1618                                                  ),
1619
1620
1621                 ), # Fin BLOC FORMResult
1622
1623
1624                 SORMResult = BLOC ( condition = " Approximation in ( 'SecondOrder', ) ",
1625
1626
1627                     TvedtApproximation = SIMP ( statut = "o",
1628                                                 typ = 'TXM',
1629                                                 into = ( 'yes', 'no' ),
1630                                                 defaut = 'yes',
1631                                                 max = 1,
1632                                                 fr = "Approximation de Tvedt",
1633                                                 ang = "Tvedt approximation",
1634                                                 ),
1635
1636                     HohenBichlerApproximation = SIMP ( statut = "o",
1637                                                        typ = 'TXM',
1638                                                        into = ( 'yes', 'no' ),
1639                                                        defaut = 'yes',
1640                                                        max = 1,
1641                                                        fr = "Approximation de HohenBichler",
1642                                                        ang = "HohenBichler approximation",
1643                                                        ),
1644
1645                     BreitungApproximation = SIMP ( statut = "o",
1646                                                    typ = 'TXM',
1647                                                    into = ( 'yes', 'no' ),
1648                                                    defaut = 'yes',
1649                                                    max = 1,
1650                                                    fr = "Approximation de Breitung",
1651                                                    ang = "Breitung approximation",
1652                                                    ),
1653
1654                     DesignPoint = SIMP ( statut = "o",
1655                                          typ = 'TXM',
1656                                          into = ( 'yes', 'no' ),
1657                                          defaut = 'yes',
1658                                          max = 1,
1659                                          fr = "Point de conception",
1660                                          ang = "Design point",
1661                                          ),
1662
1663                     ImportanceFactor = SIMP ( statut = "o",
1664                                               typ = 'TXM',
1665                                               into = ( 'yes', 'no' ),
1666                                               defaut = 'yes',
1667                                               max = 1,
1668                                               fr = "Facteur d'importance pour variable de sortie scalaire",
1669                                               ang = "Importance factor",
1670                                               ),
1671
1672                     ImportanceFactorSettings = BLOC ( condition = " ImportanceFactor in ( 'yes', ) ",
1673
1674                                      ImportanceFactorDrawingFilename = SIMP ( statut = "o",
1675                                                                               typ = "TXM",
1676                                                                               max = 1,
1677                                                                               fr = "Nom du fichier graphique des facteurs d'importance",
1678                                                                               ang = "Importance Factor Drawing Filename",
1679                                                                               ),
1680                                                                              
1681
1682                               ), # Fin BLOC ImportanceFactorSettings
1683                                       
1684                     SensitivityAnalysis = SIMP ( statut = "o",
1685                                                  typ = 'TXM',
1686                                                  into = ( 'yes', 'no' ),
1687                                                  defaut = 'yes',
1688                                                  max = 1,
1689                                                  fr = "Analyse de sensibilite",
1690                                                  ang = "Sensitivity analysis",
1691                                                  ),
1692
1693                     SensitivityAnalysisSettings = BLOC ( condition = " SensitivityAnalysis in ( 'yes', ) ",
1694
1695                             HasoferReliabilityIndexSensitivity = SIMP ( statut = "o",
1696                                                              typ = 'TXM',
1697                                                              into = ( 'yes', 'no' ),
1698                                                              defaut = 'yes',
1699                                                              max = 1,
1700                                                              fr = "Indice de fiabilite de Hasofer",
1701                                                              ang = "Hasofer reliability index",
1702                                                              ),
1703                                                                  
1704                             HasoferReliabilityIndexSensitivitySettings = BLOC ( condition = " HasoferReliabilityIndexSensitivity in ( 'yes', ) ",
1705
1706                                      HasoferReliabilityIndexSensitivityDrawingFilename = SIMP ( statut = "o",
1707                                                                          typ = "TXM",
1708                                                                          max = 1,
1709                                                                          fr = "Nom du fichier graphique des sensibilites",
1710                                                                          ang = "Sensitivity Drawing Filename",
1711                                                                          ),
1712                                                                              
1713
1714                               ), # Fin BLOC FHasoferReliabilityIndexSensitivitySettings
1715                                       
1716                     ), # Fin BLOC SensitivityAnalysisSettings
1717
1718                     FunctionCallsNumber = SIMP ( statut = "o",
1719                                                  typ = 'TXM',
1720                                                  into = ( 'yes', 'no' ),
1721                                                  defaut = 'yes',
1722                                                  max = 1,
1723                                                  fr = "Nombre d'appels a la fonction",
1724                                                  ang = "Function calls number",
1725                                                  ),
1726
1727
1728                 ), # Fin BLOC SecondOrder
1729
1730
1731                                      
1732         ), # Fin BLOC FORM_SORMSettings
1733
1734
1735                                
1736   ), # Fin BLOC ThresholdExceedence
1737
1738
1739
1740 ) # Fin PROC CRITERIA
1741 # Ordre Catalogue CRITERIA
1742
1743
1744
1745
1746
1747
1748