FreeCAD Logo FreeCAD 1.0
  • Anglais Afrikaans Arabe Biélorusse Catalan Tchèque Allemand Grec Espagnol Espagnol Basque Finnois Philippin Français Galicien Croate Hongrois Indonésien Italien Japonais Kabyle Coréen Lituanien Néerlandais Norvégien classique Polonais Portugais Portugais Roumain Russe Slovaque Slovène Serbe Suédois Turc Ukrainien Valencien Vietnamien Chinois Chinois
  • Fonctions
  • Télécharger
  • Blog
  • Documentation
    Index de la documentation Premiers pas Documentation pour les utilisateurs Manuel de FreeCAD Documentation des ateliers Documentation sur le codage en Python Documentation pour les développeurs Tutoriels Foire aux questions Politique de confidentialité À propos de FreeCAD
  • Contribuer
    Comment aider Sponsor Signaler un bogue Faire une demande de modification (PR) Emplois et financements Guide pour les contributions Manuel pour les développeurs Traductions
  • Communauté
    Code de conduite Forum The FPA GitHub GitLab Codeberg Mastodon Matrix IRC IRC via Webchat Gitter Discord Reddit Twitter Facebook LinkedIn Calendrier
  • ♥ Donate

Donate

$
Informations SEPA
Veuillez configurer votre virement bancaire SEPA pour:
Beneficiary: The FreeCAD project association
IBAN: BE04 0019 2896 4531
BIC/SWIFT: GEBABEBBXXX
Agence bancaire: BNP Paribas Fortis
Adresse: Rue de la Station 64, 1360 Perwez, Belgium

While Stripe doesn't support monthly donations, you can still become a sponsor! Simply make a one-time donation equivalent to 12 months of support, and you'll gain access to the corresponding sponsoring tier. It's an easy and flexible way to contribute.

If you are not sure or not able to commit to a regular donation, but still want to help the project, you can do a one-time donation, of any amount.

Choose freely the amount you wish to donate one time only.

You can support FreeCAD by sponsoring it as an individual or organization through various platforms. Sponsorship provides a steady income for developers, allowing the FPA to plan ahead and enabling greater investment in FreeCAD. To encourage sponsorship, we offer different tiers, and unless you choose to remain anonymous, your name or company logo will be featured on our website accordingly.

from 1 USD / 1 EUR per month. You will not have your name displayed here, but you will have helped the project a lot anyway. Together, normal sponsors maintain the project on its feet as much as the bigger sponsors.

from 25 USD / 25 EUR per month. Your name or company name is displayed on this page.

from 100 USD / 100 EUR per month. Your name or company name is displayed on this page, with a link to your website, and a one-line description text.

from 200 USD / 200 EUR per month. Your name or company name and logo displayed on this page, with a link to your website and a custom description text. Companies that have helped FreeCAD early on also appear under Gold sponsors.

Instead of donating each month, you might find it more comfortable to make a one-time donation that, when divided by twelve, would give you right to enter a sponsoring tier. Don't hesitate to do so!

Choose freely the amount you wish to donate each month.

Please inform your forum name or twitter handle as a notein your transfer, or reach to us, so we can give you proper credits!

Cette documentation n'est pas terminée. Merci de nous aider et de contribuer à la documentation.

Modèle GuiCommand explique comment les commandes doivent être documentées. Parcourez Category:UnfinishedDocu pour voir d'autres pages incomplètes comme celle-ci. Voir Category:Command_Reference pour toutes les commandes.

Voir Écrire une page Wiki pour apprendre à éditer les pages du wiki, et aller à Contribuer à FreeCAD pour apprendre d'autres façons de contribuer.
Tutoriel
Thème
FEM Tutoriel d'analyse transitoire
Niveau
Temps d'exécution estimé
Auteurs
Version de FreeCAD
Fichiers exemples
Voir aussi
None

Contexte

