Modélisation - FDS & Smokeview (V)

Date: 02 mars 2007 à 20:45:20
Sujet: Modélisation Informatique


Ce 5éme cours sur FDS sera consacré aux « mesh multiples », permettant de modéliser des structures complexe et/ou d'optimiser le temps de calcul. Pour cela nous allons chercher à modéliser un caisson d'entraînement pour les sapeurs-pompiers pour s'entraîner à l'attaque. C'est un container maritime de 6m de long, en acier. Le problème principal qui va se poser (mais que nous allons résoudre!), c'est la définition de la grille de travail.

Note: suite à quelques remarques, le code a été légérement modifié par rapport à la première parution de cet article avec un changement dans l'ordre de déclaration des grilles et un changement dans l'ouverture des VENT les uns par rapport aux autres

Un problème de taille !
Nous avons vu dans tous les cours précédents, que notre code commençait par la définition de la grille de travail. Avec le code GRID et le code PDIM nous définissions les dimensions de la zone de travail. Dans le cours III, nous avions un local qui s'inscrivait parfaitement dans la zone de travail, tandis que le cours IV nous a permis de comprendre qu'il était possible d'avoir une zone de travail plus grande que la structure "en feu".
Mais imaginons que nous ayons un couloir de 5m, qui au bout tourne à angle droit, se prolonge de 5 autres mètres, puis débouche sur un local. Si nous voulons faire tenir tout cet ensemble dans une seule zone, celle-ci va être immense.
De même, nous avons vu que le nombre de cases dans la grille de travail, déterminait la dimension minima des éléments utilisables.
Dans ce cours, nous allons simuler un feu dans un caisson maritime (une boîte en acier) de 6m de long, de 2.40m de large et autant en hauteur. Imaginons que nous mettions le feu avec des petits morceaux de pin de 2cm de côté. Pour cela nous devons avoir un nombre de cases suffisant pour que chacune d'elle fasse 2cm de côté. Il nous faut donc 600/2 = 300 cases dans le sens de la longueur, 240/2 = 120 en largeur et autant en hauteur soit un total de 4.320.000 cases.Inutile de dire que là, il va falloir être très patient lorsque le calcul va être lancé.

Plusieurs zones de calcul
Avant d'optimiser notre grille de travail, nous devons réfléchir à nos besoins : notre simulation est composée de 3 zones :
- Zone de feu, de 2m (au fond du caisson), dans laquelle nous allons disposer des plaques de bois et un foyer avec des tasseaux de pin
- Zone pour les fumées, de 4m, dans laquelle il n'y aura rien. Nous l'appelerons zone d'attaque.
- Zone extérieure au caisson, pour permettre la sortie des fumées. Dans la réalité, c'est dans cette zone que ce placeront les intervenants, afin de pouvoir attaquer les fumées, situées dans la zone de 4m

Entre la zone de feu et la zone des fumées, puis entre la zone des fumées et l'extérieur, se trouvent des plaques verticales de 80cm de hauteur, attachées au plafond. Elles sont deux objectifs :
- Bloquer les flammes dans la zone de feu
- Permettre une concentration des fumées

Note : cette solution permet de voir le résultat de l'attaque sur les fumées, sans que cette attaque ne soit perturbée par la vivacité de la colonne thermique. Cela permet donc d'apprendre à traiter les fumées durant la phase de progression. Sans ces zones de cantonnement, les stagiaires attaqueraient la colonne de flammes, ce qui n'est pas représentatif de la réalité puisqu'à cette distance ce n'est plus la colonne de flammes que l'on attaquerait, mais bien le foyer lui-même.

Trois zones : trois grilles
Puisque nous avons trois zones, nous allons paramétrer trois grilles de calculs. Nous commençons par la zone dont la grille est la plus fine.

/ Zone de feu. Cellules de 10cm x 10cm x 10cm
&GRID IBAR=20,JBAR=24,KBAR=24 / Nombre de cellules en x, y, z
&PDIM XBAR0=0.00, YBAR0=0.00, ZBAR0=0, XBAR=2.00,YBAR=2.40,ZBAR=2.40 /

/ Zone d'attaque. Cellules de 20cm x 20cm x 20cm
&GRID IBAR=20,JBAR=12,KBAR=12 / Nombre de cellules en x, y, z
&PDIM XBAR0=2.00, YBAR0=0.00, ZBAR0=0, XBAR=6.00,YBAR=2.40,ZBAR=2.40 / Dimensions en m

