63 lines
1.5 KiB
Bash
Executable file
63 lines
1.5 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
export cas="$1"
|
|
export inp_of="of_$cas"
|
|
export out_of="out_of_$cas"
|
|
export out_post="out_post_$cas"
|
|
|
|
if [[ ! -d $inp_of ]]
|
|
then echo $inp_of not found
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -d $out_of ]]
|
|
then echo $out_of already exists
|
|
mv $out_of "$out_of.bak"
|
|
fi
|
|
|
|
if [[ -d $out_post ]]
|
|
then echo $out_post already exists
|
|
mv $out_post "$out_post.bak"
|
|
fi
|
|
|
|
echo START
|
|
cp -r --reflink of $out_of
|
|
if [[ $2 ]]
|
|
then cp -r --reflink of_$2/* $out_of
|
|
fi
|
|
cp -r --reflink $inp_of/* $out_of
|
|
pushd $out_of
|
|
source /opt/OpenFOAM/OpenFOAM-9/etc/bashrc
|
|
mkdir log
|
|
echo Generating mesh
|
|
blockMesh > log/blockMesh.log
|
|
echo Refining mesh
|
|
snappyHexMesh -overwrite > log/snappyHexMesh.log
|
|
cp -r 0.org 0
|
|
echo Setting initial fields
|
|
setFields > log/setFields.log
|
|
|
|
popd
|
|
echo Converting swash output to initial condition
|
|
python -m processing.sws_ola -o $out_of > $out_of/log/sws_ola.log
|
|
echo Converting swash output to boundary condition
|
|
python -m processing.sws_wavedict_paddle -o $out_of > $out_of/log/sws_wave.log
|
|
pushd $out_of
|
|
|
|
echo Generating parallel cases
|
|
decomposePar > log/decomposePar.log
|
|
echo Running model
|
|
mpirun --use-hwthread-cpus -np 6 olaFlow -parallel > log/olaFlow.log
|
|
echo Merging parallel cases
|
|
reconstructPar > log/reconstructPar.log
|
|
#echo Removing parallel cases
|
|
#rm -r processor*
|
|
|
|
echo Running Openfoam post-process
|
|
postProcess -func graphUniform > log/postProcess.log
|
|
postProcess -func graphUniform2 > log/postProcess2.log
|
|
|
|
popd
|
|
echo Pickling Olaflow output
|
|
python -m processing.pickle -i $out_of -o $out_post > $out_of/log/pickle.log
|
|
|
|
echo END
|