SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
Optimisation structurelle à l’aide de
 Python, Salomé et Code-Aster



             Optimisation d’un rouet pour banc de
               calibration de capteurs inductifs


             NRCTech SA, Lausanne, Suisse, www.nrctech.ch




NRCTech SA                      www.nrctech.ch              30.01.2011   1
Problématique:
             optimisation statique d’un rouet
                                                                       boîtier arrière
Problématique:                                                         - palier
                                              échangeur thermique
- Un banc d’essai est développé pour la                                - précharge palier
calibration de capteurs inductifs utilisés
pour le contrôle de turbo-pompes                    rouet
- Très haute vitesse requise
                                           bâti
(supersonique), fréquence de passage - positionnement
d’aube ≃ 20kHz                             - étanchéité
                                                  - protection

Le banc d'essai pour capteurs de
proximité est constitué des éléments
                                                    arbre
suivants
    • un rouet (disque) tournant à haute            boîtier avant
      vitesse sur un arbre                          - palier           Rv
    • des paliers
    • deux capteurs de déplacement                          capteurs
    • un bâti

NRCTech SA                                 www.nrctech.ch              30.01.2011    2
Cahier des charges, objectifs et contraintes

      vitesse
         • fréquence de passage ~20khz, temps de passage ~3.5 ms
      zone de lecture
         • longueur rectiligne >10 mm
         • largeur des bras 2.1 mm
         • épaisseur fixe > 10 mm
      matériau : Ti6Al4V
         • données fournisseur
         • Sigma02 = 828MPa, Rm=895MPa
      objectifs:
         • minimiser contraintes
         • minimiser masse
      contraintes
         • dimensionnelles (réutiliser bâti)
         • temps alloué court


NRCTech SA                                     www.nrctech.ch      30.01.2011   3
Optimisation statique du rouet: la démarche

        Deux approches:
             • Étude de sensibilité et optimisation « manuelle »
             • Développer et mettre en œuvre un optimiseur paramétrique

                     Choix de développement:
                       • Logiciels Open-Source uniquement
                            • Capitaliser sur le savoir-faire, développements doivent pouvoir être réutilisés
                       • Utiliser Salomé comme modeleur géométrique et mailleur
                            • Avantage: scripts python, opérations booléennes, maillage intégré, gestion
                              des groupes
                       • Utiliser Code-Aster comme solveur:
                            • Avantage: puissant et versatile, scriptable en python si nécessaire
                       • Utiliser Python et la librairie Scipy.Optimize
                            • Avantage: multi-plateforme, simple, efficace, compatible directement avec
                              Salomé & Aster
                       • Execution: utiliser CAELinux 2010 comme plateforme logicielle
                            • tous les prérequis sont déjà installés prêts à l’emploi


NRCTech SA                                     www.nrctech.ch                                  30.01.2011       4
Postpro.sh                              Optim.py
                     • Extraire les résultats utiles         • Librairie scipy.optimize
                     • In: Resu, Out: postpro.resu           • Fonction Objectif
                                                             • Contraintes / pénalisation
                                                             • Out: paramètres




             Model.comm                                                  Paramsolve.py
             • Fichier commande Aster                                    • Templates => fichiers
             • Résoud problème                                             d’entrées
               mécanique                                                 • Execution de Salomé,
             • In: paramètres,                                             Aster & Post-pro
               mesh.med , Out:                                           • In: paramètres, out:
               resu.med                                                    résultats post-traités


                                          Model.py
                                          • Script Salomé
                                          • Génère géométrie et
                                            maillage paramétrique
                                          • In: paramètres, Out:
                                            mesh.med




             Logiciel d’optimisation paramétrique
NRCTech SA                                  www.nrctech.ch                                          30.01.2011   5
Modèle 1


                                         Modélisation d’un secteur (1/20)




NRCTech SA              www.nrctech.ch                      30.01.2011   6
Modèle 1 : paramétrisation




NRCTech SA                       www.nrctech.ch   30.01.2011   7
Construction géométrique modèle 1