/ Zone extraction des fumées. Cellules de 20cm x 20cm x 20cm
&GRID IBAR=10,JBAR=12,KBAR=20 / Nombre de cellules en x, y, z
&PDIM XBAR0=6.00, YBAR0=0.00, ZBAR0=0, XBAR=8.00,YBAR=2.40,ZBAR=4.00 / Dimensions en m

La zone d'extraction des fumées est en dehors du caisson. Elle est assez haute, pour que l'on puisse voir les fumées s'échapper. Dans cette zone, il y a des fumées, mais aucun objet. La précision de cette zone n'a pas besoin d'être très importante. En utilisant les paramètres XBAR 0, YBAR0 et ZBAR0 nous définssions cette zone juste à l'entrée du caisson. Elle fait 2 m par 2,40 et 4 m de hauteur. Comme nous n'avons pas besoin d'une grande précision, nous imposons un nombre de cases assez faible : celles-ci vont faire 20cm de côté. Pour cette zone, nous n'aurons donc que 2400 cellules.

La zone de cantonnement des fumées est construite avec la même logique. Elle ne contient que 20x12x12 = 2880 cellules de 20cm de côtés.

La zone de feu est plus "fine". Nous voulons allumer notre foyer avec des tasseaux de pin de 10cm de côté. Nous définissons donc cette zone avec un nombre de cases permettant d'obtenir des cellules de calcul de 10cm de côté. Ceci nous donne 20x24x24 = 11520 cellules.

Comme nous le voyons sur l'image ci-contre, nous avons des zones dont les cellules sont de tailles différentes. En tout, nous avons 2400+2880+11520 = 16800 cellules. Si la totalité de notre système avait réalisé avec des cellules de 10cm de côté, nous aurions 53740 cellules c'est-à-dire un temps de calcul approximativement multiplié par 3.

Ouverture des zones et blocages
Les zones contiguës sont systématiquement ouvertes les unes sur les autres. Mais dans la réalité du calcul, il ne semble pas que ce soit toujours vrai. Dans le code, il y a donc des lignes d'ouverture de VENT qui sont mises en commentaire. Si vous voyez que la fumée reste bloquée dans une des zones, il vous suffira de retirer ces commentaires.

Donc, dans cette logique, il devrait être possible de simuler les parois de cantonnement, simplement en ouvrant partiellement les zones les unes sur les autres. Manque de chance, cela ne marche pas et les fumées passent au travers de ce qui devrait être une zone de blocage.

Pour éviter cela, nous allons placer des VENT sur la totalité des zones devant communiquer les unes avec les autres : donc un VENT de 2,40m par 2,40m entre la zone de feu et celle d'attaque, un VENT de même taille entre la zone d'attaque et l'extérieur, et des ouvertures dans la zone extérieure.
Ensuite, nous allons placer des baffles avec des objets OBST.

Nous allons donc obtenir ce que vous voyez sur l'image ci-contre.

Le code complet

/ Simulation Incendie
/ Numéro 5
/ Version 1.25 du 17-03-2007
/ Caisson d'Attaque 20' - PL Lamballais pour flashover.fr
/ Mutiple Mesh

&HEAD CHID='test_5',TITLE='Test Cours 5 pour flashover.fr' /

/ Zone de feu. Cellules de 10cm x 10cm x 10cm
&GRID IBAR=20,JBAR=24,KBAR=24 / Nombre de cellules en x, y, z
&PDIM XBAR0=0.00, YBAR0=0.00, ZBAR0=0, XBAR=2.00,YBAR=2.40,ZBAR=2.40 / Dimensions en m

/ Zone d'attaque. Cellules de 20cm x 20cm x 20cm
&GRID IBAR=20,JBAR=12,KBAR=12 / Nombre de cellules en x, y, z
&PDIM XBAR0=2.00, YBAR0=0.00, ZBAR0=0, XBAR=6.00,YBAR=2.40,ZBAR=2.40 / Dimensions en m

/ Zone extraction des fumées. Cellules de 20cm x 20cm x 20cm
&GRID IBAR=10,JBAR=12,KBAR=20 / Nombre de cellules en x, y, z
&PDIM XBAR0=6.00, YBAR0=0.00, ZBAR0=0, XBAR=8.00,YBAR=2.40,ZBAR=4.00 / Dimensions en m