Créer le modèle

  1. À partir d'un nouveau projet FreeCAD, nous construisons notre bande bimétallique dans l' atelier Part
  2. Dessinez un Cube Solid et renommez-le en aluminium.
  3. Donnez-lui les dimensions 100 x 10 x 2 mm (longueur x largeur x hauteur).
  4. Créez un deuxième Cube 'Acier' solide avec les mêmes dimensions
  5. Décalez cette pièce de 2 mm le long de l'axe Z (via Placement → Position → z).
  6. Sélectionnez les deux solides (en utilisant la touche Shift + clic de souris) et créez Fragments booléens à partir d'eux
  7. Renommez ces fragments booléens en bimetal strip
  8. Dans l'Éditeur de propriétés, nous changeons le mode de VueStandard à VueCompSolid. (Cela devrait également fonctionner en utilisant la commande Part Composite au lieu de Fragments booléens, cependant avec des formes croisées plus complexes, il pourrait y avoir des problèmes avec l'analyse FEM plus tard. Donc, il vaut mieux s'habituer à utiliser les fragments booléens en premier lieu.) Le résultat devrait ressembler à ceci:

Préparation et exécution de l'analyse FEM

Affecter les matériaux

Dans l’atelier FEM, nous créons une nouvelle analyse et ajoutons un nouveau matériau à l'analyse. Dans la fenêtre de tâches à venir, nous sélectionnons l'un des alliages d'aluminium prédéfinis. Sous 'geometry reference selector' (sélecteur de référence de géométrie), nous affectons le matériau à la bande inférieure de notre modèle en définissant le mode de sélection sur "solid", en cliquant sur "ajouter" et en sélectionnant une face ou un bord de la bande inférieure. Dans la vue liste, "BooleanFragments:Solid1" devrait apparaître.

Nous fermons la fenêtre de la tâche et répétons les étapes pour créer un deuxième matériau "Steel" (jeu de paramètres de matériau de "CalculiX-Steel") et l'affectons à la bande supérieure ("BooleanFragments:Solid2").

Création du maillage

Puisqu'une analyse par éléments finis a évidemment besoin d'éléments pour travailler, nous devons convertir notre modèle en un maillage. L'atelier FEM propose deux outils de maillage: Netgen et GMSH. Nous allons faire ici avec Netgen: avec l'objet booléen 'bimetal strip' sélectionné, nous cliquons sur l' icône Netgen dans l'atelier FEM. Dans la fenêtre de tâches suivante, nous devons faire différentes sélections, en partant du haut:

  • Max. taille est la taille maximale (en millimètres) d'un élément. Plus petite est la taille maximale des éléments, plus nous en aurons - généralement, le résultat devient plus précis, mais avec une augmentation considérable du temps de calcul. Nous l'avons fixé à 10.
  • Deuxième ordre signifie que, des nœuds supplémentaires seront créés dans chaque élément. Cela augmente le temps de calcul, mais constitue généralement un bon choix s'il s'agit de se s'adapter, comme dans notre analyse. Nous vous laissons tester.
  • Finesse : sélectionnez la manière dont le modèle doit être découpé en éléments. Pour les modèles plus complexes avec des courbures et des intersections, nous pouvons augmenter le nombre d'éléments dans ces régions pour obtenir de meilleurs résultats (au prix de plus de temps de calcul, bien sûr). Les utilisateurs experts peuvent également le définir sur Défini par l'utilisateur et fixer les paramètres suivants. Pour notre modèle rectangulaire simple, le choix de la finesse n'a pas beaucoup d'impact, nous le laisserons à un niveau modéré.
  • Optimiser : une sorte de post-traitement après le maillage. Nous le gardons activé.

Un clic sur 'Appliquer' lance le mailleur et - le temps dépendant de votre ordinateur - une image filaire apparaît sur notre modèle. Le mailleur a dû créer environ 4000 nœuds.

Assigner des conditions aux limites

Une analyse FEM n'aboutirait à rien, car rien n'influe encore sur notre modèle. Ajoutons donc un peu de température: choisissez la température initiale à partir de l’atelier FEM et réglez-la sur 300 K. Ici, aucune partie du modèle ne peut être sélectionnée, car ce réglage s’applique à l’ensemble du modèle.

Ensuite, utilisons pour la température agissant sur une face. Sélectionnons les deux faces à une extrémité de la bande (Ctrl + bouton gauche souris) et cliquons sur 'Ajouter' dans la fenêtre de tâche. Deux faces de l'objet Ensemble Booléen doivent apparaître dans la liste ainsi que de petites icônes de température sur le modèle. Réglons la température à 400 K et fermons la fenêtre de tâche. Au début de l'analyse, les faces sélectionnées obtiendront une élévation instantanée de la température de 300 à 400 K. La chaleur sera conduite le long des bandes de métal et provoquera la torsion de la bande.

