Rechercher dans le site

Lettre d’information

Il y a au total 64 lettres d'information.
La plus récente est affichée ci-dessous.
Les suivantes sont accessibles en cliquant sur les différents numéros.

... | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |...

Lettre d'information du 12 octobre 2012

Version imprimable

Si vous ne pouvez pas lire cette lettre correctement, cliquez ici.

If you can’t read this letter properly, clic here.

English news are at the bottom of the page.

Lettre d’information de Code_Aster

Interaction fluide-structure : chaînage Code_Saturne / Code_Aster

par C. Bodel, EDF R&D / AMA

Objectif : Appliquer sur un modèle de poutre un effort calculé en amont par Code_Saturne (voir la représentation vectorielle de l’effort sur l’image ci-dessous).

Code_Saturne calcule un effort instationnaire appliqué à une poutre, et qui représente les turbulences induites par l’écoulement autour de celle-ci. Dans Code_Saturne, un modèle LES a été utilisé pour la turbulence, ce qui permet de modéliser les plus grosses structures tourbillonnaires, et d’arriver à ce résultat.

Figure 1 : Excitation fluide.

Côté mécanique, on souhaite calculer les vibrations de la poutre soumise à cet effort. Comment faire ?

  1. Mettre en vis-à-vis les deux maillages, fluides et solides,
  2. Importer les données du calcul fluide, qui ont été exportées depuis Code_Saturne au format MED, sous la forme d’un champ constant par cellule, composé de vecteurs à 3 composantes correspondant aux trois composantes de la force résultante. Une petite modification de LIRE_RESU a été réalisée par l’équipe Aster pour permettre la souplesse d’utilisation demandée.
  3. Créer, pour chaque pas de temps, trois fonctions Aster paramétrée par l’abscisse le long de la poutre, dont a valeur est la composante de la force importée. Des routines python, permettant de récupérer la maille du maillage fluide correspondant à une abscisse donnée, ont été créée pour l’occasion.
  4. Appliquer l’effort sur le modèle mécanique (modélisation poutre POU_D_T) avec l’option de chargement FORCE_POUTRE. Le calcul dynamique est linéaire avec choc, on utilise DYNA_VIBRA en temporel et sur base modale pour l’exécution.

Dans la plupart des calculs en dynamique linéaire, le chargement est défini par séparation de variables, sous la forme f(x).g(t), la fonction g correspondant au paramètre FONC_MULT dans la définition des chargements. Ce n’est pas possible ici, le chargement étant importé de la manière la plus générale possible. Le chargement appliqué sur le modèle mécanique est donc assemblé sous la forme d’un résultat de dynamique transitoire (sd dyna_trans), et projeté en une fois sur la base généralisée. Pour ce faire, on a créé un nouvel opérateur appelé PROJ_RESU_BASE, analogue à PROJ_VECT_BASE, permettant de projeter en une fois tous les pas de temps utilisés. Pour simplifier l’utilisation, cet opérateur est utilisable avec la commande PROJ_BASE (ancienne MACRO_PROJ_BASE). La descritption de son utilisation est proposée dans le cas-test sdls119b.

Concernant les temps de calcul, le plus long est de récupérer les 10000 et quelques pas de temps du calcul fluide, et de les appliquer au calcul mécanique. L’utilisation des fonctions Aster est la solution la plus propre, mais pas la plus performante. Le temps de cette partie du calcul est de 4 heures. Le calcul dynamique en lui-même prend une heure (pour 6 s de calcul). On est loin des deux mois de calcul nécessaires à l’exécution du calcul CFD-LES avec Saturne ! Le chaînage simple, dans la mesure où les hypothèses de son utilisation sont vérifiées (pas de rétro-action du solide sur le fluide), permet de découpler les deux calculs, et d’exécuter chacun des deux avec la souplesse que permet leur temps de résolution.

On obtient le déplacement sur la totalité de la poutre multi-supportée (cf animation ci-dessous) :

