]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
il : pec plusieurs blocs avec meme materiau
authorilct <>
Tue, 9 Oct 2012 12:43:09 +0000 (12:43 +0000)
committerilct <>
Tue, 9 Oct 2012 12:43:09 +0000 (12:43 +0000)
generator/generator_CARMEL3D.py

index 6cd74672a8cde71df8ab32f3ec76971975d524a9..3d41cadc5a241097ba324e5190248d204dda5e64 100644 (file)
@@ -104,18 +104,18 @@ class CARMEL3DGenerator(PythonGenerator):
       # Cette instruction genere le contenu du fichier de parametres pour le code Carmel3D\r
       # si le jdc est valide (sinon cela n a pas de sens)\r
       if obj.isvalid() : \r
-           # constitution du bloc VERSION du fichier PHYS\r
+           # constitution du bloc VERSION du fichier PHYS (existe toujours)\r
            self.generBLOC_VERSION(obj)\r
 \r
-           # constitution du bloc MATERIALS du fichier PHYS\r
+           # constitution du bloc MATERIALS du fichier PHYS (existe toujours)\r
            self.generBLOC_MATERIALS()\r
 \r
-           # constitution du bloc SOURCES du fichier PHYS\r
-           self.generBLOC_SOURCES()\r
+           # constitution du bloc SOURCES du fichier PHYS s il existe\r
+           if self.source == "oui" : self.generBLOC_SOURCES()\r
 \r
 #      print "texte carmel3d :\n",self.texteCarmel3D\r
-#      print "dictName : ",self.dictName\r
-#      print "dictMaterConductor : ",self.dictMaterConductor\r
+      print "dictName : ",self.dictName\r
+      print "dictMaterConductor : ",self.dictMaterConductor\r
 #      print "dictMaterNocond : ",self.dictMaterNocond\r
       \r
       return self.text\r
@@ -128,6 +128,7 @@ class CARMEL3DGenerator(PythonGenerator):
    def initDico(self) :\r
  \r
       self.texteCarmel3D=""\r
+      self.source="non"\r
       self.dicoEtapeCourant=None\r
       self.dicoMCFACTCourant=None\r
       self.dicoCourant=None\r
@@ -214,7 +215,7 @@ class CARMEL3DGenerator(PythonGenerator):
       s=PythonGenerator.generETAPE(self,obj)\r
       obj.valeur=self.dicoEtapeCourant\r
 \r
-  #    print "ETAPE", obj.nom, "  ", obj.valeur\r
+      print "ETAPE :obj.nom =", obj.nom, " , obj.valeur= ", obj.valeur\r
 \r
       if obj.nom=="MESH_GROUPE" : self.generMESHGROUPE(obj)\r
       if obj.nom=="MATERIALS" : self.generMATERIALS(obj)\r
@@ -231,9 +232,15 @@ class CARMEL3DGenerator(PythonGenerator):
        try :\r
            texteName="        NAME     "+obj.get_sdname()+"\n"\r
            for cle in obj.valeur :\r
-   #            print "cle : ", cle\r
-               self.dictName[obj.valeur[cle].nom]=texteName\r
-    #           print "dans gener_mesh dictName : ",self.dictName\r
+               print "cle : ", cle\r
+               print "cle sd  : ", obj.valeur[cle].nom\r
+               print "cle dico : ",self.dictName.keys()\r
+               if  obj.valeur[cle].nom in self.dictName :\r
+                   self.dictName[obj.valeur[cle].nom] += (texteName,)\r
+               else:     \r
+                   self.dictName[obj.valeur[cle].nom]=(texteName,) \r
+\r
+               print "dans gener_mesh 2 dictName : ",self.dictName\r
        except:\r
            pass\r
 \r
@@ -297,7 +304,8 @@ class CARMEL3DGenerator(PythonGenerator):
 \r
           texte+="         ]"+"\n"\r
 \r
-       self.dictMaterConductor[obj.get_sdname()]=[texte,]\r
+       self.dictMaterConductor[obj.get_sdname()]=texte\r
+     #  self.dictMaterConductor[obj.get_sdname()]=[texte,]\r
 #       print texte\r
    \r
 \r
@@ -344,7 +352,7 @@ class CARMEL3DGenerator(PythonGenerator):
       # fin du sous bloc de propriete\r
           texte+="         ]"+"\n"\r
        #print "texte = ", texte    \r
