From f35b4cc3fbaf1d58fde16cb785428393dd246d38 Mon Sep 17 00:00:00 2001 From: Vaggelis Papoutsis Date: Thu, 19 Oct 2023 13:34:58 +0300 Subject: [PATCH] ENH: added a variant of betaMax that computes it based on the product of the Reynolds and Darcy numbers --- .../adjointOptimisation/adjoint/Make/files | 1 + .../betaMax/Darcy/betaMaxDarcy.C | 172 +----------------- .../betaMax/Darcy/betaMaxDarcy.H | 9 - .../ReynoldsDarcy/betaMaxReynoldsDarcy.C | 66 +++++++ .../ReynoldsDarcy/betaMaxReynoldsDarcy.H | 120 ++++++++++++ .../betaMax/betaMax/betaMax.C | 172 ++++++++++++++++++ .../betaMax/betaMax/betaMax.H | 9 + 7 files changed, 369 insertions(+), 180 deletions(-) create mode 100644 src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/ReynoldsDarcy/betaMaxReynoldsDarcy.C create mode 100644 src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/ReynoldsDarcy/betaMaxReynoldsDarcy.H diff --git a/src/optimisation/adjointOptimisation/adjoint/Make/files b/src/optimisation/adjointOptimisation/adjoint/Make/files index 1453005730..bec0d403af 100644 --- a/src/optimisation/adjointOptimisation/adjoint/Make/files +++ b/src/optimisation/adjointOptimisation/adjoint/Make/files @@ -193,6 +193,7 @@ $(topoVars)/dynamicTopODesignVariables/dynamicTopODesignVariables.C $(topoVars)/betaMax/betaMax/betaMax.C $(topoVars)/betaMax/value/betaMaxValue.C $(topoVars)/betaMax/Darcy/betaMaxDarcy.C +$(topoVars)/betaMax/ReynoldsDarcy/betaMaxReynoldsDarcy.C $(topoVars)/betaMax/stepRamp/betaMaxStepRamp.C $(topoVars)/topOZones/topOZones.C $(topoVars)/regularisation/fieldRegularisation.C diff --git a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C index dcfd1329a2..69c9c47001 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/topODesignVariables/betaMax/Darcy/betaMaxDarcy.C @@ -27,8 +27,6 @@ License \*---------------------------------------------------------------------------*/ #include "betaMaxDarcy.H" -#include "EdgeMap.H" -#include "syncTools.H" #include "addToRunTimeSelectionTable.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -40,174 +38,6 @@ namespace Foam } -// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // - -Foam::scalar Foam::betaMaxDarcy::computeLength(const dictionary& dict) const -{ - scalar length = Zero; - // If length is not provided explicitly, loop over the provided patches - // and compute the hydraulic diamater - const dictionary& DarcyDict = dict.subDict(type() + "Coeffs"); - if (!DarcyDict.readIfPresent("length", length)) - { - const labelHashSet inletPatches = - mesh_.boundaryMesh().patchSet - ( - DarcyDict.get("inletPatches") - ); - - // If 2D, use the inlet area divided by the depth in the empty direction - if (mesh_.nGeometricD() != label(3)) - { - // Accumulate area - for (const label pI : inletPatches) - { - const fvPatch& patch = mesh_.boundary()[pI]; - length += gSum(patch.magSf()); - } - - // Divide with the span in the empty direction - const Vector