NRCTech SA                      www.nrctech.ch   30.01.2011   8
Model1.py

             …
             F2f=geompy.MakeFillet2D(F2b,R6,[4,5,7,9])
             F3=geompy.MakeFace(poly1,1)
             V1=geompy.MakePrismVecH2Ways(F1,vz,thick)
             V2=geompy.MakePrismVecH2Ways(F2f,vz,2*thick)
             # boolean ops
             V3=geompy.MakeCut(V1,V2)
             V4=geompy.MakeRevolution2Ways(F3,vz,aa1r)
             V5=geompy.MakeCommon(V3,V4)
             …
             # compute the mesh
             msh=smesh.Mesh(V5,"mesh1")
             …
             msh.Compute()
             # and convert it to quadratic
             msh.ConvertToQuadratic(1)
             # generate groups on geometry
             mshgrp1=msh.GroupOnGeom(botsymg,"botsym")
             …
             msh.ExportMED( outmesh, 0, SMESH.MED_V2_2 )

NRCTech SA                             www.nrctech.ch       30.01.2011   9
Optimisation 1

             Paramètres à optimiser

             • Vecteur x : 11 paramètres géométrique

             Contraintes

             • Bornes sur les paramètres
             • Forcer certains paramètres pour maintenir une géométrie valide

             Objectif

             • Minimiser f(x) avec f(x) = || ( SMax(x)/Rm ; Masse(x)/MasseRef )||²

             Algorithme

             • Minimisation quasi-Newton L-BFGS de Scipy.Optimize
             • Calcul du Jacobien par différences finies
             • Bornes des paramètres respectées exactement



NRCTech SA                                   www.nrctech.ch                          30.01.2011   10
Optimisation 1: résultat

                                                                 Execution:
                                                                      Modèle EF: ~ 50-70k DDL, résolution
                                                                       paramétrique (Salomé+Aster) ~1 min
                                                                      Optimisation: ~80 résolutions EF ~
                                                                       1h30




     Résultats
            Design initial:
                 • Contrainte max 1400 MPa
                 • Masse: 1.51 kg
            Design optimisé
                 • Contrainte max 670 MPa
                 • Masse: 1.05 kg

    NRCTech SA                               www.nrctech.ch                                   30.01.2011     11
Modèle 2




                                         But:
                                         Améliorer aérodynamique (super sonique)
                                         Couronne externe à rayon constant
                                         Découpe pour alléger au maximum



NRCTech SA              www.nrctech.ch                             30.01.2011   12
Modèle 2 : construction




NRCTech SA                       www.nrctech.ch   30.01.2011   13
Optimisation 2: résultat

                                                                   Execution:
                                                                        Modèle EF: ~ 120 DDL, résolution
                                                                         paramétrique (Salomé+Aster) ~2 min
                                                                        Optimisation: ~80 résolutions EF ~ 3h




    Résultats
          Design initial:
                 • Contrainte max 1280 MPa
                 • Masse: 1.3 kg
          Design optimisé
                 • Contrainte max 890 Mpa !!
                 • Masse: 1.25 kg



    NRCTech SA                                 www.nrctech.ch                                   30.01.2011   14
Vérification design 2 avec plasticité




NRCTech SA                         www.nrctech.ch    30.01.2011   15
Bilan

       Comparaison des approches
            Optimiseur paramétrique:
              •   Dévelopement modèles paramétriques ~1.5 jours
              •   Dévelopement optimiseur, tests & validation ~2 jours
              •   Optimisation paramétrique, plusieurs essais & objectifs ~1.5 jours
              •   Temps total ~5 jours de travail (dont 2 jours de dével. réutilisable)
              •   Résultats optimaux p.r aux critères, compréhension limitée du problème
            Optimisation manuelle:
              • Durée totale ~5 jours, résultats pas optimaux mais meilleure compréhension
       Logiciels utilisés:
            La plateforme Salome-Meca est idéale pour la réalisation d’études
             paramétriques
            Scipy fonctionne bien, mais passage à Dakota dans le futur
            Pas de frais de licences => possibilités d’extensions “illimitées” sur Cluster
             Amazon EC2 (voir CAELinux in the Cloud), p.ex avec Dakota / OpenTurns


NRCTech SA                                 www.nrctech.ch                           30.01.2011   16
Remerciements




                    Merci de votre attention !


                     Cet exemple vous a été présenté par

                          NRCTech SA, Lausanne
                             www.nrctech.ch




NRCTech SA                       www.nrctech.ch            30.01.2011   17

Más contenido relacionado

Similar a 09 jus 20101123_optimisation_salomeaster