-       self.dictMaterNocond[obj.get_sdname()]=[texte,]\r
+       self.dictMaterNocond[obj.get_sdname()]=texte\r
  \r
    def generMATERIALSZSURFACIC(self,obj):\r
       # preparation du sous bloc ZSURFACIC\r
@@ -372,7 +380,7 @@ class CARMEL3DGenerator(PythonGenerator):
                  \r
           texte+="         ]"+"\n"\r
 \r
-       self.dictMaterZsurfacic[obj.get_sdname()]=[texte,]\r
+       self.dictMaterZsurfacic[obj.get_sdname()]=texte\r
 \r
    def generMATERIALSEMISO(self,obj):\r
       # preparation du sous bloc EMISO\r
@@ -384,7 +392,7 @@ class CARMEL3DGenerator(PythonGenerator):
     #   if obj.get_sdname() in self.dictMaterEmIso.keys() :\r
      #    self.dictMaterEmIso[obj.get_sdname()].append(texte) \r
       # else :\r
-       self.dictMaterEmIso[obj.get_sdname()]=[texte,]\r
+       self.dictMaterEmIso[obj.get_sdname()]=texte\r
   \r
    def generMATERIALSEMANISO(self,obj):\r
       # preparation du sous bloc EMANISO\r
@@ -396,17 +404,17 @@ class CARMEL3DGenerator(PythonGenerator):
      #  if obj.get_sdname() in self.dictMaterEmAnIso.keys() :\r
      #    self.dictMaterEmAnIso[obj.get_sdname()].append(texte) \r
      #  else :\r
-       self.dictMaterEmAnIso[obj.get_sdname()]=[texte,]\r
+       self.dictMaterEmAnIso[obj.get_sdname()]=texte\r
    \r
    def generMATERIALSNILMAT(self,obj):\r
       # preparation du sous bloc NILMAT\r
        texte=""\r
-       self.dictMaterNilmat[obj.get_sdname()]=[texte,]\r
+       self.dictMaterNilmat[obj.get_sdname()]=texte\r
    \r
    def generMATERIALSZINSULATOR(self,obj):\r
       # preparation du sous bloc ZINSULATOR\r
        texte=""\r
-       self.dictMaterZinsulator[obj.get_sdname()]=[texte,]\r
+       self.dictMaterZinsulator[obj.get_sdname()]=texte\r
 \r
 #-------------------------------------------------------------------\r
 \r
@@ -415,10 +423,11 @@ class CARMEL3DGenerator(PythonGenerator):
      #     print "gener sources obj valeur = ", obj.valeur\r
           texte=""\r
          try :\r
-              source=obj.valeur['TYPE_SOURCE']\r
-              if source=="STRANDED_INDUCTOR" : self.generSOURCES_ST_IND(obj)\r
-              if source=="HPORT" : self.generSOURCES_H_PORT(obj)\r
-              if source=="EPORT" : self.generSOURCES_E_PORT(obj)\r
+              self.source="oui"\r
+              typesource=obj.valeur['TYPE_SOURCE']\r
+              if typesource=="STRANDED_INDUCTOR" : self.generSOURCES_ST_IND(obj)\r
+              if typesource=="HPORT" : self.generSOURCES_H_PORT(obj)\r
+              if typesource=="EPORT" : self.generSOURCES_E_PORT(obj)\r
          except:\r
              pass\r
 \r
@@ -428,7 +437,7 @@ class CARMEL3DGenerator(PythonGenerator):
          try :\r
              texte+="        NTURNS "+ str(obj.valeur['NTURNS']) + "\n"\r
              texte+="        CURJ POLAR " + str(obj.valeur['CURJ']) +" " +str(obj.valeur['POLAR'])+"\n" \r
-              self.dictSourceStInd[obj.get_sdname()]=[texte,]\r
+              self.dictSourceStInd[obj.get_sdname()]=texte\r
   #            print texte\r
          except:\r
              pass\r
@@ -439,7 +448,7 @@ class CARMEL3DGenerator(PythonGenerator):
          try :\r
              texte+="        TYPE "+ str(obj.valeur['TYPE']) + "\n"\r
              texte+="        AMP POLAR " + str(obj.valeur['AMP']) +" " +str(obj.valeur['POLAR'])+"\n" \r
