La documentation suivante a pour but de générer une simulation de soufflerie, permettant de visualiser la réaction du tissu bâti au vent.

Cette étude est particulièrement utile pour analyser une situation existante, constater les volumétries créant des couloirs de vent, et informer des choix sur les ouvrages projetés.

Le type de diagramme produit par cette simulation consiste à une vue en plan, sur laquelle est synthétisée la vitesse du vent mesurée lors de la simulation.

Exemple de document créé à partir d'une simulation aéraulique

Exemple de document créé à partir d'une simulation aéraulique

1. Prérequis

Les logiciels suivants sont requis pour l’utilisation de ce script :

Pour utiliser Butterfly (et blueCFD-Core), il est indispensable de lancer Rhino en tant qu'administrateur, et d'avoir un fichier dont les unités sont paramétrées en mètres. Sans cela, il est probable que le script rencontre des erreurs et ne fonctionne pas.

2. Fichiers modèles

Pour illustrer la méthode qui suit, un fichier Rhino et son script Grasshopper correspondant sont disponibles :

Télécharger le fichier Rhino d’exemple

Télécharger le fichier Grasshopper d’exemple

Le fichier Grasshopper d'exemple contient les dépendances suivantes, il convient de les installer :

  • Ladybug Tools 1.8.0 (Guide d’installation) ;
  • Butterfly (0.0.05+) (+ blueCFD-Core) (Guide d’installation) ;
  • Bifocals 0.5.0.0 (optionnel, pour l’affichage des noms de composants) ;
  • Moonlight 1.0.0.0 (optionnel, pour l’affichage en mode sombre).

Vue du fichier Rhino d'exemple

Vue du fichier Rhino d'exemple

Le fichier Rhino d’exemple contient 3 types d’éléments :

  • Deux volumes représentant du contexte bâti (orange) ;
  • Un arbre (vert clair) ;
  • Une surface au niveau du sol servant de référence pour la grille de capteurs (gris clair).

Chacun de ces éléments sont référencés dans le fichier Grasshopper correspondant.

3. Décomposition du script

Le script est divisé en groupes (visibles sous la forme de blobs de couleur et portant chacun un titre). La suite de ce guide indique l’usage de chacun de ces groupe et sa fonction dans la définition.

Définition Grasshopper de la simulation aéraulique en extérieur

