Nahajate se tukaj

damBreak tutorial

Navodila za poganjanje damBreak tutoriala (User Guide, 2.3 Breaking of a dam, U-55 ):

1. Naložimo modul za OF:

 module load openfoam
source $foamDotFile
 cd $FOAM_RUN/tutorials/multiphase/interFoam/laminar/ 

Preskočimo osnovni primer in nadaljujemo s primerom za gostejšo mrežo:

 mkdir damBreakFine
cp -r damBreak/0 damBreakFine
cp -r damBreak/system damBreakFine
cp -r damBreak/constant damBreakFine
cd damBreakFine/ 

2. Spremenimo število celic na stranicah posameznih blokov v blockMeshDict datoteki:

 gedit constant/polyMesh/blockMeshDict 

Spremenimo vrednosti pri blocks (v srednjih in zadnjih oklepajih) na:

 blocks
(
hex (0 1 5 4 12 13 17 16) (46 10 1) simpleGrading (1 1 1)
hex (2 3 7 6 14 15 19 18) (40 10 1) simpleGrading (1 1 1)
hex (4 5 9 8 16 17 21 20) (46 76 1) simpleGrading (1 2 1)
hex (5 6 10 9 17 18 22 21) (4 76 1) simpleGrading (1 2 1)
hex (6 7 11 10 18 19 23 22) (40 76 1) simpleGrading (1 2 1)
); 

Shranimo, zapremo.

Naredimo mrežo:

 blockMesh 

mesh

3. Inicializiramo začetne vrednosti za fazni delež:

 cp 0/alpha1.org 0/alpha1
setFields 

volume fraction inicialization

4. Nastavimo vrednosti za paralelno računanje, ki so zapisane v decomposeParDict datoteki:

 gedit system/decomposeParDict 

Če želimo računati na 24 procesorjih, potem nastavimo

 numberOfSubdomains 24; 

Glede na to spremenimo vrednosti n pri simpleCoeffs, da je nx*ny*nz=24:

 simpleCoeffs
{
n ( 6 4 1 );
delta 0.001;
}

Shranimo, zapremo.

Pripravimo mrežo za paralelno računanje:

 decomposePar

5. Simulacijo se preko LSF požene z ukazom:

 bsub -n 24 mpirun interFoam -parallel 

Še nekaj uporabnih ukazov: bjobs nam prikaže trenutni status posla, bkill ga zapre, bhist pokaže pretekle podatke o poslu, bpeeks pa prikaže trenutni output posla.

6. Ko je simulacija zaključena (izračunana ali prekinjena), LSF pošlje mail, ki ga preberemo z

 mailx 

Mail vsebuje podatke o LSF in output iz OF (kar se je prej zapisovalo v log datoteko). Sporočila zbrišemo z d (* za vsa). Če program mailx zaključimo z exit, potem se to ne izvede, če pa s quit, potem se sporočila zbrišejo.

7. Za postprocesiranje rezultatov simulacije uporabimo ParaView. Najprej moramo združiti rezultate posameznih podpodročij:

 reconstructPar 

Nato poženemo ParaView, za kar se v OF uporabi ukaz:

 paraFoam 

Interaktivno nato izberemo, katere podatke želimo uvoziti, nato izbiro potrdimo z Apply. Podrobnejša navodila za uporabo ParaView-a so vključena v OF User Guide.

Poganjanje simulacije s skripto

Če imamo pripravljene datoteke za mrežo in paralelno procesiranje, lahko vse ukaze zapišemo v skripto skripta:

 #! /bin/bash
cd damBreakFine/
blockMesh
cp 0/alpha1.org 0/alpha1
setFields
decomposePar
bsub -n 24 mpirun interFoam -parallel

Celotno simulacijo poženemo z enim samim ukazom:

 bsub < skripta