-              self.dictSourceHport[obj.get_sdname()]=[texte,]\r
+              self.dictSourceHport[obj.get_sdname()]=texte\r
   #            print texte\r
          except:\r
              pass\r
@@ -450,7 +459,7 @@ class CARMEL3DGenerator(PythonGenerator):
          try :\r
              texte+="        TYPE "+ str(obj.valeur['TYPE']) + "\n"\r
              texte+="        AMP POLAR " + str(obj.valeur['AMP']) +" " +str(obj.valeur['POLAR'])+"\n" \r
-              self.dictSourceEport[obj.get_sdname()]=[texte,]\r
+              self.dictSourceEport[obj.get_sdname()]=texte\r
   #            print texte\r
          except:\r
              pass\r
@@ -514,57 +523,65 @@ class CARMEL3DGenerator(PythonGenerator):
       # constitution du bloc CONDUCTOR du fichier PHYS\r
     \r
       for cle in self.dictMaterConductor.keys():\r
-          self.texteCarmel3D+="     [CONDUCTOR\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [CONDUCTOR\n"\r
               print "Attention : groupe de maille non defini pour materiau : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+= self.dictMaterConductor[cle] \r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          for chaine in self.dictMaterConductor[cle] :\r
-              self.texteCarmel3D+=chaine\r
+              for elt_tup in self.dictName[cle] :\r
+                   self.texteCarmel3D+="     [CONDUCTOR\n"\r
+                   self.texteCarmel3D+=str(elt_tup)\r
+                   self.texteCarmel3D+= self.dictMaterConductor[cle] \r
+                   self.texteCarmel3D+="     ]\n"\r
      \r
-          self.texteCarmel3D+="     ]\n"\r
 \r
 \r
    def creaBLOC_NOCOND(self) :\r
       # constitution du bloc NOCOND du fichier PHYS\r
     \r
       for cle in self.dictMaterNocond.keys():\r
-          self.texteCarmel3D+="     [NOCOND\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [NOCOND\n"\r
               print "Attention : groupe de maille non defini pour materiau : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+= self.dictMaterNocond[cle] \r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          for chaine in self.dictMaterNocond[cle] :\r
-              self.texteCarmel3D+=chaine\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                   self.texteCarmel3D+="     [NOCOND\n"\r
+                   self.texteCarmel3D+=str(elt_tup)\r
+                   self.texteCarmel3D+= self.dictMaterNocond[cle] \r
+                   self.texteCarmel3D+="     ]\n"\r
 \r
 \r
    def creaBLOC_ZSURFACIC(self) :\r
       # constitution du bloc ZSURFACIC du fichier PHYS\r
     \r
       for cle in self.dictMaterZsurfacic.keys():\r
-          self.texteCarmel3D+="     [ZSURFACIC\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [ZSURFACIC\n"\r
               print "Attention : groupe de maille non defini pour materiau : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+= self.dictMaterZsurfacic[cle] \r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          for chaine in self.dictMaterZsurfacic[cle] :\r
-              self.texteCarmel3D+=chaine\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                   self.texteCarmel3D+="     [ZSURFACIC\n"\r
+                   self.texteCarmel3D+=str(elt_tup)\r
+                   self.texteCarmel3D+= self.dictMaterZsurfacic[cle] \r
+                   self.texteCarmel3D+="     ]\n"\r
 \r
    def creaBLOC_EMISO(self) :\r
       # constitution du bloc EMISO du fichier PHYS\r
     \r
       for cle in self.dictMaterEmIso.keys():\r
           self.texteCarmel3D+="     [EM_ISOTROPIC_FILES\n"\r
-          for chaine in self.dictMaterEmIso[cle] :\r
-              self.texteCarmel3D+=chaine\r
+          self.texteCarmel3D+= self.dictMaterEmIso[cle] \r
           self.texteCarmel3D+="     ]\n"\r
 \r
    def creaBLOC_EMANISO(self) :\r
@@ -572,35 +589,40 @@ class CARMEL3DGenerator(PythonGenerator):
     \r
       for cle in self.dictMaterEmAnIso.keys():\r
           self.texteCarmel3D+="     [EM_ANISOTROPIC_FILES\n"\r