10 jus 20101123_plat_salome
10 jus 20101123_plat_salome10 jus 20101123_plat_salome
10 jus 20101123_plat_salomeOpenCascade
 
.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotiqueMicrosoft
 
BBL - Monitoring - kyriba
BBL - Monitoring - kyribaBBL - Monitoring - kyriba
BBL - Monitoring - kyribaOlivier BAZOUD
 
Digital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdfDigital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdfHouBou3
 
Evolution et critique des système de reconstruction 3D humain
Evolution et critique des système de  reconstruction 3D humainEvolution et critique des système de  reconstruction 3D humain
Evolution et critique des système de reconstruction 3D humainMedhyBouziane
 
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des AlgorithmesCh4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmeslotfibenromdhane
 
Présentation extia optimisation_cfd
Présentation extia optimisation_cfdPrésentation extia optimisation_cfd
Présentation extia optimisation_cfdSteven DAIX
 
Utilisation de l’IA dans le manufacturing - Retour d'expérience
Utilisation de l’IA dans le manufacturing - Retour d'expérienceUtilisation de l’IA dans le manufacturing - Retour d'expérience
Utilisation de l’IA dans le manufacturing - Retour d'expérienceMathieu Goeminne
 
Jus 2011 - Salome - Panthere
Jus 2011 - Salome - PanthereJus 2011 - Salome - Panthere
Jus 2011 - Salome - PanthereOpenCascade
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesXavier MARIN
 
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesComment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesCarles Sistare
 
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...David Caramelo
 
Réussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDBRéussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDB MongoDB
 
Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022
 Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022 Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022
Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022Yvon Gervaise
 

Similar a 09 jus 20101123_optimisation_salomeaster (20)

10 jus 20101123_plat_salome
10 jus 20101123_plat_salome10 jus 20101123_plat_salome
10 jus 20101123_plat_salome
 
.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique
 
BBL - Monitoring - kyriba
BBL - Monitoring - kyribaBBL - Monitoring - kyriba
BBL - Monitoring - kyriba
 
Digital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdfDigital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdf
 
Evolution et critique des système de reconstruction 3D humain
Evolution et critique des système de  reconstruction 3D humainEvolution et critique des système de  reconstruction 3D humain
Evolution et critique des système de reconstruction 3D humain
 
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des AlgorithmesCh4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmes
 
Présentation extia optimisation_cfd
Présentation extia optimisation_cfdPrésentation extia optimisation_cfd
Présentation extia optimisation_cfd
 
Coursdsp tdi
Coursdsp tdiCoursdsp tdi
Coursdsp tdi
 
Utilisation de l’IA dans le manufacturing - Retour d'expérience
Utilisation de l’IA dans le manufacturing - Retour d'expérienceUtilisation de l’IA dans le manufacturing - Retour d'expérience
Utilisation de l’IA dans le manufacturing - Retour d'expérience
 
Jus 2011 - Salome - Panthere
Jus 2011 - Salome - PanthereJus 2011 - Salome - Panthere
Jus 2011 - Salome - Panthere
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
 
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesComment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
 
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
 
Paug renderscript-mars-2013
Paug renderscript-mars-2013Paug renderscript-mars-2013
Paug renderscript-mars-2013
 
Présentation1
Présentation1Présentation1
Présentation1
 
_JCVFr
_JCVFr_JCVFr
_JCVFr
 
_JCVFr
_JCVFr_JCVFr
_JCVFr
 
Soc
SocSoc
Soc
 
Réussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDBRéussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDB
 
Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022
 Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022 Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022
Bienvenue sur le Cours- Conférence de Y.Gervaise du 5 Janvier 2022
 

Más de OpenCascade

JUS 2011 - Homard
JUS 2011 - HomardJUS 2011 - Homard
JUS 2011 - HomardOpenCascade
 
JUS 2011 - Les 10 ans de Salome MECA
JUS 2011 - Les 10 ans de Salome MECAJUS 2011 - Les 10 ans de Salome MECA
JUS 2011 - Les 10 ans de Salome MECAOpenCascade
 
JUS 2011 - Manipulation de champs avec SALOME
JUS 2011 - Manipulation de champs avec SALOMEJUS 2011 - Manipulation de champs avec SALOME
JUS 2011 - Manipulation de champs avec SALOMEOpenCascade
 
JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...
JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...
JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...OpenCascade
 