Figure 2 : Déplacement sur la totalité de la poutre multi-supportée.

Au final, les résultats du calcul sont relativement satisfaisants par rapport aux essais menés sur maquette dans le cadre de cette étude. La comparaison des auto-spectres sur la figure ci-dessous (sur un point de mesure en milieu de traversée) le montre.

Figure 3 : Auto-spectres.

Un nouvel opérateur pour le post-traitement en mécanique de la rupture

par S. Géniaut, EDF R&D / AMA

Le nouvel opérateur POST_RUPTURE vient enrichir les possibilités de post-traitements en mécanique de la rupture. Ce nouvel opérateur s’utilise à la suite de calcul du taux de restitution d’énergie et des facteurs d’intensité des contraintes (commande CALC_G ou POST_K1_K2_K3).

POST_RUPTURE permet de nombreux traitements génériques :

  • normalisation de l’abscisse curviligne,
  • calcul de l’angle de bifurcation,
  • calcul du facteur d’intensité de contrainte équivalent,
  • mise à zéro des valeurs négatives des facteurs d’intensité de contrainte K1

POST_RUPTURE permet également des opérations utiles aux calculs de fatigue, en complément des opérateurs de fatigue existants :

  • comptage des cycles en fatigue,
  • cumul des cycles en fatigue,
  • calcul de l’incrément d’avancée de fissure en fatigue,
  • pilotage de la propagation.

Disponible dans la version 11.0.2 et suivantes

Modélisation du serrage d’une vis

Le nouveau cas-test ssnv228 illustre la mise en oeuvre d’une méthodologie permettant de modéliser le serrage (pré-tension) d’une vis ou d’un goujon.

La mise en pré-tension consiste à imposer un déplacement relatif entre des nœuds de l’écrou et des nœuds du goujon. Ce déplacement relatif est imposé dans l’axe du goujon et doit correspondre à l’effort de serrage souhaité. Ce déplacement relatif est imposé via le mot-clé LIAISON_GROUP de la commande AFFE_CHAR_MECA_F.

Pour l’utilisateur, il s’agit donc de déterminer le déplacement à imposer pour trouver l’effort de serrage souhaité. Pour cela, il faut rejouer l’étude plusieurs fois en modifiant la valeur du déplacement relatif jusqu’à atteindre l’effort de serrage recherché.

Exemple d’application : Jonctions boulonnées de tuyauteries, géométrie et maillage

Traduction automatique des messages (informations, alarmes et erreurs)

par M. Courtois et J. Delmas, EDF R&D / AMA

Désormais, les messages d’alarme et d’erreur émis par Code_Aster peuvent être traduits automatiquement en anglais.

Ces messages traduits sont disponibles pour chacune des versions stable et testing dans le paquet aster-full (onglet Téléchargement).

Pour activer ces messages en anglais, il suffit de préciser dans la commande DEBUT, LANG=’EN’.

Pour plus de détails, consultez la documentation D6.04.03 Fonctionnement de l’internationalisation


English news from Code_Aster

Fluid-structure interaction : Code_Saturne / Code_Aster coupling

by C. Bodel, EDF R&D / AMA

Goal : Applying on a beam model an effort calculated by Code_Saturne (see the vector representation of the effort on the image below).

Code_Saturne calculates an unsteady effort applied to a beam, representing the turbulence induced by the flow around it. In Code_Saturne, an LES model has been used for turbulence, which allows to model the larger vortex structures.

Figure 1 : Excitation fluide.

Concerning mechanics, we wish to calculate the vibration of the beam subjected to this effort. Howto ?

  1. Load the fluid and solid meshes,
  2. Load fluid calculated data, that Code_Saturne has exported in MED format, in the form of a constant field per cell, consisting of three components vectors corresponding to the three components of the resultant force. For this, a small modification has been done in LIRE_RESU.
  3. Create, for each time step, three Aster functions parameterized by abscissa along the beam, whose value is a component of the imported force. Python routines, retrieving the cell of the fluid mesh corresponding to a given abscissa, were created for this.
  4. Apply force on the mechanical model (model with POU_D_T beams) with the loading option FORCE_POUTRE. The dynamic calculation is linear with shock, one use DYNA_VIBRA on temporal and modal base.

