# ==============================================================================
if __name__ == "__main__":
print '\n AUTODIAGNOSTIC \n'
-
- OBJ = Persistence()
- OBJ.store( 2)
- OBJ.store( 3, Campagne="GR514")
- OBJ.store( 4, Campagne="GR514")
- OBJ.store( 5, Campagne="GR514")
- OBJ.store( 6, Campagne="CA206", CDF="c020")
- OBJ.store( 7, Campagne="GR514")
- OBJ.store( 8, Campagne="GR514", CDF="c020")
- OBJ.store( 9, Campagne="GR514", CDF="c020", BU=100.5)
- print
- print OBJ
- print
- print "Nombre d'items stockés..........................:", len(OBJ)
- print
- print "Mots-clé utilisés...............................:", OBJ.tagkeys()
- print
- print "Obtention de valeurs, clefs, items en fonction du filtrage"
- print """ OBJ.values()................................:""", OBJ.values()
- print """ OBJ.values(Campagne="GR514")................:""", OBJ.values(Campagne="GR514")
- print """ OBJ.values(Campagne="c020").................:""", OBJ.values(Campagne="c020")
- print """ OBJ.values(CDF="c020")......................:""", OBJ.values(CDF="c020")
- print """ OBJ.values(Campagne="GR514",CDF="c020").....:""", OBJ.values(Campagne="GR514",CDF="c020")
- print """ OBJ.values(Campagne=("GR514","CA206").......:""", OBJ.values(Campagne=("GR514","CA206"))
- print
- print """ OBJ.keys()..................................:""", OBJ.keys()
- print """ OBJ.keys(Campagne="GR514")..................:""", OBJ.keys(Campagne="GR514")
- print """ OBJ.keys(Campagne="c020")...................:""", OBJ.keys(Campagne="c020")
- print """ OBJ.keys(CDF="c020")........................:""", OBJ.keys(CDF="c020")
- print """ OBJ.keys(Campagne="GR514",CDF="c020").......:""", OBJ.keys(Campagne="GR514",CDF="c020")
- print """ OBJ.keys(Campagne=("GR514","CA206").........:""", OBJ.keys(Campagne=("GR514","CA206"))
- print
- print """ OBJ.items().................................:""", OBJ.items()
- print """ OBJ.items(Campagne="GR514").................:""", OBJ.items(Campagne="GR514")
- print """ OBJ.items(Campagne="c020")..................:""", OBJ.items(Campagne="c020")
- print """ OBJ.items(CDF="c020").......................:""", OBJ.items(CDF="c020")
- print """ OBJ.items(Campagne="GR514",CDF="c020")......:""", OBJ.items(Campagne="GR514",CDF="c020")
- print """ OBJ.items(Campagne=("GR514","CA206")........:""", OBJ.items(Campagne=("GR514","CA206"))
- print
- print "Obtention de valeurs de clefs particulières en fonction du filtrage"
- print """ OBJ.keys("Campagne")........................:""", OBJ.keys("Campagne")
- print """ OBJ.keys("CDF").............................:""", OBJ.keys("CDF")
- print """ OBJ.keys("CDF",Campagne="GR514")............:""", OBJ.keys("CDF",Campagne="GR514")
- print """ OBJ.keys("Campagne",CDF="c020").............:""", OBJ.keys("Campagne",CDF="c020")
- print """ OBJ.keys("CDF",CDF="c020")..................:""", OBJ.keys("CDF",CDF="c020")
- print """ OBJ.keys("BU")..............................:""", OBJ.keys("BU")
- print """ OBJ.keys("CDF",Campagne=("GR514","CA206")...:""", OBJ.keys("CDF",Campagne=("GR514","CA206"))
- print
- print """ OBJ.items("Campagne").......................:""", OBJ.items("Campagne")
- print """ OBJ.items("CDF")............................:""", OBJ.items("CDF")
- print """ OBJ.items("CDF",Campagne="GR514")...........:""", OBJ.items("CDF",Campagne="GR514")
- print """ OBJ.items("Campagne",CDF="c020")............:""", OBJ.items("Campagne",CDF="c020")
- print """ OBJ.items("CDF",CDF="c020").................:""", OBJ.items("CDF",CDF="c020")
- print """ OBJ.items("BU").............................:""", OBJ.items("BU")
- print """ OBJ.items("CDF",Campagne=("GR514","CA206")..:""", OBJ.items("CDF",Campagne=("GR514","CA206"))
- print
- print "Obtention de valeurs comme dans une liste"
- print """ OBJ[0]......................................:""", OBJ[0]
- print """ OBJ[1]......................................:""", OBJ[1]
- print """ OBJ[-1].....................................:""", OBJ[-1]
- print """ OBJ[2:4]....................................:""", OBJ[2:4]
- print """ OBJ[:]......................................:""", OBJ[:]
- print """ len(OBJ)....................................:""", len(OBJ)
- print """ OBJ.count(4)................................:""", OBJ.count("4")
- print """ OBJ.index(4)................................:""", OBJ.index("4")
- print """ OBJ.index(9)................................:""", OBJ.index("9")
- print
-
- print "======> Un flottant"
- OBJET_DE_TEST = OneScalar("My float", unit="cm")
- OBJET_DE_TEST.store( 5.)
- OBJET_DE_TEST.store(-5.)
- OBJET_DE_TEST.store( 1.)
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Valeurs par pas :"
- print " La moyenne :", OBJET_DE_TEST.means()
- print " L'écart-type :", OBJET_DE_TEST.stds()
- print " La somme :", OBJET_DE_TEST.sums()
- print " Le minimum :", OBJET_DE_TEST.mins()
- print " Le maximum :", OBJET_DE_TEST.maxs()
- print "Valeurs globales :"
- print " La moyenne :", OBJET_DE_TEST.mean()
- print " L'écart-type :", OBJET_DE_TEST.std()
- print " La somme :", OBJET_DE_TEST.sum()
- print " Le minimum :", OBJET_DE_TEST.min()
- print " Le maximum :", OBJET_DE_TEST.max()
- print " La somme cumulée :", OBJET_DE_TEST.cumsum()
- print "Taille \"shape\" :", OBJET_DE_TEST.shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Un flottant"
- OBJET_DE_TEST = OneScalar("My float", unit="cm")
- OBJET_DE_TEST.store( 5., step="azerty")
- OBJET_DE_TEST.store(-5., step="poiuyt")
- OBJET_DE_TEST.store( 1., step="azerty")
- OBJET_DE_TEST.store( 0., step="xxxxxx")
- OBJET_DE_TEST.store( 5., step="poiuyt")
- OBJET_DE_TEST.store(-5., step="azerty")
- OBJET_DE_TEST.store( 1., step="poiuyt")
- print "Les noms de pas :", OBJET_DE_TEST.keys("step")
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Valeurs identiques :", OBJET_DE_TEST.values( step = "azerty" )
- print "Valeurs identiques :", OBJET_DE_TEST.values( step = "poiuyt" )
- del OBJET_DE_TEST
- print
-
- print "======> Un entier"
- OBJET_DE_TEST = OneScalar("My int", unit="cm", basetype=int)
- OBJET_DE_TEST.store( 5 )
- OBJET_DE_TEST.store(-5 )
- OBJET_DE_TEST.store( 1.)
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Valeurs par pas :"
- print " La moyenne :", OBJET_DE_TEST.means()
- print " L'écart-type :", OBJET_DE_TEST.stds()
- print " La somme :", OBJET_DE_TEST.sums()
- print " Le minimum :", OBJET_DE_TEST.mins()
- print " Le maximum :", OBJET_DE_TEST.maxs()
- print "Valeurs globales :"
- print " La moyenne :", OBJET_DE_TEST.mean()
- print " L'écart-type :", OBJET_DE_TEST.std()
- print " La somme :", OBJET_DE_TEST.sum()
- print " Le minimum :", OBJET_DE_TEST.min()
- print " Le maximum :", OBJET_DE_TEST.max()
- print " La somme cumulée :", OBJET_DE_TEST.cumsum()
- print "Taille \"shape\" :", OBJET_DE_TEST.shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Un booléen"
- OBJET_DE_TEST = OneScalar("My bool", unit="", basetype=bool)
- OBJET_DE_TEST.store( True )
- OBJET_DE_TEST.store( False )
- OBJET_DE_TEST.store( True )
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Taille \"shape\" :", OBJET_DE_TEST.shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Un vecteur de flottants"
- OBJET_DE_TEST = OneVector("My float vector", unit="cm")
- OBJET_DE_TEST.store( (5 , -5) )
- OBJET_DE_TEST.store( (-5, 5 ) )
- OBJET_DE_TEST.store( (1., 1.) )
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Valeurs par pas :"
- print " La moyenne :", OBJET_DE_TEST.means()
- print " L'écart-type :", OBJET_DE_TEST.stds()
- print " La somme :", OBJET_DE_TEST.sums()
- print " Le minimum :", OBJET_DE_TEST.mins()
- print " Le maximum :", OBJET_DE_TEST.maxs()
- print "Valeurs globales :"
- print " La moyenne :", OBJET_DE_TEST.mean()
- print " L'écart-type :", OBJET_DE_TEST.std()
- print " La somme :", OBJET_DE_TEST.sum()
- print " Le minimum :", OBJET_DE_TEST.min()
- print " Le maximum :", OBJET_DE_TEST.max()
- print " La somme cumulée :", OBJET_DE_TEST.cumsum()
- print "Taille \"shape\" :", OBJET_DE_TEST.shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Une liste hétérogène"
- OBJET_DE_TEST = OneList("My list", unit="bool/cm")
- OBJET_DE_TEST.store( (True , -5) )
- OBJET_DE_TEST.store( (False, 5 ) )
- OBJET_DE_TEST.store( (True , 1.) )
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Valeurs par pas : attention, on peut les calculer car True=1, False=0, mais cela n'a pas de sens"
- print " La moyenne :", OBJET_DE_TEST.means()
- print " L'écart-type :", OBJET_DE_TEST.stds()
- print " La somme :", OBJET_DE_TEST.sums()
- print " Le minimum :", OBJET_DE_TEST.mins()
- print " Le maximum :", OBJET_DE_TEST.maxs()
- print "Valeurs globales : attention, on peut les calculer car True=1, False=0, mais cela n'a pas de sens"
- print " La moyenne :", OBJET_DE_TEST.mean()
- print " L'écart-type :", OBJET_DE_TEST.std()
- print " La somme :", OBJET_DE_TEST.sum()
- print " Le minimum :", OBJET_DE_TEST.min()
- print " Le maximum :", OBJET_DE_TEST.max()
- print " La somme cumulée :", OBJET_DE_TEST.cumsum()
- print "Taille \"shape\" :", OBJET_DE_TEST.shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Utilisation directe de la classe Persistence"
- OBJET_DE_TEST = Persistence("My object", unit="", basetype=int )
- OBJET_DE_TEST.store( 1 )
- OBJET_DE_TEST.store( 3 )
- OBJET_DE_TEST.store( 7 )
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Taille \"shape\" :", OBJET_DE_TEST.shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Utilisation des méthodes d'accès de type dictionnaire"
- OBJET_DE_TEST = OneScalar("My int", unit="cm", basetype=int)
- for i in range(5):
- OBJET_DE_TEST.store( 7+i )
- print "Taille \"len\" :", len(OBJET_DE_TEST)
- print "Les clés absentes :", OBJET_DE_TEST.keys()
- print "Les valeurs :", OBJET_DE_TEST.values()
- print "Les paires :", OBJET_DE_TEST.items()
- OBJET_DE_TEST.pop(1)
- print "Les valeurs sans la 1:", OBJET_DE_TEST.values()
- OBJET_DE_TEST.pop(item=2)
- print "Les valeurs sans la 2:", OBJET_DE_TEST.values()
- del OBJET_DE_TEST
- print
-
- print "======> Persistence composite"
- OBJET_DE_TEST = CompositePersistence("My CompositePersistence")
- print "Objets stockables :", OBJET_DE_TEST.get_stored_objects()
- print "Objets actifs :", OBJET_DE_TEST.get_stored_objects( hideVoidObjects = True )
- print "--> Stockage d'une valeur de Background"
- OBJET_DE_TEST.store("Background",numpy.zeros(5))
- print "Objets actifs :", OBJET_DE_TEST.get_stored_objects( hideVoidObjects = True )
- print "--> Ajout d'un objet nouveau par defaut, de type vecteur numpy par pas"
- OBJET_DE_TEST.add_object("ValeursVectorielles")
- OBJET_DE_TEST.store("ValeursVectorielles",numpy.zeros(5))
- print "Objets actifs :", OBJET_DE_TEST.get_stored_objects( hideVoidObjects = True )
- print "--> Ajout d'un objet nouveau de type liste par pas"
- OBJET_DE_TEST.add_object("ValeursList", persistenceType=OneList )
- OBJET_DE_TEST.store("ValeursList",range(5))
- print "Objets actifs :", OBJET_DE_TEST.get_stored_objects( hideVoidObjects = True )
- print "--> Ajout d'un objet nouveau, de type vecteur string par pas"
- OBJET_DE_TEST.add_object("ValeursStr", persistenceType=Persistence, basetype=str )
- OBJET_DE_TEST.store("ValeursStr","IGN3")
- OBJET_DE_TEST.store("ValeursStr","c021")
- print "Les valeurs :", OBJET_DE_TEST.get_object("ValeursStr")[:]
- print "Acces comme dict :", OBJET_DE_TEST["ValeursStr"].stepserie()
- print "Acces comme dict :", OBJET_DE_TEST["ValeursStr"][:]
- print "Objets actifs :", OBJET_DE_TEST.get_stored_objects( hideVoidObjects = True )
- print "--> Suppression d'un objet"
- OBJET_DE_TEST.del_object("ValeursVectorielles")
- print "Objets actifs :", OBJET_DE_TEST.get_stored_objects( hideVoidObjects = True )
- print "--> Enregistrement de l'objet complet de Persistence composite"
- OBJET_DE_TEST.save_composite("composite.pkl", compress="None")
- print
-
- print "======> Affichage graphique d'objets stockés"
- OBJET_DE_TEST = Persistence("My object", unit="", basetype=numpy.array)
- D = OBJET_DE_TEST
- vect1 = [1, 2, 1, 2, 1]
- vect2 = [-3, -3, 0, -3, -3]
- vect3 = [-1, 1, -5, 1, -1]
- vect4 = 100*[0.29, 0.97, 0.73, 0.01, 0.20]
- print "Stockage de 3 vecteurs de longueur identique"
- D.store(vect1)
- D.store(vect2)
- D.store(vect3)
- print "Affichage graphique de l'ensemble du stockage sur une même image"
- D.plot(
- title = "Tous les vecteurs",
- filename="vecteurs.ps",
- xlabel = "Axe X",
- ylabel = "Axe Y",
- pause = False )
- print "Stockage d'un quatrième vecteur de longueur différente"
- D.store(vect4)
- print "Affichage graphique séparé du dernier stockage"
- D.plots(
- item = 3,
- title = "Vecteurs",
- filename = "vecteur",
- xlabel = "Axe X",
- ylabel = "Axe Y",
- pause = False )
- print "Les images ont été stockées en fichiers Postscript"
- print "Taille \"shape\" du dernier objet stocké",OBJET_DE_TEST.shape()
- print "Taille \"len\" du dernier objet stocké",len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Affichage graphique dynamique d'objets"
- OBJET_DE_TEST = Persistence("My object", unit="", basetype=float)
- D = OBJET_DE_TEST
- D.plots(
- dynamic = True,
- title = "Valeur suivie",
- xlabel = "Pas",
- ylabel = "Valeur",
- pause = False,
- )
- for i in range(1,11):
- D.store( i*i )
- print "Taille \"shape\" du dernier objet stocké",OBJET_DE_TEST.shape()
- print "Nombre d'objets stockés",len(OBJET_DE_TEST)
- del OBJET_DE_TEST
- print
-
- print "======> Affectation simple d'observateurs dynamiques"
- def obs(var=None,info=None):
- print " ---> Mise en oeuvre de l'observer"
- print " var =",var[-1]
- print " info =",info
- OBJET_DE_TEST = Persistence("My object", unit="", basetype=list)
- D = OBJET_DE_TEST
- D.setDataObserver( HookFunction = obs )
- for i in range(5):
- # print
- print "Action de 1 observer sur la variable observée, étape :",i
- D.store( [i, i, i] )
- del OBJET_DE_TEST
- print
-
- print "======> Affectation multiple d'observateurs dynamiques"
- def obs(var=None,info=None):
- print " ---> Mise en oeuvre de l'observer"
- print " var =",var[-1]
- print " info =",info
- def obs_bis(var=None,info=None):
- print " ---> Mise en oeuvre de l'observer"
- print " var =",var[-1]
- print " info =",info
- OBJET_DE_TEST = Persistence("My object", unit="", basetype=list)
- D = OBJET_DE_TEST
- D.setDataObserver(
- HookFunction = obs,
- Scheduler = [2, 4],
- HookParameters = "Premier observer",
- )
- D.setDataObserver(
- HookFunction = obs,
- Scheduler = xrange(1,3),
- HookParameters = "Second observer",
- )
- D.setDataObserver(
- HookFunction = obs_bis,
- Scheduler = range(1,3)+range(7,9),
- HookParameters = "Troisième observer",
- )
- for i in range(5):
- print "Action de 3 observers sur la variable observée, étape :",i
- D.store( [i, i, i] )
- D.removeDataObserver(
- HookFunction = obs,
- )
- for i in range(5,10):
- print "Action d'un seul observer sur la variable observée, étape :",i
- D.store( [i, i, i] )
- del OBJET_DE_TEST
- print
-
- print "======> Utilisation des tags/attributs et stockage puis récupération de l'ensemble"
- OBJET_DE_TEST = CompositePersistence("My CompositePersistence", defaults=False)
- OBJET_DE_TEST.add_object("My ecarts", basetype = numpy.array)
-
- OBJET_DE_TEST.store( "My ecarts", numpy.arange(1,5), Camp="Base", Carte="IGN3", Niveau=1024, Palier="Premier" )
- OBJET_DE_TEST.store( "My ecarts", numpy.arange(1,5)+1, Camp="Base", Carte="IGN4", Niveau= 210, Palier="Premier" )
- OBJET_DE_TEST.store( "My ecarts", numpy.arange(1,5)+2, Camp="Base", Carte="IGN1", Niveau=1024 )
- OBJET_DE_TEST.store( "My ecarts", numpy.arange(1,5)+3, Camp="Sommet", Carte="IGN2", Niveau=4024, Palier="Second", FullMap=True )
-
- print "Les pas de stockage :", OBJET_DE_TEST["My ecarts"].stepserie()
- print "Les valeurs :", OBJET_DE_TEST["My ecarts"][:]
- print "La 2ème valeur :", OBJET_DE_TEST["My ecarts"][1]
- print "La dernière valeur :", OBJET_DE_TEST["My ecarts"][-1]
- print "Liste des attributs :", OBJET_DE_TEST["My ecarts"].tagserie()
- print "Taille \"shape\" :", OBJET_DE_TEST["My ecarts"].shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST["My ecarts"])
- print
-
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Palier="Premier" )
- print "Valeurs pour tag :", OBJET_DE_TEST["My ecarts"].values( Palier="Premier" )
- print
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Carte="IGN1" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Niveau=1024 )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Camp="Base" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Camp="TOTO" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Toto="Premier" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Carte="IGN1" )
- print
-
- print "Combinaison 'ET' de plusieurs Tags"
- print "Attendu : [0, 1], trouvé :",OBJET_DE_TEST["My ecarts"].stepserie( Camp="Base", Palier="Premier" )
- print "Attendu : [], trouvé :",OBJET_DE_TEST["My ecarts"].stepserie( Camp="Sommet", Palier="Premier" )
- print "Attendu : [3], trouvé :",OBJET_DE_TEST["My ecarts"].stepserie( Camp="Sommet" )
- print "Attendu : [2], trouvé :",OBJET_DE_TEST["My ecarts"].stepserie( Carte="IGN1", Niveau=1024 )
- print
-
- print "Liste des tags pour le pas (item) 1 :",OBJET_DE_TEST["My ecarts"].tagserie(item = 1)
- print "Liste des tags pour le pas (item) 2 :",OBJET_DE_TEST["My ecarts"].tagserie(item = 2)
- print
- print "Liste des tags/valeurs pour le pas 1 :",OBJET_DE_TEST["My ecarts"].tagserie(item = 1, withValues=True)
- print "Liste des tags/valeurs pour le pas 2 :",OBJET_DE_TEST["My ecarts"].tagserie(item = 2, withValues=True)
- print
-
- print "Liste des valeurs possibles pour 1 tag donné 'Camp' :",OBJET_DE_TEST["My ecarts"].tagserie(outputTag="Camp")
- print "Liste des valeurs possibles pour 1 tag donné 'Toto' :",OBJET_DE_TEST["My ecarts"].tagserie(outputTag="Toto")
- print "Liste des valeurs possibles pour 1 tag donné 'Niveau' :",OBJET_DE_TEST["My ecarts"].tagserie(outputTag="Niveau")
- print
-
- OBJET_DE_TEST.add_object("My other ecarts", basetype = numpy.array)
- OBJET_DE_TEST.store( "My other ecarts", numpy.arange(-1,5), Camp="Base", Carte="IGN3",Niveau=1024,Palier="Premier" )
- OBJET_DE_TEST.store( "My other ecarts", numpy.arange(-1,5)+1, Camp="Base", Carte="IGN4",Niveau= 210,Palier="Premier" )
- OBJET_DE_TEST.store( "My other ecarts", numpy.arange(-1,5)+2, Camp="Base", Carte="IGN1",Niveau=1024 )
- OBJET_DE_TEST.store( "My other ecarts", numpy.arange(-1,5)+3, Camp="Sommet",Carte="IGN2",Niveau=4024,Palier="Second" )
-
- print "Objets présents dans le composite :",OBJET_DE_TEST.get_stored_objects()
- fichier = "composite.pkl.gz"
- print "Sauvegarde sur \"%s\"..."%fichier
- OBJET_DE_TEST.save_composite( fichier )
- print "Effacement de l'objet en memoire"
- del OBJET_DE_TEST
- print
-
- print "Relecture de l'objet sur \"%s\"..."%fichier
- OBJET_DE_TEST = CompositePersistence("My CompositePersistence bis", defaults=False)
- OBJET_DE_TEST.load_composite( fichier )
- print "Objets présents dans le composite :",OBJET_DE_TEST.get_stored_objects()
- print "Taille des objets contenus :"
- for name in OBJET_DE_TEST.get_stored_objects():
- print " Objet \"%s\" : taille unitaire de %i"%(name,len(OBJET_DE_TEST[name][-1]))
-
- print
- print "Les pas de stockage :", OBJET_DE_TEST["My ecarts"].stepserie()
- print "Les valeurs :", OBJET_DE_TEST["My ecarts"][:]
- print "La 2ème valeur :", OBJET_DE_TEST["My ecarts"][1]
- print "La dernière valeur :", OBJET_DE_TEST["My ecarts"][-1]
- print "Liste des attributs :", OBJET_DE_TEST["My ecarts"].tagserie()
- print "Taille \"shape\" :", OBJET_DE_TEST["My ecarts"].shape()
- print "Taille \"len\" :", len(OBJET_DE_TEST["My ecarts"])
- print
-
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Palier="Premier" )
- print "Valeurs pour tag :", OBJET_DE_TEST["My ecarts"].values( Palier="Premier" )
- print
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Carte="IGN1" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Niveau=1024 )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Camp="Base" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Camp="TOTO" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Toto="Premier" )
- print "Pas pour tag :", OBJET_DE_TEST["My ecarts"].stepserie( Carte="IGN1" )
- print
- #import sys ; sys.exit()
- print "Attributs :", OBJET_DE_TEST["My ecarts"].tagserie()
- print "Attributs pour tag filtré :", OBJET_DE_TEST["My ecarts"].tagserie( Camp="Base" )
- print "Attributs pour tag filtré :", OBJET_DE_TEST["My ecarts"].tagserie( Niveau=4024 )
- print
- print "Attributs et valeurs :", OBJET_DE_TEST["My ecarts"].tagserie( withValues=True )
- print "Attributs et valeurs pour tag filtré :", OBJET_DE_TEST["My ecarts"].tagserie( withValues=True, Camp="Base" )
- print "Attributs et valeurs pour tag filtré :", OBJET_DE_TEST["My ecarts"].tagserie( withValues=True, Niveau=4024 )
- print
- print "Valeur d'attribut pour un tag donné 'BU' :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Niveau" )
- print "Valeur d'attribut pour un tag donné 'BU' filtré :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Niveau", Camp="Base" )
- print "Valeur d'attribut pour un tag donné 'BU' filtré :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Niveau", Palier="Second" )
- print "Valeur d'attribut pour un tag donné 'Camp' filtré :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Camp", Palier="Premier" )
- print "Valeur d'attribut pour un tag donné 'Carte' filtré :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Carte", Palier="Premier" )
- print "Valeur d'attribut pour un tag donné 'Carte' filtré :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Carte", Palier="Premier", Niveau=4024 )
- print "Valeur d'attribut pour un tag donné 'Carte' filtré :", OBJET_DE_TEST["My ecarts"].tagserie( outputTag = "Carte", Palier="Premier", Niveau=210 )
- print
-
- print "======> Cas d'erreur"
- OBJET_DE_TEST = OneScalar("My float", unit="cm")
- OBJET_DE_TEST.store( 5., step="azerty")
- OBJET_DE_TEST.store(-5., step="poiuyt")
- OBJET_DE_TEST.store( 1., step="azerty")
- OBJET_DE_TEST.store( 0., step="xxxxxx")
- OBJET_DE_TEST.store( 5., step="poiuyt")
- OBJET_DE_TEST.store(-5., step="azerty")
- OBJET_DE_TEST.store( 1., step="poiuyt")
- print "Les pas de stockage :", OBJET_DE_TEST.stepserie()
- print "Les valeurs :", OBJET_DE_TEST[:]
- print "La 2ème valeur :", OBJET_DE_TEST[1]
- print "La dernière valeur :", OBJET_DE_TEST[-1]
- print "Valeurs 'azerty' :", OBJET_DE_TEST.values( step = "azerty" )
- print "Valeurs 'poiuyt' :", OBJET_DE_TEST.values( step = "poiuyt" )
- print
- print "Nombre de valeurs :", len(OBJET_DE_TEST)
- try:
- x = OBJET_DE_TEST[7]
- print "La 8ème valeur :", x
- except IndexError, e:
- print "Erreur correcte :",e
- try:
- x = OBJET_DE_TEST[7]
- print "La 8ème valeur :", x
- except IndexError, e:
- print "Erreur correcte :",e
- print
-
- print "======> Impression d'objet Persistence"
- OBJET_DE_TEST = OneScalar("My float", unit="cm")
- OBJET_DE_TEST.store( 5., step="azerty")
- OBJET_DE_TEST.store(-5., step="poiuyt")
- OBJET_DE_TEST.store( 1., step="azerty")
- OBJET_DE_TEST.store( 0., step="xxxxxx")
- OBJET_DE_TEST.store( 5., step="poiuyt")
- OBJET_DE_TEST.store(-5., step="azerty")
- OBJET_DE_TEST.store( 1., step="poiuyt")
- print OBJET_DE_TEST
- print
#-*-coding:iso-8859-1-*-
#
-# Copyright (C) 2008-2013 EDF R&D
+# Copyright (C) 2008-2013 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
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License.
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License.
#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-# Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
+# Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
__doc__ = """
Définit les versions approximées des opérateurs tangents et adjoints.
_HaY = numpy.dot(_JacobienneT, _Y)
return _HaY.A1
-# ==============================================================================
-#
-def test1( XX ):
- """ Direct non-linear simulation operator """
- #
- # NEED TO BE COMPLETED
- # NEED TO BE COMPLETED
- # NEED TO BE COMPLETED
- #
- # --------------------------------------> # EXAMPLE TO BE REMOVED
- # Example of Identity operator # EXAMPLE TO BE REMOVED
- if type(XX) is type(numpy.matrix([])): # EXAMPLE TO BE REMOVED
- HX = XX.A1.tolist() # EXAMPLE TO BE REMOVED
- elif type(XX) is type(numpy.array([])): # EXAMPLE TO BE REMOVED
- HX = numpy.matrix(XX).A1.tolist() # EXAMPLE TO BE REMOVED
- else: # EXAMPLE TO BE REMOVED
- HX = XX # EXAMPLE TO BE REMOVED
- # # EXAMPLE TO BE REMOVED
- HHX = [] # EXAMPLE TO BE REMOVED
- HHX.extend( HX ) # EXAMPLE TO BE REMOVED
- HHX.extend( HX ) # EXAMPLE TO BE REMOVED
- # --------------------------------------> # EXAMPLE TO BE REMOVED
- #
- return numpy.array( HHX )
-
# ==============================================================================
if __name__ == "__main__":
-
- print
- print "AUTODIAGNOSTIC"
- print "=============="
-
- X0 = [1, 2, 3]
-
- FDA = FDApproximation( test1 )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(3,3+2*len(X0))) )
- print
- del FDA
- FDA = FDApproximation( test1, centeredDF=True )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(3,3+2*len(X0))) )
- print
- del FDA
-
- print "=============="
- print
- X0 = range(5)
-
- FDA = FDApproximation( test1 )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(7,7+2*len(X0))) )
- print
- del FDA
- FDA = FDApproximation( test1, centeredDF=True )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(7,7+2*len(X0))) )
- print
- del FDA
-
- print "=============="
- print
- X0 = numpy.arange(3)
-
- FDA = FDApproximation( test1 )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(7,7+2*len(X0))) )
- print
- del FDA
- FDA = FDApproximation( test1, centeredDF=True )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(7,7+2*len(X0))) )
- print
- del FDA
-
- print "=============="
- print
- X0 = numpy.asmatrix(numpy.arange(4)).T
-
- FDA = FDApproximation( test1 )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(7,7+2*len(X0))) )
- print
- del FDA
- FDA = FDApproximation( test1, centeredDF=True )
- print "H(X) =", FDA.DirectOperator( X0 )
- print "Tg matrice =\n", FDA.TangentMatrix( X0 )
- print "Tg(X) =", FDA.TangentOperator( (X0, X0) )
- print "Ad((X,Y)) =", FDA.AdjointOperator( (X0,range(7,7+2*len(X0))) )
- print
- del FDA
-
+ print '\n AUTODIAGNOSTIC \n'