# -*- coding: utf-8 -*-
#
-# Copyright (C) 2008-2021 EDF R&D
+# Copyright (C) 2008-2023 EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
Vector = None,
VectorSerie = None,
):
- "Interface unique de definition de variables d'entrees par argument"
+ "Interface unique de définition de variables d'entrées par argument"
self.__case.register("set",dir(),locals(),None,True)
try:
if Concept in ("Background", "CheckingPoint", "ControlInput", "Observation"):
else:
raise ValueError("the variable named '%s' is not allowed."%str(Concept))
except Exception as e:
- if isinstance(e, SyntaxError): msg = "at %s: %s"%(e.offset, e.text)
+ if isinstance(e, SyntaxError): msg = " at %s: %s"%(e.offset, e.text)
else: msg = ""
raise ValueError(("during settings, the following error occurs:\n"+\
- "\n%s %s\n\nSee also the potential messages, "+\
+ "\n%s%s\n\nSee also the potential messages, "+\
"which can show the origin of the above error, "+\
"in the launching terminal.")%(str(e),msg))
Stored = False,
Scheduler = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "Background"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = State(
Stored = False,
Scheduler = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "CheckingPoint"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = State(
Stored = False,
Scheduler = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "ControlInput"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = State(
Stored = False,
Scheduler = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "Observation"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = State(
Stored = False,
ObjectMatrix = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "BackgroundError"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = Covariance(
Stored = False,
ObjectMatrix = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "ObservationError"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = Covariance(
Stored = False,
ObjectMatrix = None,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "EvolutionError"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = Covariance(
PerformanceProfile = None,
InputFunctionAsMulti = False,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "ObservationOperator"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = FullOperator(
PerformanceProfile = None,
InputFunctionAsMulti = False,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "EvolutionModel"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = FullOperator(
PerformanceProfile = None,
InputFunctionAsMulti = False,
Checked = False):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "ControlModel"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = FullOperator(
return 0
def setName(self, String=None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
self.__case.register("setName",dir(),locals())
if String is not None:
self.__name = str(String)
self.__StoredInputs["Name"] = self.__name
def setDirectory(self, String=None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
self.__case.register("setDirectory",dir(),locals())
if os.path.isdir(os.path.abspath(str(String))):
self.__directory = os.path.abspath(str(String))
Algorithm = None,
Parameters = None,
Script = None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "AlgorithmParameters"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = AlgorithmAndParameters(
def updateAlgorithmParameters(self,
Parameters = None,
Script = None):
- "Mise a jour d'un concept de calcul"
+ "Mise à jour d'un concept de calcul"
Concept = "AlgorithmParameters"
if Concept not in self.__adaoObject or self.__adaoObject[Concept] is None:
raise ValueError("\n\nNo algorithm registred, set one before updating parameters or executing\n")
Algorithm = None,
Parameters = None,
Script = None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "RegulationParameters"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = RegulationAndParameters(
def setSupplementaryParameters(self,
Parameters = None,
Script = None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "SupplementaryParameters"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept] = ExternalParameters(
def updateSupplementaryParameters(self,
Parameters = None,
Script = None):
- "Mise a jour d'un concept de calcul"
+ "Mise à jour d'un concept de calcul"
Concept = "SupplementaryParameters"
if Concept not in self.__adaoObject or self.__adaoObject[Concept] is None:
self.__adaoObject[Concept] = ExternalParameters(name = Concept)
Info = None,
ObjectFunction = None,
Scheduler = None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "Observer"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept].append( DataObserver(
Variable = None,
ObjectFunction = None,
):
- "Permet de retirer un observer à une ou des variable nommée"
+ "Permet de retirer un observer à une ou des variable nommées"
if "AlgorithmParameters" not in self.__adaoObject:
raise ValueError("No algorithm registred, ask for one before removing observers")
#
Template = None,
String = None,
Script = None):
- "Definition d'un concept de calcul"
+ "Définition d'un concept de calcul"
Concept = "UserPostAnalysis"
self.__case.register("set"+Concept, dir(), locals())
self.__adaoObject[Concept].append( repr(UserScript(
asString = String,
asScript = self.__with_directory(Script),
)))
+ return 0
# -----------------------------------------------------------
def get(self, Concept=None, noDetails=True ):
- "Recuperation d'une sortie du calcul"
+ "Récupération d'une sortie du calcul"
if Concept is not None:
try:
self.__case.register("get", dir(), locals(), Concept) # Break pickle in Python 2
# -----------------------------------------------------------
- def get_available_variables(self):
+ def __get_available_variables(self):
"""
Renvoie les variables potentiellement utilisables pour l'étude,
initialement stockées comme données d'entrées ou dans les algorithmes,
variables.sort()
return variables
- def get_available_algorithms(self):
+ def __get_available_algorithms(self):
"""
Renvoie la liste des algorithmes potentiellement utilisables, identifiés
par les chaînes de caractères.
files.sort()
return files
- def get_algorithms_main_path(self):
+ def __get_algorithms_main_path(self):
"""
Renvoie le chemin pour le répertoire principal contenant les algorithmes
"""
return self.__parent
- def add_algorithms_path(self, Path=None):
+ def __add_algorithms_path(self, Path=None):
"""
Ajoute au chemin de recherche des algorithmes un répertoire dans lequel
se trouve un sous-répertoire "daAlgorithms"
self.__adaoObject["AlgorithmParameters"].executePythonScheme( self.__adaoObject )
if "UserPostAnalysis" in self.__adaoObject and len(self.__adaoObject["UserPostAnalysis"])>0:
self.__objname = self.__retrieve_objname()
- __Upa = map(str, self.__adaoObject["UserPostAnalysis"])
- __Upa = eval("\n".join(__Upa))
- exec(__Upa, {}, {'self':self, 'ADD':self, 'case':self, 'adaopy':self, self.__objname:self})
+ for __UpaOne in self.__adaoObject["UserPostAnalysis"]:
+ __UpaOne = eval(str(__UpaOne))
+ exec(__UpaOne, {}, {'self':self, 'ADD':self, 'case':self, 'adaopy':self, self.__objname:self})
return 0
def __executeYACSScheme(self, FileName=None):
for level in reversed(inspect.stack()):
__names += [name for name, value in level.frame.f_locals.items() if value is self]
__names += [name for name, value in globals().items() if value is self]
- __names.remove('self') # Devrait toujours être trouvé, donc pas d'erreur
+ while 'self' in __names: __names.remove('self') # Devrait toujours être trouvé, donc pas d'erreur
if len(__names) > 0:
- logging.debug("Cet objet est appelé par au moins une variable :",__names)
self.__objname = __names[0]
else:
self.__objname = "ADD"