Avant de pouvoir exécuter l'analyse, une condition limite supplémentaire doit être définie: l'analyse ne peut être exécutée que si notre modèle est fixé quelque part dans l'espace. Avec sélectionnons les deux mêmes faces que pour le 400 K ci-dessus et ajoutons les à la liste. Des barres rouges apparaîtront sur le modèle, indiquant que ces faces sont fixes dans l’espace et qu’elles ne peuvent pas se déplacer pendant l’analyse.

Lancer l'analyse

L'analyse doit déjà contenir un objet de solveur "FEM Outils du solveur CalculixCcx". Sinon, ajoutons en un en utilisant l'icône du solveur dans la barre d’outils (il existe deux icônes identiques, le solveur expérimental devrait également fonctionner). L'objet solveur a une liste de propriétés comme ci-dessous dans la section de gauche de la fenêtre. Ici, sélectionnons les options suivantes (laisser celles non mentionnées inchangées):

  • Type d'analyse : Nous souhaitons effectuer une analyse thermomécanique. Les autres options resteraient uniquement statiques (aucun effet de température), fréquence (oscillations) ou uniquement pour vérifier la validité du modèle.
  • État d'équilibre Thermo Mech : L'état d'équilibre signifie que le solveur retournera un seul résultat à l'atteinte de l'équilibre physique. Nous ne voulons PAS faire cela, nous aimerions obtenir plusieurs résultats résolus dans le temps (analyse transitoire). Alors définissons-le sur false.
  • Durée : nous voudrions que notre analyse s'arrête après 60 secondes (c-à-d. le temps de simulation, pas le temps réel).

Après avoir double-cliqué sur l'objet solveur, vérifions que 'thermomechanical' est sélectionné et exécutons 'write .inp file'. Cela prend généralement quelques secondes (ou beaucoup plus pour les modèles plus grands) et renvoie un message 'write completed' (écriture terminée) dans la zone ci-dessous. Maintenant, commençons le calcul avec 'run CalculiX'. Après un certain temps, les derniers messages 'CalculiX done without error!' et 'Chargement des ensembles de résultats...' devraient apparaître. Lorsque la minuterie du bas est arrêtée, fermons la fenêtre de tâche (Avec des modèles plus grands et/ou des ordinateurs plus lents, FreeCAD peut se figer et nous ne verrons pas la minuterie fonctionner. Mais soyez patient, dans la plupart des cas CalculiX fonctionne toujours en arrière-plan et produira éventuellement des résultats).

Nous devrions maintenant avoir plusieurs objets de résultat FEM listés. En double-cliquant, vous pouvez ouvrir chacun d’eux et visualiser les températures, les déplacements et les contraintes calculés. Nous pouvons visualiser la déformation en sélectionnant "Afficher" dans la section "Déplacement". Comme les déplacements absolus sont faibles, utilisons le 'Factor' (multiplicateur) pour exagérer les valeurs.

Dans FreeCAD, nous pouvons utiliser pipelines pour faire du post-traitement des résultats. Alternativement, nous pouvons exporter les résultats au format VTK et les importer dans des post-processeurs dédiés tels que ParaView. Pour l’exportation de plusieurs résultats (comme pour cette analyse), une macro est disponible.

Téléchargements

  • Exemple de fichier sans les résultats (200 kB)
  • Exemple de fichier avec les résultats (10 MB)

Autre éxemple

  • Exemple bimétallique analytique. L'exemple analytique présenté dans le forum est inclus dans les exemples FEM de FreeCAD. Il peut être démarré par Python avec :
from femexamples.thermomech_bimetall import setup
setup()


Cette page est extraite de https://wiki.freecad.org/Transient_FEM_analysis

Contactez-nous !
Forum GitHub Mastodon Matrix IRC Gitter.im Discord Reddit Twitter Facebook LinkedIn

© L'équipe FreeCAD. Crédits des images de la page d'accueil (de haut en bas) : ppemawm, r-frank, epileftric, regis, rider_mortagnais, bejant.

Ce projet est soutenu par : , KiCad Services Corp. et autres parrains

GitHubAméliorer cette page sur GitHub