-          for chaine in self.dictMaterEmAnIso[cle] :\r
-              self.texteCarmel3D+=chaine\r
+          self.texteCarmel3D+=  self.dictMaterEmAnIso[cle] \r
           self.texteCarmel3D+="     ]\n"\r
 \r
    def creaBLOC_ZINSULATOR(self) :\r
       # constitution du bloc ZINSULATOR du fichier PHYS\r
     \r
       for cle in self.dictMaterZinsulator.keys():\r
-          self.texteCarmel3D+="     [ZINSULATOR\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [ZINSULATOR\n"\r
               print "Attention : groupe de maille non defini pour materiau : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                  self.texteCarmel3D+="     [ZINSULATOR\n"\r
+                  self.texteCarmel3D+=str(elt_tup)\r
+                  self.texteCarmel3D+="     ]\n"\r
 \r
    def creaBLOC_NILMAT(self) :\r
       # constitution du bloc NILMAT du fichier PHYS\r
     \r
       for cle in self.dictMaterNilmat.keys():\r
-          self.texteCarmel3D+="     [NILMAT\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [NILMAT\n"\r
               print "Attention : groupe de maille non defini pour materiau : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                  self.texteCarmel3D+="     [NILMAT\n"\r
+                  self.texteCarmel3D+=str(elt_tup)\r
+                  self.texteCarmel3D+="     ]\n"\r
 \r
 #----------------------------------------------------------------------------------------\r
    def generBLOC_SOURCES(self):\r
@@ -622,46 +644,55 @@ class CARMEL3DGenerator(PythonGenerator):
       # constitution du bloc STRANDED INDUCTOR du fichier PHYS\r
     \r
       for cle in self.dictSourceStInd.keys():\r
-          self.texteCarmel3D+="     [STRANDED INDUCTOR\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [STRANDED INDUCTOR\n"\r
               print "Attention : groupe de maille non defini pour source : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+= self.dictSourceStInd[cle] \r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          for chaine in self.dictSourceStInd[cle] :\r
-              self.texteCarmel3D+=chaine\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                   self.texteCarmel3D+="     [STRANDED INDUCTOR\n"\r
+                   self.texteCarmel3D+=str(elt_tup)\r
+                   self.texteCarmel3D+=  self.dictSourceStInd[cle] \r
+                   self.texteCarmel3D+="     ]\n"\r
 \r
    def creaBLOC_EPORT(self) :\r
       # constitution du bloc EPORT du fichier PHYS\r
     \r
       for cle in self.dictSourceEport.keys():\r
-          self.texteCarmel3D+="     [EPORT\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [EPORT\n"\r
               print "Attention : groupe de maille non defini pour source : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+= self.dictSourceEport[cle] \r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          for chaine in self.dictSourceEport[cle] :\r
-              self.texteCarmel3D+=chaine\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                   self.texteCarmel3D+="     [EPORT\n"\r
+                   self.texteCarmel3D+=str(elt_tup)\r
+                   self.texteCarmel3D+=  self.dictSourceEport[cle] \r
+                   self.texteCarmel3D+="     ]\n"\r
 \r
    def creaBLOC_HPORT(self) :\r
       # constitution du bloc HPORT du fichier PHYS\r
     \r
       for cle in self.dictSourceHport.keys():\r
-          self.texteCarmel3D+="     [HPORT\n"\r
           if cle not in self.dictName.keys():\r
+              self.texteCarmel3D+="     [HPORT\n"\r
               print "Attention : groupe de maille non defini pour source : ",cle\r
               print "fichier phys incomplet "\r
               self.texteCarmel3D+=str(self.dictName["grm_def"])\r
+              self.texteCarmel3D+= self.dictSourceHport[cle] \r
+              self.texteCarmel3D+="     ]\n"\r
           else : \r
-              self.texteCarmel3D+=str(self.dictName[cle])\r
-          for chaine in self.dictSourceHport[cle] :\r
-              self.texteCarmel3D+=chaine\r
-          self.texteCarmel3D+="     ]\n"\r
+              for elt_tup in self.dictName[cle] :\r
+                   self.texteCarmel3D+="     [HPORT\n"\r
+                   self.texteCarmel3D+=str(elt_tup)\r
+                   self.texteCarmel3D+=  self.dictSourceHport[cle] \r
+                   self.texteCarmel3D+="     ]\n"\r
 \r
 #----------------------------------------------------------------------------\r
 \r