&TIME TWFIN=300.0 / Durée de la simulation (300 = 5 min)
&MISC SURF_DEFAULT='SHEET METAL' / Parois du caisson

/ Surfaces combustibles

/ Pin pour l'allumage
&SURF ID = 'SPRUCE'
FYI = 'Charring material'
RGB = 0.5,0.2,0.1
A = 80931
PHASE = 'CHAR'
MOISTURE_FRACTION = 0.01
DELTA = 0.20
MASS_FLUX_CRITICAL = 0.012
TMPIGN = 320.0
HEAT_OF_VAPORIZATION = 400.
DENSITY = 420.
KS = 0.19
C_P = 1.2
KS_CHAR = 0.12
C_P_CHAR = 1.5
CHAR_DENSITY = 150.
WALL_POINTS = 30
BACKING = 'EXPOSED'/

/ MDF pour les panneaux
&SURF ID = 'MDF_MAP'
FYI = 'Charring material'
PHASE = 'CHAR'
A = 80931
MOISTURE_FRACTION = 0.01
DELTA = 0.020
MASS_FLUX_CRITICAL = 0.012
TMPIGN = 320.0
HEAT_OF_VAPORIZATION = 400.
DENSITY = 700.
KS = 0.15
C_P = 1.5
CHAR_DENSITY = 80
KS_CHAR = 0.20
C_P_CHAR = 2.5
WALL_POINTS = 30
RGB = 0.9,0.6,0.2
TEXTURE_MAP = 'chip_board.jpg'
TEXTURE_WIDTH = 1.50
TEXTURE_HEIGHT = 2.50
BACKING = 'EXPOSED'/

/ Parois du caisson
&SURF ID = 'SHEET METAL'
FYI = '18 guage sheet metal'
RGB = 0.50,0.50,0.50
C_DELTA_RHO = 4.7
DELTA = 0.01 /

/ Ouverture totale du volume de sortie des fumées (VENT entre cette zone et le caisson, en commentaire)
/&VENT XB=6.00, 6.00, 0.00, 2.40, 0.00, 1.60, SURF_ID='OPEN' /
&VENT XB=8.00, 8.00, 0.00, 2.40, 0.00, 4.00, SURF_ID='OPEN' /
&VENT XB=6.00, 8.00, 0.00, 0.00, 0.00, 4.00, SURF_ID='OPEN' /
&VENT XB=6.00, 8.00, 2.40, 2.40, 0.00, 4.00, SURF_ID='OPEN' /
&VENT XB=6.00, 8.00, 0.00, 2.40, 4.00, 4.00, SURF_ID='OPEN' /

/ Ouverture de la zone feu vers la zone d'attaque (en commentaire)
/&VENT XB= 2.00, 2.00, 0.00, 2.40, 0.00, 2.40, SURF_ID='OPEN' /

/ Ouverture de la zone d'attaque vers la zone d'extraction des fumes (en commentaire)
/&VENT XB= 6.00, 6.00, 0.00, 2.40, 0.00, 2.40, SURF_ID='OPEN' /
/&VENT XB= 2.00, 2.00, 0.00, 2.40, 0.00, 2.40, SURF_ID='OPEN' /

/ Baffle de cantonnement entre zone feu et zone attaque
&OBST XB= 2.00, 2.01, 0.00, 2.40, 1.60, 2.40, RGB=0.4,0.4,0.4, SURF_ID='SHEET METAL' /
/ Baffle de cantonnement entre zone attaque et extrieur
&OBST XB= 5.99, 6.00, 0.00, 2.40, 1.60, 2.40, RGB=0.4,0.4,0.4, SURF_ID='SHEET METAL' /

/ Plaques de MDF dans la zone de feu
&OBST XB= 0.10, 0.12, 1.10, 2.30, 0.00, 2.20, SURF_ID='MDF_MAP' / fond
&OBST XB= 0.20, 1.40, 2.20, 2.30, 0.00, 2.20, SURF_ID='MDF_MAP' / ct droit
&OBST XB= 0.10, 1.40, 1.10, 2.30, 2.20, 2.30, SURF_ID='MDF_MAP' / plafond

