meta data stránky
  •  

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
computing:cluster:fronty:openfoam [2022/02/08 15:57] Jan Pechcomputing:cluster:fronty:openfoam [2022/03/24 06:40] (aktuální) – format nadpisu Jan Masák
Řádek 1: Řádek 1:
-===== OPENFoam ======+====== OPENFoam ====== 
 + 
 Program je dostupný v modulech, a to hned v několika vývojových větvích a verzích Program je dostupný v modulech, a to hned v několika vývojových větvích a verzích
   * [[https://www.openfoam.com/news/main-news/openfoam-v20-12|OpenFOAM v2012]]   * [[https://www.openfoam.com/news/main-news/openfoam-v20-12|OpenFOAM v2012]]
Řádek 7: Řádek 9:
 K foam-extend obou verzí je k dispozici také rozšíření [[https://bitbucket.org/philip_cardiff/solids4foam-release/src/master/| solids4foam]]. K foam-extend obou verzí je k dispozici také rozšíření [[https://bitbucket.org/philip_cardiff/solids4foam-release/src/master/| solids4foam]].
  
-Obsah vstupního skriptu pro sbatch:+Obsah vstupního skriptu pro sbatch pro úlohu běžící na jednom jádře:
   #!/bin/bash   #!/bin/bash
   #SBATCH --job-name=foam_test   #SBATCH --job-name=foam_test
Řádek 14: Řádek 16:
      
   #SBATCH --nodes=1   #SBATCH --nodes=1
-  #SBATCH --ntasks=8+  #SBATCH --ntasks=1
      
   module load <modul>   module load <modul>
Řádek 21: Řádek 23:
  
 Za <modul> dosadíme např. openfoam-org/6-10.3.0, <program> např. snappyHexmesh Za <modul> dosadíme např. openfoam-org/6-10.3.0, <program> např. snappyHexmesh
 +
 +Skript pro paralelní úlohu na 4 jádrech:
 +
 +  #!/bin/bash
 +  #SBATCH --job-name=foam_test
 +  #SBATCH --output=test.%j.output
 +  #SBATCH --error=test.%j.error
 +  
 +  #SBATCH --nodes=1
 +  #SBATCH --ntasks=4
 +  
 +  module load openfoam-org/6-10.3.0
 +  
 +  #decomposePar decomposes the task over specified number of cores
 +  #keep value of numberOfSubdomains in system/decomposeParDict the same as ntasks specified above!
 +  decomposePar -force
 +  
 +  srun myLusgsFoam -parallel
 +  
 +\\
 +\\
 +== Kompilace vlastního/doplňkového kódu ==
 +
 +K OpenFOAMu lze přikompilovat vlastní/doplňkový kód. Postup si ukážeme na kódu dostupném z githubu
 +  
 +  mkdir test_folder
 +  cd test_folder
 +  git clone https://github.com/furstj/myFoam.git
 +Vyberme např. implementaci pro OpenFOAM-org 6 zvolením příslušné git-větve
 +  git checkout OF6
 +Nyní načteme modul pro OpenFOAM-org 6  
 +  ml openfoam-org/6-10.3.0 
 +Tím se do prostředí načetly proměnné standardně užívané OpenFOAM programy ($WM_PROJECT_DIR, apod. ). S modulem se také načetl správný kompilátor (zde gcc/10.3.0).
 +Zbývá provést samotnou kompilaci, pro stažený kód stačí:
 +  cd myFoam
 +  ./Allwmake 
 +  cd ../mySolvers/
 +  ./Allwmake
 +Výsledek kompilace je v tomto případě umístěn v obvyklých cestách OpenFOAMu, např. ~/OpenFOAM/username-6/platforms/linux64GccDPInt32-spack/
 +
 +