JUS 2011 - SALOME Roadmap 2012-2013
JUS 2011 - SALOME Roadmap 2012-2013JUS 2011 - SALOME Roadmap 2012-2013
JUS 2011 - SALOME Roadmap 2012-2013OpenCascade
 
JUS 2011 - parex
JUS 2011 -  parex JUS 2011 -  parex
JUS 2011 - parex OpenCascade
 
Examples of use of the Salome Platform For Teaching and Research Activities A...
Examples of use of the Salome Platform For Teaching and Research Activities A...Examples of use of the Salome Platform For Teaching and Research Activities A...
Examples of use of the Salome Platform For Teaching and Research Activities A...OpenCascade
 
JUS 2001 - Maillage d'un béton avec Microgen
JUS 2001 - Maillage d'un béton avec MicrogenJUS 2001 - Maillage d'un béton avec Microgen
JUS 2001 - Maillage d'un béton avec MicrogenOpenCascade
 
JUS 2011 - Présentation 4a - Microgen
JUS 2011 -  Présentation 4a - MicrogenJUS 2011 -  Présentation 4a - Microgen
JUS 2011 - Présentation 4a - MicrogenOpenCascade
 
03 jus 2011 11 15 bilan2 011
03 jus 2011 11 15 bilan2 01103 jus 2011 11 15 bilan2 011
03 jus 2011 11 15 bilan2 011OpenCascade
 
08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentation08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentationOpenCascade
 
05 jus 20101123_numodis
05 jus 20101123_numodis05 jus 20101123_numodis
05 jus 20101123_numodisOpenCascade
 
04 jus 20101123_para_vis
04 jus 20101123_para_vis04 jus 20101123_para_vis
04 jus 20101123_para_visOpenCascade
 
03 jus 20101123_plateforme_alliance
03 jus 20101123_plateforme_alliance03 jus 20101123_plateforme_alliance
03 jus 20101123_plateforme_allianceOpenCascade
 
11 jus 20101123_saturneastersalome
11 jus 20101123_saturneastersalome11 jus 20101123_saturneastersalome
11 jus 20101123_saturneastersalomeOpenCascade
 
01 jus 20101123_intro
01 jus 20101123_intro01 jus 20101123_intro
01 jus 20101123_introOpenCascade
 
02 jus 20101123_maillage_pourlacfd
02 jus 20101123_maillage_pourlacfd02 jus 20101123_maillage_pourlacfd
02 jus 20101123_maillage_pourlacfdOpenCascade
 

Más de OpenCascade (17)

JUS 2011 - Homard
JUS 2011 - HomardJUS 2011 - Homard
JUS 2011 - Homard
 
JUS 2011 - Les 10 ans de Salome MECA
JUS 2011 - Les 10 ans de Salome MECAJUS 2011 - Les 10 ans de Salome MECA
JUS 2011 - Les 10 ans de Salome MECA
 
JUS 2011 - Manipulation de champs avec SALOME
JUS 2011 - Manipulation de champs avec SALOMEJUS 2011 - Manipulation de champs avec SALOME
JUS 2011 - Manipulation de champs avec SALOME
 
JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...
JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...
JUS 2011 - Thermalhydraulic coupling using ICoCo : an Interface for Code Coup...
 
JUS 2011 - SALOME Roadmap 2012-2013
JUS 2011 - SALOME Roadmap 2012-2013JUS 2011 - SALOME Roadmap 2012-2013
JUS 2011 - SALOME Roadmap 2012-2013
 
JUS 2011 - parex
JUS 2011 -  parex JUS 2011 -  parex
JUS 2011 - parex
 
Examples of use of the Salome Platform For Teaching and Research Activities A...
Examples of use of the Salome Platform For Teaching and Research Activities A...Examples of use of the Salome Platform For Teaching and Research Activities A...
Examples of use of the Salome Platform For Teaching and Research Activities A...
 
JUS 2001 - Maillage d'un béton avec Microgen
JUS 2001 - Maillage d'un béton avec MicrogenJUS 2001 - Maillage d'un béton avec Microgen
JUS 2001 - Maillage d'un béton avec Microgen
 
JUS 2011 - Présentation 4a - Microgen
JUS 2011 -  Présentation 4a - MicrogenJUS 2011 -  Présentation 4a - Microgen
JUS 2011 - Présentation 4a - Microgen
 
