mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-12-28 03:37:59 +00:00
ENH: Added hotBoxes tutorial for the reactingParcelFilmFoam solver
This commit is contained in:
129
tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/patchifyObstacles
Executable file
129
tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/patchifyObstacles
Executable file
@ -0,0 +1,129 @@
|
||||
#!/bin/bash
|
||||
|
||||
x0=0.4
|
||||
y0=0.1
|
||||
z0=0.1
|
||||
l=0.2
|
||||
offset=0.3
|
||||
tol=0.001
|
||||
|
||||
nx=1
|
||||
ny=2
|
||||
nz=2
|
||||
|
||||
|
||||
tmpSetSet='patchify.setSet'
|
||||
|
||||
createSetsAndZone()
|
||||
{
|
||||
name=$1
|
||||
x1=$2
|
||||
x2=$3
|
||||
y1=$4
|
||||
y2=$5
|
||||
z1=$6
|
||||
z2=$7
|
||||
|
||||
# echo "# ${name}" >> $tmpSetSet
|
||||
echo "faceSet ${name} new boxToFace ($x1 $y1 $z1) ($x2 $y2 $z2)" >> $tmpSetSet
|
||||
echo "cellSet ${name}Cells new faceToCell ${name} owner" >> $tmpSetSet
|
||||
echo "faceZoneSet ${name} new setsToFaceZone ${name} ${name}Cells" >> $tmpSetSet
|
||||
# echo "" >> $tmpSetSet
|
||||
|
||||
echo " $name: (x1=$x1 y1=$y1 z1=$z1) (x2=$x2 y2=$y2 z2=$z2)"
|
||||
}
|
||||
|
||||
|
||||
# loop over cubes
|
||||
n=1
|
||||
x=$x0
|
||||
for xi in $(seq 1 1 $nx); do
|
||||
y=$y0
|
||||
for yi in $(seq 1 1 $ny); do
|
||||
z=$z0
|
||||
for zi in $(seq 1 1 $nz); do
|
||||
echo "processing cube $n"
|
||||
|
||||
pad=""
|
||||
if [ $n -lt 10 ]; then
|
||||
pad="0"
|
||||
fi
|
||||
|
||||
# side 1
|
||||
side=1
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $l $tol | awk '{print $1 + $2 - $3}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
createSetsAndZone cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 2
|
||||
side=2
|
||||
x1=`echo $x $l $tol | awk '{print $1 + $2 - $3}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
createSetsAndZone cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 3
|
||||
side=3
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $tol | awk '{print $1 + $2}'`
|
||||
createSetsAndZone cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 4
|
||||
side=4
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $tol | awk '{print $1 + $2}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
createSetsAndZone cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 5
|
||||
side=5
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $l $tol | awk '{print $1 + $2 - $3}'`
|
||||
y2=`echo $y $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
createSetsAndZone cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
# side 6
|
||||
side=6
|
||||
x1=`echo $x $tol | awk '{print $1 - $2}'`
|
||||
x2=`echo $x $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
y1=`echo $y $tol | awk '{print $1 - $2}'`
|
||||
y2=`echo $y $tol | awk '{print $1 + $2}'`
|
||||
z1=`echo $z $tol | awk '{print $1 - $2}'`
|
||||
z2=`echo $z $l $tol | awk '{print $1 + $2 + $3}'`
|
||||
createSetsAndZone cube${pad}${n}_side${side} $x1 $x2 $y1 $y2 $z1 $z2
|
||||
|
||||
let n+=1
|
||||
|
||||
z=`echo $z $offset | awk '{print $1 + $2}'`
|
||||
done
|
||||
|
||||
y=`echo $y $offset | awk '{print $1 + $2}'`
|
||||
done
|
||||
|
||||
x=`echo $x $offset | awk '{print $1 + $2}'`
|
||||
done
|
||||
|
||||
echo "processing floor"
|
||||
floorMax=`echo 1 $tol | awk '{print $1 + $2}'`
|
||||
createSetsAndZone floor -$tol $floorMax -$tol $floorMax -$tol $tol
|
||||
|
||||
setSet -batch $tmpSetSet >> log.setSet.patchifyObstacles
|
||||
rm -f $tmpSetSet
|
||||
|
||||
Reference in New Issue
Block a user