In most calculations in linear dynamics, the loading is defined by separation of variables in the form f(x).g(t), the function g corresponding to the FONC_MULT parameter in the definition of loads. It is not possible here, the loading being imported from the most general possible way. The load applied to the mechanical model is assembled as a result of transient dynamics (sd dyna_trans), and projected once on the generalized basis. To do this, we created a new operator called PROJ_RESU_BASE similar to PROJ_VECT_BASE, to project in once all the time steps. For ease of use, this operator is used with the command PROJ_BASE (former MACRO_PROJ_BASE). An example is given in the test case sdls119b.

Concerning the computation time, the most important time cost is to recover the about 10000 fluid times steps, and apply them to the mechanical calculation. The use of Aster functions is the most rigourous solution, but not the most efficient. The duration for this part of the computation is about 4 hours. Dynamic calculation itself takes an hour (for a 6s transient calculation). But it remains far from two months of time necessary for the execution of the CFD-LES calculation with Code_Saturne ! Simple chaining, since the assumptions for its use are checked (no back-action of the solid on the fluid) permit to decouple the two calculations.

This is the displacement obtained on the multi-supported beam :

Figure 2 : Déplacement sur la totalité de la poutre multi-supportée.

Au final, les résultats du calcul sont relativement satisfaisants par rapport aux essais menés sur maquette dans le cadre de cette étude. La comparaison des auto-spectres sur la figure ci-dessous (sur un point de mesure en milieu de traversée) le montre.

Finally, the calculation results are relatively good compared to full-scale trials. Comparison of auto-spectra in the figure below (a measurement point in the middle of crossing) shows.

Figure 3 : Auto-spectres.

A new command for the post-treatment of fracture mechanics

by S. Géniaut, EDF R&D / AMA

The news command POST_RUPTURE will enrich the possibilities of post-treatment in fracture mechanics. This new command is used in the following of calculation of energy release rate and stress intensity factors (CALC_G or POST_K1_K2_K3).

POST_RUPTURE allows many generic treatments :

  • normalization of the curvilinear abscissa,
  • calculation of the angle of bifurcation,
  • calculation of the equivalent stress intensity factor,
  • set to zero the negative values ​​of K1 stress intensity factors

POST_RUPTURE provides also useful operations for fatigue calculations, in addition to existing fatigue calculation commands :

  • cycle counting in fatigue,
  • cumulation of fatigue cycles,
  • calculation of the crack propagation increment due to fatigue,
  • continuation method for propagation.

Available in the version 11.0.2 and later

Modeling the tightening of a screw

A new test-case ssnv228 illustrates the methodology for modeling the clamping (preload) of a screw or a stud.

Setting pretension consists of imposing a relative displacement between the nodes of the nut and the nodes of the stud. This relative displacement is imposed on the axis of the stud and must match the desired clamping force. This relative displacement is imposed via the keyword LIAISON_GROUP of the command AFFE_CHAR_MECA_F.

For the user, it is therefore necessary to determine the imposed displacement to find the desired clamping force. To do this, we must replaythe study several times by changing the value of the relative displacement until reaching the desired clamping force.

Example : Bolted pipe joints, geometry and mesh

Automatic translation of messages (informations, alarms, errors)

by M. Courtois and J. Delmas, EDF R&D / AMA

Now, the alarm and error messages issued by Code_Aster can be automatically translated into English.

These translated messages are available for each stable version and testing version in the aster-full package (tab Download).

To enable English messages, simply specify DEBUT, LANG=’EN’.

For more details, please read this document D6.04.03 Fonctionnement de l’internationalisation


Suivre la vie du site RSS 2.0 | Plan du site | Contact | Administration | SPIP