03 jus 2011 11 15 bilan2 011
03 jus 2011 11 15 bilan2 01103 jus 2011 11 15 bilan2 011
03 jus 2011 11 15 bilan2 011
 
08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentation08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentation
 
05 jus 20101123_numodis
05 jus 20101123_numodis05 jus 20101123_numodis
05 jus 20101123_numodis
 
04 jus 20101123_para_vis
04 jus 20101123_para_vis04 jus 20101123_para_vis
04 jus 20101123_para_vis
 
03 jus 20101123_plateforme_alliance
03 jus 20101123_plateforme_alliance03 jus 20101123_plateforme_alliance
03 jus 20101123_plateforme_alliance
 
11 jus 20101123_saturneastersalome
11 jus 20101123_saturneastersalome11 jus 20101123_saturneastersalome
11 jus 20101123_saturneastersalome
 
01 jus 20101123_intro
01 jus 20101123_intro01 jus 20101123_intro
01 jus 20101123_intro
 
02 jus 20101123_maillage_pourlacfd
02 jus 20101123_maillage_pourlacfd02 jus 20101123_maillage_pourlacfd
02 jus 20101123_maillage_pourlacfd
 

09 jus 20101123_optimisation_salomeaster

  • 1. Optimisation structurelle à l’aide de Python, Salomé et Code-Aster Optimisation d’un rouet pour banc de calibration de capteurs inductifs NRCTech SA, Lausanne, Suisse, www.nrctech.ch NRCTech SA www.nrctech.ch 30.01.2011 1
  • 2. Problématique: optimisation statique d’un rouet boîtier arrière Problématique: - palier échangeur thermique - Un banc d’essai est développé pour la - précharge palier calibration de capteurs inductifs utilisés pour le contrôle de turbo-pompes rouet - Très haute vitesse requise bâti (supersonique), fréquence de passage - positionnement d’aube ≃ 20kHz - étanchéité - protection Le banc d'essai pour capteurs de proximité est constitué des éléments arbre suivants • un rouet (disque) tournant à haute boîtier avant vitesse sur un arbre - palier Rv • des paliers • deux capteurs de déplacement capteurs • un bâti NRCTech SA www.nrctech.ch 30.01.2011 2
  • 3. Cahier des charges, objectifs et contraintes  vitesse • fréquence de passage ~20khz, temps de passage ~3.5 ms  zone de lecture • longueur rectiligne >10 mm • largeur des bras 2.1 mm • épaisseur fixe > 10 mm  matériau : Ti6Al4V • données fournisseur • Sigma02 = 828MPa, Rm=895MPa  objectifs: • minimiser contraintes • minimiser masse  contraintes • dimensionnelles (réutiliser bâti) • temps alloué court NRCTech SA www.nrctech.ch 30.01.2011 3
  • 4. Optimisation statique du rouet: la démarche  Deux approches: • Étude de sensibilité et optimisation « manuelle » • Développer et mettre en œuvre un optimiseur paramétrique  Choix de développement: • Logiciels Open-Source uniquement • Capitaliser sur le savoir-faire, développements doivent pouvoir être réutilisés • Utiliser Salomé comme modeleur géométrique et mailleur • Avantage: scripts python, opérations booléennes, maillage intégré, gestion des groupes • Utiliser Code-Aster comme solveur: • Avantage: puissant et versatile, scriptable en python si nécessaire • Utiliser Python et la librairie Scipy.Optimize • Avantage: multi-plateforme, simple, efficace, compatible directement avec Salomé & Aster • Execution: utiliser CAELinux 2010 comme plateforme logicielle • tous les prérequis sont déjà installés prêts à l’emploi NRCTech SA www.nrctech.ch 30.01.2011 4
  • 5. Postpro.sh Optim.py • Extraire les résultats utiles • Librairie scipy.optimize • In: Resu, Out: postpro.resu • Fonction Objectif • Contraintes / pénalisation • Out: paramètres Model.comm Paramsolve.py • Fichier commande Aster • Templates => fichiers • Résoud problème d’entrées mécanique • Execution de Salomé, • In: paramètres, Aster & Post-pro mesh.med , Out: • In: paramètres, out: resu.med résultats post-traités Model.py • Script Salomé • Génère géométrie et maillage paramétrique • In: paramètres, Out: mesh.med Logiciel d’optimisation paramétrique NRCTech SA www.nrctech.ch 30.01.2011 5
  • 6. Modèle 1 Modélisation d’un secteur (1/20) NRCTech SA www.nrctech.ch 30.01.2011 6
  • 7. Modèle 1 : paramétrisation NRCTech SA www.nrctech.ch 30.01.2011 7
  • 8. Construction géométrique modèle 1 NRCTech SA www.nrctech.ch 30.01.2011 8
  • 9. Model1.py … F2f=geompy.MakeFillet2D(F2b,R6,[4,5,7,9]) F3=geompy.MakeFace(poly1,1) V1=geompy.MakePrismVecH2Ways(F1,vz,thick) V2=geompy.MakePrismVecH2Ways(F2f,vz,2*thick) # boolean ops V3=geompy.MakeCut(V1,V2) V4=geompy.MakeRevolution2Ways(F3,vz,aa1r) V5=geompy.MakeCommon(V3,V4) … # compute the mesh msh=smesh.Mesh(V5,"mesh1") … msh.Compute() # and convert it to quadratic msh.ConvertToQuadratic(1) # generate groups on geometry mshgrp1=msh.GroupOnGeom(botsymg,"botsym") … msh.ExportMED( outmesh, 0, SMESH.MED_V2_2 ) NRCTech SA www.nrctech.ch 30.01.2011 9
  • 10. Optimisation 1 Paramètres à optimiser • Vecteur x : 11 paramètres géométrique Contraintes • Bornes sur les paramètres • Forcer certains paramètres pour maintenir une géométrie valide Objectif • Minimiser f(x) avec f(x) = || ( SMax(x)/Rm ; Masse(x)/MasseRef )||² Algorithme • Minimisation quasi-Newton L-BFGS de Scipy.Optimize • Calcul du Jacobien par différences finies • Bornes des paramètres respectées exactement NRCTech SA www.nrctech.ch 30.01.2011 10
  • 11. Optimisation 1: résultat  Execution:  Modèle EF: ~ 50-70k DDL, résolution paramétrique (Salomé+Aster) ~1 min  Optimisation: ~80 résolutions EF ~ 1h30  Résultats  Design initial: • Contrainte max 1400 MPa • Masse: 1.51 kg  Design optimisé • Contrainte max 670 MPa • Masse: 1.05 kg NRCTech SA www.nrctech.ch 30.01.2011 11
  • 12. Modèle 2 But: Améliorer aérodynamique (super sonique) Couronne externe à rayon constant Découpe pour alléger au maximum NRCTech SA www.nrctech.ch 30.01.2011 12
  • 13. Modèle 2 : construction NRCTech SA www.nrctech.ch 30.01.2011 13
  • 14. Optimisation 2: résultat  Execution:  Modèle EF: ~ 120 DDL, résolution paramétrique (Salomé+Aster) ~2 min  Optimisation: ~80 résolutions EF ~ 3h  Résultats  Design initial: • Contrainte max 1280 MPa • Masse: 1.3 kg  Design optimisé • Contrainte max 890 Mpa !! • Masse: 1.25 kg NRCTech SA www.nrctech.ch 30.01.2011 14
  • 15. Vérification design 2 avec plasticité NRCTech SA www.nrctech.ch 30.01.2011 15
  • 16. Bilan  Comparaison des approches  Optimiseur paramétrique: • Dévelopement modèles paramétriques ~1.5 jours • Dévelopement optimiseur, tests & validation ~2 jours • Optimisation paramétrique, plusieurs essais & objectifs ~1.5 jours • Temps total ~5 jours de travail (dont 2 jours de dével. réutilisable) • Résultats optimaux p.r aux critères, compréhension limitée du problème  Optimisation manuelle: • Durée totale ~5 jours, résultats pas optimaux mais meilleure compréhension  Logiciels utilisés:  La plateforme Salome-Meca est idéale pour la réalisation d’études paramétriques  Scipy fonctionne bien, mais passage à Dakota dans le futur  Pas de frais de licences => possibilités d’extensions “illimitées” sur Cluster Amazon EC2 (voir CAELinux in the Cloud), p.ex avec Dakota / OpenTurns NRCTech SA www.nrctech.ch 30.01.2011 16
  • 17. Remerciements Merci de votre attention ! Cet exemple vous a été présenté par NRCTech SA, Lausanne www.nrctech.ch NRCTech SA www.nrctech.ch 30.01.2011 17