Télécharger topoptim.notice

Retour à la liste thématique

Afficher cette notice en

Numérotation des lignes :
   1 : $$$$ TOPOPTIM NOTICE  CB215821  18/01/29    21:15:11     9715           
   2 :                                              DATE     18/01/29
   3 :                  
   4 : 
   5 :              CETTE PROCEDURE A ETE MISE GRACIEUSEMENT
   6 :               A DISPOSITION DE LA COMMUNAUTE CAST3M
   7 :                     PAR Guenhael Le Quilliec
   8 :               Laboratoire de Mecanique Gabriel Lame
   9 :  Universite de Tours, Universite d Orleans, INSA Centre Val de Loire
  10 :     Polytech Tours, 7 avenue Marcel Dassault, 37200 Tours, France
  11 : 
  12 : 
  13 :    Procedure TOPOPTIM                       Voir aussi :
  14 :     __________________                       TOPOSURF  
  15 : 
  16 :     TOPOPTIM TAB1 ;
  17 : 
  18 : 
  19 :     TAB1.  CONVERGENCE                     POIDS_ENERGIE_DEFO
  20 :            CRITERE                         POIDS_MECANISME
  21 :            CYCLE                           POIDS_TEMPERATURE
  22 :            CYCLES_SAUVEGARDES              PRECISION
  23 :            FACTEUR_D                       PROCEDURE_TOPOPERS
  24 :            FACTEUR_P                       RAPPORT_RAIDEURS_MECANIQUES
  25 :            FACTEUR_Q                       RAPPORT_RAIDEURS_THERMIQUES
  26 :            FRACTION_VOLUME                 RESOLUTION
  27 :            MAILLAGE                        RESOLUTION_LINEAIRE
  28 :            MAX_CYCLES                      RESOLUTION_PASAPAS
  29 :            MECANISME                       RESTRICTIONS
  30 :            MECANISME_ZERO_SPRING           SEUIL
  31 :            MES_SAUVEGARDES                 TAUX_FILTRAGE
  32 :            OC_B_MIN                        TOPOLOGIE
  33 :            OC_CRITERE                      TOPOLOGIE_MAX_INC
  34 :            OC_L1                           TOPOLOGIE_MIN
  35 :            OC_L2                           TRAC
  36 :            OC_L2_MIN                       ZERO_DIVISION
  37 :            OC_MAX_IT                       ZONE_FIGEE
  38 : 
  39 : 
  40 :     Objet :
  41 :     _______
  42 : 
  43 : Cette procedure permet d effectuer une optimisation topologique d une
  44 : structure soumise a un chargement mecanique et/ou thermique, en
  45 : considerant un comportement lineaire ou non-lineaire, avec ou sans
  46 : restrictions geometriques sur la topologie de sortie. Elle permet aussi
  47 : d effectuer une synthese d un mecanism souple.
  48 : 
  49 : 
  50 :     Commentaires :
  51 :     ______________
  52 : 
  53 : La premiere version de cette procedure s inspirait directement des
  54 : travaux de O. Sigmund ainsi que ceux de W. Hunter.
  55 : 
  56 : La version actuelle (2.1) a ete adaptee pour traiter les non-linearites 
  57 : (contact, plasticite, grandes deformations, grands deplacements et
  58 : grandes rotations), sous chargements multiphysiques. Il est possible
  59 : d ajouter des restrictions geometriques sur la topologie de sortie
  60 : (e.g. une periodicite). Elle est entierement ecrite en Gibiane afin de
  61 : faciliter les developpements pour les utilisateurs avances.
  62 : 
  63 : Le filtrage de la sensibilite est effectue ici par interpolations
  64 : successives entre les noeuds et les points d integration afin d assurer
  65 : des performances correctes tout en restant en language Gibiane. Cette
  66 : operation est assuree par la procedure TOPOFILT que les utilisateurs
  67 : avances peuvent redefinir avant de faire appel a TOPOPTIM.
  68 : 
  69 : Les restrictions geometriques, les mises a jour du materiau (pour tenir
  70 : compte de la densite) et les mises a jour de la topologie sont elles
  71 : aussi assurees par des procedures externes : TOPORSTR, TOPOMATE et
  72 : TOPOCRIT. La encore, les utilisateurs avances peuvent redefinir ces
  73 : procedures avant de faire appel a TOPOPTIM.
  74 : 
  75 : Enfin, une procedure personnelle TOPOPERS peut etre appelee a chaque
  76 : cycle d optimisation, juste apres la resolution, donnant a
  77 : l utilisateur la possibilite d intergir avec TOPOPTIM au cours du
  78 : processus d optimisation. Il peut par exemple appliquer sa propre
  79 : fonction objectif et calculer son propre champs de sensibilite, ou
  80 : bien encore creer ses propres restrictions geometriques...
  81 : 
  82 : 
  83 :     Remarques :
  84 :     ___________
  85 : 
  86 : Pour debuter, il est preferable de garder a 1 les facteurs de penalite
  87 : et d echelle de gris pour choisir convenablement le taux de filtrage.
  88 : Puis on ajustera dans un second temps le facteur de penalite pour
  89 : terminer par ajuster le facteur d echelle de gris.
  90 : 
  91 : 
  92 :     En entree :
  93 :     ___________
  94 : 
  95 : En entree, TAB1 sert a definir les options et les parametres de
  96 : l optimisation. Les indices de l objet TAB1 sont des mots (a ecrire en
  97 : toutes lettres, et en majuscules s ils sont mis entre cotes) dont voici
  98 : la liste :
  99 : 
 100 :  CRITERE : critere de convergence. Cette donnee est facultative et est
 101 :            egale a 0.01 par defaut.
 102 : 
 103 :  CYCLE : numero du precedent cycle a partir duquel l optimisation doit
 104 :          se poursuivre. Cette donnee est facultative et est egale a 0
 105 :          par defaut.
 106 : 
 107 :  CYCLES_SAUVEGARDES : LISTENTI contenant la liste des cycles pour
 108 :                       lesquels la procedure TOPOSAUV sauvegardera les
 109 :                       resultats specifies par MES_SAUVEGARDES. Cette
 110 :                       donnee est facultative et une LISTENTI vide par
 111 :                       defaut. Le dernier cycle est toujours sauvegarde,
 112 :                       qu il fasse ou non partie de LISTENTI.
 113 : 
 114 :  FACTEUR_D : FLOTTANT si constant ou EVOLITION du facteur
 115 :              d amortissement au cours des cycles (fonction contenant
 116 :              en abscisse les cycles et en ordonnee les valeurs du
 117 :              facteur d amortissement). Ce facteur permet d attenuer
 118 :              les phenomene oscillatoire lors des cycles d optimisation.
 119 :              Cette donnee est facultative et est egale a 0.5 par defaut.
 120 :              Une valeur plus faible est generalement souhaitable dans
 121 :              le cas d une synthese de mecanisme souple.
 122 : 
 123 :  FACTEUR_P : FLOTTANT si constant ou EVOLITION du facteur de penalite
 124 :              au cours des cycles (fonction contenant en abscisse les
 125 :              cycles et en ordonnee les valeurs du facteur de penalite).
 126 :              Cette donnee est facultative et est egale a 3.0 par defaut.
 127 : 
 128 :  FACTEUR_Q : FLOTTANT si constant ou EVOLITION du facteur d echelle de
 129 :              gris au cours des cycles d optimisation (fonction contenant
 130 :              en abscisse les cycles et en ordonnee les valeurs du
 131 :              facteur d echelle de gris). Cette donnee est facultative
 132 :              et est egale a 1.0 par defaut.
 133 : 
 134 :  FRACTION_VOLUME : fraction de volume autorisee. Cette donnee est
 135 :                    facultative et est egale a 0.4 par defaut.
 136 : 
 137 :  MAX_CYCLES : nombre maximum de cycles d optimisation. Cette donnee est
 138 :               facultative et est egale a 100 par defaut.
 139 : 
 140 :  MECANISME : objet de type CHPOINT pour un cas de charge unique,
 141 :              ou bien de type TABLE contenant les differents cas de
 142 :              chargement, chacun de type CHPOINT. Ces chargements sont
 143 :              de type forces et indiquent la direction dans laquelle les
 144 :              deplacements doivent etre maximises. Cette donnee permet
 145 :              d effectuer une synthese de mecanisme souple.
 146 : 
 147 :  MECANISME_ZERO_SPRING : LOGIQUE indiquant s il faut aussi effectuer
 148 :              une resolution sans les ressorts appliques dans le cas
 149 :              d une synthese de mecanisme souple. Cette donnee est
 150 :              facultative et est egale a FAUX par defaut.
 151 : 
 152 :  MES_SAUVEGARDES : TABLE permettant de specifier quel resultats doivent
 153 :                    etre sauves.
 154 : 
 155 :                    Les indices de cette table sont :
 156 : 
 157 :                    MAILLAGE : LOGIQUE valant VRAI pour sauver le
 158 :                               maillage au cours de l optimisation.
 159 :                               Cette donnee est facultative et est
 160 :                               egale a VRAI par defaut.
 161 : 
 162 :                    RESOLUTION : LOGIQUE valant VRAI pour sauver les
 163 :                                 resultats issus des resolutions
 164 :                                 effectuees au cours de l optimisation.
 165 :                                 Cette donnee est facultative et est
 166 :                                 egale a FAUX par defaut.
 167 : 
 168 :                    TOPOLOGIE : LOGIQUE valant VRAI pour sauver la
 169 :                                topologie au cours de l optimisation.
 170 :                                Cette donnee est facultative et est
 171 :                                egale a VRAI par defaut.
 172 : 
 173 :  OC_B_MIN : valeur minimale de B appliquee dans le cas d une synthese
 174 :             de mecanisme souple avec B**D correspondant au rapport
 175 :             entre le nouveau champ topologique et celui du cycle
 176 :             precedent. Cette donnee est facultative et est egale a
 177 :             1.0e-10 par defaut.
 178 : 
 179 :  OC_CRITERE : valeur du critere de convergence pour l algorithme
 180 :               dicotomique du critere d optimalite. Cette donnee est
 181 :               facultative et est egale a 1.0e-8 par defaut.
 182 : 
 183 :  OC_L1 : valeur de la borne inferieure intiale de l interval de
 184 :          recherche pour l algorithme dicotomique du critere
 185 :          d optimalite. Cette donnee est facultative et est egale a 0.0
 186 :          par defaut.
 187 : 
 188 :  OC_L2 : valeur de la borne superieure intiale de l interval de
 189 :          recherche pour l algorithme dicotomique du critere
 190 :          d optimalite. Cette donnee est facultative et est egale a
 191 :          1.0e5 par defaut.
 192 : 
 193 :  OC_L2_MIN : valeur minimale de la borne superieure de l interval de
 194 :              recherche pour l algorithme dicotomique du critere
 195 :              d optimalite. Cette donnee est facultative et est egale a
 196 :              1.0e-40 par defaut.
 197 : 
 198 :  OC_MAX_IT : nombre maximum d iterations pour l algorithme dicotomique
 199 :              du critere d optimalite. Cette donnee est facultative et
 200 :              est egale a 1.0e5 par defaut.
 201 : 
 202 :  POIDS_TEMPERATURE : poids permettant d affecter la sensibilite a la
 203 :                      minimisation de souplesse thermique par rapport
 204 :                      aux autres criteres de sensibilite eventuels.
 205 :                      Cette donnee est facultative et est egale par
 206 :                      defaut a 0.0 dans le cas d une synthese de
 207 :                      mecanisme souple ou 1.0 sinon. Pour ne pas etre
 208 :                      sensible a la souplesse thermique, mettre ce
 209 :                      parametre a zero.
 210 : 
 211 :  POIDS_MECANISME : poids permettant d affecter la sensibilite du critere
 212 :                    pour la synthese de mecanisme souple par rapport aux
 213 :                    autres criteres de sensibilite eventuels. Cette
 214 :                    donnee est facultative et est egale a 1.0 par defaut.
 215 :                    Pour ne pas etre sensible a ce critere, mettre ce
 216 :                    parametre a zero.
 217 : 
 218 :  POIDS_ENERGIE_DEFO : poids permettant d affecter la sensibilite a la
 219 :                       minimisation de l energie de deformation
 220 :                       elastique par rapport aux autres criteres de
 221 :                       sensibilite eventuels. Cette donnee est
 222 :                       facultative et est egale par defaut a 0.0 dans le
 223 :                       cas d une synthese de mecanisme souple ou 1.0
 224 :                       sinon. Pour ne pas etre sensible a l energie de
 225 :                       deformation elastique, mettre ce parametre a
 226 :                       zero.
 227 : 
 228 :  PRECISION : seuil de precision en deca duquelle on considere qu un
 229 :              nombre est nul. Cette donnee est facultative et est egale
 230 :              a 1.0e-9 par defaut.
 231 : 
 232 :  PROCEDURE_TOPOPERS : LOGIQUE indiquant si une procedure TOPOPERS a
 233 :                       ete definie par l utilisateur. Auquel cas elle
 234 :                       sera appelee a chaque cycle du processus
 235 :                       d optimisation, juste apres la resolution. Cette
 236 :                       donnee est facultative et est egale a FAUX par
 237 :                       defaut.
 238 : 
 239 :  RAPPORT_RAIDEURS_MECANIQUES : valeur du rapport entre la raideur
 240 :                                correspondant aux vides et celle
 241 :                                de la matiere. Cette donnee est
 242 :                                facultative et est egale par defaut a 
 243 :                                1.0e-8 dans le cas d une synthese de
 244 :                                mecanisme souple ou 0.0 sinon. Une valeur
 245 :                                differente de 0.0 revient a considerer
 246 :                                que les vides ont une certaine raideur.
 247 : 
 248 :  RAPPORT_RAIDEURS_THERMIQUES : valeur du rapport entre la conductivite
 249 :                                correspondant aux vides et celle
 250 :                                de la matiere. Cette donnee est
 251 :                                facultative et est egale a 0.001 par
 252 :                                defaut. Par exemple, si les vident
 253 :                                correspondent a de l air, ce rapport
 254 :                                doit etre celui de la conductivite de
 255 :                                l air sur celle de la matiere.
 256 : 
 257 :  RESOLUTION_LINEAIRE : TABLE contenant les donnees de la simulation
 258 :                        pour une resolution lineaire via la procedure
 259 :                        RESO. Si cette table est donnee, alors
 260 :                        RESOLUTION_PASAPAS ne doit pas etre fourni.
 261 :                        
 262 :        Les indices de cette table sont :
 263 :                        
 264 :        BLOCAGES_MECANIQUES : blocages mecaniques (type RIGIDITE) ou
 265 :                              TABLE contenant les differents cas de
 266 :                              blocages mecaniques.
 267 : 
 268 :        BLOCAGES_THERMIQUES : blocages thermiques (type RIGIDITE) ou
 269 :                              TABLE contenant les differents cas de
 270 :                              blocages thermiques.
 271 : 
 272 :        CARACTERISTIQUES : champ de caracteristiques materielles et
 273 :                           geometriques si necessaire.
 274 : 
 275 :        CHARGEMENT : objet de type CHPOINT pour un cas de charge unique,
 276 :                     ou bien de type TABLE contenant les differents
 277 :                     cas de chargement, chacun de type CHPOINT. Dans le
 278 :                     cas d un chargement thermo-mecanique, la resolution
 279 :                     sera decouplee. Pour une resolution couplee,
 280 :                     utiliser RESOLUTION_PASAPAS.
 281 : 
 282 :        MODELE : objet modele (type MMODEL) de la structure de
 283 :                 comportement lineaire.
 284 : 
 285 :  RESOLUTION_PASAPAS : TABLE contenant les donnees de la simulation pour
 286 :                       une resolution non-lineaire via la procedure
 287 :                       PASAPAS. Si cette table est donnee, alors
 288 :                       RESOLUTION_LINEAIRE ne doit pas etre fourni.
 289 : 
 290 :        Les indices de cette table sont ceux decrits dans la procedure
 291 :        PASAPAS a l exception des indices suivants qui peuvent etre
 292 :        donnes sous forme de TABLE pour les cas de chargements
 293 :        multiples :
 294 :        
 295 :        BLOCAGES_MECANIQUES : blocages mecaniques (type RIGIDITE) ou
 296 :                              TABLE contenant les differents cas de
 297 :                              blocages mecaniques, chacun de type
 298 :                              RIGIDITE.
 299 : 
 300 :        BLOCAGES_THERMIQUES : blocages thermiques (type RIGIDITE) ou
 301 :                              TABLE contenant les differents cas de
 302 :                              blocages thermiques, chacun de type
 303 :                              RIGIDITE.
 304 : 
 305 :        CHARGEMENT : chargement en fonction du parametre d evolution
 306 :                     (type CHARGEME, cree par l operateur CHAR), ou
 307 :                     TABLE contenant les differents cas de chargement,
 308 :                     chacun de type CHARGEME.
 309 : 
 310 :  RESTRICTIONS : TABLE contenant les donnees sur les restrictions
 311 :                 geometriques a appliquer. Cette donnee est facultative
 312 :                 et aucune restriction n est applique par defaut.
 313 :                
 314 :                 Les indices de cette TABLE sont des entiers
 315 :                 correspondant aux numeros, de 1 a N, des N restrictions
 316 :                 a appliquer. Les donnees relatives a chaque restriction
 317 :                 sont elles-meme indiquees dans une TABLE.
 318 : 
 319 :        Les indices de la TABLE d une restriction sont :
 320 :        
 321 :        ZONE : partie du maillage sur lequel s applique la restriction.
 322 :               Ce maillage doit lui meme respecter la restriction a
 323 :               imposer a la topologie de sortie. Cette donnee est
 324 :               facultative et la restriction s applique par defaut sur
 325 :               l ensemble du domaine optimise.
 326 :        
 327 :        TYPE : MOT indiquant le type de restriction a appliquer. Les
 328 :               valeurs possibles sont :
 329 : 
 330 :                 1 - SYME_POIN : pour une symetrie centrale.
 331 :                 2 - SYME_DROI : pour une symetrie axiale.
 332 :                 3 - SYME_PLAN : pour une symetrie plane.
 333 :                 4 - PERIODICITE_AXIALE : pour une periodicite axiale
 334 :                 5 - PERIODICITE_CIRCULAIRE : pour une periodicite
 335 :                                              circulaire.
 336 :        
 337 :        POIN1 : un, deux ou trois points suivant le type de restriction.
 338 :        POIN2   Par exemple, pour SYME_PLAN, en 2D, seuls POIN1 et POIN2
 339 :        POIN3   sont attendus. Pour le cas de la periodicite axiale,
 340 :                POIN1 et POIN2 donnent la direction et leur distance
 341 :                doit correspondre a la taille d une periode.
 342 :        
 343 :        PERIODES : nombre de periodes. Cette donnee est attendue
 344 :                   uniquement pour PERIODICITE_AXIALE et pour
 345 :                   PERIODICITE_CIRCULAIRE.
 346 : 
 347 :  SEUIL : valeur seuil du rapport des raideurs en deca duquelle les
 348 :          elements sont elimines pour accelerer le processus
 349 :          d optimisation. Cette donnee est facultative et est egale a
 350 :          1.0e-9 par defaut.
 351 : 
 352 :  TAUX_FILTRAGE : taux de filtrage de la sensibilite. Cette donnee est
 353 :                  facultative et est egale a 1 par defaut.
 354 : 
 355 :  TOPOLOGIE : TABLE facultative qui peut contenir une topologie de
 356 :              depart imposee dont l'indice doit etre egal a CYCLE
 357 :              (0 par defaut). Le maillage et le modele associes a ce
 358 :              champ topologique de depart n'ont pas besoin d etre les
 359 :              memes que ceux donnes dans la table de resolution. Cela
 360 :              peut etre utile dans le cas d'un raffinement de maillage
 361 :              entre plusieurs appels successifs a TOPOPTIM.
 362 : 
 363 :  TOPOLOGIE_MAX_INC : increment maximum d evolution du critere
 364 :                      d optimalite entre deux cycles d optimisation
 365 :                      successifs. Cette donnee est facultative et est
 366 :                      egale a 0.2 par defaut.
 367 : 
 368 :  TOPOLOGIE_MIN: valeur minimale du champ topologique. Cette donnee est
 369 :                 facultative et est egale par defaut a 0.001 dans le
 370 :                 cas d une synthese de mecanisme souple ou 0.0 sinon.
 371 : 
 372 :  TRAC : LOGIQUE permettant de dessiner l evolution de la topologie a
 373 :         la fin de chaque cycle du processus d optimisation. Cette
 374 :         donnee est facultative et est egale a VRAI par defaut.
 375 : 
 376 :  ZERO_DIVISION : valeur utilisee pour eviter les divisions par zero
 377 :                  lors des operations sur les champs de sensibilite.
 378 :                  Cette donnee est facultative et est egale a 0.001 par
 379 :                  defaut.
 380 : 
 381 :  ZONE_FIGEE : partie du maillage qui fera obligatoirement partie de la
 382 :               topologie optimisee. Cette donnee est facultative.
 383 : 
 384 : 
 385 :     En sortie :
 386 :     ___________
 387 : 
 388 : En sortie, TAB1 permet de retrouver differentes donnes dont voici
 389 : la liste :
 390 : 
 391 :  CONVERGENCE : LOGIQUE indiquant si le critere de convergence a ete
 392 :                atteint. Dans le cas contraire, le nombre maximum
 393 :                de cycles d optimisation a ete atteint.
 394 : 
 395 :  MAILLAGE : TABLE contenant le maillage au cours de l optimisation.
 396 :             Si la sauvegarde du maillage n a pas ete specifiee dans
 397 :             MES_SAUVEGARDES, alors cette table est vide. Dans le cas
 398 :             contraire, les indices de cette table sont ceux des cycles
 399 :             auquels la sauvegarde a ete demandee ainsi que celui du
 400 :             dernier cycle d optimisation effectue.
 401 : 
 402 :  RESOLUTION : TABLE contenant les resultats issus des resolutions
 403 :               effectuees au cours de l optimisation. Si la sauvegarde
 404 :               des resolutions n a pas ete specifiee dans
 405 :               MES_SAUVEGARDES, alors cette table est vide. Dans le cas
 406 :               contraire, les indices de cette table sont ceux des cycles
 407 :               auquels la sauvegarde a ete demandee ainsi que celui du
 408 :               dernier cycle d optimisation effectue. 
 409 : 
 410 :  TOPOLOGIE : TABLE contenant la topologie au cours de l optimisation.
 411 :              Si la sauvegarde de la topologie n a pas ete specifiee dans
 412 :              MES_SAUVEGARDES, alors cette table est vide. Dans le cas
 413 :              contraire, les indices de cette table sont ceux des cycles
 414 :              auquels la sauvegarde a ete demandee ainsi que celui du
 415 :              dernier cycle d optimisation effectue. Chaque topologie
 416 :              correspond a un champ scalaire de type MCHAML, exprime aux
 417 :              centres de gravite des elements du maillage initial.
 418 : 
 419 : 
 420 :     Exemples :
 421 :     __________
 422 : 
 423 : topoptim_01.dgibi topoptim_02.dgibi topoptim_03.dgibi topoptim_04.dgibi
 424 : topoptim_05.dgibi topoptim_06.dgibi topoptim_07.dgibi topoptim_08.dgibi
 425 : topoptim_09.dgibi topoptim_10.dgibi topoptim_11.dgibi
 426 : 

© Cast3M 2003 - Tous droits réservés.
Mentions légales