/ Tas de bois pour allumage. Empillement de tasseaux de sapin
/ D'abord des tasseaux de 70cm par 3 sur 4 épaisseurs puis des
/ tasseaux de 50cm par 2 sur 3 épaisseurs.
&OBST XB= 0.30, 0.40, 1.50, 2.20, 0.00, 0.10, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /
&OBST XB= 0.50, 0.60, 1.50, 2.20, 0.00, 0.10, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /
&OBST XB= 0.70, 0.80, 1.50, 2.20, 0.00, 0.10, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /

&OBST XB= 0.20, 0.90, 1.60, 1.70, 0.10, 0.20, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /
&OBST XB= 0.20, 0.90, 1.80, 1.90, 0.10, 0.20, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /
&OBST XB= 0.20, 0.90, 2.00, 2.10, 0.10, 0.20, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /

&OBST XB= 0.30, 0.40, 1.50, 2.20, 0.20, 0.30, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /
&OBST XB= 0.50, 0.60, 1.50, 2.20, 0.20, 0.30, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /
&OBST XB= 0.70, 0.80, 1.50, 2.20, 0.20, 0.30, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /

&OBST XB= 0.20, 0.90, 1.60, 1.70, 0.30, 0.40, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /
&OBST XB= 0.20, 0.90, 1.80, 1.90, 0.30, 0.40, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /
&OBST XB= 0.20, 0.90, 2.00, 2.10, 0.30, 0.40, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /

&OBST XB= 0.30, 0.40, 1.70, 2.20, 0.40, 0.50, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /
&OBST XB= 0.50, 0.60, 1.70, 2.20, 0.40, 0.50, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /

&OBST XB= 0.20, 0.70, 1.80, 1.90, 0.50, 0.60, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /
&OBST XB= 0.20, 0.70, 2.00, 2.10, 0.50, 0.60, RGB=1,0.75,0.15, SURF_ID='SPRUCE' /

&OBST XB= 0.30, 0.40, 1.70, 2.20, 0.60, 0.70, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /
&OBST XB= 0.50, 0.60, 1.70, 2.20, 0.60, 0.70, RGB=0.9,0.6,0.2, SURF_ID='SPRUCE' /

/ Source de chaleur sous le tas de bois, pendant 60 secondes
&SURF ID='BURNER',PART_ID='tracers', RAMP_Q='FIRE', HRRPUA=250./
&RAMP ID='FIRE', T=0.0, F=0.0 /
&RAMP ID='FIRE', T=1.0, F=1.0 /
&RAMP ID='FIRE', T=10.0, F=1.0 /
&RAMP ID='FIRE', T=60.0, F=0.0 /
&VENT XB= 0.20,0.70,1.70,2.20, 0.00, 0.00, SURF_ID='BURNER' /

&BNDF QUANTITY='GAUGE_HEAT_FLUX' / Flux de chaleur
&BNDF QUANTITY='WALL_TEMPERATURE' / Température des murs (surfaces)
&BNDF QUANTITY='BURNING_RATE' / Perte de masse par unité

/ Fin du code

Le résultat
Comme il y a désormais 3 zones de calculs, la visualisation sous Smokeview change un peu : nous voyons apparaître de nouvelles informations dans les menus, permettant de choisir les paramètres pour chaque zone. Il n'en reste pas moins que les réglages sont les mêmes.

Sur l'image de gauche, nous voyons la zone de feu avec la texture active, les flammes qui sont bloquées par la baffle en métal, tandis que les fumées passent en dessous, traversent la zone d'attaque, passent sous l'autre baffle et sortent du caisson. Sur l'image de droite, nous avons la vue "Plot 3D" vers 240 secondes, ce qui nous permet de voir la température et de vérifier que les baffles générent des turbulences, comme en générent les hauts de portes d'appartement.

Conclusion
Nous voici avec un ensemble de connaissances qui nous permettent de réaliser des modélisations assez complexes tout en les optimisant. La modélisation de ce caisson, avec ces trois zones dont deux possédant des grilles de travail assez grosses, possède l'énorme avantage d'être rapide à calculer.

La prochaine fois
La prochaine fois, nous ajouterons des détecteurs et des opérations automatiques, liées à ces détecteurs!
Le forum "Simulation informatique" est toujours ouvert aux discussions, et nous espérons bientôt y voir arriver vos réalisations !





Cet article provient de Flashover - Backdraft - Fire Gas Ignition
http://www.flashover.fr

L'URL de cet article est:
http://www.flashover.fr/modules.php?name=News&file=article&sid=61