Définition Grasshopper de la simulation aéraulique en extérieur (fichier d'exemple)

3.1. Volumétrie

Cette première partie du script consiste à référencer la volumétrie représentant le contexte bâti.

Dans le cas du fichier d'exemple, le modèle est très simple, et la géométrie peut être directement référencée en tant que BREP. Néanmoins, dans le cas d'une volumétrie de grande taille et complexe, il est préférable d'utiliser le composant Mesh, et de référencer une modélisation déjà transformée en mesh avec le minimum de définition. Cela facilite le travail du composant Create Butterfly Geometry et permet d'économiser des minutes de calcul.

Il est dans un premier temps préférable de placer tous les bâtiments au même niveau de sol, c'est-à-dire sans topographie. Ce point doit être approfondi, les tests menés jusqu'à présent ont été peu concluants lorsqu'on intègre un sol ayant une volumétrie complexe.

3.2. Paramètres d’entrée

Les paramètres d’entrées suivant sont à renseigner :

  • Nom de l’instance Butterfly : cette information sera utilisée pour générer un dossier localement, dans lequel tous les résultats de calcul seront enregistrés. Il est donc utile de le nommer correctement pour le localiser plus facilement plus tard.
  • Vitesse du vent : à priori, on part d’une vitesse aux alentours de 5 m/s, mais ce paramètre peut être modifié selon l’analyse de la rose des vents du contexte.
  • Landscape : un chiffre entre 0 et 7 pour signifier le contexte paysager du modèle. Un tableau d’équivalence est reporté ci-dessous.
#NomDescription
0SeaMer ou lac (quelle que soit la taille de la vague), zone de marée, plaine enneigée, désert sans relief, asphalte et béton, avec un fetch libre de plusieurs kilomètres.
1SmoothSurface terrestre sans caractéristiques, sans obstacles notables et avec une végétation négligeable ; par exemple, plages, banquise sans grandes crêtes, marais et terres ouvertes couvertes de neige ou en friche.
2OpenPays plat à végétation basse (p. ex. herbe) et obstacles isolés avec des séparations d’au moins 50 hauteurs d’obstacle ; p. ex. pâturages sans coupe-vent, bruyère, lande et toundra, zone de piste d’un aéroport. Glace avec crêtes en travers du vent.
3Roughly openZone cultivée ou naturelle avec des cultures ou des couvertures végétales basses, ou zone modérément dégagée avec des obstacles occasionnels (par exemple, des haies basses, des bâtiments bas isolés ou des arbres) à des distances horizontales relatives d’au moins 20 hauteurs d’obstacle.
4RoughZone cultivée ou naturelle avec des cultures hautes ou de hauteur variable, et des obstacles dispersés à des distances relatives de 12-15 hauteurs d’obstacles pour les objets poreux (par exemple les brise-vent) ou de 8-12 hauteurs d’obstacles pour les objets solides de faible hauteur (par exemple les bâtiments).
5Very roughPaysage de cultures intensives avec de nombreux groupes d’obstacles assez importants (grandes fermes, massifs forestiers) séparés par des espaces ouverts d’environ huit hauteurs d’obstacles. Végétation principale peu dense comme les buissons, les vergers, les jeunes forêts. En outre, la zone est modérément couverte par des bâtiments bas avec des intervalles de trois à sept hauteurs de bâtiment et aucun arbre de haute taille.
6SkimmingPaysage régulièrement couvert d’obstacles de taille similaire, avec des espaces ouverts du même ordre de grandeur que la hauteur des obstacles ; par exemple, forêts matures et régulières, zone densément bâtie sans grande variation de hauteur des bâtiments.
7ChaoticCentres-villes avec un mélange de bâtiments bas et hauts, ou grandes forêts de hauteur irrégulière avec de nombreuses clairières.

La direction du vent est indiquée par l'axe Y, c'est-à-dire l'axe bas-haut en vue de dessus. Il existe un composant Butterfly pour modifier l'axe du vent, mais selon les premiers tests, ce composant a tendance à créer un bug sur la suite des composants, et à empêcher le lancement du calcul. Il est donc impératif d'orienter son modèle selon l'axe Y du modèle correspondant au vent dominant analysé grâce à la rose des vents.

3.3. Wind tunnel

Ce groupe créé la géométrie du tunnel de soufflerie.

Selon la complexité et la taille du modèle, ces composants peuvent être relativement long à être calculés (plusieurs minutes). Il est donc utile de les désactiver à la fermeture du fichier, pour éviter leur calcul au redémarrage.

3.4. Snappy Hex Mesh

Ce groupe affine la géométrie du tunnel de soufflerie, pour s’approcher au maximum de la géométrie d’entrée.

Ces composants peuvent également être très longs à être calculés (jusqu'à plusieurs dizaines de minutes pour des grands environnements complexes), selon la complexité et la taille de la géométrie. Il est donc utile de les désactiver à la fermeture du fichier, pour éviter leur calcul au redémarrage.

3.5. Capteurs

Une surface doit être ici renseignée pour servir de référence à la grille de capteurs. Le fichier d’exemple est paramétré avec une surface de capteurs de 50 m par 50 m (le composant LB Generate Point Grid contient un offset pour placer la grille de capteurs 1.50 m au-dessus, donc à hauteur de piéton).

Il est préférable de commencer par une taille de grille raisonnable (1 à 5 m), puis de descendre s’il y a besoin d’obtenir des résultats plus fins. Ce paramètre du nombre de capteurs influe radicalement sur le temps de calcul.

Le composant Butterfly_probes est renseigné selon les forces que l’on souhaite calculer :

  • U : Cela représente généralement le champ de vitesse dans la simulation. C’est une quantité vectorielle qui décrit la vitesse et la direction de l’écoulement du fluide à divers points dans le domaine de simulation.
  • p : Cela désigne généralement le champ de pression. La pression est une quantité scalaire représentant la force exercée par le fluide par unité de surface en un point donné dans le domaine.
  • k : Cela représente souvent l’énergie cinétique turbulente. Dans la dynamique des fluides numérique (CFD), l’énergie cinétique turbulente est utilisée dans les modèles de turbulence pour quantifier l’énergie contenue dans les tourbillons turbulents au sein du fluide.

3.6. Nombre d’itérations

Les paramètres du composant Butterfly_controlDict permettent de contrôler le nombre d’itérations selon lequel les calculs de la simulation vont être réalisés.

Il est important de garder un nombre d’itérations assez bas pour commencer (par exemple 20, comme renseigné dans le fichier modèle), pour ensuite augmenter ce nombre s’il se révèle trop bas pour des résultats satisfaisants.

3.7. Calcul

Ce groupe contient le composant responsable du calcul de la solution.

C'est la partie la plus longue à calculer, et elle peut très rapidement prendre beaucoup de temps selon la complexité du modèle (jusqu'à plusieurs heures), le nombre de capteurs, le nombre d'itérations, etc.

3.8. Résultats

Ce composant Butterfly_Load Probes Value permet d’extraire les résultats de la solution Butterfly, et de sélectionner la variable que l’on souhaite visualiser.

3.9. Affichage en aplats

Ce groupe est responsable de l’affichage des résultats sous formes d’aplats de couleur (une cellule représentant un capteur et donc une couleur). Il peut être utile de moduler le paramètre max des paramètres de légende pour calibrer correctement l’échelle.

3.10. Affichage en vecteurs

Ce groupe est responsable de l’affichage des résultats sous formes de vecteurs. Il peut être utile de moduler le coefficient multiplicateur de la longueur du vecteur pour l’adapter aux résultats, ainsi que l’épaisseur des vecteurs.

Résultat du script sur le modèle d'exemple

Résultat du script sur le modèle d'exemple

4. Création d’un plan

Pour finaliser l’export des résultats sous forme de plan, il convient de préparer un fond de plan (à l’aide d’un Make2D, d’un nettoyage du dessin et de quelques épaisseurs de traits différenciées).

En parallèle, il est possible de réaliser des exports des heatmaps générées à l’aide de la commande ViewCaptureToFile dans Rhino. Avant de réaliser cet export, il convient de cacher toute la géométrie Rhino pour ne conserver que la heatmap, et de passer la couleur de fond de Rhino en blanc.

Enfin, cette image exportée peut être insérée derrière le fond de plan vectoriel, exporté dans Illustrator.