diff --git a/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.C b/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.C index 6c30f833ca..ddb9448090 100644 --- a/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.C +++ b/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.C @@ -75,23 +75,30 @@ objectiveFlowRatePartition::objectiveFlowRatePartition dict.get("outletPatches") ).sortedToc() ), - targetFlowRatePercentage_(), - currentFlowRatePercentage_(outletPatches_.size(), Zero), + targetFlowRateFraction_(), + currentFlowRateFraction_(outletPatches_.size(), Zero), inletFlowRate_(0), flowRateDifference_(outletPatches_.size(), Zero) { - // Read target percentages if present, otherwise treat them as equally + // Read target fractions if present, otherwise treat them as equally // distributed - if (!dict.readIfPresent("targetPercentages", targetFlowRatePercentage_)) + if + ( + !dict.readIfPresentCompat + ( + "targetFractions", {{"targetPercentages", 2306}}, + targetFlowRateFraction_ + ) + ) { const label nOutPatches = outletPatches_.size(); - targetFlowRatePercentage_.setSize(nOutPatches, 1.0/scalar(nOutPatches)); + targetFlowRateFraction_.setSize(nOutPatches, 1.0/scalar(nOutPatches)); } // Sanity checks - if (targetFlowRatePercentage_.size() != outletPatches_.size()) + if (targetFlowRateFraction_.size() != outletPatches_.size()) { FatalErrorInFunction - << "Inconsistent sizes for targetPercentages and outletPatches" + << "Inconsistent sizes for targetFractions and outletPatches" << exit(FatalError); } @@ -130,9 +137,9 @@ scalar objectiveFlowRatePartition::J() { const label patchI = outletPatches_[pI]; const scalar outletFlowRate = gSum(phi.boundaryField()[patchI]); - currentFlowRatePercentage_[pI] = -outletFlowRate/inletFlowRate_; + currentFlowRateFraction_[pI] = -outletFlowRate/inletFlowRate_; flowRateDifference_[pI] = - targetFlowRatePercentage_[pI] - currentFlowRatePercentage_[pI]; + targetFlowRateFraction_[pI] - currentFlowRateFraction_[pI]; J_ += 0.5*flowRateDifference_[pI]*flowRateDifference_[pI]; } @@ -172,7 +179,7 @@ void objectiveFlowRatePartition::addHeaderInfo() const const fvPatch& patch = mesh_.boundary()[patchI]; objFunctionFilePtr_() << setw(width_) << word("#" + patch.name() + "Tar") << " " - << setw(width_) << targetFlowRatePercentage_[pI] << endl; + << setw(width_) << targetFlowRateFraction_[pI] << endl; } } @@ -190,7 +197,7 @@ void objectiveFlowRatePartition::addHeaderColumns() const void objectiveFlowRatePartition::addColumnValues() const { - for (const scalar flowRate : currentFlowRatePercentage_) + for (const scalar flowRate : currentFlowRateFraction_) { objFunctionFilePtr_() << setw(width_) << flowRate << " "; diff --git a/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.H b/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.H index 19c0619f33..ac450a6ad2 100644 --- a/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.H +++ b/src/optimisation/adjointOptimisation/adjoint/objectives/incompressible/objectiveFlowRatePartition/objectiveFlowRatePartition.H @@ -61,8 +61,8 @@ class objectiveFlowRatePartition labelList inletPatches_; labelList outletPatches_; - scalarList targetFlowRatePercentage_; - scalarList currentFlowRatePercentage_; + scalarList targetFlowRateFraction_; + scalarList currentFlowRateFraction_; scalar inletFlowRate_; scalarList flowRateDifference_; diff --git a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict index 453d844e54..5c1046c287 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/shapeOptimisation/fork-uneven/flowRatePartition/system/optimisationDict @@ -66,7 +66,7 @@ adjointManagers outletPatches (outlet1 outlet2); // Optional entry. If abscent, inlet flow rate will // be partitioned equally between outlets - // targetPercentages (0.5 0.5); + // targetFractions (0.5 0.5); normalize true; } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict index ebb9063e1e..3fc1f4985d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/reEval/system/optimisationDict @@ -69,7 +69,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict index 99605c4f1a..b72dd4268f 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_20x_massConstr/system/optimisationDict @@ -104,7 +104,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); normalize true; target 1.e-5; } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict index ebb9063e1e..3fc1f4985d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/reEval/system/optimisationDict @@ -69,7 +69,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict index 5fc60fe5a5..116fe57eb5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-30-70/system/optimisationDict @@ -108,7 +108,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.3 0.7); + targetFractions (0.5 0.5); target 1.e-05; normalize true; } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict index ebb9063e1e..3fc1f4985d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/reEval/system/optimisationDict @@ -69,7 +69,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict index 116a2d129b..116fe57eb5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-50-50/system/optimisationDict @@ -108,7 +108,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); target 1.e-05; normalize true; } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict index ebb9063e1e..3fc1f4985d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/reEval/system/optimisationDict @@ -69,7 +69,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict index 1c862f72d0..116fe57eb5 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet_Dual_Bottleneck/losses-mass-70-30/system/optimisationDict @@ -108,7 +108,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.7 0.3); + targetFractions (0.5 0.5); target 1.e-05; normalize true; } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict index cd3c9a5d53..339c20d9a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/reEval/system/optimisationDict @@ -75,7 +75,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet1 outlet2); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict index 185ae850ed..0495e950a1 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass-uniformity/system/optimisationDict @@ -174,7 +174,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet1 outlet2); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); normalize true; target 1.e-5; } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict index cd3c9a5d53..339c20d9a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/reEval/system/optimisationDict @@ -75,7 +75,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet1 outlet2); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict index 41a39e3c5d..74df184c31 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses-mass/system/optimisationDict @@ -113,7 +113,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet1 outlet2); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); normalize true; target 1.e-5; } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict index cd3c9a5d53..339c20d9a8 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/reEval/system/optimisationDict @@ -75,7 +75,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet1 outlet2); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict index 043566224b..1538ed839c 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/3DBox/losses/system/optimisationDict @@ -76,7 +76,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet1 outlet2); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/reEval/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/reEval/system/optimisationDict index ebb9063e1e..3fc1f4985d 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/reEval/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/reEval/system/optimisationDict @@ -69,7 +69,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); } } } diff --git a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/system/optimisationDict b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/system/optimisationDict index 611f4852fc..128517a7af 100644 --- a/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/system/optimisationDict +++ b/tutorials/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/turbulent/1_Inlet_2_Outlet/porosityBased/losses-massConstr/system/optimisationDict @@ -108,7 +108,7 @@ adjointManagers type flowRatePartition; inletPatches (inlet); outletPatches (outlet outlet-right); - targetPercentages (0.5 0.5); + targetFractions (0.5 0.5); normalize true; target 1.e-5; }