def EXTR_COMP(self, comp, lgma=[], topo=0): """Retourne les valeurs de la composante comp du champ sur la liste de groupes de mailles lgma avec eventuellement l'info de la topologie si topo>0. Si lgma est une liste vide, c'est equivalent a un TOUT='OUI' dans les commandes aster Arguments: comp (str): Name of the component. lgma (list[str]): List of groups of elements. topo (int): ``topo == 1`` means to return informations about the support of the field. Returns: :py:class:`.post_comp_cham_el`: Object containing the values and, eventually, the topological informations of the support. """ ncham = self.getName() ncham = ncham + (19 - len(ncham)) * ' ' nchams = aster.get_nom_concept_unique('_') ncmp = comp + (8 - len(comp)) * ' ' aster.prepcompcham(ncham, nchams, ncmp, "EL ", topo, lgma) valeurs = numpy.array( aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.V')) if (topo > 0): maille = (aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.M')) point = (aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.P')) sous_point = (aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.SP')) else: maille = None point = None sous_point = None aster.prepcompcham("__DETR__", nchams, ncmp, "EL ", topo, lgma) return post_comp_cham_el(valeurs, maille, point, sous_point)
def EXTR_COMP(self, comp, lgma, topo=0): """ retourne les valeurs de la composante comp du champ sur la liste de groupes de mailles lgma avec eventuellement l'info de la topologie si topo>0. Si lgma est une liste vide, c'est equivalent a un TOUT='OUI' dans les commandes aster Attributs retourne - self.valeurs : numpy.array contenant les valeurs Si on a demande la topo : - self.maille : numero de mailles - self.point : numero du point dans la maille - self.sous_point : numero du sous point dans la maille """ import numpy if not self.accessible(): raise AsException( "Erreur dans cham_elem.EXTR_COMP en PAR_LOT='OUI'") ncham = self.get_name() ncham = ncham + (8 - len(ncham)) * ' ' nchams = ncham[0:7] + 'S' ncmp = comp + (8 - len(comp)) * ' ' aster.prepcompcham(ncham, nchams, ncmp, "EL ", topo, lgma) valeurs = numpy.array( aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.V')) if (topo > 0): maille = (aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.M')) point = (aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.P')) sous_point = (aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.SP')) else: maille = None point = None sous_point = None aster.prepcompcham("__DETR__", nchams, ncmp, "EL ", topo, lgma) return post_comp_cham_el(valeurs, maille, point, sous_point)
def EXTR_COMP(self, comp=' ', lgno=[], topo=0): """ retourne les valeurs de la composante comp du champ sur la liste de groupes de noeuds lgno avec eventuellement l'info de la topologie si topo>0. Si lgno est une liste vide, c'est equivalent a un TOUT='OUI' dans les commandes aster Arguments: comp (str): Name of the component. lgno (list[str]): List of groups of nodes. topo (int): ``topo == 1`` means to return informations about the support of the field. Returns: :py:class:`.post_comp_cham_no`: Object containing the values and, eventually, the topological informations of the support. """ ncham = self.getName() ncham = ncham + (19 - len(ncham)) * ' ' nchams = aster.get_nom_concept_unique('_') ncmp = comp + (8 - len(comp)) * ' ' aster.prepcompcham(ncham, nchams, ncmp, "NO ", topo, lgno) valeurs = numpy.array( aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.V')) if (topo > 0): noeud = ( aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.N')) else: noeud = None if comp[:1] == ' ': comp = (aster.getvectjev(nchams + (19 - len(nchams)) * ' ' + '.C')) aster.prepcompcham( "__DETR__", nchams, ncmp, "NO ", topo, lgno) return post_comp_cham_no(valeurs, noeud, comp) else: aster.prepcompcham( "__DETR__", nchams, ncmp, "NO ", topo, lgno) return post_comp_cham_no(valeurs, noeud)
def EXTR_COMP(self, comp=' ', lgno=[], topo=0): """ retourne les valeurs de la composante comp du champ sur la liste de groupes de noeuds lgno avec eventuellement l'info de la topologie si topo>0. Si lgno est une liste vide, c'est equivalent a un TOUT='OUI' dans les commandes aster Attributs retourne - self.valeurs : numpy.array contenant les valeurs Si on a demande la topo (i.e. self.topo = 1) : - self.noeud : numero de noeud Si on demande toutes les composantes (comp = ' ') : - self.comp : les composantes associees a chaque grandeur pour chaque noeud """ import numpy if not self.accessible(): raise AsException("Erreur dans cham_no.EXTR_COMP en PAR_LOT='OUI'") ncham = self.get_name() ncham = ncham + (8 - len(ncham)) * ' ' nchams = ncham[0:7] + 'S' ncmp = comp + (8 - len(comp)) * ' ' aster.prepcompcham(ncham, nchams, ncmp, "NO ", topo, lgno) valeurs = numpy.array( aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.V')) if (topo > 0): noeud = (aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.N')) else: noeud = None if comp[:1] == ' ': comp = (aster.getvectjev(nchams + (19 - len(ncham)) * ' ' + '.C')) aster.prepcompcham("__DETR__", nchams, ncmp, "NO ", topo, lgno) return post_comp_cham_no(valeurs, noeud, comp) else: aster.prepcompcham("__DETR__", nchams, ncmp, "NO ", topo, lgno) return post_comp_cham_no(valeurs, noeud)