#!/bin/bash
cd "${0%/*}" || exit 1

echo "=============================================="
echo " OpenFOAM Non-Newtonian Venturi Case"
echo "=============================================="
echo ""

chmod +x ./Allclean

echo "Case directory:"
pwd
echo ""

echo "----------------------------------------------"
echo "1. Cleaning previous simulation"
echo "----------------------------------------------"

./Allclean

echo ""
echo "----------------------------------------------"
echo "2. Creating mesh with blockMesh"
echo "----------------------------------------------"

blockMesh > log.blockMesh 2>&1

if [ $? -ne 0 ]; then
    echo "ERROR: blockMesh failed."
    echo "Check log.blockMesh"
    exit 1
fi

echo "blockMesh completed successfully."

echo ""
echo "----------------------------------------------"
echo "3. Checking mesh"
echo "----------------------------------------------"

checkMesh > log.checkMesh 2>&1

if [ $? -ne 0 ]; then
    echo "ERROR: checkMesh failed."
    echo "Check log.checkMesh"
    exit 1
fi

echo "checkMesh completed successfully."

echo ""
echo "----------------------------------------------"
echo "4. Creating face zones"
echo "----------------------------------------------"

topoSet > log.topoSet 2>&1

if [ $? -ne 0 ]; then
    echo "ERROR: topoSet failed."
    echo "Check log.topoSet"
    exit 1
fi

echo "topoSet completed successfully."

echo ""
echo "----------------------------------------------"
echo "5. Running nonNewtonianIcoFoam"
echo "----------------------------------------------"

nonNewtonianIcoFoam > log.nonNewtonianIcoFoam 2>&1

if [ $? -ne 0 ]; then
    echo "ERROR: nonNewtonianIcoFoam failed."
    echo "Check log.nonNewtonianIcoFoam"
    exit 1
fi

echo ""
echo "----------------------------------------------"
echo "Simulation completed successfully."
echo "----------------------------------------------"

echo ""
echo "Post-processing data:"
echo "  postProcessing/"
echo ""

echo "Main solver log:"
echo "  log.nonNewtonianIcoFoam"
echo ""

echo "Solver information:"
echo "  postProcessing/solverInfo/"
echo ""

echo "=============================================="
echo " ALLRUN COMPLETED"
echo "=============================================="
