diff --git a/Common/include/CConfig.hpp b/Common/include/CConfig.hpp index 7d85083eafb..15432aadc7f 100644 --- a/Common/include/CConfig.hpp +++ b/Common/include/CConfig.hpp @@ -815,6 +815,7 @@ class CConfig { unsigned short ActDisk_Jump; /*!< \brief Format of the output files. */ unsigned long StartWindowIteration; /*!< \brief Starting Iteration for long time Windowing apporach . */ unsigned short nCFL_AdaptParam; /*!< \brief Number of CFL parameters provided in config. */ + unsigned long outlierMitigationParam[4]; /*!< \brief Parameters of outlier mitigation strategy. */ bool CFL_Adapt; /*!< \brief Use adaptive CFL number. */ bool HB_Precondition; /*!< \brief Flag to turn on harmonic balance source term preconditioning */ su2double RefArea, /*!< \brief Reference area for coefficient computation. */ @@ -1714,6 +1715,11 @@ class CConfig { */ bool GetCFL_Adapt(void) const { return CFL_Adapt; } + /*! + * \brief Get the outlier mitigation parameters. + */ + const unsigned long* GetOutlierMitigationParam() const { return outlierMitigationParam; } + /*! * \brief Get the value of the limits for the sections. * \return Value of the limits for the sections. diff --git a/Common/include/linear_algebra/CSysMatrix.hpp b/Common/include/linear_algebra/CSysMatrix.hpp index ecb26959a06..a71d31c1c08 100644 --- a/Common/include/linear_algebra/CSysMatrix.hpp +++ b/Common/include/linear_algebra/CSysMatrix.hpp @@ -590,7 +590,7 @@ class CSysMatrix { * \param[in] block_j - Adds to ij, subs from jj. * \param[in] scale - Scale blocks during update (axpy type op). */ - template + template inline void UpdateBlocks(unsigned long iEdge, unsigned long iPoint, unsigned long jPoint, const MatrixType& block_i, const MatrixType& block_j, OtherType scale = 1) { ScalarType *bii, *bij, *bji, *bjj; @@ -601,9 +601,14 @@ class CSysMatrix { for (iVar = 0; iVar < nVar; iVar++) { for (jVar = 0; jVar < nEqn; jVar++) { bii[offset] += PassiveAssign(block_i[iVar][jVar] * scale); - bij[offset] += PassiveAssign(block_j[iVar][jVar] * scale); - bji[offset] -= PassiveAssign(block_i[iVar][jVar] * scale); bjj[offset] -= PassiveAssign(block_j[iVar][jVar] * scale); + if constexpr (OverwriteOffDiag) { + bij[offset] = PassiveAssign(block_j[iVar][jVar] * scale); + bji[offset] = -PassiveAssign(block_i[iVar][jVar] * scale); + } else { + bij[offset] += PassiveAssign(block_j[iVar][jVar] * scale); + bji[offset] -= PassiveAssign(block_i[iVar][jVar] * scale); + } ++offset; } } @@ -615,14 +620,14 @@ class CSysMatrix { template inline void UpdateBlocksSub(unsigned long iEdge, unsigned long iPoint, unsigned long jPoint, const MatrixType& block_i, const MatrixType& block_j) { - UpdateBlocks(iEdge, iPoint, jPoint, block_i, block_j, -1); + UpdateBlocks(iEdge, iPoint, jPoint, block_i, block_j, -1); } /*! * \brief SIMD version, does the update for multiple edges and points. * \note Nothing is updated if the mask is 0. */ - template + template FORCEINLINE void UpdateBlocks(simd::Array iEdge, simd::Array iPoint, simd::Array jPoint, const MatTypeSIMD& block_i, const MatTypeSIMD& block_j, simd::Array mask = 1) { static_assert(MatTypeSIMD::StaticSize, "This method requires static size blocks."); diff --git a/Common/src/CConfig.cpp b/Common/src/CConfig.cpp index cf137709ea0..2ae45cf340f 100644 --- a/Common/src/CConfig.cpp +++ b/Common/src/CConfig.cpp @@ -1819,6 +1819,11 @@ void CConfig::SetConfig_Options() { addDoubleOption("CFL_NUMBER", CFLFineGrid, 1.25); /* DESCRIPTION: Max time step in local time stepping simulations */ addDoubleOption("MAX_DELTA_TIME", Max_DeltaTime, 1000000); + /* !\brief OUTLIER_MITIGATION_PARAM + * DESCRIPTION: Parameters of the outlier mitigation strategy: start iteration, update frequency, print frequency, + * and number of standard deviations (N * sigma) to identify outliers statistically. \ingroup Config*/ + outlierMitigationParam[0] = 999999; outlierMitigationParam[1] = 5; outlierMitigationParam[2] = 2; outlierMitigationParam[3] = 5; + addULongArrayOption("OUTLIER_MITIGATION_PARAM", 4, true, outlierMitigationParam); /* DESCRIPTION: Activate The adaptive CFL number. */ addBoolOption("CFL_ADAPT", CFL_Adapt, false); /* !\brief CFL_ADAPT_PARAM @@ -2035,7 +2040,7 @@ void CConfig::SetConfig_Options() { addDoubleOption("MUSCL_KAPPA_FLOW", MUSCL_Kappa_Flow, 0.0); /*!\brief RAMP_MUSCL \n DESCRIPTION: Enable ramping of the MUSCL scheme from 1st to 2nd order using specified method*/ addBoolOption("RAMP_MUSCL", RampMUSCL, false); - /*! brief RAMP_OUTLET_COEFF \n DESCRIPTION: the 1st coeff is the ramp start iteration, + /*! brief RAMP_MUSCL_COEFF \n DESCRIPTION: the 1st coeff is the ramp start iteration, * the 2nd coeff is the iteration update frequenct, 3rd coeff is the total number of iterations */ RampMUSCLParam.rampMUSCLCoeff[0] = 0.0; RampMUSCLParam.rampMUSCLCoeff[1] = 1.0; RampMUSCLParam.rampMUSCLCoeff[2] = 500.0; addULongArrayOption("RAMP_MUSCL_COEFF", 3, false, RampMUSCLParam.rampMUSCLCoeff); diff --git a/Common/src/linear_algebra/CSysMatrix.cpp b/Common/src/linear_algebra/CSysMatrix.cpp index 00ef51c2023..e90f9e1c704 100644 --- a/Common/src/linear_algebra/CSysMatrix.cpp +++ b/Common/src/linear_algebra/CSysMatrix.cpp @@ -32,6 +32,20 @@ #include +namespace { +/*--- Helper function to regularize small pivots ---*/ +template +FORCEINLINE void RegularizePivot(ScalarType& pivot, unsigned long row, unsigned long col, const char* context) { + const float eps = 1e-12; + if (std::abs(pivot) < eps) { + pivot = std::copysign(eps, SU2_TYPE::GetValue(pivot)); +#ifndef NDEBUG + std::cout << context << ": Regularized small pivot A(" << row << "," << col << ") to " << pivot << std::endl; +#endif + } +} +} // namespace + template CSysMatrix::CSysMatrix() : rank(SU2_MPI::GetRank()), size(SU2_MPI::GetSize()) { SU2_ZONE_SCOPED @@ -508,18 +522,6 @@ void CSysMatrix::SetValDiagonalZero() { END_SU2_OMP_FOR } -/*--- Helper function to regularize small pivots ---*/ -template -inline void RegularizePivot(ScalarType& pivot, unsigned long row, unsigned long col, const char* context) { - const float eps = 1e-12; - if (std::abs(pivot) < eps) { - pivot = std::copysign(eps, SU2_TYPE::GetValue(pivot)); -#ifndef NDEBUG - std::cout << context << ": Regularized small pivot A(" << row << "," << col << ") to " << pivot << std::endl; -#endif - } -} - template void CSysMatrix::Gauss_Elimination(ScalarType* matrix, ScalarType* vec) const { #ifdef USE_MKL_LAPACK diff --git a/SU2_CFD/include/numerics_simd/flow/convection/common.hpp b/SU2_CFD/include/numerics_simd/flow/convection/common.hpp index 4796f80ce03..f3669d45423 100644 --- a/SU2_CFD/include/numerics_simd/flow/convection/common.hpp +++ b/SU2_CFD/include/numerics_simd/flow/convection/common.hpp @@ -188,6 +188,7 @@ FORCEINLINE void musclEdgeLimited(const Int& iPoint, * \param[in] V1st - Pair of compressible flow primitives for nodes i,j. * \param[in] vector_ij - Distance vector from i to j. * \param[in] solution - Entire solution container (a derived CVariable). + * \param[out] nonPhysical - Signals that the edge is treated as non-physical. * \return Pair of primitive variables. */ template @@ -201,7 +202,8 @@ FORCEINLINE CPair reconstructPrimitives(const Int& iEdge, const LIMITER limiterType, const CPair& V1st, const VectorDbl& vector_ij, - const VariableType& solution) { + const VariableType& solution, + Double& nonPhysical) { static_assert(ReconVarType::nVar <= PrimVarType::nVar); const auto& gradients = solution.GetGradient_Reconstruction(); @@ -262,15 +264,20 @@ FORCEINLINE CPair reconstructPrimitives(const Int& iEdge, const Double neg_sound_speed = enthalpy * (R+1) < 0.5 * v_squared; /*--- Revert to first order if the state is non-physical. ---*/ - Double bad_recon = fmax(neg_p_or_rho, neg_sound_speed); + nonPhysical = fmax(neg_p_or_rho, neg_sound_speed); /*--- Handle SIMD dimensions 1 by 1. ---*/ for (size_t k = 0; k < Double::Size; ++k) { - bad_recon[k] = solution.UpdateNonPhysicalEdgeCounter(iEdge[k], bad_recon[k]); + nonPhysical[k] = solution.UpdateNonPhysicalEdgeCounter(iEdge[k], nonPhysical[k]); + nonPhysical[k] = fmax(nonPhysical[k], + fmax(solution.OutlierMitigation(iPoint[k]), + solution.OutlierMitigation(jPoint[k])) / VariableType::MAX_OUTLIER_MITIGATION); } for (size_t iVar = 0; iVar < ReconVarType::nVar; ++iVar) { - V.i.all(iVar) = bad_recon * V1st.i.all(iVar) + (1-bad_recon) * V.i.all(iVar); - V.j.all(iVar) = bad_recon * V1st.j.all(iVar) + (1-bad_recon) * V.j.all(iVar); + V.i.all(iVar) = nonPhysical * V1st.i.all(iVar) + (1-nonPhysical) * V.i.all(iVar); + V.j.all(iVar) = nonPhysical * V1st.j.all(iVar) + (1-nonPhysical) * V.j.all(iVar); } + } else { + nonPhysical = 0; } return V; } diff --git a/SU2_CFD/include/numerics_simd/flow/convection/upwind.hpp b/SU2_CFD/include/numerics_simd/flow/convection/upwind.hpp index ad958a7e2f0..090fb111332 100644 --- a/SU2_CFD/include/numerics_simd/flow/convection/upwind.hpp +++ b/SU2_CFD/include/numerics_simd/flow/convection/upwind.hpp @@ -118,8 +118,10 @@ class CUpwindBase : public Base { V1st.j.all = gatherVariables(jPoint, solution.GetPrimitive()); /*--- Recompute density and enthalpy instead of reconstructing. ---*/ + Double nonPhysical; auto V = reconstructPrimitives >( - iEdge, iPoint, jPoint, gamma, gasConst, muscl, umusclKappa, umusclRamp, typeLimiter, V1st, vector_ij, solution); + iEdge, iPoint, jPoint, gamma, gasConst, muscl, umusclKappa, umusclRamp, + typeLimiter, V1st, vector_ij, solution, nonPhysical); /*--- Compute conservative variables. ---*/ @@ -132,8 +134,8 @@ class CUpwindBase : public Base { const auto derived = static_cast(this); VectorDbl flux; MatrixDbl jac_i, jac_j; - derived->finalizeFlux(flux, jac_i, jac_j, implicit, area, unitNormal, - normal, V, U, iPoint, jPoint, solution, geometry); + derived->finalizeFlux(flux, jac_i, jac_j, implicit, area, unitNormal, normal, + V, U, iPoint, jPoint, nonPhysical, solution, geometry); /*--- Add the contributions from the base class (static decorator). ---*/ @@ -199,6 +201,7 @@ class CRoeScheme : public CUpwindBase, Decorator> { const CPair& U, const Int& iPoint, const Int& jPoint, + const Double& nonPhysical, const CEulerVariable& solution, const CGeometry& geometry, Ts&...) const { @@ -227,10 +230,9 @@ class CRoeScheme : public CUpwindBase, Decorator> { /*--- Apply Mavriplis' entropy correction to eigenvalues. ---*/ - Double maxLambda = abs(projVel) + roeAvg.speedSound; - + Double lambdaMin = fmax(entropyFix, nonPhysical) * (abs(projVel) + roeAvg.speedSound); for (size_t iVar = 0; iVar < nVar; ++iVar) { - lambda(iVar) = fmax(abs(lambda(iVar)), entropyFix*maxLambda); + lambda(iVar) = fmax(abs(lambda(iVar)), lambdaMin); } /*--- Inviscid fluxes and Jacobians. ---*/ @@ -348,6 +350,7 @@ class CMSWScheme : public CUpwindBase, Decorator> { const CPair& U, const Int& iPoint, const Int& jPoint, + const Double& nonPhysical, const CEulerVariable& solution, const CGeometry& geometry, Ts&...) const { @@ -358,7 +361,7 @@ class CMSWScheme : public CUpwindBase, Decorator> { const auto sj = gatherVariables(jPoint, solution.GetSensor()); const Double dp = fmax(si, sj) - alpha * 0.06; - const Double w = 0.25 * (1 - sign(dp)) * (1 - exp(-100 * abs(dp))); + const Double w = 0.25 * (1 - sign(dp) * (1 - exp(-100 * abs(dp)))) * (1 - nonPhysical); const Double onemw = 1 - w; CPair> Vweighted; diff --git a/SU2_CFD/include/solvers/CEulerSolver.hpp b/SU2_CFD/include/solvers/CEulerSolver.hpp index 46eed006b04..dc932095bc4 100644 --- a/SU2_CFD/include/solvers/CEulerSolver.hpp +++ b/SU2_CFD/include/solvers/CEulerSolver.hpp @@ -116,6 +116,9 @@ class CEulerSolver : public CFVMFlowSolverBase FluidModel; /*!< \brief fluid model used in the solver. */ + /*!< \brief Variables for outlier detection. */ + su2double MeanTemperature, StdDevTemperature; + /*--- Turbomachinery Solver Variables ---*/ vector AverageFlux; @@ -782,11 +785,17 @@ class CEulerSolver : public CFVMFlowSolverBase - void CompleteImplicitIteration_impl(CGeometry *geometry, CConfig *config) { - - if (compute_ur) ComputeUnderRelaxationFactor(config); - - /*--- Update solution with under-relaxation and communicate it. ---*/ - - if (!config->GetContinuous_Adjoint()) { - SU2_OMP_FOR_STAT(omp_chunk_size) - for (unsigned long iPoint = 0; iPoint < nPointDomain; iPoint++) { - for (unsigned short iVar = 0; iVar < nVar; iVar++) { - nodes->AddSolution(iPoint, iVar, nodes->GetUnderRelaxation(iPoint)*LinSysSol[iPoint*nVar+iVar]); - } - } - END_SU2_OMP_FOR - } - - for (unsigned short iPeriodic = 1; iPeriodic <= config->GetnMarker_Periodic()/2; iPeriodic++) { - InitiatePeriodicComms(geometry, config, iPeriodic, PERIODIC_IMPLICIT); - CompletePeriodicComms(geometry, config, iPeriodic, PERIODIC_IMPLICIT); - } - - InitiateComms(geometry, config, MPI_QUANTITIES::SOLUTION); - CompleteComms(geometry, config, MPI_QUANTITIES::SOLUTION); - - /*--- For verification cases, compute the global error metrics. ---*/ - ComputeVerificationError(geometry, config); - } - /*! * \brief Evaluate the vorticity and strain rate magnitude. */ @@ -1075,6 +1044,13 @@ class CFVMFlowSolverBase : public CSolver { */ void ImplicitEuler_Iteration(CGeometry *geometry, CSolver **solver_container, CConfig *config) final; + /*! + * \brief Complete an implicit iteration. + * \param[in] geometry - Geometrical definition of the problem. + * \param[in] config - Definition of the particular problem. + */ + void CompleteImplicitIteration(CGeometry *geometry, CSolver**, CConfig *config) final; + /*! * \brief Set the total residual adding the term that comes from the Dual Time Strategy. * \param[in] geometry - Geometrical definition of the problem. diff --git a/SU2_CFD/include/solvers/CFVMFlowSolverBase.inl b/SU2_CFD/include/solvers/CFVMFlowSolverBase.inl index 8339bb465a7..28ca74d8149 100644 --- a/SU2_CFD/include/solvers/CFVMFlowSolverBase.inl +++ b/SU2_CFD/include/solvers/CFVMFlowSolverBase.inl @@ -596,42 +596,33 @@ void CFVMFlowSolverBase::ComputeVerificationError(CGeometry* geometry, CCo } template -void CFVMFlowSolverBase::ComputeUnderRelaxationFactor(const CConfig* config) { +void CFVMFlowSolverBase::CompleteImplicitIteration(CGeometry *geometry, CSolver**, CConfig *config) { SU2_ZONE_SCOPED - /* Loop over the solution update given by relaxing the linear - system for this nonlinear iteration. */ + if constexpr (R == ENUM_REGIME::COMPRESSIBLE) ComputeUnderRelaxationFactor(config); - const su2double allowableRatio = config->GetMaxUpdateFractionFlow(); + /*--- Update solution with under-relaxation and communicate it. ---*/ - SU2_OMP_FOR_STAT(omp_chunk_size) - for (unsigned long iPoint = 0; iPoint < nPointDomain; iPoint++) { - su2double localUnderRelaxation = 1.0; - - for (unsigned short iVar = 0; iVar < nVar; iVar++) { - /* We impose a limit on the maximum percentage that the - density and energy can change over a nonlinear iteration. */ - - if ((iVar == 0) || (iVar == nVar - 1)) { - const unsigned long index = iPoint * nVar + iVar; - su2double ratio = fabs(LinSysSol[index]) / (fabs(nodes->GetSolution(iPoint, iVar)) + EPS); - if (ratio > allowableRatio) { - localUnderRelaxation = min(allowableRatio / ratio, localUnderRelaxation); - } + if (!config->GetContinuous_Adjoint()) { + SU2_OMP_FOR_STAT(omp_chunk_size) + for (unsigned long iPoint = 0; iPoint < nPointDomain; iPoint++) { + for (unsigned short iVar = 0; iVar < nVar; iVar++) { + nodes->AddSolution(iPoint, iVar, nodes->GetUnderRelaxation(iPoint) * LinSysSol(iPoint, iVar)); } } + END_SU2_OMP_FOR + } - /* Threshold the relaxation factor in the event that there is - a very small value. This helps avoid catastrophic crashes due - to non-realizable states by canceling the update. */ - - if (localUnderRelaxation < 1e-10) localUnderRelaxation = 0.0; + for (unsigned short iPeriodic = 1; iPeriodic <= config->GetnMarker_Periodic()/2; iPeriodic++) { + InitiatePeriodicComms(geometry, config, iPeriodic, PERIODIC_IMPLICIT); + CompletePeriodicComms(geometry, config, iPeriodic, PERIODIC_IMPLICIT); + } - /* Store the under-relaxation factor for this point. */ + InitiateComms(geometry, config, MPI_QUANTITIES::SOLUTION); + CompleteComms(geometry, config, MPI_QUANTITIES::SOLUTION); - nodes->SetUnderRelaxation(iPoint, localUnderRelaxation); - } - END_SU2_OMP_FOR + /*--- For verification cases, compute the global error metrics. ---*/ + ComputeVerificationError(geometry, config); } template diff --git a/SU2_CFD/include/solvers/CIncEulerSolver.hpp b/SU2_CFD/include/solvers/CIncEulerSolver.hpp index 98c3d21a8f2..9c18691cf56 100644 --- a/SU2_CFD/include/solvers/CIncEulerSolver.hpp +++ b/SU2_CFD/include/solvers/CIncEulerSolver.hpp @@ -365,13 +365,6 @@ class CIncEulerSolver : public CFVMFlowSolverBase::max(); + + /*! + * \brief Marks outliers (0 ok, MAX_OUTLIER_MITIGATION maximum mitigation). + */ + su2vector OutlierMitigation; + }; diff --git a/SU2_CFD/src/iteration/CFluidIteration.cpp b/SU2_CFD/src/iteration/CFluidIteration.cpp index 55aba398ae8..a79a9f1f8f4 100644 --- a/SU2_CFD/src/iteration/CFluidIteration.cpp +++ b/SU2_CFD/src/iteration/CFluidIteration.cpp @@ -133,13 +133,13 @@ void CFluidIteration::Iterate(COutput* output, CIntegration**** integration, CGe /*--- Adapt the CFL number using an exponential progression with under-relaxation approach. During Full-MG warmup (FinestMesh > MESH_0), skip adaptation entirely until the finest mesh is active. ---*/ - if ((config[val_iZone]->GetCFL_Adapt() == YES) && (!disc_adj) && - (config[val_iZone]->GetFinestMesh() == MESH_0)) { - SU2_OMP_PARALLEL + SU2_OMP_PARALLEL + if (!disc_adj && config[val_iZone]->GetFinestMesh() == MESH_0) { solver[val_iZone][val_iInst][MESH_0][FLOW_SOL]->AdaptCFLNumber(geometry[val_iZone][val_iInst], solver[val_iZone][val_iInst], config[val_iZone]); - END_SU2_OMP_PARALLEL + solver[val_iZone][val_iInst][MESH_0][FLOW_SOL]->IdentifySolutionOutliers(config[val_iZone], InnerIter); } + END_SU2_OMP_PARALLEL /*--- Call Dynamic mesh update if AEROELASTIC motion was specified ---*/ diff --git a/SU2_CFD/src/solvers/CEulerSolver.cpp b/SU2_CFD/src/solvers/CEulerSolver.cpp index e5737ceebb1..e89f022920c 100644 --- a/SU2_CFD/src/solvers/CEulerSolver.cpp +++ b/SU2_CFD/src/solvers/CEulerSolver.cpp @@ -1669,7 +1669,7 @@ void CEulerSolver::CommonPreprocessing(CGeometry *geometry, CSolver **solver_con if (!ReducerStrategy && !Output) { LinSysRes.SetValZero(); - if (implicit) Jacobian.SetValZero(); + if (implicit) Jacobian.SetValDiagonalZero(); else {SU2_OMP_BARRIER} // because of "nowait" in LinSysRes } @@ -1916,11 +1916,12 @@ void CEulerSolver::Upwind_Residual(CGeometry *geometry, CSolver **solver_contain if (van_albada) { lim_i = LimiterHelpers<>::vanAlbadaFunction(Project_Grad_i, V_ij, EPS); lim_j = LimiterHelpers<>::vanAlbadaFunction(Project_Grad_j, V_ij, EPS); - } - else if (limiter) { + } else if (limiter) { lim_i = nodes->GetLimiter_Primitive(iPoint, iVar); lim_j = nodes->GetLimiter_Primitive(jPoint, iVar); } + lim_i *= (1 - static_cast(nodes->OutlierMitigation(iPoint)) / CEulerVariable::MAX_OUTLIER_MITIGATION); + lim_j *= (1 - static_cast(nodes->OutlierMitigation(jPoint)) / CEulerVariable::MAX_OUTLIER_MITIGATION); Primitive_i[iVar] = V_i[iVar] + 0.5 * lim_i * Project_Grad_i; Primitive_j[iVar] = V_j[iVar] - 0.5 * lim_j * Project_Grad_j; @@ -2004,7 +2005,7 @@ void CEulerSolver::Upwind_Residual(CGeometry *geometry, CSolver **solver_contain /*--- Set implicit computation ---*/ if (implicit) - Jacobian.UpdateBlocks(iEdge, iPoint, jPoint, residual.jacobian_i, residual.jacobian_j); + Jacobian.UpdateBlocks(iEdge, iPoint, jPoint, residual.jacobian_i, residual.jacobian_j); } /*--- Viscous contribution. ---*/ @@ -2520,10 +2521,164 @@ void CEulerSolver::PrepareImplicitIteration(CGeometry *geometry, CSolver**, CCon PrepareImplicitIteration_impl(precond, geometry, config); } -void CEulerSolver::CompleteImplicitIteration(CGeometry *geometry, CSolver**, CConfig *config) { +void CEulerSolver::ComputeUnderRelaxationFactor(const CConfig* config) { SU2_ZONE_SCOPED - CompleteImplicitIteration_impl(geometry, config); + /*--- Loop over the solution update given by relaxing the linear system for this + * nonlinear iteration and impose a limit on the maximum percentage that the + * density and static energy can change. */ + + const su2double allowableRatio = config->GetMaxUpdateFractionFlow(); + + SU2_OMP_FOR_STAT(omp_chunk_size) + for (unsigned long iPoint = 0; iPoint < nPointDomain; iPoint++) { + su2double ratio = fabs(LinSysSol(iPoint, 0)) / max(nodes->GetSolution(iPoint, 0), EPS); + su2double e_old = nodes->GetSolution(iPoint, nVar - 1); + su2double e_new = e_old + LinSysSol(iPoint, nVar - 1); + for (unsigned short jVar = 1; jVar <= nDim; jVar++) { + e_old -= 0.5 * pow(nodes->GetSolution(iPoint, jVar), 2); + e_new -= 0.5 * pow(nodes->GetSolution(iPoint, jVar) + LinSysSol(iPoint, jVar), 2); + } + ratio = fmax(ratio, fabs(e_new - e_old) / max(e_old, EPS)); + + su2double localUnderRelaxation = fmin(allowableRatio / fmax(ratio, EPS), 1); + + /* Threshold the relaxation factor in the event that there is + a very small value. This helps avoid catastrophic crashes due + to non-realizable states by canceling the update. */ + + if (localUnderRelaxation < 1e-10) localUnderRelaxation = 0.0; + + nodes->SetUnderRelaxation(iPoint, localUnderRelaxation); + } + END_SU2_OMP_FOR +} + +void CEulerSolver::IdentifySolutionOutliers(const CConfig *config, unsigned long iter) { + SU2_ZONE_SCOPED + + const unsigned long startIteration = config->GetOutlierMitigationParam()[0]; + const unsigned long updateFrequency = config->GetOutlierMitigationParam()[1]; + const unsigned long printFrequency = config->GetOutlierMitigationParam()[2]; + const int nSigma = config->GetOutlierMitigationParam()[3]; + + if (iter < startIteration) return; + + auto DetermineBinAndUpdatePoint = [&](const unsigned long iPoint) { + const su2double t = nodes->GetTemperature(iPoint); + const auto i = nSigma + min(max(-nSigma, SU2_TYPE::Int((t - MeanTemperature) / max(StdDevTemperature, EPS))), nSigma); + if (i == 0 || i == 2 * nSigma) { + if (nodes->OutlierMitigation(iPoint) == 0) { + /*--- Start mitigating with maximum strength if the point was just identified as outlier. ---*/ + nodes->OutlierMitigation(iPoint) = CEulerVariable::MAX_OUTLIER_MITIGATION; + } else if (nodes->OutlierMitigation(iPoint) < CEulerVariable::MAX_OUTLIER_MITIGATION) { + /*--- The point became an outlier again after reducing mitigations (below), increase them slowly. ---*/ + ++nodes->OutlierMitigation(iPoint); + } + } else if (nodes->OutlierMitigation(iPoint) > 0) { + /*--- Not an outlier anymore, try to slowly reduce the mitigations. ---*/ + --nodes->OutlierMitigation(iPoint); + } + return i; + }; + + /*--- Recompute mean and std deviation of temperature or use the stored values. ---*/ + if (iter == startIteration || iter % updateFrequency == 0) { + su2double localSum = 0; + static unsigned long nPointGlobal; + SU2_OMP_MASTER + MeanTemperature = 0; + END_SU2_OMP_MASTER + + SU2_OMP_FOR_STAT(omp_chunk_size) + for (unsigned long iPoint = 0; iPoint < nPointDomain; ++iPoint) { + localSum += nodes->GetTemperature(iPoint); + } + END_SU2_OMP_FOR + + atomicAdd(localSum, MeanTemperature); + + BEGIN_SU2_OMP_SAFE_GLOBAL_ACCESS { + su2double tmp[2] = {MeanTemperature, static_cast(nPointDomain)}, global[2]; + SU2_MPI::Allreduce(tmp, global, 2, MPI_DOUBLE, MPI_SUM, SU2_MPI::GetComm()); + nPointGlobal = static_cast(SU2_TYPE::GetValue(global[1])); + MeanTemperature = global[0] / global[1]; + } + END_SU2_OMP_SAFE_GLOBAL_ACCESS + + localSum = 0; + SU2_OMP_MASTER + StdDevTemperature = 0; + END_SU2_OMP_MASTER + + SU2_OMP_FOR_STAT(omp_chunk_size) + for (unsigned long iPoint = 0; iPoint < nPointDomain; iPoint ++) { + localSum += pow(MeanTemperature - nodes->GetTemperature(iPoint), 2); + } + END_SU2_OMP_FOR + + atomicAdd(localSum, StdDevTemperature); + + BEGIN_SU2_OMP_SAFE_GLOBAL_ACCESS { + SU2_MPI::Allreduce(&StdDevTemperature, &localSum, 1, MPI_DOUBLE, MPI_SUM, SU2_MPI::GetComm()); + StdDevTemperature = sqrt(localSum / nPointGlobal); + } + END_SU2_OMP_SAFE_GLOBAL_ACCESS + + const auto nBins = 2 * nSigma + 2; + std::vector bins(nBins, 0); + unsigned long nPointLocal = 0; + SU2_OMP_MASTER + nPointGlobal = 0; + END_SU2_OMP_MASTER + + SU2_OMP_FOR_STAT(omp_chunk_size) + for (unsigned long iPoint = 0; iPoint < nPoint; ++iPoint) { + const auto i = DetermineBinAndUpdatePoint(iPoint); + if (iPoint < nPointDomain) { + nPointLocal += static_cast(nodes->OutlierMitigation(iPoint) > 0); + + SU2_OMP_ATOMIC + ++bins[i]; + } + } + END_SU2_OMP_FOR + + atomicAdd(nPointLocal, nPointGlobal); + + BEGIN_SU2_OMP_SAFE_GLOBAL_ACCESS + if (iter == 0 || iter % (updateFrequency * printFrequency) == 0) { + bins.back() = nPointGlobal; + std::vector global(nBins); + SU2_MPI::Reduce(bins.data(), global.data(), nBins, MPI_UNSIGNED_LONG, MPI_SUM, MASTER_NODE, SU2_MPI::GetComm()); + if (rank == MASTER_NODE) { + PrintingToolbox::CTablePrinter outlierTable(&std::cout); + outlierTable.AddColumn("Mean T", 12); + outlierTable.AddColumn("StdDev", 12); + outlierTable.AddColumn("< -" + std::to_string(nSigma), 12); + for (int i = -nSigma; i < nSigma; ++i) { + const int jump = (i == -1); + outlierTable.AddColumn(std::to_string(i) + " to " + std::to_string(i + 1 + jump), 12); + i += jump; + } + outlierTable.AddColumn("> " + std::to_string(nSigma), 12); + outlierTable.AddColumn("#Mitig.", 12); + outlierTable.SetAlign(PrintingToolbox::CTablePrinter::RIGHT); + outlierTable.PrintHeader(); + outlierTable << MeanTemperature << StdDevTemperature; + for (const auto n : global) outlierTable << n; + outlierTable.PrintFooter(); + } + } + END_SU2_OMP_SAFE_GLOBAL_ACCESS + + } else { + SU2_OMP_FOR_STAT(omp_chunk_size) + for (unsigned long iPoint = 0; iPoint < nPoint; ++iPoint) { + (void)DetermineBinAndUpdatePoint(iPoint); + } + END_SU2_OMP_FOR + } } void CEulerSolver::SetPreconditioner(const CConfig *config, unsigned long iPoint, diff --git a/SU2_CFD/src/solvers/CIncEulerSolver.cpp b/SU2_CFD/src/solvers/CIncEulerSolver.cpp index f138422f7ea..2c4c9b05e1c 100644 --- a/SU2_CFD/src/solvers/CIncEulerSolver.cpp +++ b/SU2_CFD/src/solvers/CIncEulerSolver.cpp @@ -2014,12 +2014,6 @@ void CIncEulerSolver::PrepareImplicitIteration(CGeometry *geometry, CSolver**, C PrepareImplicitIteration_impl(precond, geometry, config); } -void CIncEulerSolver::CompleteImplicitIteration(CGeometry *geometry, CSolver**, CConfig *config) { - SU2_ZONE_SCOPED - - CompleteImplicitIteration_impl(geometry, config); -} - void CIncEulerSolver::SetBeta_Parameter(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iMesh) { SU2_ZONE_SCOPED diff --git a/SU2_CFD/src/solvers/CNEMOEulerSolver.cpp b/SU2_CFD/src/solvers/CNEMOEulerSolver.cpp index 1f3090a67cc..37de9a83207 100644 --- a/SU2_CFD/src/solvers/CNEMOEulerSolver.cpp +++ b/SU2_CFD/src/solvers/CNEMOEulerSolver.cpp @@ -936,12 +936,6 @@ void CNEMOEulerSolver::PrepareImplicitIteration(CGeometry *geometry, CSolver**, PrepareImplicitIteration_impl(precond, geometry, config); } -void CNEMOEulerSolver::CompleteImplicitIteration(CGeometry *geometry, CSolver**, CConfig *config) { - SU2_ZONE_SCOPED - - CompleteImplicitIteration_impl(geometry, config); -} - void CNEMOEulerSolver::ComputeUnderRelaxationFactor(const CConfig *config) { SU2_ZONE_SCOPED diff --git a/SU2_CFD/src/solvers/CSolver.cpp b/SU2_CFD/src/solvers/CSolver.cpp index 36a7d2283f0..72685eb9bc5 100644 --- a/SU2_CFD/src/solvers/CSolver.cpp +++ b/SU2_CFD/src/solvers/CSolver.cpp @@ -1747,6 +1747,8 @@ void CSolver::AdaptCFLNumber(CGeometry **geometry, CConfig *config) { SU2_ZONE_SCOPED + if (config->GetCFL_Adapt() != YES) return; + /* Adapt the CFL number on all multigrid levels using an exponential progression with under-relaxation approach. */ @@ -1811,7 +1813,10 @@ void CSolver::AdaptCFLNumber(CGeometry **geometry, canIncrease = (linRes < linTol) && (iter >= startingIter); - if ((iMesh == MESH_0) && (Res_Count > 0)) { + /* Do not use the residual flip-flop criteria when we are mitigating outliers + * because the former was never very reliable for large cases where monotonic + * residual reduction is impossible to achieve. */ + if (!config->OptionIsSet("OUTLIER_MITIGATION_PARAM") && iMesh == MESH_0 && Res_Count > 0) { Old_Func = New_Func; if (NonLinRes_Series.empty()) NonLinRes_Series.resize(Res_Count,0.0); diff --git a/SU2_CFD/src/solvers/CTurbSASolver.cpp b/SU2_CFD/src/solvers/CTurbSASolver.cpp index 407756c2b21..b58afe4c9b3 100644 --- a/SU2_CFD/src/solvers/CTurbSASolver.cpp +++ b/SU2_CFD/src/solvers/CTurbSASolver.cpp @@ -143,6 +143,10 @@ CTurbSASolver::CTurbSASolver(CGeometry *geometry, CConfig *config, unsigned shor fv1 = Ji_3/(Ji_3+cv1_3); muT_Inf = Density_Inf*fv1*nu_tilde_Inf; + if (config->GetSAParsedOptions().version != SA_OPTIONS::NEG) { + lowerlimit[0] = EPS; + } + /*--- Initialize the solution to the far-field state everywhere. ---*/ nodes = new CTurbSAVariable(nu_tilde_Inf, muT_Inf, nPoint, nDim, nVar, config); diff --git a/SU2_CFD/src/variables/CEulerVariable.cpp b/SU2_CFD/src/variables/CEulerVariable.cpp index 78671f780dc..f45c60060b8 100644 --- a/SU2_CFD/src/variables/CEulerVariable.cpp +++ b/SU2_CFD/src/variables/CEulerVariable.cpp @@ -105,6 +105,8 @@ CEulerVariable::CEulerVariable(su2double density, const su2double *velocity, su2 NIterNewtonsolver.resize(nPoint) = 0; FluidEntropy.resize(nPoint) = su2double(0.0); } + + OutlierMitigation.resize(nPoint) = 0; } bool CEulerVariable::SetPrimVar(unsigned long iPoint, CFluidModel *FluidModel) { diff --git a/TestCases/cont_adj_euler/naca0012/of_grad_directdiff.dat.ref b/TestCases/cont_adj_euler/naca0012/of_grad_directdiff.dat.ref index 54b93ba1a83..7b5deefbf4d 100644 --- a/TestCases/cont_adj_euler/naca0012/of_grad_directdiff.dat.ref +++ b/TestCases/cont_adj_euler/naca0012/of_grad_directdiff.dat.ref @@ -1,4 +1,4 @@ -VARIABLES="VARIABLE" , "DRAG" , "EFFICIENCY" , "FORCE_X" , "FORCE_Y" , "FORCE_Z" , "LIFT" , "MOMENT_X" , "MOMENT_Y" , "MOMENT_Z" , "SIDEFORCE" - 0 , 0.3283027921 , -23.00124324 , 0.3601048051 , -1.453884254 , 0.0 , -1.461393914 , 0.0 , 0.0 , 0.3837075086 , 0.0 - 1 , 0.5529850442 , -38.57543344 , 0.6062515142 , -2.435135388 , 0.0 , -2.447781199 , 0.0 , 0.0 , 0.1364160306 , 0.0 - 2 , 0.7825703473 , -46.16887385 , 0.8428457563 , -2.753846031 , 0.0 , -2.771577273 , 0.0 , 0.0 , -0.1507632792 , 0.0 +VARIABLES="VARIABLE" , "DRAG" , "EFFICIENCY" , "FORCE_X" , "FORCE_Y" , "FORCE_Z" , "LIFT" , "MOMENT_X" , "MOMENT_Y" , "MOMENT_Z" , "SIDEFORCE" + 0 , 0.3284091436 , -23.11888342 , 0.3603561695 , -1.460528943 , 0.0 , -1.468042505 , 0.0 , 0.0 , 0.3792955711 , 0.0 + 1 , 0.5523746333 , -38.65233166 , 0.6056912087 , -2.437438346 , 0.0 , -2.450071385 , 0.0 , 0.0 , 0.1342428158 , 0.0 + 2 , 0.7817003562 , -46.2043006 , 0.8419313277 , -2.751818981 , 0.0 , -2.769530757 , 0.0 , 0.0 , -0.1514885655 , 0.0 diff --git a/TestCases/hybrid_regression.py b/TestCases/hybrid_regression.py index 5f02581eeef..612afb6c50a 100644 --- a/TestCases/hybrid_regression.py +++ b/TestCases/hybrid_regression.py @@ -59,7 +59,7 @@ def main(): naca0012.cfg_dir = "euler/naca0012" naca0012.cfg_file = "inv_NACA0012_Roe.cfg" naca0012.test_iter = 20 - naca0012.test_vals = [-4.492584, -3.930725, 0.297160, 0.025487] + naca0012.test_vals = [-4.491302, -3.929519, 0.297210, 0.025485] test_list.append(naca0012) # Supersonic wedge @@ -67,7 +67,7 @@ def main(): wedge.cfg_dir = "euler/wedge" wedge.cfg_file = "inv_wedge_HLLC.cfg" wedge.test_iter = 20 - wedge.test_vals = [-3.689935, 2.034291, -0.249531, 0.043953] + wedge.test_vals = [-3.691631, 2.032783, -0.249531, 0.043953] test_list.append(wedge) # ONERA M6 Wing @@ -91,7 +91,7 @@ def main(): bluntbody.cfg_dir = "euler/bluntbody" bluntbody.cfg_file = "blunt.cfg" bluntbody.test_iter = 20 - bluntbody.test_vals = [0.475463, 6.835018, 0.000226, 1.784354] + bluntbody.test_vals = [0.666182, 7.055173, -0.000631, 3.917770] test_list.append(bluntbody) ########################## @@ -103,7 +103,7 @@ def main(): flatplate.cfg_dir = "navierstokes/flatplate" flatplate.cfg_file = "lam_flatplate.cfg" flatplate.test_iter = 100 - flatplate.test_vals = [-6.537258, -1.059050, 0.001198, 0.029303, 2.361500, -2.332200, 0.000000, 0.000000] + flatplate.test_vals = [-6.537258, -1.059049, 0.001198, 0.029303, 2.361500, -2.332200, 0.000000, 0.000000] test_list.append(flatplate) # Laminar cylinder (steady) @@ -136,7 +136,7 @@ def main(): poiseuille_profile.cfg_dir = "navierstokes/poiseuille" poiseuille_profile.cfg_file = "profile_poiseuille.cfg" poiseuille_profile.test_iter = 10 - poiseuille_profile.test_vals = [-12.005129, -7.581821, -0.000000, 2.089953] + poiseuille_profile.test_vals = [-12.005136, -7.582074, -0.000000, 2.089953] poiseuille_profile.test_vals_aarch64 = [-12.009012, -7.262530, -0.000000, 2.089953] test_list.append(poiseuille_profile) @@ -145,7 +145,7 @@ def main(): periodic2d.cfg_dir = "navierstokes/periodic2D" periodic2d.cfg_file = "config.cfg" periodic2d.test_iter = 1400 - periodic2d.test_vals = [-10.817611, -8.363544, -8.287461, -5.334104, -1.088411, -2945.200000] + periodic2d.test_vals = [-10.817616, -8.363550, -8.287466, -5.334109, -1.088411, -2945.200000] test_list.append(periodic2d) ########################## @@ -157,7 +157,7 @@ def main(): rae2822_sa.cfg_dir = "rans/rae2822" rae2822_sa.cfg_file = "turb_SA_RAE2822.cfg" rae2822_sa.test_iter = 20 - rae2822_sa.test_vals = [-2.193049, -5.312606, 0.388492, 0.077204, 0.000000] + rae2822_sa.test_vals = [-2.192911, -5.312614, 0.388496, 0.077215, 0.000000] test_list.append(rae2822_sa) # RAE2822 SST @@ -165,7 +165,7 @@ def main(): rae2822_sst.cfg_dir = "rans/rae2822" rae2822_sst.cfg_file = "turb_SST_RAE2822.cfg" rae2822_sst.test_iter = 20 - rae2822_sst.test_vals = [-1.028279, 5.869352, 0.357127, 0.074559, 0.000000] + rae2822_sst.test_vals = [-1.028279, 5.869352, 0.357142, 0.074560, 0.000000] test_list.append(rae2822_sst) # RAE2822 SST_SUST @@ -173,7 +173,7 @@ def main(): rae2822_sst_sust.cfg_dir = "rans/rae2822" rae2822_sst_sust.cfg_file = "turb_SST_SUST_RAE2822.cfg" rae2822_sst_sust.test_iter = 20 - rae2822_sst_sust.test_vals = [-2.479273, 5.869341, 0.357127, 0.074559] + rae2822_sst_sust.test_vals = [-2.479281, 5.869341, 0.357142, 0.074560] test_list.append(rae2822_sst_sust) # Flat plate @@ -189,7 +189,7 @@ def main(): turb_oneram6.cfg_dir = "rans/oneram6" turb_oneram6.cfg_file = "turb_ONERAM6.cfg" turb_oneram6.test_iter = 10 - turb_oneram6.test_vals = [-2.408655, -6.628338, 0.238580, 0.158951, 0.000000] + turb_oneram6.test_vals = [-2.418702, -6.631573, 0.238585, 0.159599, 0.000000] test_list.append(turb_oneram6) # NACA0012 (SA, FUN3D finest grid results: CL=1.0983, CD=0.01242) @@ -197,7 +197,7 @@ def main(): turb_naca0012_sa.cfg_dir = "rans/naca0012" turb_naca0012_sa.cfg_file = "turb_NACA0012_sa.cfg" turb_naca0012_sa.test_iter = 5 - turb_naca0012_sa.test_vals = [-12.038028, -16.332088, 1.080346, 0.018385, 20, -2.873477, 0, -14.250270, 0] + turb_naca0012_sa.test_vals = [-12.038045, -16.332088, 1.080346, 0.018385, 20.000000, -2.873565, 0.000000, -14.250270, 0.000000] turb_naca0012_sa.test_vals_aarch64 = [-12.038091, -16.332090, 1.080346, 0.018385, 20.000000, -2.873236, 0.000000, -14.250271, 0.000000] test_list.append(turb_naca0012_sa) @@ -206,7 +206,7 @@ def main(): turb_naca0012_sst.cfg_dir = "rans/naca0012" turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" turb_naca0012_sst.test_iter = 10 - turb_naca0012_sst.test_vals = [-12.093871, -15.251077, -5.906324, 1.070413, 0.015775, -2.855457, 0] + turb_naca0012_sst.test_vals = [-12.093924, -15.251077, -5.906324, 1.070413, 0.015775, -2.855555, 0.000000] turb_naca0012_sst.test_vals_aarch64 = [-12.075928, -15.246732, -5.861249, 1.070036, 0.015841, -2.835263, 0] test_list.append(turb_naca0012_sst) @@ -215,7 +215,7 @@ def main(): turb_naca0012_sst_sust.cfg_dir = "rans/naca0012" turb_naca0012_sst_sust.cfg_file = "turb_NACA0012_sst_sust.cfg" turb_naca0012_sst_sust.test_iter = 10 - turb_naca0012_sst_sust.test_vals = [-12.080828, -14.837176, -5.732906, 1.000893, 0.019109, -2.120116] + turb_naca0012_sst_sust.test_vals = [-12.080806, -14.837176, -5.732905, 1.000893, 0.019109, -2.119816] turb_naca0012_sst_sust.test_vals_aarch64 = [-12.073210, -14.836724, -5.732627, 1.000050, 0.019144, -2.629689] test_list.append(turb_naca0012_sst_sust) @@ -224,7 +224,7 @@ def main(): turb_naca0012_sst_fixedvalues.cfg_dir = "rans/naca0012" turb_naca0012_sst_fixedvalues.cfg_file = "turb_NACA0012_sst_fixedvalues.cfg" turb_naca0012_sst_fixedvalues.test_iter = 10 - turb_naca0012_sst_fixedvalues.test_vals = [-5.192389, -10.448080, 0.773965, 1.022534, 0.040529, -2.383403] + turb_naca0012_sst_fixedvalues.test_vals = [-5.192391, -10.448080, 0.773965, 1.022535, 0.040529, -2.383421] test_list.append(turb_naca0012_sst_fixedvalues) # NACA0012 (SST, explicit Euler for flow and turbulence equations) @@ -252,7 +252,7 @@ def main(): axi_rans_air_nozzle_restart.cfg_dir = "axisymmetric_rans/air_nozzle" axi_rans_air_nozzle_restart.cfg_file = "air_nozzle_restart.cfg" axi_rans_air_nozzle_restart.test_iter = 10 - axi_rans_air_nozzle_restart.test_vals = [-12.066228, -7.425901, -8.815839, -3.732622, 0] + axi_rans_air_nozzle_restart.test_vals = [-11.083069, -5.374686, -8.880083, -4.073484, 0.000000] axi_rans_air_nozzle_restart.test_vals_aarch64 = [-14.140441, -9.154674, -10.886121, -5.806594, 0.000000] test_list.append(axi_rans_air_nozzle_restart) @@ -278,7 +278,7 @@ def main(): turb_naca0012_1c.cfg_dir = "rans_uq/naca0012" turb_naca0012_1c.cfg_file = "turb_NACA0012_uq_1c.cfg" turb_naca0012_1c.test_iter = 10 - turb_naca0012_1c.test_vals = [-4.980125, 1.343354, 0.443788, -0.029257] + turb_naca0012_1c.test_vals = [-4.980126, 1.343353, 0.443722, -0.029245] turb_naca0012_1c.test_vals_aarch64 = [-4.976620, 1.345983, 0.433171, -0.033685] test_list.append(turb_naca0012_1c) @@ -287,7 +287,7 @@ def main(): turb_naca0012_2c.cfg_dir = "rans_uq/naca0012" turb_naca0012_2c.cfg_file = "turb_NACA0012_uq_2c.cfg" turb_naca0012_2c.test_iter = 10 - turb_naca0012_2c.test_vals = [-5.482849, 1.260868, 0.404588, -0.040284] + turb_naca0012_2c.test_vals = [-5.482849, 1.260866, 0.404517, -0.040307] turb_naca0012_2c.test_vals_aarch64 = [-5.485484, 1.263406, 0.411442, -0.040859] test_list.append(turb_naca0012_2c) @@ -296,7 +296,7 @@ def main(): turb_naca0012_3c.cfg_dir = "rans_uq/naca0012" turb_naca0012_3c.cfg_file = "turb_NACA0012_uq_3c.cfg" turb_naca0012_3c.test_iter = 10 - turb_naca0012_3c.test_vals = [-5.583738, 1.228730, 0.381824, -0.046280] + turb_naca0012_3c.test_vals = [-5.583738, 1.228727, 0.381732, -0.046307] turb_naca0012_3c.test_vals_aarch64 = [-5.583737, 1.232005, 0.390258, -0.046305] test_list.append(turb_naca0012_3c) @@ -305,7 +305,7 @@ def main(): turb_naca0012_p1c1.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c1.cfg_file = "turb_NACA0012_uq_p1c1.cfg" turb_naca0012_p1c1.test_iter = 10 - turb_naca0012_p1c1.test_vals = [-5.134031, 1.283495, 0.548237, 0.010736] + turb_naca0012_p1c1.test_vals = [-5.134040, 1.283488, 0.548247, 0.010741] turb_naca0012_p1c1.test_vals_aarch64 = [-5.114189, 1.285037, 0.406851, -0.043003] test_list.append(turb_naca0012_p1c1) @@ -314,7 +314,7 @@ def main(): turb_naca0012_p1c2.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c2.cfg_file = "turb_NACA0012_uq_p1c2.cfg" turb_naca0012_p1c2.test_iter = 10 - turb_naca0012_p1c2.test_vals = [-5.553917, 1.234038, 0.424217, -0.033478] + turb_naca0012_p1c2.test_vals = [-5.553917, 1.234037, 0.424160, -0.033497] turb_naca0012_p1c2.test_vals_aarch64 = [-5.548245, 1.236384, 0.381821, -0.050337] test_list.append(turb_naca0012_p1c2) @@ -335,7 +335,7 @@ def main(): hb_rans_preconditioning.cfg_dir = "harmonic_balance/hb_rans_preconditioning" hb_rans_preconditioning.cfg_file = "davis.cfg" hb_rans_preconditioning.test_iter = 25 - hb_rans_preconditioning.test_vals = [-1.902098, 0.484244, 0.601482, 3.609005, -5.943887] + hb_rans_preconditioning.test_vals = [-1.905219, 0.481910, 0.598991, 3.605350, -5.945851] test_list.append(hb_rans_preconditioning) ############################# @@ -383,7 +383,7 @@ def main(): inc_poly_cylinder.cfg_dir = "incomp_navierstokes/cylinder" inc_poly_cylinder.cfg_file = "poly_cylinder.cfg" inc_poly_cylinder.test_iter = 20 - inc_poly_cylinder.test_vals = [-8.241953, -2.424330, 0.027284, 1.909617, -173.010000] + inc_poly_cylinder.test_vals = [-8.241956, -2.424341, 0.027285, 1.909614, -173.010000] inc_poly_cylinder.test_vals_aarch64 = [-8.260165, -2.445453, 0.027209, 1.915447, -171.620000] test_list.append(inc_poly_cylinder) @@ -392,7 +392,7 @@ def main(): inc_lam_bend.cfg_dir = "incomp_navierstokes/bend" inc_lam_bend.cfg_file = "lam_bend.cfg" inc_lam_bend.test_iter = 10 - inc_lam_bend.test_vals = [-3.560185, -3.051988, -0.013972, 1.102842] + inc_lam_bend.test_vals = [-3.560185, -3.051989, -0.013972, 1.102841] test_list.append(inc_lam_bend) ############################ @@ -404,7 +404,7 @@ def main(): inc_turb_naca0012.cfg_dir = "incomp_rans/naca0012" inc_turb_naca0012.cfg_file = "naca0012.cfg" inc_turb_naca0012.test_iter = 20 - inc_turb_naca0012.test_vals = [-4.758063, -10.974497, -0.000004, -0.028654, 4, -5.404919, 2, -5.032662] + inc_turb_naca0012.test_vals = [-4.758063, -10.974497, -0.000004, -0.028654, 4.000000, -5.404348, 2.000000, -5.032687] test_list.append(inc_turb_naca0012) # NACA0012, SST_SUST @@ -420,7 +420,7 @@ def main(): inc_weakly_coupled.cfg_dir = "disc_adj_heat" inc_weakly_coupled.cfg_file = "primal.cfg" inc_weakly_coupled.test_iter = 10 - inc_weakly_coupled.test_vals = [-18.121422, -16.304159, -16.482315, -15.007167, -17.858118, -14.024885, 5.609100] + inc_weakly_coupled.test_vals = [-18.121444, -16.304190, -16.482326, -15.007166, -17.858047, -14.024909, 5.609100] test_list.append(inc_weakly_coupled) ###################################### @@ -481,7 +481,7 @@ def main(): gust_mesh_defo.cfg_dir = "gust" gust_mesh_defo.cfg_file = "gust_with_mesh_deformation.cfg" gust_mesh_defo.test_iter = 6 - gust_mesh_defo.test_vals = [-1.844761, 0.001077, -0.000263] + gust_mesh_defo.test_vals = [-1.844761, 0.001173, -0.000287] gust_mesh_defo.unsteady = True gust_mesh_defo.enabled_with_tsan = False test_list.append(gust_mesh_defo) @@ -501,7 +501,7 @@ def main(): ddes_flatplate.cfg_dir = "ddes/flatplate" ddes_flatplate.cfg_file = "ddes_flatplate.cfg" ddes_flatplate.test_iter = 10 - ddes_flatplate.test_vals = [-2.714713, -5.763293, -0.214960, 0.023758, 0.000000] + ddes_flatplate.test_vals = [-2.714713, -5.763298, -0.214960, 0.023758, 0.000000] ddes_flatplate.unsteady = True test_list.append(ddes_flatplate) @@ -510,7 +510,7 @@ def main(): unst_inc_turb_naca0015_sa.cfg_dir = "unsteady/pitching_naca0015_rans_inc" unst_inc_turb_naca0015_sa.cfg_file = "config_incomp_turb_sa.cfg" unst_inc_turb_naca0015_sa.test_iter = 1 - unst_inc_turb_naca0015_sa.test_vals = [-3.008629, -6.889003, 1.435193, 0.433537] + unst_inc_turb_naca0015_sa.test_vals = [-3.008630, -6.889005, 1.435192, 0.433540] unst_inc_turb_naca0015_sa.unsteady = True test_list.append(unst_inc_turb_naca0015_sa) @@ -519,7 +519,7 @@ def main(): unst_deforming_naca0012.cfg_dir = "disc_adj_euler/naca0012_pitching_def" unst_deforming_naca0012.cfg_file = "inv_NACA0012_pitching_deform.cfg" unst_deforming_naca0012.test_iter = 5 - unst_deforming_naca0012.test_vals = [-3.665284, -3.794189, -3.716987, -3.148573] + unst_deforming_naca0012.test_vals = [-3.665284, -3.794188, -3.716988, -3.148573] unst_deforming_naca0012.unsteady = True unst_deforming_naca0012.enabled_with_tsan = False test_list.append(unst_deforming_naca0012) @@ -533,7 +533,7 @@ def main(): edge_VW.cfg_dir = "nicf/edge" edge_VW.cfg_file = "edge_VW.cfg" edge_VW.test_iter = 30 - edge_VW.test_vals = [-7.053408, -0.851910, -0.000009, 0.000000] + edge_VW.test_vals = [-7.124331, -0.922828, -0.000009, 0.000000] test_list.append(edge_VW) # Rarefaction shock wave edge_PPR @@ -541,7 +541,7 @@ def main(): edge_PPR.cfg_dir = "nicf/edge" edge_PPR.cfg_file = "edge_PPR.cfg" edge_PPR.test_iter = 20 - edge_PPR.test_vals = [-12.455039, -6.258168, -0.000034, 0.000000] + edge_PPR.test_vals = [-12.029862, -5.864551, -0.000034, 0.000000] edge_PPR.test_vals_aarch64 = [ -7.139211, -0.980821, -0.000034, 0.000000] test_list.append(edge_PPR) @@ -554,7 +554,7 @@ def main(): Jones_tc_restart.cfg_dir = "turbomachinery/APU_turbocharger" Jones_tc_restart.cfg_file = "Jones_restart.cfg" Jones_tc_restart.test_iter = 5 - Jones_tc_restart.test_vals = [-7.645873, -5.849737, -15.337009, -9.825759, -13.216109, -7.752293, 73286.000000, 73286.000000, 0.020055, 82.286000] + Jones_tc_restart.test_vals = [-7.645864, -5.849737, -15.337009, -9.825759, -13.216109, -7.752293, 73286.000000, 73286.000000, 0.020055, 82.286000] test_list.append(Jones_tc_restart) # 2D axial stage @@ -562,7 +562,7 @@ def main(): axial_stage2D.cfg_dir = "turbomachinery/axial_stage_2D" axial_stage2D.cfg_file = "Axial_stage2D.cfg" axial_stage2D.test_iter = 20 - axial_stage2D.test_vals = [1.167176, 1.598838, -2.928275, 2.573906, -2.526637, 3.017140, 106370.000000, 106370.000000, 5.726800, 64.383000] + axial_stage2D.test_vals = [1.167181, 1.598494, -2.928576, 2.573645, -2.527390, 3.016171, 106370.000000, 106370.000000, 5.726800, 64.383000] test_list.append(axial_stage2D) # 2D transonic stator restart @@ -570,7 +570,7 @@ def main(): transonic_stator_restart.cfg_dir = "turbomachinery/transonic_stator_2D" transonic_stator_restart.cfg_file = "transonic_stator_restart.cfg" transonic_stator_restart.test_iter = 20 - transonic_stator_restart.test_vals = [-4.367184, -2.487640, -2.079069, 1.728134, -1.464968, 3.224889, -471620.000000, 94.839000, -0.051073] + transonic_stator_restart.test_vals = [-4.367185, -2.487642, -2.079071, 1.728133, -1.464968, 3.224887, -471620.000000, 94.839000, -0.051074] transonic_stator_restart.test_vals_aarch64 = [-4.442510, -2.561369, -2.165778, 1.652750, -1.355494, 3.172712, -471620.000000, 94.843000, -0.043825] test_list.append(transonic_stator_restart) @@ -592,7 +592,7 @@ def main(): uniform_flow.cfg_dir = "sliding_interface/uniform_flow" uniform_flow.cfg_file = "uniform_NN.cfg" uniform_flow.test_iter = 5 - uniform_flow.test_vals = [5.000000, 0.000000, -0.195002, -10.624451] + uniform_flow.test_vals = [5.000000, 0.000000, -0.195002, -10.624440] uniform_flow.unsteady = True uniform_flow.multizone = True test_list.append(uniform_flow) @@ -602,7 +602,7 @@ def main(): channel_2D.cfg_dir = "sliding_interface/channel_2D" channel_2D.cfg_file = "channel_2D_WA.cfg" channel_2D.test_iter = 2 - channel_2D.test_vals = [2.000000, 0.000000, 0.464906, 0.348048, 0.397471] + channel_2D.test_vals = [2.000000, 0.000000, 0.466188, 0.350089, 0.398977] channel_2D.unsteady = True channel_2D.multizone = True test_list.append(channel_2D) @@ -612,7 +612,7 @@ def main(): channel_3D.cfg_dir = "sliding_interface/channel_3D" channel_3D.cfg_file = "channel_3D_WA.cfg" channel_3D.test_iter = 2 - channel_3D.test_vals = [2.000000, 0.000000, 0.629091, 0.524932, 0.422527] + channel_3D.test_vals = [2.000000, 0.000000, 0.632254, 0.534189, 0.431979] channel_3D.test_vals_aarch64 = [2.000000, 0.000000, 0.629112, 0.524948, 0.422396] channel_3D.unsteady = True channel_3D.multizone = True @@ -624,7 +624,7 @@ def main(): pipe.cfg_dir = "sliding_interface/pipe" pipe.cfg_file = "pipe_NN.cfg" pipe.test_iter = 2 - pipe.test_vals = [0.080826, 0.547321, 0.655098, 0.968229, 1.049129] + pipe.test_vals = [0.092415, 0.568970, 0.692864, 0.989451, 1.048246] pipe.unsteady = True pipe.multizone = True test_list.append(pipe) @@ -634,7 +634,7 @@ def main(): rotating_cylinders.cfg_dir = "sliding_interface/rotating_cylinders" rotating_cylinders.cfg_file = "rot_cylinders_WA.cfg" rotating_cylinders.test_iter = 3 - rotating_cylinders.test_vals = [3.000000, 0.000000, 0.717065, 1.119817, 1.160326] + rotating_cylinders.test_vals = [3.000000, 0.000000, 0.664817, 1.125803, 1.117608] rotating_cylinders.unsteady = True rotating_cylinders.multizone = True test_list.append(rotating_cylinders) @@ -644,7 +644,7 @@ def main(): supersonic_vortex_shedding.cfg_dir = "sliding_interface/supersonic_vortex_shedding" supersonic_vortex_shedding.cfg_file = "sup_vor_shed_WA.cfg" supersonic_vortex_shedding.test_iter = 5 - supersonic_vortex_shedding.test_vals = [5.000000, 0.000000, 1.207118, 1.065254] + supersonic_vortex_shedding.test_vals = [5.000000, 0.000000, 0.899640, 1.076218] supersonic_vortex_shedding.unsteady = True supersonic_vortex_shedding.multizone = True test_list.append(supersonic_vortex_shedding) @@ -663,7 +663,7 @@ def main(): slinc_steady.cfg_dir = "sliding_interface/incompressible_steady" slinc_steady.cfg_file = "config.cfg" slinc_steady.test_iter = 19 - slinc_steady.test_vals = [19.000000, -1.154874, -1.378120] + slinc_steady.test_vals = [19.000000, -1.154874, -1.378127] slinc_steady.test_vals_aarch64 = [19.000000, -1.154874, -1.378120] slinc_steady.multizone = True test_list.append(slinc_steady) @@ -695,7 +695,7 @@ def main(): fsi2d.cfg_dir = "fea_fsi/WallChannel_2d" fsi2d.cfg_file = "configFSI.cfg" fsi2d.test_iter = 4 - fsi2d.test_vals = [4, 0, -3.726029, -4.277531] + fsi2d.test_vals = [4.000000, 0.000000, -3.726029, -4.277530] fsi2d.multizone= True fsi2d.unsteady = True fsi2d.enabled_with_tsan = False @@ -716,7 +716,7 @@ def main(): fsi_cht_restart.cfg_dir = "fea_fsi/stat_fsi" fsi_cht_restart.cfg_file = "config_restart.cfg" fsi_cht_restart.test_iter = 0 - fsi_cht_restart.test_vals = [5, 0.006352, -1.960362, -9.327033, -9.599649, -9.318478, 608.38, -0.012974, 0, 20] + fsi_cht_restart.test_vals = [5.000000, 0.006352, -1.960362, -9.327033, -9.580521, -9.317956, 608.380000, -0.012974, 0.000000, 20.000000] fsi_cht_restart.multizone = True test_list.append(fsi_cht_restart) @@ -729,7 +729,7 @@ def main(): mms_fvm_ns.cfg_dir = "mms/fvm_navierstokes" mms_fvm_ns.cfg_file = "lam_mms_roe.cfg" mms_fvm_ns.test_iter = 20 - mms_fvm_ns.test_vals = [-2.808514, 2.152654, 0.000000, 0.000000] + mms_fvm_ns.test_vals = [-2.808514, 2.152655, 0.000000, 0.000000] test_list.append(mms_fvm_ns) # FVM, incompressible, euler @@ -737,7 +737,7 @@ def main(): mms_fvm_inc_euler.cfg_dir = "mms/fvm_incomp_euler" mms_fvm_inc_euler.cfg_file = "inv_mms_jst.cfg" mms_fvm_inc_euler.test_iter = 20 - mms_fvm_inc_euler.test_vals = [-9.128033, -9.441406, 0.000000, 0.000000] + mms_fvm_inc_euler.test_vals = [-9.128035, -9.441406, 0.000000, 0.000000] mms_fvm_inc_euler.test_vals_aarch64 = [-9.128034, -9.441406, 0.000000, 0.000000] test_list.append(mms_fvm_inc_euler) @@ -746,7 +746,7 @@ def main(): mms_fvm_inc_ns.cfg_dir = "mms/fvm_incomp_navierstokes" mms_fvm_inc_ns.cfg_file = "lam_mms_fds.cfg" mms_fvm_inc_ns.test_iter = 20 - mms_fvm_inc_ns.test_vals = [-7.414944, -7.631546, 0.000000, 0.000000] + mms_fvm_inc_ns.test_vals = [-7.414945, -7.631547, 0.000000, 0.000000] test_list.append(mms_fvm_inc_ns) ########################## diff --git a/TestCases/hybrid_regression_AD.py b/TestCases/hybrid_regression_AD.py index df801edb10f..b3c9e3ad7fd 100644 --- a/TestCases/hybrid_regression_AD.py +++ b/TestCases/hybrid_regression_AD.py @@ -50,7 +50,7 @@ def main(): discadj_naca0012.cfg_dir = "cont_adj_euler/naca0012" discadj_naca0012.cfg_file = "inv_NACA0012_discadj.cfg" discadj_naca0012.test_iter = 100 - discadj_naca0012.test_vals = [-3.562611, -8.932638, -0.000000, 0.005608] + discadj_naca0012.test_vals = [-3.562611, -8.932639, -0.000000, 0.005608] test_list.append(discadj_naca0012) # Inviscid Cylinder 3D (multiple markers) @@ -58,7 +58,7 @@ def main(): discadj_cylinder3D.cfg_dir = "disc_adj_euler/cylinder3D" discadj_cylinder3D.cfg_file = "inv_cylinder3D.cfg" discadj_cylinder3D.test_iter = 5 - discadj_cylinder3D.test_vals = [-3.689810, -3.883743, -0.000000, 0.000000] + discadj_cylinder3D.test_vals = [-3.689811, -3.883747, -0.000000, 0.000000] test_list.append(discadj_cylinder3D) # Arina nozzle 2D @@ -78,7 +78,7 @@ def main(): discadj_rans_naca0012_sa.cfg_dir = "disc_adj_rans/naca0012" discadj_rans_naca0012_sa.cfg_file = "turb_NACA0012_sa.cfg" discadj_rans_naca0012_sa.test_iter = 10 - discadj_rans_naca0012_sa.test_vals = [-2.987151, 0.533082, 0.000004, -0.000000, 5.000000, -2.939636, 5.000000, -7.913743] + discadj_rans_naca0012_sa.test_vals = [-2.987150, 0.533080, 0.000004, -0.000000, 5.000000, -2.939634, 5.000000, -7.913741] test_list.append(discadj_rans_naca0012_sa) # Adjoint turbulent NACA0012 SST @@ -111,7 +111,7 @@ def main(): discadj_incomp_cylinder.cfg_dir = "disc_adj_incomp_navierstokes/cylinder" discadj_incomp_cylinder.cfg_file = "heated_cylinder.cfg" discadj_incomp_cylinder.test_iter = 20 - discadj_incomp_cylinder.test_vals = [20.000000, -1.671920, -6.254841, 0.000000] + discadj_incomp_cylinder.test_vals = [20.000000, -1.671928, -6.254786, 0.000000] discadj_incomp_cylinder.test_vals_aarch64 = [20.000000, -1.671920, -6.254841, 0.000000] discadj_incomp_cylinder.tol_aarch64 = 2e-1 test_list.append(discadj_incomp_cylinder) @@ -125,7 +125,7 @@ def main(): discadj_incomp_turb_NACA0012_sa.cfg_dir = "disc_adj_incomp_rans/naca0012" discadj_incomp_turb_NACA0012_sa.cfg_file = "turb_naca0012_sa.cfg" discadj_incomp_turb_NACA0012_sa.test_iter = 10 - discadj_incomp_turb_NACA0012_sa.test_vals = [10.000000, -3.845995, -1.023534, 0.000000] + discadj_incomp_turb_NACA0012_sa.test_vals = [10.000000, -3.845989, -1.023527, 0.000000] test_list.append(discadj_incomp_turb_NACA0012_sa) # Adjoint Incompressible Turbulent NACA 0012 SST @@ -145,7 +145,7 @@ def main(): discadj_cylinder.cfg_dir = "disc_adj_rans/cylinder" discadj_cylinder.cfg_file = "cylinder.cfg" discadj_cylinder.test_iter = 9 - discadj_cylinder.test_vals = [1.639345, -2.834279, -0.009538, 0.000020] + discadj_cylinder.test_vals = [1.639344, -2.834279, -0.009538, 0.000020] discadj_cylinder.unsteady = True discadj_cylinder.enabled_with_tsan = False test_list.append(discadj_cylinder) @@ -159,7 +159,7 @@ def main(): discadj_cylinder.cfg_dir = "disc_adj_rans/cylinder" discadj_cylinder.cfg_file = "cylinder_Windowing_AD.cfg" discadj_cylinder.test_iter = 9 - discadj_cylinder.test_vals = [2.183376] + discadj_cylinder.test_vals = [2.183375] discadj_cylinder.unsteady = True discadj_cylinder.enabled_with_tsan = False test_list.append(discadj_cylinder) @@ -228,7 +228,7 @@ def main(): pywrapper_FEA_AD_FlowLoad.cfg_dir = "py_wrapper/disc_adj_fea/flow_load_sens" pywrapper_FEA_AD_FlowLoad.cfg_file = "configAD_fem.cfg" pywrapper_FEA_AD_FlowLoad.test_iter = 100 - pywrapper_FEA_AD_FlowLoad.test_vals = [-0.132861, -0.558149, -0.000364, -0.003101] + pywrapper_FEA_AD_FlowLoad.test_vals = [-0.132010, -0.554418, -0.000364, -0.003101] pywrapper_FEA_AD_FlowLoad.test_vals_aarch64 = [-0.131745, -0.553214, -0.000364, -0.003101] pywrapper_FEA_AD_FlowLoad.command = TestCase.Command(exec = "python", param = "run_adjoint.py --parallel -f") pywrapper_FEA_AD_FlowLoad.timeout = 1600 @@ -243,7 +243,7 @@ def main(): pywrapper_CFD_AD_MeshDisp.cfg_dir = "py_wrapper/disc_adj_flow/mesh_disp_sens" pywrapper_CFD_AD_MeshDisp.cfg_file = "configAD_flow.cfg" pywrapper_CFD_AD_MeshDisp.test_iter = 1000 - pywrapper_CFD_AD_MeshDisp.test_vals = [30.000000, -2.496268, 1.441667, 0.000000] + pywrapper_CFD_AD_MeshDisp.test_vals = [30.000000, -2.496241, 1.441657, 0.000000] pywrapper_CFD_AD_MeshDisp.test_vals_aarch64 = [30.000000, -2.499079, 1.440068, 0.000000] pywrapper_CFD_AD_MeshDisp.command = TestCase.Command(exec = "python", param = "run_adjoint.py --parallel -f") pywrapper_CFD_AD_MeshDisp.timeout = 1600 diff --git a/TestCases/multiple_ffd/naca0012/of_grad_cd.dat.ref b/TestCases/multiple_ffd/naca0012/of_grad_cd.dat.ref index 45622cb6bd5..7308d3ce095 100644 --- a/TestCases/multiple_ffd/naca0012/of_grad_cd.dat.ref +++ b/TestCases/multiple_ffd/naca0012/of_grad_cd.dat.ref @@ -1,3 +1,3 @@ -VARIABLES="VARIABLE" , "GRADIENT" , "FINDIFF_STEP" - 0 , 0.0525397 , 0.001 - 1 , -0.099502 , 0.001 +VARIABLES="VARIABLE" , "GRADIENT" , "FINDIFF_STEP" + 0 , 0.0527036 , 0.001 + 1 , -0.0997374 , 0.001 diff --git a/TestCases/multiple_ffd/naca0012/of_grad_directdiff.dat.ref b/TestCases/multiple_ffd/naca0012/of_grad_directdiff.dat.ref index 174226e7849..1bf779ee0a1 100644 --- a/TestCases/multiple_ffd/naca0012/of_grad_directdiff.dat.ref +++ b/TestCases/multiple_ffd/naca0012/of_grad_directdiff.dat.ref @@ -1,3 +1,3 @@ -VARIABLES="VARIABLE" , "DRAG" , "EFFICIENCY" , "FORCE_X" , "FORCE_Y" , "FORCE_Z" , "LIFT" , "MOMENT_X" , "MOMENT_Y" , "MOMENT_Z" , "SIDEFORCE" - 0 , 0.05592643623 , -0.4243829941 , 0.05586792439 , 0.003291646374 , 0.0 , 0.002072110703 , 0.0 , 0.0 , 0.02964415677 , 0.0 - 1 , -0.1052916742 , 0.9115770745 , -0.1054405784 , 0.005675584425 , 0.0 , 0.007974407886 , 0.0 , 0.0 , 0.06727760621 , 0.0 +VARIABLES="VARIABLE" , "DRAG" , "EFFICIENCY" , "FORCE_X" , "FORCE_Y" , "FORCE_Z" , "LIFT" , "MOMENT_X" , "MOMENT_Y" , "MOMENT_Z" , "SIDEFORCE" + 0 , 0.05618256097 , -0.4264366682 , 0.05612587304 , 0.00321085185 , 0.0 , 0.001985708286 , 0.0 , 0.0 , 0.02965021664 , 0.0 + 1 , -0.1059117364 , 0.8978068975 , -0.1060212267 , 0.003862504658 , 0.0 , 0.006174426359 , 0.0 , 0.0 , 0.0675190381 , 0.0 diff --git a/TestCases/parallel_regression.py b/TestCases/parallel_regression.py index a6e77734224..faeca39742f 100755 --- a/TestCases/parallel_regression.py +++ b/TestCases/parallel_regression.py @@ -236,7 +236,7 @@ def main(): naca0012.cfg_dir = "euler/naca0012" naca0012.cfg_file = "inv_NACA0012_Roe.cfg" naca0012.test_iter = 20 - naca0012.test_vals = [-4.442633, -3.913184, 0.295834, 0.024405] + naca0012.test_vals = [-4.441831, -3.912398, 0.295812, 0.024400] test_list.append(naca0012) # Supersonic wedge @@ -244,7 +244,7 @@ def main(): wedge.cfg_dir = "euler/wedge" wedge.cfg_file = "inv_wedge_HLLC.cfg" wedge.test_iter = 20 - wedge.test_vals = [-3.681969, 2.042532, -0.249531, 0.043953] + wedge.test_vals = [-3.681700, 2.042776, -0.249531, 0.043953] test_list.append(wedge) # ONERA M6 Wing @@ -270,7 +270,7 @@ def main(): polar_naca0012.cfg_file = "inv_NACA0012.cfg" polar_naca0012.polar = True polar_naca0012.test_iter = 10 - polar_naca0012.test_vals = [-1.285568, 4.161371, 0.003627, 0.083095] + polar_naca0012.test_vals = [-1.284049, 4.163288, 0.003791, 0.082785] polar_naca0012.test_vals_aarch64 = [-1.083394, 4.386134, 0.001588, 0.033513] polar_naca0012.command = TestCase.Command(exec = "compute_polar.py", param = "-i 11") # flaky test on arm64 @@ -282,7 +282,7 @@ def main(): bluntbody.cfg_dir = "euler/bluntbody" bluntbody.cfg_file = "blunt.cfg" bluntbody.test_iter = 20 - bluntbody.test_vals = [0.475144, 6.834602, -0.000007, 1.783980] + bluntbody.test_vals = [0.666133, 7.054751, -0.000051, 3.912894] test_list.append(bluntbody) # Equivalent area NACA64-206 @@ -290,7 +290,7 @@ def main(): ea_naca64206.cfg_dir = "optimization_euler/equivalentarea_naca64206" ea_naca64206.cfg_file = "NACA64206.cfg" ea_naca64206.test_iter = 10 - ea_naca64206.test_vals = [-1.125893, -0.474056, -0.002414, 67775.000000] + ea_naca64206.test_vals = [-1.125734, -0.473873, -0.002416, 67775.000000] test_list.append(ea_naca64206) # SUPERSONIC FLOW PAST A RAMP IN A CHANNEL @@ -298,7 +298,7 @@ def main(): ramp.cfg_dir = "euler/ramp" ramp.cfg_file = "inv_ramp.cfg" ramp.test_iter = 10 - ramp.test_vals = [-13.646937, -8.006398, -0.076277, 0.054839] + ramp.test_vals = [-13.647281, -8.010114, -0.076277, 0.054839] ramp.test_vals_aarch64 = [-13.648406, -8.014579, -0.076277, 0.054839] test_list.append(ramp) @@ -306,7 +306,7 @@ def main(): ramp_msw.cfg_dir = "euler/ramp" ramp_msw.cfg_file = "inv_ramp_msw.cfg" ramp_msw.test_iter = 100 - ramp_msw.test_vals = [-7.35, -1.6, -0.077520, 0.054427] + ramp_msw.test_vals = [-6.996547, -1.226863, -0.077507, 0.054419] ramp_msw.tol = [0.2, 0.2, 0.00001, 0.00001] test_list.append(ramp_msw) @@ -378,7 +378,7 @@ def main(): poiseuille_profile.cfg_dir = "navierstokes/poiseuille" poiseuille_profile.cfg_file = "profile_poiseuille.cfg" poiseuille_profile.test_iter = 10 - poiseuille_profile.test_vals = [-12.004278, -7.578183, -0.000000, 2.089953] + poiseuille_profile.test_vals = [-12.004290, -7.578539, -0.000000, 2.089953] poiseuille_profile.test_vals_aarch64 = [-12.007498, -7.226926, -0.000000, 2.089953] poiseuille_profile.tol = [0.001, 0.001, 1e-5, 1e-5, 1e-5] test_list.append(poiseuille_profile) @@ -392,7 +392,7 @@ def main(): rae2822_sa.cfg_dir = "rans/rae2822" rae2822_sa.cfg_file = "turb_SA_RAE2822.cfg" rae2822_sa.test_iter = 20 - rae2822_sa.test_vals = [-2.190821, -5.317349, 0.391922, 0.075544, 0.000000] + rae2822_sa.test_vals = [-2.190718, -5.317366, 0.391927, 0.075561, 0.000000] test_list.append(rae2822_sa) # RAE2822 SST @@ -400,7 +400,7 @@ def main(): rae2822_sst.cfg_dir = "rans/rae2822" rae2822_sst.cfg_file = "turb_SST_RAE2822.cfg" rae2822_sst.test_iter = 20 - rae2822_sst.test_vals = [-1.035574, 5.863601, 0.358893, 0.074724, 0.000000] + rae2822_sst.test_vals = [-1.035575, 5.863601, 0.358898, 0.074725, 0.000000] test_list.append(rae2822_sst) # RAE2822 SST_SUST @@ -408,7 +408,7 @@ def main(): rae2822_sst_sust.cfg_dir = "rans/rae2822" rae2822_sst_sust.cfg_file = "turb_SST_SUST_RAE2822.cfg" rae2822_sst_sust.test_iter = 20 - rae2822_sst_sust.test_vals = [-2.492136, 5.863586, 0.358893, 0.074724] + rae2822_sst_sust.test_vals = [-2.492141, 5.863586, 0.358898, 0.074725] test_list.append(rae2822_sst_sust) # Flat plate @@ -464,7 +464,7 @@ def main(): turb_oneram6.cfg_dir = "rans/oneram6" turb_oneram6.cfg_file = "turb_ONERAM6.cfg" turb_oneram6.test_iter = 10 - turb_oneram6.test_vals = [-2.408664, -6.628340, 0.238581, 0.158952, 0.000000] + turb_oneram6.test_vals = [-2.418711, -6.631576, 0.238587, 0.159599, 0.000000] turb_oneram6.timeout = 3200 test_list.append(turb_oneram6) @@ -473,7 +473,7 @@ def main(): turb_oneram6_vc.cfg_dir = "rans/oneram6" turb_oneram6_vc.cfg_file = "turb_ONERAM6_vc.cfg" turb_oneram6_vc.test_iter = 15 - turb_oneram6_vc.test_vals = [-2.282278, -6.568458, 0.234350, 0.142989, 0.000000] + turb_oneram6_vc.test_vals = [-2.294311, -6.572307, 0.234416, 0.144830, 0.000000] turb_oneram6_vc.timeout = 3200 test_list.append(turb_oneram6_vc) @@ -482,7 +482,7 @@ def main(): turb_oneram6_nk.cfg_dir = "rans/oneram6" turb_oneram6_nk.cfg_file = "turb_ONERAM6_nk.cfg" turb_oneram6_nk.test_iter = 20 - turb_oneram6_nk.test_vals = [-4.850719, -4.452661, -11.427627, 0.221809, 0.048349, 2, -0.881645, 10] + turb_oneram6_nk.test_vals = [-4.848809, -4.451213, -11.426556, 0.221554, 0.049197, 2.000000, -0.880072, 10.000000] turb_oneram6_nk.timeout = 600 turb_oneram6_nk.tol = 0.0001 test_list.append(turb_oneram6_nk) @@ -492,7 +492,7 @@ def main(): turb_naca0012_sa.cfg_dir = "rans/naca0012" turb_naca0012_sa.cfg_file = "turb_NACA0012_sa.cfg" turb_naca0012_sa.test_iter = 5 - turb_naca0012_sa.test_vals = [-12.037537, -16.376951, 1.080346, 0.018385, 20, -1.564109, 20, -4.180956, 0] + turb_naca0012_sa.test_vals = [-12.037515, -16.376951, 1.080346, 0.018385, 20.000000, -1.564135, 20.000000, -4.180955, 0.000000] turb_naca0012_sa.test_vals_aarch64 = [-12.037489, -16.376949, 1.080346, 0.018385, 20.000000, -1.564143, 20.000000, -4.180945, 0.000000] turb_naca0012_sa.timeout = 3200 test_list.append(turb_naca0012_sa) @@ -502,7 +502,7 @@ def main(): turb_naca0012_sst.cfg_dir = "rans/naca0012" turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" turb_naca0012_sst.test_iter = 10 - turb_naca0012_sst.test_vals = [-12.094646, -15.251093, -5.906365, 1.070413, 0.015775, -2.376189, 0] + turb_naca0012_sst.test_vals = [-12.094739, -15.251094, -5.906365, 1.070413, 0.015775, -2.376137, 0.000000] turb_naca0012_sst.test_vals_aarch64 = [-12.075620, -15.246688, -5.861276, 1.070036, 0.015841, -1.991001, 0.000000] turb_naca0012_sst.timeout = 3200 test_list.append(turb_naca0012_sst) @@ -512,7 +512,7 @@ def main(): turb_naca0012_sst_sust.cfg_dir = "rans/naca0012" turb_naca0012_sst_sust.cfg_file = "turb_NACA0012_sst_sust.cfg" turb_naca0012_sst_sust.test_iter = 10 - turb_naca0012_sst_sust.test_vals = [-12.082080, -14.837177, -5.733436, 1.000893, 0.019109, -2.241006] + turb_naca0012_sst_sust.test_vals = [-12.082081, -14.837177, -5.733435, 1.000893, 0.019109, -2.240976] turb_naca0012_sst_sust.test_vals_aarch64 = [-12.073964, -14.836726, -5.732390, 1.000050, 0.019144, -2.229074] turb_naca0012_sst_sust.timeout = 3200 test_list.append(turb_naca0012_sst_sust) @@ -540,7 +540,7 @@ def main(): turb_naca0012_sst_fixedvalues.cfg_dir = "rans/naca0012" turb_naca0012_sst_fixedvalues.cfg_file = "turb_NACA0012_sst_fixedvalues.cfg" turb_naca0012_sst_fixedvalues.test_iter = 10 - turb_naca0012_sst_fixedvalues.test_vals = [-10.440018, 0.774146, 1.022363, 0.040546, -3.736444] + turb_naca0012_sst_fixedvalues.test_vals = [-10.440016, 0.774146, 1.022363, 0.040546, -3.736437] turb_naca0012_sst_fixedvalues.timeout = 3200 test_list.append(turb_naca0012_sst_fixedvalues) @@ -567,7 +567,7 @@ def main(): actuatordisk_bem.cfg_dir = "rans/actuatordisk_bem" actuatordisk_bem.cfg_file = "actuatordisk_bem.cfg" actuatordisk_bem.test_iter = 15 - actuatordisk_bem.test_vals = [-5.388943, -10.318621, 0.001362, -0.376520] + actuatordisk_bem.test_vals = [-5.389236, -10.319123, 0.001362, -0.376528] actuatordisk_bem.timeout = 3200 actuatordisk_bem.tol = 0.001 test_list.append(actuatordisk_bem) @@ -581,7 +581,7 @@ def main(): axi_rans_air_nozzle_restart.cfg_dir = "axisymmetric_rans/air_nozzle" axi_rans_air_nozzle_restart.cfg_file = "air_nozzle_restart.cfg" axi_rans_air_nozzle_restart.test_iter = 10 - axi_rans_air_nozzle_restart.test_vals = [-12.069346, -7.508216, -8.813393, -3.732843, 0] + axi_rans_air_nozzle_restart.test_vals = [-11.056238, -5.334119, -8.842316, -4.067921, 0.000000] axi_rans_air_nozzle_restart.test_vals_aarch64 = [-14.143310, -9.163287, -10.858232, -5.787715, 0.000000] axi_rans_air_nozzle_restart.tol = 0.0001 test_list.append(axi_rans_air_nozzle_restart) @@ -784,7 +784,7 @@ def main(): turbmod_sa_bsl_rae2822.cfg_dir = "turbulence_models/sa/rae2822" turbmod_sa_bsl_rae2822.cfg_file = "turb_SA_BSL_RAE2822.cfg" turbmod_sa_bsl_rae2822.test_iter = 20 - turbmod_sa_bsl_rae2822.test_vals = [-2.797759, 0.171338, -0.274795, -5.261510, 0.792586, 0.025577] + turbmod_sa_bsl_rae2822.test_vals = [-2.811354, 0.159658, -0.279654, -5.239595, 0.792937, 0.025461] test_list.append(turbmod_sa_bsl_rae2822) # SA Negative @@ -792,7 +792,7 @@ def main(): turbmod_sa_neg_rae2822.cfg_dir = "turbulence_models/sa/rae2822" turbmod_sa_neg_rae2822.cfg_file = "turb_SA_NEG_RAE2822.cfg" turbmod_sa_neg_rae2822.test_iter = 10 - turbmod_sa_neg_rae2822.test_vals = [1.448390, 1.208561, -0.846814, 1.273854, 0.498380, 0.000000] + turbmod_sa_neg_rae2822.test_vals = [1.345830, 1.122324, -1.210207, 1.175663, 0.388687, 0.000000] turbmod_sa_neg_rae2822.test_vals_aarch64 = [-1.345593, 1.448310, 1.208721, -0.846597, 1.248410, 0.489117, 0.000000] test_list.append(turbmod_sa_neg_rae2822) @@ -801,7 +801,7 @@ def main(): turbmod_sa_comp_rae2822.cfg_dir = "turbulence_models/sa/rae2822" turbmod_sa_comp_rae2822.cfg_file = "turb_SA_COMP_RAE2822.cfg" turbmod_sa_comp_rae2822.test_iter = 20 - turbmod_sa_comp_rae2822.test_vals = [-2.797713, 0.171400, -0.274750, -5.270451, 0.792619, 0.025579] + turbmod_sa_comp_rae2822.test_vals = [-2.811319, 0.159702, -0.279630, -5.248778, 0.792974, 0.025463] test_list.append(turbmod_sa_comp_rae2822) # SA Edwards @@ -809,7 +809,7 @@ def main(): turbmod_sa_edw_rae2822.cfg_dir = "turbulence_models/sa/rae2822" turbmod_sa_edw_rae2822.cfg_file = "turb_SA_EDW_RAE2822.cfg" turbmod_sa_edw_rae2822.test_iter = 20 - turbmod_sa_edw_rae2822.test_vals = [-2.798216, 0.171419, -0.274673, -5.950380, 0.793286, 0.025430] + turbmod_sa_edw_rae2822.test_vals = [-2.811465, 0.159870, -0.279550, -5.932283, 0.793521, 0.025309] test_list.append(turbmod_sa_edw_rae2822) # SA Compressibility and Edwards @@ -817,7 +817,7 @@ def main(): turbmod_sa_comp_edw_rae2822.cfg_dir = "turbulence_models/sa/rae2822" turbmod_sa_comp_edw_rae2822.cfg_file = "turb_SA_COMP_EDW_RAE2822.cfg" turbmod_sa_comp_edw_rae2822.test_iter = 20 - turbmod_sa_comp_edw_rae2822.test_vals = [-2.804013, 0.164355, -0.281124, -5.949769, 0.793596, 0.025415] + turbmod_sa_comp_edw_rae2822.test_vals = [-2.811414, 0.159941, -0.279512, -5.935417, 0.793532, 0.025314] test_list.append(turbmod_sa_comp_edw_rae2822) # SA QCR @@ -825,7 +825,7 @@ def main(): turbmod_sa_qcr_rae2822.cfg_dir = "turbulence_models/sa/rae2822" turbmod_sa_qcr_rae2822.cfg_file = "turb_SA_QCR_RAE2822.cfg" turbmod_sa_qcr_rae2822.test_iter = 20 - turbmod_sa_qcr_rae2822.test_vals = [-2.818005, 0.149744, -0.284903, -5.229322, 0.793829, 0.025455] + turbmod_sa_qcr_rae2822.test_vals = [-2.804469, 0.164849, -0.274960, -5.243908, 0.792741, 0.025535] test_list.append(turbmod_sa_qcr_rae2822) ############################ @@ -866,7 +866,7 @@ def main(): contadj_wedge.cfg_dir = "cont_adj_euler/wedge" contadj_wedge.cfg_file = "inv_wedge_ROE.cfg" contadj_wedge.test_iter = 10 - contadj_wedge.test_vals = [2.872064, -2.756210, 1010800.000000, 0.000000] + contadj_wedge.test_vals = [2.872065, -2.756214, 1010800.000000, -0.000000] test_list.append(contadj_wedge) # Inviscid fixed CL NACA0012 @@ -942,7 +942,7 @@ def main(): turb_naca0012_1c.cfg_dir = "rans_uq/naca0012" turb_naca0012_1c.cfg_file = "turb_NACA0012_uq_1c.cfg" turb_naca0012_1c.test_iter = 10 - turb_naca0012_1c.test_vals = [-4.983993, 1.343552, 0.663881, 0.009383] + turb_naca0012_1c.test_vals = [-4.983993, 1.343551, 0.663876, 0.009417] turb_naca0012_1c.test_vals_aarch64 = [-4.981036, 1.345868, 0.673232, 0.010091] test_list.append(turb_naca0012_1c) @@ -951,7 +951,7 @@ def main(): turb_naca0012_2c.cfg_dir = "rans_uq/naca0012" turb_naca0012_2c.cfg_file = "turb_NACA0012_uq_2c.cfg" turb_naca0012_2c.test_iter = 10 - turb_naca0012_2c.test_vals = [-5.482691, 1.262640, 0.496012, -0.032672] + turb_naca0012_2c.test_vals = [-5.482691, 1.262639, 0.496036, -0.032657] turb_naca0012_2c.test_vals_aarch64 = [-5.484365, 1.264701, 0.501741, -0.033109] test_list.append(turb_naca0012_2c) @@ -960,7 +960,7 @@ def main(): turb_naca0012_3c.cfg_dir = "rans_uq/naca0012" turb_naca0012_3c.cfg_file = "turb_NACA0012_uq_3c.cfg" turb_naca0012_3c.test_iter = 10 - turb_naca0012_3c.test_vals = [-5.583617, 1.229594, 0.463394, -0.035393] + turb_naca0012_3c.test_vals = [-5.583617, 1.229594, 0.463384, -0.035444] test_list.append(turb_naca0012_3c) # NACA0012 p1c1 @@ -968,7 +968,7 @@ def main(): turb_naca0012_p1c1.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c1.cfg_file = "turb_NACA0012_uq_p1c1.cfg" turb_naca0012_p1c1.test_iter = 10 - turb_naca0012_p1c1.test_vals = [-5.129493, 1.283950, 0.807032, 0.047516] + turb_naca0012_p1c1.test_vals = [-5.129493, 1.283950, 0.807031, 0.047479] turb_naca0012_p1c1.test_vals_aarch64 = [-5.122100, 1.284478, 0.608744, -0.008593] test_list.append(turb_naca0012_p1c1) @@ -977,7 +977,7 @@ def main(): turb_naca0012_p1c2.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c2.cfg_file = "turb_NACA0012_uq_p1c2.cfg" turb_naca0012_p1c2.test_iter = 10 - turb_naca0012_p1c2.test_vals = [-5.553947, 1.234508, 0.604076, -0.008513] + turb_naca0012_p1c2.test_vals = [-5.553947, 1.234508, 0.604072, -0.008556] test_list.append(turb_naca0012_p1c2) ###################################### @@ -998,7 +998,7 @@ def main(): hb_rans_preconditioning.cfg_file = "davis.cfg" hb_rans_preconditioning.test_iter = 25 hb_rans_preconditioning.tol = 0.00001 - hb_rans_preconditioning.test_vals = [-1.902085, 0.484234, 0.601494, 3.609016, -5.943874] + hb_rans_preconditioning.test_vals = [-1.905206, 0.481900, 0.599004, 3.605361, -5.945837] test_list.append(hb_rans_preconditioning) ###################################### @@ -1010,7 +1010,7 @@ def main(): rot_naca0012.cfg_dir = "rotating/naca0012" rot_naca0012.cfg_file = "rot_NACA0012.cfg" rot_naca0012.test_iter = 25 - rot_naca0012.test_vals = [-1.289907, 4.246244, -0.000518, 0.112723] + rot_naca0012.test_vals = [-1.289931, 4.246409, -0.000484, 0.112457] test_list.append(rot_naca0012) # Lid-driven cavity @@ -1098,7 +1098,7 @@ def main(): edge_VW.cfg_dir = "nicf/edge" edge_VW.cfg_file = "edge_VW.cfg" edge_VW.test_iter = 25 - edge_VW.test_vals = [-3.145553, 3.055761, -0.000009, 0.000000] + edge_VW.test_vals = [-3.116423, 3.084890, -0.000009, 0.000000] test_list.append(edge_VW) # Rarefaction shock wave edge_PPR @@ -1106,7 +1106,7 @@ def main(): edge_PPR.cfg_dir = "nicf/edge" edge_PPR.cfg_file = "edge_PPR.cfg" edge_PPR.test_iter = 20 - edge_PPR.test_vals = [-10.311364, -4.158193, -0.000034, 0.000000] + edge_PPR.test_vals = [-9.963405, -3.810039, -0.000034, 0.000000] test_list.append(edge_PPR) # Rarefaction Q1D nozzle, include CoolProp fluid model @@ -1132,7 +1132,7 @@ def main(): datadriven_fluidModel.cfg_dir = "nicf/datadriven" datadriven_fluidModel.cfg_file = "datadriven_nozzle.cfg" datadriven_fluidModel.test_iter = 50 - datadriven_fluidModel.test_vals = [-6.283594, -3.253961, -4.172935, -0.949415, -2.046039, 1.546933] + datadriven_fluidModel.test_vals = [-4.879421, -2.353319, -2.344004, 0.390613, -1.559800, 1.322761] test_list.append(datadriven_fluidModel) ###################################### @@ -1161,7 +1161,7 @@ def main(): axial_stage2D.cfg_dir = "turbomachinery/axial_stage_2D" axial_stage2D.cfg_file = "Axial_stage2D.cfg" axial_stage2D.test_iter = 20 - axial_stage2D.test_vals = [1.167155, 1.598851, -2.928273, 2.573908, -2.526641, 3.017138, 106370.000000, 106370.000000, 5.726800, 64.383000] + axial_stage2D.test_vals = [1.167160, 1.598506, -2.928574, 2.573647, -2.527393, 3.016169, 106370.000000, 106370.000000, 5.726800, 64.383000] test_list.append(axial_stage2D) # 2D transonic stator restart @@ -1201,7 +1201,7 @@ def main(): channel_2D.cfg_dir = "sliding_interface/channel_2D" channel_2D.cfg_file = "channel_2D_WA.cfg" channel_2D.test_iter = 2 - channel_2D.test_vals = [2.000000, 0.000000, 0.464931, 0.348057, 0.397535] + channel_2D.test_vals = [2.000000, 0.000000, 0.466210, 0.350093, 0.398997] channel_2D.timeout = 100 channel_2D.unsteady = True channel_2D.multizone = True @@ -1212,7 +1212,7 @@ def main(): channel_3D.cfg_dir = "sliding_interface/channel_3D" channel_3D.cfg_file = "channel_3D_WA.cfg" channel_3D.test_iter = 2 - channel_3D.test_vals = [2.000000, 0.000000, 0.629098, 0.524941, 0.422526] + channel_3D.test_vals = [2.000000, 0.000000, 0.632259, 0.534230, 0.432007] channel_3D.test_vals_aarch64 = [2.000000, 0.000000, 0.629119, 0.524959, 0.422390] channel_3D.unsteady = True channel_3D.multizone = True @@ -1223,7 +1223,7 @@ def main(): pipe.cfg_dir = "sliding_interface/pipe" pipe.cfg_file = "pipe_NN.cfg" pipe.test_iter = 2 - pipe.test_vals = [0.080827, 0.547324, 0.655095, 0.968235, 1.049121] + pipe.test_vals = [0.092415, 0.568973, 0.692859, 0.989459, 1.048237] pipe.unsteady = True pipe.multizone = True test_list.append(pipe) @@ -1233,7 +1233,7 @@ def main(): rotating_cylinders.cfg_dir = "sliding_interface/rotating_cylinders" rotating_cylinders.cfg_file = "rot_cylinders_WA.cfg" rotating_cylinders.test_iter = 3 - rotating_cylinders.test_vals = [3.000000, 0.000000, 0.717065, 1.119815, 1.160330] + rotating_cylinders.test_vals = [3.000000, 0.000000, 0.664820, 1.125808, 1.117610] rotating_cylinders.unsteady = True rotating_cylinders.multizone = True test_list.append(rotating_cylinders) @@ -1243,7 +1243,7 @@ def main(): supersonic_vortex_shedding.cfg_dir = "sliding_interface/supersonic_vortex_shedding" supersonic_vortex_shedding.cfg_file = "sup_vor_shed_WA.cfg" supersonic_vortex_shedding.test_iter = 5 - supersonic_vortex_shedding.test_vals = [5.000000, 0.000000, 1.207118, 1.065260] + supersonic_vortex_shedding.test_vals = [5.000000, 0.000000, 0.899639, 1.076224] supersonic_vortex_shedding.unsteady = True supersonic_vortex_shedding.multizone = True test_list.append(supersonic_vortex_shedding) @@ -1305,7 +1305,7 @@ def main(): thermal_beam_nl_3d.cfg_dir = "fea_fsi/ThermalBeam_3d" thermal_beam_nl_3d.cfg_file = "configBeamNonlinear_3d.cfg" thermal_beam_nl_3d.test_iter = 8 - thermal_beam_nl_3d.test_vals = [-7.564309, -2.992893, -12.242503, -14.068322, 57, -4.017665, 24, -4.204804, 138710, 75.233] + thermal_beam_nl_3d.test_vals = [-7.564308, -2.992893, -12.242503, -14.068322, 57.000000, -4.017675, 24.000000, -4.204804, 138710.000000, 75.233000] test_list.append(thermal_beam_nl_3d) # Rotating cylinder, 3d @@ -1316,7 +1316,7 @@ def main(): # For a thin disk with the inner and outer radius of this geometry, from # "Formulas for Stress, Strain, and Structural Matrices", 2nd Edition, figure 19-4, # the maximum stress is 165.6MPa, we get a von Mises stress very close to that. - rotating_cylinder_fea.test_vals = [-6.886145, -6.917148, -6.959634, 23, -8.369804, 1.6502e+08] + rotating_cylinder_fea.test_vals = [-6.886142, -6.917150, -6.959635, 23.000000, -8.369804, 165020000.000000] rotating_cylinder_fea.test_vals_aarch64 = [-6.861939, -6.835539, -6.895498, 22, -8.313847, 1.6502e+08] test_list.append(rotating_cylinder_fea) @@ -1403,7 +1403,7 @@ def main(): cht_incompressible.cfg_dir = "coupled_cht/incomp_2d" cht_incompressible.cfg_file = "cht_2d_3cylinders.cfg" cht_incompressible.test_iter = 10 - cht_incompressible.test_vals = [-1.376348, -0.591208, -0.591208, -0.591208] + cht_incompressible.test_vals = [-1.376344, -0.591211, -0.591211, -0.591211] cht_incompressible.multizone = True test_list.append(cht_incompressible) @@ -1444,7 +1444,7 @@ def main(): pywrapper_naca0012.cfg_dir = "euler/naca0012" pywrapper_naca0012.cfg_file = "inv_NACA0012_Roe.cfg" pywrapper_naca0012.test_iter = 80 - pywrapper_naca0012.test_vals = [-6.754892, -6.158544, 0.335712, 0.023273] + pywrapper_naca0012.test_vals = [-6.753161, -6.156190, 0.335712, 0.023273] pywrapper_naca0012.command = TestCase.Command("mpirun -np 2", "SU2_CFD.py", "--parallel -f") test_list.append(pywrapper_naca0012) @@ -1453,7 +1453,7 @@ def main(): pywrapper_turb_naca0012_sst.cfg_dir = "rans/naca0012" pywrapper_turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" pywrapper_turb_naca0012_sst.test_iter = 10 - pywrapper_turb_naca0012_sst.test_vals = [-12.094646, -15.251093, -5.906365, 1.070413, 0.015775, -2.376189, 0] + pywrapper_turb_naca0012_sst.test_vals = [-12.094739, -15.251094, -5.906365, 1.070413, 0.015775, -2.376137, 0.000000] pywrapper_turb_naca0012_sst.test_vals_aarch64 = [-12.075620, -15.246688, -5.861276, 1.070036, 0.015841, -1.991001, 0.000000] pywrapper_turb_naca0012_sst.command = TestCase.Command("mpirun -np 2", "SU2_CFD.py", "--parallel -f") pywrapper_turb_naca0012_sst.timeout = 3200 @@ -1535,7 +1535,7 @@ def main(): pywrapper_deformingBump.cfg_dir = "py_wrapper/deforming_bump_in_channel" pywrapper_deformingBump.cfg_file = "config.cfg" pywrapper_deformingBump.test_iter = 1 - pywrapper_deformingBump.test_vals = [0.500000, 0.000000, -2.556309, -1.270839, -2.350590, 2.606851, 8.002480, -0.300272] + pywrapper_deformingBump.test_vals = [0.500000, 0.000000, -2.556309, -1.270839, -2.350591, 2.606851, 8.002480, -0.300272] pywrapper_deformingBump.command = TestCase.Command("mpirun -np 2", "python", "run.py") pywrapper_deformingBump.unsteady = True test_list.append(pywrapper_deformingBump) @@ -1545,7 +1545,7 @@ def main(): pywrapper_buoyancy.cfg_dir = "py_wrapper/custom_source_buoyancy" pywrapper_buoyancy.cfg_file = "lam_buoyancy_cavity.cfg" pywrapper_buoyancy.test_iter = 0 - pywrapper_buoyancy.test_vals = [-13.227985, -13.678478, -13.050758, -7.777151] + pywrapper_buoyancy.test_vals = [-13.227985, -13.678479, -13.050758, -7.777151] pywrapper_buoyancy.test_vals_aarch64 = [-13.227985, -13.678478, -13.050758, -7.777151] pywrapper_buoyancy.command = TestCase.Command("mpirun -np 2", "python", "run.py") test_list.append(pywrapper_buoyancy) @@ -1654,7 +1654,7 @@ def main(): species2_primitiveVenturi_mixingmodel_boundedscalar.cfg_dir = "species_transport/venturi_primitive_3species" species2_primitiveVenturi_mixingmodel_boundedscalar.cfg_file = "species2_primitiveVenturi_mixingmodel_boundedscalar.cfg" species2_primitiveVenturi_mixingmodel_boundedscalar.test_iter = 50 - species2_primitiveVenturi_mixingmodel_boundedscalar.test_vals = [-5.689670, -4.511504, -4.615493, -5.795204, -0.113336, -5.704986, 5.000000, -1.433752, 5.000000, -4.921373, 5.000000, -1.771016, 0.000318, 0.000318, 0.000000, 0.000000] + species2_primitiveVenturi_mixingmodel_boundedscalar.test_vals = [-5.689670, -4.511504, -4.615493, -5.795205, -0.113336, -5.704986, 5.000000, -1.433752, 5.000000, -4.921374, 5.000000, -1.771015, 0.000318, 0.000318, 0.000000, 0.000000] test_list.append(species2_primitiveVenturi_mixingmodel_boundedscalar) # 2 species (1 eq) primitive venturi mixing using mixing model including viscosity, thermal conductivity and inlet markers for SA turbulence model diff --git a/TestCases/parallel_regression_AD.py b/TestCases/parallel_regression_AD.py index cc4b94931bf..f03615fba02 100644 --- a/TestCases/parallel_regression_AD.py +++ b/TestCases/parallel_regression_AD.py @@ -150,7 +150,7 @@ def main(): discadj_axisymmetric_rans_nozzle.cfg_dir = "axisymmetric_rans/air_nozzle" discadj_axisymmetric_rans_nozzle.cfg_file = "air_nozzle_restart.cfg" discadj_axisymmetric_rans_nozzle.test_iter = 10 - discadj_axisymmetric_rans_nozzle.test_vals = [9.737045, 5.142730, 7.107566, 2.491197] + discadj_axisymmetric_rans_nozzle.test_vals = [9.909657, 5.078045, 7.129068, 2.490955] discadj_axisymmetric_rans_nozzle.no_restart = True test_list.append(discadj_axisymmetric_rans_nozzle) @@ -266,7 +266,7 @@ def main(): discadj_heat.cfg_dir = "disc_adj_heat" discadj_heat.cfg_file = "disc_adj_heat.cfg" discadj_heat.test_iter = 10 - discadj_heat.test_vals = [-1.880390, 0.759804, 0.000000, -4.486700] + discadj_heat.test_vals = [-1.880390, 0.759800, 0.000000, -4.486700] test_list.append(discadj_heat) ################################### @@ -278,7 +278,7 @@ def main(): discadj_fsi.cfg_dir = "disc_adj_fsi" discadj_fsi.cfg_file = "config.cfg" discadj_fsi.test_iter = 6 - discadj_fsi.test_vals = [6.000000, -7.017370, -7.872620, 0.000000, -0.000024] + discadj_fsi.test_vals = [6.000000, -7.017369, -7.872618, 0.000000, -0.000024] test_list.append(discadj_fsi) # Multi physics framework @@ -308,7 +308,7 @@ def main(): da_sp_pinArray_cht_2d_dp_hf.cfg_dir = "incomp_navierstokes/streamwise_periodic/chtPinArray_2d" da_sp_pinArray_cht_2d_dp_hf.cfg_file = "DA_configMaster.cfg" da_sp_pinArray_cht_2d_dp_hf.test_iter = 100 - da_sp_pinArray_cht_2d_dp_hf.test_vals = [-3.011140, -3.635369, -3.161207] + da_sp_pinArray_cht_2d_dp_hf.test_vals = [-2.805458, -3.441841, -2.767871] da_sp_pinArray_cht_2d_dp_hf.multizone = True test_list.append(da_sp_pinArray_cht_2d_dp_hf) @@ -326,7 +326,7 @@ def main(): da_unsteadyCHT_cylinder.cfg_dir = "coupled_cht/disc_adj_unsteadyCHT_cylinder" da_unsteadyCHT_cylinder.cfg_file = "chtMaster.cfg" da_unsteadyCHT_cylinder.test_iter = 2 - da_unsteadyCHT_cylinder.test_vals = [-8.479629, -9.239920, -9.234868, -15.934511, -13.661991, 0.000000, 10.627000, 0.295190] + da_unsteadyCHT_cylinder.test_vals = [-8.479629, -9.239920, -9.234868, -15.934511, -13.662013, 0.000000, 10.627000, 0.295190] da_unsteadyCHT_cylinder.test_vals_aarch64 = [-8.479629, -9.239920, -9.234868, -15.934511, -13.662012, 0.000000, 89.932000, 0.295190] da_unsteadyCHT_cylinder.unsteady = True da_unsteadyCHT_cylinder.multizone = True @@ -521,7 +521,7 @@ def main(): pywrapper_wavy_wall_steady.cfg_dir = "py_wrapper/wavy_wall" pywrapper_wavy_wall_steady.cfg_file = "run_steady.py" pywrapper_wavy_wall_steady.test_iter = 100 - pywrapper_wavy_wall_steady.test_vals = [-1.353007, 2.581051, -2.900574] + pywrapper_wavy_wall_steady.test_vals = [-1.353007, 2.581052, -2.900575] pywrapper_wavy_wall_steady.command = TestCase.Command("mpirun -n 2", "python", "run_steady.py") pywrapper_wavy_wall_steady.timeout = 1600 pywrapper_wavy_wall_steady.tol = 0.00001 diff --git a/TestCases/py_wrapper/translating_NACA0012/forces_0.csv.ref b/TestCases/py_wrapper/translating_NACA0012/forces_0.csv.ref index 5d4e8e3e99e..df2f7651b44 100644 --- a/TestCases/py_wrapper/translating_NACA0012/forces_0.csv.ref +++ b/TestCases/py_wrapper/translating_NACA0012/forces_0.csv.ref @@ -1,200 +1,200 @@ -199, -0.96, -0.00, 0.00 -0, -2.88, 19.83, 0.00 -1, -4.18, 28.79, 0.00 -2, -5.26, 36.27, 0.00 -3, -6.22, 43.06, 0.00 -4, -7.06, 48.99, 0.00 -5, -7.74, 53.91, 0.00 -6, -8.33, 58.23, 0.00 -7, -8.78, 61.68, 0.00 -8, -9.13, 64.48, 0.00 -9, -9.36, 66.46, 0.00 -10, -9.49, 67.87, 0.00 -11, -9.52, 68.60, 0.00 -12, -9.47, 68.72, 0.00 -13, -9.30, 68.08, 0.00 -14, -9.07, 66.93, 0.00 -15, -8.74, 65.11, 0.00 -16, -8.36, 62.92, 0.00 -17, -7.90, 60.05, 0.00 -18, -7.40, 56.86, 0.00 -19, -6.82, 53.00, 0.00 -20, -6.21, 48.82, 0.00 -21, -5.55, 44.16, 0.00 -22, -4.86, 39.18, 0.00 -23, -4.12, 33.67, 0.00 -24, -3.37, 27.85, 0.00 -25, -2.57, 21.54, 0.00 -26, -1.75, 14.91, 0.00 -27, -0.89, 7.67, 0.00 -28, -0.03, 0.29, 0.00 -29, 0.85, -7.59, 0.00 -30, 1.69, -15.34, 0.00 -31, 2.54, -23.41, 0.00 -32, 3.37, -31.59, 0.00 -33, 4.19, -40.08, 0.00 -34, 5.02, -48.92, 0.00 -35, 5.83, -57.97, 0.00 -36, 6.62, -67.30, 0.00 -37, 7.38, -76.73, 0.00 -38, 8.13, -86.51, 0.00 -39, 8.83, -96.39, 0.00 -40, 9.51, -106.58, 0.00 -41, 10.14, -116.85, 0.00 -42, 10.76, -127.75, 0.00 -43, 11.32, -138.90, 0.00 -44, 11.81, -149.97, 0.00 -45, 12.22, -161.13, 0.00 -46, 12.50, -171.78, 0.00 -47, 12.68, -182.09, 0.00 -48, 12.78, -192.81, 0.00 -49, 12.76, -203.07, 0.00 -50, 12.57, -212.38, 0.00 -51, 12.05, -217.67, 0.00 -52, 11.60, -225.88, 0.00 -53, 11.01, -233.43, 0.00 -54, 10.51, -245.81, 0.00 -55, 9.41, -246.68, 0.00 -56, 7.63, -229.29, 0.00 -57, 6.26, -221.94, 0.00 -58, 6.99, -305.64, 0.00 -59, 6.92, -400.58, 0.00 -60, 4.75, -416.91, 0.00 -61, 2.15, -411.19, 0.00 -62, -0.50, -401.81, 0.00 -63, -3.15, -392.75, 0.00 -64, -5.77, -381.55, 0.00 -65, -8.34, -369.11, 0.00 -66, -10.81, -355.18, 0.00 -67, -13.15, -340.07, 0.00 -68, -15.34, -324.16, 0.00 -69, -17.37, -307.70, 0.00 -70, -19.20, -290.73, 0.00 -71, -20.74, -272.38, 0.00 -72, -22.00, -253.37, 0.00 -73, -22.70, -231.35, 0.00 -74, -23.29, -211.45, 0.00 -75, -23.37, -190.20, 0.00 -76, -23.19, -169.88, 0.00 -77, -22.18, -146.81, 0.00 -78, -20.95, -125.64, 0.00 -79, -19.03, -103.59, 0.00 -80, -16.76, -82.89, 0.00 -81, -13.60, -61.19, 0.00 -82, -9.50, -38.86, 0.00 -83, -4.20, -15.60, 0.00 -84, 2.57, 8.67, 0.00 -85, 10.17, 31.06, 0.00 -86, 18.87, 51.96, 0.00 -87, 28.98, 71.65, 0.00 -88, 41.74, 92.13, 0.00 -89, 54.07, 105.75, 0.00 -90, 70.75, 121.39, 0.00 -91, 96.09, 142.85, 0.00 -92, 93.51, 118.43, 0.00 -93, 120.64, 127.20, 0.00 -94, 136.03, 115.56, 0.00 -95, 169.16, 110.18, 0.00 -96, 186.54, 85.50, 0.00 -97, 143.56, 38.86, 0.00 -98, 66.96, 8.98, 0.00 -99, 44.43, -0.00, 0.00 -100, 87.14, -11.69, 0.00 -101, 145.23, -39.31, 0.00 -102, 142.83, -65.47, 0.00 -103, 105.19, -68.51, 0.00 -104, 88.44, -75.13, 0.00 -105, 63.28, -66.72, 0.00 -106, 48.19, -61.02, 0.00 -107, 25.79, -38.34, 0.00 -108, 13.76, -23.61, 0.00 -109, -0.24, 0.48, 0.00 -110, -9.29, 20.51, 0.00 -111, -20.12, 49.76, 0.00 -112, -27.25, 75.02, 0.00 -113, -34.63, 105.71, 0.00 -114, -39.49, 133.20, 0.00 -115, -42.08, 156.42, 0.00 -116, -43.53, 178.10, 0.00 -117, -45.53, 204.86, 0.00 -118, -46.18, 228.44, 0.00 -119, -46.94, 255.49, 0.00 -120, -46.62, 279.57, 0.00 -121, -46.43, 307.28, 0.00 -122, -45.37, 332.37, 0.00 -123, -44.27, 360.19, 0.00 -124, -42.30, 384.11, 0.00 -125, -40.27, 410.38, 0.00 -126, -37.67, 433.86, 0.00 -127, -34.88, 458.06, 0.00 -128, -31.68, 479.72, 0.00 -129, -28.36, 502.38, 0.00 -130, -24.77, 523.30, 0.00 -131, -21.07, 544.83, 0.00 -132, -17.18, 564.29, 0.00 -133, -13.22, 584.83, 0.00 -134, -9.13, 602.95, 0.00 -135, -4.98, 621.40, 0.00 -136, -0.79, 638.19, 0.00 -137, 3.43, 654.80, 0.00 -138, 7.63, 669.17, 0.00 -139, 11.81, 684.02, 0.00 -140, 15.94, 697.09, 0.00 -141, 20.00, 708.97, 0.00 -142, 23.96, 719.61, 0.00 -143, 27.84, 729.78, 0.00 -144, 31.59, 738.57, 0.00 -145, 35.21, 746.32, 0.00 -146, 38.69, 753.11, 0.00 -147, 42.03, 758.96, 0.00 -148, 45.19, 763.53, 0.00 -149, 48.25, 767.89, 0.00 -150, 51.12, 770.97, 0.00 -151, 53.90, 774.14, 0.00 -152, 56.45, 775.45, 0.00 -153, 58.60, 772.82, 0.00 -154, 60.49, 768.26, 0.00 -155, 61.32, 752.19, 0.00 -156, 66.19, 786.01, 0.00 -157, 51.41, 592.36, 0.00 -158, 2.74, 30.66, 0.00 -159, -1.91, -20.81, 0.00 -160, -1.38, -14.70, 0.00 -161, -2.29, -23.78, 0.00 -162, -2.80, -28.43, 0.00 -163, -2.29, -22.77, 0.00 -164, -2.55, -24.89, 0.00 -165, -2.37, -22.65, 0.00 -166, -2.68, -25.18, 0.00 -167, -2.76, -25.43, 0.00 -168, -3.15, -28.54, 0.00 -169, -3.54, -31.56, 0.00 -170, -4.04, -35.47, 0.00 -171, -4.42, -38.18, 0.00 -172, -4.93, -41.95, 0.00 -173, -5.44, -45.65, 0.00 -174, -6.02, -49.76, 0.00 -175, -6.54, -53.35, 0.00 -176, -7.07, -56.96, 0.00 -177, -7.54, -59.96, 0.00 -178, -8.01, -62.95, 0.00 -179, -8.43, -65.45, 0.00 -180, -8.82, -67.79, 0.00 -181, -9.18, -69.80, 0.00 -182, -9.48, -71.32, 0.00 -183, -9.72, -72.39, 0.00 -184, -9.90, -73.09, 0.00 -185, -10.04, -73.44, 0.00 -186, -10.00, -72.60, 0.00 -187, -10.00, -71.99, 0.00 -188, -9.88, -70.65, 0.00 -189, -9.65, -68.59, 0.00 -190, -9.33, -65.89, 0.00 -191, -8.91, -62.56, 0.00 -192, -8.37, -58.52, 0.00 -193, -7.74, -53.89, 0.00 -194, -7.00, -48.56, 0.00 -195, -6.14, -42.46, 0.00 -196, -5.13, -35.44, 0.00 -197, -4.03, -27.78, 0.00 -198, -2.72, -18.69, 0.00 +199, -0.92, -0.00, 0.00 +0, -2.81, 19.31, 0.00 +1, -3.96, 27.31, 0.00 +2, -4.94, 34.10, 0.00 +3, -5.78, 40.00, 0.00 +4, -6.52, 45.26, 0.00 +5, -7.12, 49.55, 0.00 +6, -7.61, 53.23, 0.00 +7, -7.99, 56.10, 0.00 +8, -8.25, 58.25, 0.00 +9, -8.40, 59.65, 0.00 +10, -8.44, 60.37, 0.00 +11, -8.40, 60.49, 0.00 +12, -8.26, 59.94, 0.00 +13, -8.07, 59.06, 0.00 +14, -7.76, 57.31, 0.00 +15, -7.41, 55.21, 0.00 +16, -6.96, 52.34, 0.00 +17, -6.45, 49.03, 0.00 +18, -5.88, 45.20, 0.00 +19, -5.32, 41.32, 0.00 +20, -4.65, 36.55, 0.00 +21, -3.98, 31.65, 0.00 +22, -3.24, 26.08, 0.00 +23, -2.50, 20.41, 0.00 +24, -1.70, 14.08, 0.00 +25, -0.94, 7.92, 0.00 +26, -0.11, 0.91, 0.00 +27, 0.76, -6.55, 0.00 +28, 1.61, -14.10, 0.00 +29, 2.34, -20.84, 0.00 +30, 3.22, -29.22, 0.00 +31, 4.11, -37.87, 0.00 +32, 4.97, -46.68, 0.00 +33, 5.78, -55.30, 0.00 +34, 6.60, -64.38, 0.00 +35, 7.41, -73.74, 0.00 +36, 8.19, -83.27, 0.00 +37, 8.99, -93.47, 0.00 +38, 9.72, -103.41, 0.00 +39, 10.47, -114.27, 0.00 +40, 11.12, -124.57, 0.00 +41, 11.78, -135.78, 0.00 +42, 12.30, -146.05, 0.00 +43, 12.85, -157.56, 0.00 +44, 13.23, -168.05, 0.00 +45, 13.58, -179.05, 0.00 +46, 13.80, -189.61, 0.00 +47, 13.87, -199.23, 0.00 +48, 13.88, -209.29, 0.00 +49, 13.76, -218.94, 0.00 +50, 13.55, -228.91, 0.00 +51, 12.94, -233.69, 0.00 +52, 12.72, -247.56, 0.00 +53, 12.33, -261.38, 0.00 +54, 11.74, -274.42, 0.00 +55, 10.71, -280.64, 0.00 +56, 9.07, -272.52, 0.00 +57, 7.59, -269.15, 0.00 +58, 6.93, -303.08, 0.00 +59, 6.80, -393.44, 0.00 +60, 5.02, -440.64, 0.00 +61, 2.26, -431.72, 0.00 +62, -0.52, -421.20, 0.00 +63, -3.29, -410.57, 0.00 +64, -6.05, -400.01, 0.00 +65, -8.76, -387.67, 0.00 +66, -11.41, -374.93, 0.00 +67, -13.94, -360.27, 0.00 +68, -16.37, -345.88, 0.00 +69, -18.55, -328.61, 0.00 +70, -20.66, -312.89, 0.00 +71, -22.66, -297.53, 0.00 +72, -24.25, -279.29, 0.00 +73, -25.65, -261.40, 0.00 +74, -26.69, -242.37, 0.00 +75, -28.31, -230.36, 0.00 +76, -28.63, -209.71, 0.00 +77, -29.03, -192.15, 0.00 +78, -28.80, -172.72, 0.00 +79, -29.70, -161.67, 0.00 +80, -28.77, -142.34, 0.00 +81, -28.04, -126.17, 0.00 +82, -25.54, -104.51, 0.00 +83, -26.31, -97.80, 0.00 +84, -22.38, -75.48, 0.00 +85, -27.40, -83.64, 0.00 +86, -22.35, -61.54, 0.00 +87, -14.41, -35.62, 0.00 +88, -9.00, -19.86, 0.00 +89, -14.66, -28.68, 0.00 +90, -11.68, -20.05, 0.00 +91, -38.05, -56.57, 0.00 +92, -40.77, -51.64, 0.00 +93, -49.35, -52.03, 0.00 +94, -28.55, -24.25, 0.00 +95, 30.46, 19.84, 0.00 +96, 14.41, 6.61, 0.00 +97, 124.60, 33.72, 0.00 +98, 88.18, 11.83, 0.00 +99, 50.99, -0.00, 0.00 +100, 139.64, -18.74, 0.00 +101, 167.24, -45.26, 0.00 +102, 115.14, -52.78, 0.00 +103, 86.56, -56.38, 0.00 +104, 75.50, -64.13, 0.00 +105, 8.40, -8.85, 0.00 +106, 5.63, -7.13, 0.00 +107, -24.68, 36.68, 0.00 +108, -33.56, 57.59, 0.00 +109, -40.80, 79.80, 0.00 +110, -48.06, 106.07, 0.00 +111, -47.07, 116.38, 0.00 +112, -51.99, 143.14, 0.00 +113, -50.64, 154.57, 0.00 +114, -53.25, 179.59, 0.00 +115, -55.77, 207.35, 0.00 +116, -56.99, 233.15, 0.00 +117, -56.78, 255.45, 0.00 +118, -56.53, 279.68, 0.00 +119, -55.76, 303.48, 0.00 +120, -54.71, 328.03, 0.00 +121, -53.03, 350.95, 0.00 +122, -51.15, 374.74, 0.00 +123, -48.72, 396.47, 0.00 +124, -46.17, 419.21, 0.00 +125, -43.26, 440.80, 0.00 +126, -40.26, 463.61, 0.00 +127, -36.79, 483.15, 0.00 +128, -33.38, 505.47, 0.00 +129, -29.71, 526.37, 0.00 +130, -25.91, 547.32, 0.00 +131, -21.93, 567.07, 0.00 +132, -17.86, 586.63, 0.00 +133, -13.70, 606.12, 0.00 +134, -9.45, 624.31, 0.00 +135, -5.14, 641.70, 0.00 +136, -0.81, 658.71, 0.00 +137, 3.53, 674.61, 0.00 +138, 7.86, 689.50, 0.00 +139, 12.16, 704.17, 0.00 +140, 16.41, 717.33, 0.00 +141, 20.57, 729.12, 0.00 +142, 24.65, 740.15, 0.00 +143, 28.65, 750.98, 0.00 +144, 32.50, 759.96, 0.00 +145, 36.21, 767.66, 0.00 +146, 39.79, 774.52, 0.00 +147, 43.22, 780.53, 0.00 +148, 46.47, 785.06, 0.00 +149, 49.59, 789.35, 0.00 +150, 52.48, 791.55, 0.00 +151, 55.08, 791.14, 0.00 +152, 57.66, 792.15, 0.00 +153, 60.78, 801.51, 0.00 +154, 63.32, 804.14, 0.00 +155, 64.99, 797.13, 0.00 +156, 66.49, 789.57, 0.00 +157, 59.04, 680.31, 0.00 +158, 13.95, 156.29, 0.00 +159, -6.84, -74.66, 0.00 +160, -3.13, -33.36, 0.00 +161, 3.28, 34.11, 0.00 +162, 4.40, 44.73, 0.00 +163, 2.73, 27.19, 0.00 +164, 2.91, 28.39, 0.00 +165, 1.42, 13.56, 0.00 +166, 1.29, 12.11, 0.00 +167, 0.35, 3.21, 0.00 +168, -0.01, -0.09, 0.00 +169, -0.71, -6.32, 0.00 +170, -1.16, -10.21, 0.00 +171, -2.03, -17.54, 0.00 +172, -2.58, -21.94, 0.00 +173, -3.22, -27.00, 0.00 +174, -3.78, -31.27, 0.00 +175, -4.35, -35.53, 0.00 +176, -4.92, -39.61, 0.00 +177, -5.48, -43.56, 0.00 +178, -5.99, -47.08, 0.00 +179, -6.52, -50.65, 0.00 +180, -6.98, -53.62, 0.00 +181, -7.37, -56.02, 0.00 +182, -7.75, -58.33, 0.00 +183, -8.07, -60.15, 0.00 +184, -8.35, -61.64, 0.00 +185, -8.58, -62.75, 0.00 +186, -8.72, -63.28, 0.00 +187, -8.75, -63.04, 0.00 +188, -8.72, -62.37, 0.00 +189, -8.59, -61.03, 0.00 +190, -8.38, -59.15, 0.00 +191, -8.07, -56.67, 0.00 +192, -7.66, -53.53, 0.00 +193, -7.10, -49.40, 0.00 +194, -6.47, -44.88, 0.00 +195, -5.69, -39.34, 0.00 +196, -4.81, -33.19, 0.00 +197, -3.80, -26.16, 0.00 +198, -2.63, -18.08, 0.00 diff --git a/TestCases/py_wrapper/updated_moving_frame_NACA12/forces_0.csv.ref b/TestCases/py_wrapper/updated_moving_frame_NACA12/forces_0.csv.ref index e47d7e1ff73..7fd783fdbb7 100644 --- a/TestCases/py_wrapper/updated_moving_frame_NACA12/forces_0.csv.ref +++ b/TestCases/py_wrapper/updated_moving_frame_NACA12/forces_0.csv.ref @@ -1,200 +1,200 @@ -199, -0.97, -0.00, 0.00 -0, -2.88, 19.85, 0.00 -1, -4.05, 27.93, 0.00 -2, -5.07, 35.03, 0.00 -3, -5.96, 41.24, 0.00 -4, -6.74, 46.78, 0.00 -5, -7.39, 51.48, 0.00 -6, -7.92, 55.40, 0.00 -7, -8.36, 58.76, 0.00 -8, -8.64, 61.03, 0.00 -9, -8.84, 62.79, 0.00 -10, -8.89, 63.57, 0.00 -11, -8.86, 63.80, 0.00 -12, -8.73, 63.35, 0.00 -13, -8.52, 62.33, 0.00 -14, -8.24, 60.81, 0.00 -15, -7.91, 58.90, 0.00 -16, -7.49, 56.33, 0.00 -17, -7.04, 53.47, 0.00 -18, -6.48, 49.79, 0.00 -19, -5.90, 45.83, 0.00 -20, -5.25, 41.27, 0.00 -21, -4.60, 36.56, 0.00 -22, -3.89, 31.30, 0.00 -23, -3.18, 25.96, 0.00 -24, -2.42, 19.98, 0.00 -25, -1.68, 14.07, 0.00 -26, -0.87, 7.38, 0.00 -27, -0.09, 0.81, 0.00 -28, 0.74, -6.50, 0.00 -29, 1.54, -13.72, 0.00 -30, 2.37, -21.44, 0.00 -31, 3.13, -28.87, 0.00 -32, 3.94, -37.02, 0.00 -33, 4.69, -44.82, 0.00 -34, 5.49, -53.48, 0.00 -35, 6.20, -61.69, 0.00 -36, 6.97, -70.86, 0.00 -37, 7.67, -79.73, 0.00 -38, 8.38, -89.17, 0.00 -39, 9.03, -98.47, 0.00 -40, 9.61, -107.66, 0.00 -41, 10.12, -116.57, 0.00 -42, 10.52, -124.95, 0.00 -43, 10.83, -132.84, 0.00 -44, 11.03, -140.07, 0.00 -45, 11.07, -146.01, 0.00 -46, 10.87, -149.29, 0.00 -47, 10.24, -147.08, 0.00 -48, 9.85, -148.58, 0.00 -49, 9.23, -146.95, 0.00 -50, 8.03, -135.66, 0.00 -51, 5.02, -90.65, 0.00 -52, 8.44, -164.34, 0.00 -53, 24.61, -521.74, 0.00 -54, 25.24, -590.05, 0.00 -55, 21.35, -559.54, 0.00 -56, 18.43, -553.39, 0.00 -57, 15.47, -548.45, 0.00 -58, 12.34, -539.47, 0.00 -59, 9.16, -530.51, 0.00 -60, 5.93, -520.02, 0.00 -61, 2.66, -509.08, 0.00 -62, -0.61, -496.20, 0.00 -63, -3.87, -482.86, 0.00 -64, -7.09, -468.17, 0.00 -65, -10.23, -452.82, 0.00 -66, -13.28, -436.19, 0.00 -67, -16.22, -419.41, 0.00 -68, -19.00, -401.35, 0.00 -69, -21.63, -383.22, 0.00 -70, -24.05, -364.23, 0.00 -71, -26.30, -345.36, 0.00 -72, -28.26, -325.47, 0.00 -73, -30.06, -306.30, 0.00 -74, -31.47, -285.73, 0.00 -75, -32.68, -265.95, 0.00 -76, -33.54, -245.70, 0.00 -77, -34.32, -227.17, 0.00 -78, -34.48, -206.77, 0.00 -79, -34.55, -188.05, 0.00 -80, -33.88, -167.61, 0.00 -81, -33.34, -150.01, 0.00 -82, -31.79, -130.08, 0.00 -83, -30.47, -113.26, 0.00 -84, -27.83, -93.86, 0.00 -85, -26.36, -80.46, 0.00 -86, -22.80, -62.77, 0.00 -87, -20.38, -50.40, 0.00 -88, -16.48, -36.38, 0.00 -89, -13.50, -26.40, 0.00 -90, -8.89, -15.26, 0.00 -91, 2.07, 3.08, 0.00 -92, 9.08, 11.50, 0.00 -93, 13.77, 14.52, 0.00 -94, 20.38, 17.31, 0.00 -95, 38.32, 24.96, 0.00 -96, 51.52, 23.61, 0.00 -97, -11.06, -2.99, 0.00 -98, 9.27, 1.24, 0.00 -99, 56.99, -0.00, 0.00 -100, 121.78, -16.34, 0.00 -101, 216.03, -58.47, 0.00 -102, 204.05, -93.53, 0.00 -103, 153.71, -100.12, 0.00 -104, 131.85, -112.01, 0.00 -105, 83.63, -88.18, 0.00 -106, 65.02, -82.34, 0.00 -107, 36.90, -54.86, 0.00 -108, 24.12, -41.38, 0.00 -109, 3.60, -7.04, 0.00 -110, -5.15, 11.37, 0.00 -111, -17.47, 43.19, 0.00 -112, -23.69, 65.22, 0.00 -113, -32.00, 97.66, 0.00 -114, -36.22, 122.16, 0.00 -115, -40.69, 151.27, 0.00 -116, -42.86, 175.35, 0.00 -117, -45.56, 205.00, 0.00 -118, -46.38, 229.45, 0.00 -119, -47.11, 256.41, 0.00 -120, -46.83, 280.77, 0.00 -121, -46.29, 306.36, 0.00 -122, -45.08, 330.26, 0.00 -123, -43.57, 354.56, 0.00 -124, -41.55, 377.28, 0.00 -125, -39.29, 400.30, 0.00 -126, -36.74, 423.08, 0.00 -127, -33.87, 444.73, 0.00 -128, -30.79, 466.24, 0.00 -129, -27.45, 486.37, 0.00 -130, -23.98, 506.62, 0.00 -131, -20.34, 525.93, 0.00 -132, -16.59, 545.08, 0.00 -133, -12.73, 563.34, 0.00 -134, -8.79, 580.87, 0.00 -135, -4.79, 597.60, 0.00 -136, -0.76, 613.87, 0.00 -137, 3.29, 629.26, 0.00 -138, 7.33, 643.22, 0.00 -139, 11.34, 656.71, 0.00 -140, 15.31, 669.24, 0.00 -141, 19.20, 680.50, 0.00 -142, 23.00, 690.79, 0.00 -143, 26.72, 700.41, 0.00 -144, 30.30, 708.54, 0.00 -145, 33.76, 715.60, 0.00 -146, 37.07, 721.53, 0.00 -147, 40.24, 726.68, 0.00 -148, 43.22, 730.29, 0.00 -149, 46.10, 733.75, 0.00 -150, 48.72, 734.79, 0.00 -151, 51.06, 733.35, 0.00 -152, 54.83, 753.18, 0.00 -153, 51.89, 684.30, 0.00 -154, 8.03, 102.02, 0.00 -155, -1.05, -12.88, 0.00 -156, 3.20, 38.01, 0.00 -157, 3.99, 45.94, 0.00 -158, 4.27, 47.80, 0.00 -159, 4.38, 47.80, 0.00 -160, 4.41, 46.91, 0.00 -161, 4.21, 43.76, 0.00 -162, 3.97, 40.34, 0.00 -163, 3.55, 35.36, 0.00 -164, 3.12, 30.39, 0.00 -165, 2.57, 24.58, 0.00 -166, 2.00, 18.81, 0.00 -167, 1.36, 12.58, 0.00 -168, 0.72, 6.55, 0.00 -169, 0.01, 0.07, 0.00 -170, -0.70, -6.10, 0.00 -171, -1.46, -12.60, 0.00 -172, -2.18, -18.54, 0.00 -173, -2.95, -24.73, 0.00 -174, -3.66, -30.30, 0.00 -175, -4.40, -35.94, 0.00 -176, -5.09, -40.98, 0.00 -177, -5.78, -45.96, 0.00 -178, -6.39, -50.22, 0.00 -179, -7.01, -54.42, 0.00 -180, -7.54, -57.90, 0.00 -181, -8.04, -61.14, 0.00 -182, -8.47, -63.70, 0.00 -183, -8.82, -65.68, 0.00 -184, -9.10, -67.17, 0.00 -185, -9.28, -67.93, 0.00 -186, -9.39, -68.16, 0.00 -187, -9.41, -67.78, 0.00 -188, -9.32, -66.65, 0.00 -189, -9.21, -65.43, 0.00 -190, -8.95, -63.24, 0.00 -191, -8.66, -60.83, 0.00 -192, -8.20, -57.34, 0.00 -193, -7.65, -53.27, 0.00 -194, -6.97, -48.35, 0.00 -195, -6.12, -42.37, 0.00 -196, -5.16, -35.65, 0.00 -197, -4.06, -27.97, 0.00 -198, -2.82, -19.43, 0.00 +199, -0.96, -0.00, 0.00 +0, -2.91, 20.04, 0.00 +1, -4.11, 28.35, 0.00 +2, -5.18, 35.78, 0.00 +3, -6.13, 42.38, 0.00 +4, -6.94, 48.17, 0.00 +5, -7.61, 52.99, 0.00 +6, -8.17, 57.11, 0.00 +7, -8.59, 60.35, 0.00 +8, -8.90, 62.89, 0.00 +9, -9.09, 64.57, 0.00 +10, -9.19, 65.68, 0.00 +11, -9.17, 66.06, 0.00 +12, -9.08, 65.87, 0.00 +13, -8.87, 64.88, 0.00 +14, -8.59, 63.44, 0.00 +15, -8.22, 61.21, 0.00 +16, -7.81, 58.75, 0.00 +17, -7.31, 55.54, 0.00 +18, -6.77, 52.03, 0.00 +19, -6.18, 48.05, 0.00 +20, -5.54, 43.54, 0.00 +21, -4.85, 38.56, 0.00 +22, -4.12, 33.16, 0.00 +23, -3.34, 27.27, 0.00 +24, -2.55, 21.11, 0.00 +25, -1.73, 14.49, 0.00 +26, -0.89, 7.57, 0.00 +27, -0.02, 0.21, 0.00 +28, 0.84, -7.36, 0.00 +29, 1.70, -15.16, 0.00 +30, 2.57, -23.26, 0.00 +31, 3.43, -31.62, 0.00 +32, 4.29, -40.23, 0.00 +33, 5.12, -48.93, 0.00 +34, 5.95, -57.97, 0.00 +35, 6.74, -67.11, 0.00 +36, 7.54, -76.64, 0.00 +37, 8.29, -86.18, 0.00 +38, 9.02, -96.03, 0.00 +39, 9.71, -105.89, 0.00 +40, 10.32, -115.64, 0.00 +41, 10.88, -125.42, 0.00 +42, 11.33, -134.52, 0.00 +43, 11.67, -143.10, 0.00 +44, 11.89, -151.03, 0.00 +45, 11.97, -157.81, 0.00 +46, 11.83, -162.44, 0.00 +47, 11.29, -162.21, 0.00 +48, 10.84, -163.47, 0.00 +49, 10.25, -163.16, 0.00 +50, 9.08, -153.46, 0.00 +51, 6.10, -110.12, 0.00 +52, 8.72, -169.72, 0.00 +53, 24.65, -522.48, 0.00 +54, 25.91, -605.84, 0.00 +55, 21.86, -573.09, 0.00 +56, 18.83, -565.58, 0.00 +57, 15.79, -559.72, 0.00 +58, 12.61, -551.18, 0.00 +59, 9.36, -541.85, 0.00 +60, 6.06, -531.49, 0.00 +61, 2.72, -519.62, 0.00 +62, -0.63, -506.79, 0.00 +63, -3.95, -492.32, 0.00 +64, -7.23, -477.72, 0.00 +65, -10.43, -461.55, 0.00 +66, -13.55, -444.97, 0.00 +67, -16.52, -426.99, 0.00 +68, -19.36, -408.93, 0.00 +69, -21.98, -389.46, 0.00 +70, -24.46, -370.41, 0.00 +71, -26.62, -349.56, 0.00 +72, -28.59, -329.24, 0.00 +73, -30.11, -306.85, 0.00 +74, -31.49, -285.97, 0.00 +75, -32.34, -263.19, 0.00 +76, -32.98, -241.59, 0.00 +77, -33.01, -218.48, 0.00 +78, -32.78, -196.56, 0.00 +79, -31.73, -172.68, 0.00 +80, -30.58, -151.31, 0.00 +81, -28.51, -128.29, 0.00 +82, -26.22, -107.28, 0.00 +83, -23.00, -85.52, 0.00 +84, -19.42, -65.49, 0.00 +85, -14.71, -44.89, 0.00 +86, -9.40, -25.89, 0.00 +87, -3.54, -8.76, 0.00 +88, 4.27, 9.41, 0.00 +89, 13.63, 26.65, 0.00 +90, 23.53, 40.38, 0.00 +91, 30.76, 45.73, 0.00 +92, 36.09, 45.71, 0.00 +93, 43.48, 45.84, 0.00 +94, 61.05, 51.86, 0.00 +95, 49.16, 32.02, 0.00 +96, 55.00, 25.21, 0.00 +97, 57.99, 15.70, 0.00 +98, 59.74, 8.02, 0.00 +99, 58.62, -0.00, 0.00 +100, 103.03, -13.83, 0.00 +101, 190.93, -51.68, 0.00 +102, 170.14, -77.99, 0.00 +103, 143.57, -93.51, 0.00 +104, 125.13, -106.30, 0.00 +105, 80.00, -84.35, 0.00 +106, 62.71, -79.42, 0.00 +107, 32.87, -48.86, 0.00 +108, 21.18, -36.34, 0.00 +109, -0.06, 0.13, 0.00 +110, -8.43, 18.60, 0.00 +111, -21.17, 52.35, 0.00 +112, -27.02, 74.41, 0.00 +113, -35.55, 108.52, 0.00 +114, -39.68, 133.84, 0.00 +115, -43.82, 162.90, 0.00 +116, -45.71, 187.00, 0.00 +117, -47.84, 215.27, 0.00 +118, -48.41, 239.50, 0.00 +119, -48.73, 265.23, 0.00 +120, -48.26, 289.37, 0.00 +121, -47.44, 313.96, 0.00 +122, -46.10, 337.69, 0.00 +123, -44.41, 361.33, 0.00 +124, -42.27, 383.81, 0.00 +125, -39.86, 406.13, 0.00 +126, -37.22, 428.63, 0.00 +127, -34.23, 449.48, 0.00 +128, -31.09, 470.82, 0.00 +129, -27.67, 490.26, 0.00 +130, -24.15, 510.22, 0.00 +131, -20.47, 529.16, 0.00 +132, -16.69, 548.12, 0.00 +133, -12.79, 565.92, 0.00 +134, -8.83, 583.35, 0.00 +135, -4.81, 599.76, 0.00 +136, -0.76, 615.87, 0.00 +137, 3.30, 631.04, 0.00 +138, 7.35, 644.84, 0.00 +139, 11.36, 657.96, 0.00 +140, 15.33, 670.28, 0.00 +141, 19.21, 681.06, 0.00 +142, 23.02, 691.20, 0.00 +143, 26.71, 700.31, 0.00 +144, 30.30, 708.38, 0.00 +145, 33.71, 714.71, 0.00 +146, 37.02, 720.63, 0.00 +147, 40.16, 725.20, 0.00 +148, 43.14, 728.78, 0.00 +149, 45.94, 731.11, 0.00 +150, 48.55, 732.27, 0.00 +151, 50.85, 730.39, 0.00 +152, 54.67, 750.98, 0.00 +153, 51.36, 677.32, 0.00 +154, 7.16, 90.97, 0.00 +155, -1.26, -15.46, 0.00 +156, 2.80, 33.26, 0.00 +157, 3.27, 37.72, 0.00 +158, 3.54, 39.66, 0.00 +159, 3.81, 41.53, 0.00 +160, 3.88, 41.25, 0.00 +161, 3.69, 38.38, 0.00 +162, 3.47, 35.31, 0.00 +163, 3.07, 30.54, 0.00 +164, 2.67, 26.04, 0.00 +165, 2.11, 20.15, 0.00 +166, 1.57, 14.73, 0.00 +167, 0.90, 8.32, 0.00 +168, 0.29, 2.59, 0.00 +169, -0.41, -3.70, 0.00 +170, -1.08, -9.45, 0.00 +171, -1.85, -16.01, 0.00 +172, -2.55, -21.66, 0.00 +173, -3.32, -27.82, 0.00 +174, -4.00, -33.09, 0.00 +175, -4.72, -38.54, 0.00 +176, -5.37, -43.26, 0.00 +177, -6.02, -47.89, 0.00 +178, -6.59, -51.77, 0.00 +179, -7.15, -55.52, 0.00 +180, -7.62, -58.52, 0.00 +181, -8.12, -61.69, 0.00 +182, -8.50, -63.91, 0.00 +183, -8.88, -66.15, 0.00 +184, -9.15, -67.52, 0.00 +185, -9.40, -68.80, 0.00 +186, -9.53, -69.15, 0.00 +187, -9.60, -69.17, 0.00 +188, -9.54, -68.24, 0.00 +189, -9.36, -66.47, 0.00 +190, -9.10, -64.24, 0.00 +191, -8.71, -61.18, 0.00 +192, -8.23, -57.52, 0.00 +193, -7.62, -53.07, 0.00 +194, -6.93, -48.05, 0.00 +195, -6.09, -42.14, 0.00 +196, -5.14, -35.49, 0.00 +197, -4.05, -27.93, 0.00 +198, -2.82, -19.39, 0.00 diff --git a/TestCases/serial_regression.py b/TestCases/serial_regression.py index d9968f91b91..830ce48e4a5 100755 --- a/TestCases/serial_regression.py +++ b/TestCases/serial_regression.py @@ -101,7 +101,7 @@ def main(): naca0012.cfg_dir = "euler/naca0012" naca0012.cfg_file = "inv_NACA0012_Roe.cfg" naca0012.test_iter = 20 - naca0012.test_vals = [-4.507695, -3.938772, 0.297705, 0.025422] + naca0012.test_vals = [-4.506451, -3.937611, 0.297774, 0.025416] test_list.append(naca0012) # Supersonic wedge @@ -109,7 +109,7 @@ def main(): wedge.cfg_dir = "euler/wedge" wedge.cfg_file = "inv_wedge_HLLC.cfg" wedge.test_iter = 20 - wedge.test_vals = [-3.703839, 2.020469, -0.249531, 0.043953] + wedge.test_vals = [-3.701409, 2.023011, -0.249531, 0.043953] test_list.append(wedge) # ONERA M6 Wing @@ -135,7 +135,7 @@ def main(): polar_naca0012.cfg_file = "inv_NACA0012.cfg" polar_naca0012.polar = True polar_naca0012.test_iter = 10 - polar_naca0012.test_vals = [-1.278858, 4.165254, 0.004410, 0.083785] + polar_naca0012.test_vals = [-1.278626, 4.165535, 0.004509, 0.083680] polar_naca0012.test_vals_aarch64 = [-1.063447, 4.401847, 0.000291, 0.031696] polar_naca0012.command = TestCase.Command(exec = "compute_polar.py", param = "-n 1 -i 11") # flaky test on arm64 @@ -147,7 +147,7 @@ def main(): bluntbody.cfg_dir = "euler/bluntbody" bluntbody.cfg_file = "blunt.cfg" bluntbody.test_iter = 20 - bluntbody.test_vals = [0.475378, 6.834898, 0.000000, 1.783956] + bluntbody.test_vals = [0.666162, 7.055023, -0.000093, 3.916825] test_list.append(bluntbody) ########################## @@ -198,7 +198,7 @@ def main(): poiseuille_profile.cfg_dir = "navierstokes/poiseuille" poiseuille_profile.cfg_file = "profile_poiseuille.cfg" poiseuille_profile.test_iter = 10 - poiseuille_profile.test_vals = [-12.003743, -7.573505, -0.000000, 2.089953] + poiseuille_profile.test_vals = [-12.003748, -7.573681, -0.000000, 2.089953] poiseuille_profile.test_vals_aarch64 = [-12.009012, -7.262299, -0.000000, 2.089953] #last 4 columns test_list.append(poiseuille_profile) @@ -218,7 +218,7 @@ def main(): rae2822_sa.cfg_dir = "rans/rae2822" rae2822_sa.cfg_file = "turb_SA_RAE2822.cfg" rae2822_sa.test_iter = 20 - rae2822_sa.test_vals = [-2.187684, -5.308480, 0.389353, 0.077079, 0.000000] + rae2822_sa.test_vals = [-2.187576, -5.308498, 0.389360, 0.077088, 0.000000] test_list.append(rae2822_sa) # RAE2822 SST @@ -226,7 +226,7 @@ def main(): rae2822_sst.cfg_dir = "rans/rae2822" rae2822_sst.cfg_file = "turb_SST_RAE2822.cfg" rae2822_sst.test_iter = 20 - rae2822_sst.test_vals = [-1.028239, 5.864396, 0.357218, 0.074732, 0.000000] + rae2822_sst.test_vals = [-1.028239, 5.864395, 0.357230, 0.074731, 0.000000] test_list.append(rae2822_sst) # RAE2822 SST_SUST @@ -234,7 +234,7 @@ def main(): rae2822_sst_sust.cfg_dir = "rans/rae2822" rae2822_sst_sust.cfg_file = "turb_SST_SUST_RAE2822.cfg" rae2822_sst_sust.test_iter = 20 - rae2822_sst_sust.test_vals = [-2.487553, 5.864385, 0.357218, 0.074732] + rae2822_sst_sust.test_vals = [-2.487567, 5.864384, 0.357230, 0.074731] test_list.append(rae2822_sst_sust) # Flat plate @@ -250,7 +250,7 @@ def main(): turb_wallfunction_flatplate_sst.cfg_dir = "wallfunctions/flatplate/compressible_SST" turb_wallfunction_flatplate_sst.cfg_file = "turb_SST_flatplate.cfg" turb_wallfunction_flatplate_sst.test_iter = 10 - turb_wallfunction_flatplate_sst.test_vals = [-4.036299, -1.916263, -1.821788, 1.443878, -1.579554, 1.521534, 10.000000, -2.351461, 0.030011, 0.002409] + turb_wallfunction_flatplate_sst.test_vals = [-4.036300, -1.916264, -1.821790, 1.443878, -1.579554, 1.521535, 10.000000, -2.351460, 0.030011, 0.002409] test_list.append(turb_wallfunction_flatplate_sst) # FLAT PLATE, ROUGHNESS BC WILCOX2006 SST @@ -274,7 +274,7 @@ def main(): turb_oneram6.cfg_dir = "rans/oneram6" turb_oneram6.cfg_file = "turb_ONERAM6.cfg" turb_oneram6.test_iter = 10 - turb_oneram6.test_vals = [-2.408665, -6.628342, 0.238581, 0.158951, 0.000000] + turb_oneram6.test_vals = [-2.418713, -6.631577, 0.238587, 0.159599, 0.000000] turb_oneram6.timeout = 3200 test_list.append(turb_oneram6) @@ -283,7 +283,7 @@ def main(): turb_naca0012_sa.cfg_dir = "rans/naca0012" turb_naca0012_sa.cfg_file = "turb_NACA0012_sa.cfg" turb_naca0012_sa.test_iter = 5 - turb_naca0012_sa.test_vals = [-12.037341, -16.384159, 1.080346, 0.018385, 20, -3.455927, 20, -4.641252, 0] + turb_naca0012_sa.test_vals = [-12.037366, -16.384159, 1.080346, 0.018385, 20.000000, -3.456447, 20.000000, -4.641258, 0.000000] turb_naca0012_sa.test_vals_aarch64 = [-12.037297, -16.384158, 1.080346, 0.018385, 20.000000, -3.455886, 20.000000, -4.641247, 0.000000] turb_naca0012_sa.timeout = 3200 test_list.append(turb_naca0012_sa) @@ -293,7 +293,7 @@ def main(): turb_naca0012_sst.cfg_dir = "rans/naca0012" turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" turb_naca0012_sst.test_iter = 10 - turb_naca0012_sst.test_vals = [-12.094371, -15.251083, -5.906366, 1.070413, 0.015775, -3.178593, 0] + turb_naca0012_sst.test_vals = [-12.094425, -15.251083, -5.906366, 1.070413, 0.015775, -3.178933, 0.000000] turb_naca0012_sst.test_vals_aarch64 = [-12.076068, -15.246740, -5.861280, 1.070036, 0.015841, -3.297854, 0.000000] turb_naca0012_sst.timeout = 3200 test_list.append(turb_naca0012_sst) @@ -312,7 +312,7 @@ def main(): turb_naca0012_sst_sust_restart.cfg_dir = "rans/naca0012" turb_naca0012_sst_sust_restart.cfg_file = "turb_NACA0012_sst_sust.cfg" turb_naca0012_sst_sust_restart.test_iter = 10 - turb_naca0012_sst_sust_restart.test_vals = [-12.080495, -14.837169, -5.733461, 1.000893, 0.019109, -2.634055] + turb_naca0012_sst_sust_restart.test_vals = [-12.080423, -14.837169, -5.733461, 1.000893, 0.019109, -2.634145] turb_naca0012_sst_sust_restart.test_vals_aarch64 = [-12.074189, -14.836725, -5.732398, 1.000050, 0.019144, -3.315560] turb_naca0012_sst_sust_restart.timeout = 3200 test_list.append(turb_naca0012_sst_sust_restart) @@ -322,7 +322,7 @@ def main(): turb_naca0012_sst_fixedvalues.cfg_dir = "rans/naca0012" turb_naca0012_sst_fixedvalues.cfg_file = "turb_NACA0012_sst_fixedvalues.cfg" turb_naca0012_sst_fixedvalues.test_iter = 10 - turb_naca0012_sst_fixedvalues.test_vals = [-5.206619, -10.436764, 0.774095, 1.021995, 0.040553, -3.477596] + turb_naca0012_sst_fixedvalues.test_vals = [-5.206618, -10.436758, 0.774095, 1.021995, 0.040553, -3.477597] turb_naca0012_sst_fixedvalues.timeout = 3200 test_list.append(turb_naca0012_sst_fixedvalues) @@ -344,7 +344,7 @@ def main(): axi_rans_air_nozzle_restart.cfg_dir = "axisymmetric_rans/air_nozzle" axi_rans_air_nozzle_restart.cfg_file = "air_nozzle_restart.cfg" axi_rans_air_nozzle_restart.test_iter = 10 - axi_rans_air_nozzle_restart.test_vals = [-12.067609, -7.525629, -8.817136, -3.735731, 0] + axi_rans_air_nozzle_restart.test_vals = [-11.053602, -5.329000, -8.835107, -4.056879, 0.000000] axi_rans_air_nozzle_restart.test_vals_aarch64 = [-14.143715, -9.170705, -10.848554, -5.776746, 0.000000] axi_rans_air_nozzle_restart.tol = 0.0001 test_list.append(axi_rans_air_nozzle_restart) @@ -603,7 +603,7 @@ def main(): contadj_wedge.cfg_dir = "cont_adj_euler/wedge" contadj_wedge.cfg_file = "inv_wedge_ROE.cfg" contadj_wedge.test_iter = 10 - contadj_wedge.test_vals = [2.872064, -2.756210, 1010800.000000, 0.000000] + contadj_wedge.test_vals = [2.872066, -2.756215, 1010800.000000, -0.000000] test_list.append(contadj_wedge) # Inviscid fixed CL NACA0012 @@ -686,7 +686,7 @@ def main(): turb_naca0012_1c.cfg_dir = "rans_uq/naca0012" turb_naca0012_1c.cfg_file = "turb_NACA0012_uq_1c.cfg" turb_naca0012_1c.test_iter = 10 - turb_naca0012_1c.test_vals = [-4.981677, 1.343534, 0.597773, 0.017412] + turb_naca0012_1c.test_vals = [-4.981677, 1.343533, 0.597773, 0.017451] turb_naca0012_1c.test_vals_aarch64 = [-4.992791, 1.342873, 0.557941, 0.003269] test_list.append(turb_naca0012_1c) @@ -695,7 +695,7 @@ def main(): turb_naca0012_2c.cfg_dir = "rans_uq/naca0012" turb_naca0012_2c.cfg_file = "turb_NACA0012_uq_2c.cfg" turb_naca0012_2c.test_iter = 10 - turb_naca0012_2c.test_vals = [-5.482890, 1.261920, 0.441122, -0.029557] + turb_naca0012_2c.test_vals = [-5.482890, 1.261920, 0.441111, -0.029535] test_list.append(turb_naca0012_2c) # NACA0012 3c @@ -703,7 +703,7 @@ def main(): turb_naca0012_3c.cfg_dir = "rans_uq/naca0012" turb_naca0012_3c.cfg_file = "turb_NACA0012_uq_3c.cfg" turb_naca0012_3c.test_iter = 10 - turb_naca0012_3c.test_vals = [-5.583768, 1.229824, 0.426251, -0.033154] + turb_naca0012_3c.test_vals = [-5.583768, 1.229824, 0.426258, -0.033150] test_list.append(turb_naca0012_3c) # NACA0012 p1c1 @@ -711,7 +711,7 @@ def main(): turb_naca0012_p1c1.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c1.cfg_file = "turb_NACA0012_uq_p1c1.cfg" turb_naca0012_p1c1.test_iter = 10 - turb_naca0012_p1c1.test_vals = [-5.127673, 1.284889, 0.779305, 0.086111] + turb_naca0012_p1c1.test_vals = [-5.127673, 1.284889, 0.779311, 0.086115] turb_naca0012_p1c1.test_vals_aarch64 = [-5.119942, 1.283920, 0.486264, -0.021518] test_list.append(turb_naca0012_p1c1) @@ -720,7 +720,7 @@ def main(): turb_naca0012_p1c2.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c2.cfg_file = "turb_NACA0012_uq_p1c2.cfg" turb_naca0012_p1c2.test_iter = 10 - turb_naca0012_p1c2.test_vals = [-5.553903, 1.235087, 0.521251, -0.004471] + turb_naca0012_p1c2.test_vals = [-5.553904, 1.235086, 0.521256, -0.004467] test_list.append(turb_naca0012_p1c2) ###################################### @@ -740,7 +740,7 @@ def main(): hb_rans_preconditioning.cfg_dir = "harmonic_balance/hb_rans_preconditioning" hb_rans_preconditioning.cfg_file = "davis.cfg" hb_rans_preconditioning.test_iter = 25 - hb_rans_preconditioning.test_vals = [-1.902084, 0.484233, 0.601496, 3.609018, -5.943873] + hb_rans_preconditioning.test_vals = [-1.905206, 0.481900, 0.599004, 3.605363, -5.945837] test_list.append(hb_rans_preconditioning) ###################################### @@ -752,7 +752,7 @@ def main(): rot_naca0012.cfg_dir = "rotating/naca0012" rot_naca0012.cfg_file = "rot_NACA0012.cfg" rot_naca0012.test_iter = 25 - rot_naca0012.test_vals = [-1.290464, 4.245388, -0.000518, 0.112880] + rot_naca0012.test_vals = [-1.291080, 4.244879, -0.000543, 0.112765] test_list.append(rot_naca0012) # Lid-driven cavity @@ -862,7 +862,7 @@ def main(): ls89_sa.cfg_dir = "nicf/LS89" ls89_sa.cfg_file = "turb_SA_PR.cfg" ls89_sa.test_iter = 20 - ls89_sa.test_vals = [-5.069399, -13.403603, 0.180485, 0.429457] + ls89_sa.test_vals = [-5.069400, -13.403604, 0.180485, 0.429458] test_list.append(ls89_sa) # Rarefaction shock wave edge_VW @@ -870,7 +870,7 @@ def main(): edge_VW.cfg_dir = "nicf/edge" edge_VW.cfg_file = "edge_VW.cfg" edge_VW.test_iter = 20 - edge_VW.test_vals = [-2.851854, 3.349325, -0.000009, 0.000000] + edge_VW.test_vals = [-2.807248, 3.393885, -0.000010, 0.000000] test_list.append(edge_VW) # Rarefaction shock wave edge_PPR @@ -878,7 +878,7 @@ def main(): edge_PPR.cfg_dir = "nicf/edge" edge_PPR.cfg_file = "edge_PPR.cfg" edge_PPR.test_iter = 20 - edge_PPR.test_vals = [-12.476580, -6.287745, -0.000034, 0.000000] + edge_PPR.test_vals = [-12.344691, -6.171790, -0.000034, 0.000000] test_list.append(edge_PPR) @@ -900,7 +900,7 @@ def main(): Jones_tc_restart.cfg_dir = "turbomachinery/APU_turbocharger" Jones_tc_restart.cfg_file = "Jones_restart.cfg" Jones_tc_restart.test_iter = 5 - Jones_tc_restart.test_vals = [-7.645867, -5.849734, -15.337011, -9.825761, -13.216108, -7.752293, 73286.000000, 73286.000000, 0.020055, 82.286000] + Jones_tc_restart.test_vals = [-7.645867, -5.849734, -15.337011, -9.825760, -13.216108, -7.752293, 73286.000000, 73286.000000, 0.020055, 82.286000] test_list.append(Jones_tc_restart) # 2D axial stage @@ -908,7 +908,7 @@ def main(): axial_stage2D.cfg_dir = "turbomachinery/axial_stage_2D" axial_stage2D.cfg_file = "Axial_stage2D.cfg" axial_stage2D.test_iter = 20 - axial_stage2D.test_vals = [1.167176, 1.598840, -2.928275, 2.573906, -2.526639, 3.017139, 106370.000000, 106370.000000, 5.726800, 64.383000] + axial_stage2D.test_vals = [1.167182, 1.598495, -2.928576, 2.573645, -2.527392, 3.016170, 106370.000000, 106370.000000, 5.726800, 64.383000] test_list.append(axial_stage2D) # 2D transonic stator restart @@ -958,7 +958,7 @@ def main(): channel_2D.cfg_dir = "sliding_interface/channel_2D" channel_2D.cfg_file = "channel_2D_WA.cfg" channel_2D.test_iter = 2 - channel_2D.test_vals = [2.000000, 0.000000, 0.464920, 0.348054, 0.397553] + channel_2D.test_vals = [2.000000, 0.000000, 0.466199, 0.350095, 0.399015] channel_2D.timeout = 100 channel_2D.unsteady = True channel_2D.multizone = True @@ -969,7 +969,7 @@ def main(): channel_3D.cfg_dir = "sliding_interface/channel_3D" channel_3D.cfg_file = "channel_3D_WA.cfg" channel_3D.test_iter = 1 - channel_3D.test_vals = [1.000000, 0.000000, 0.611998, 0.798899, 0.702676] + channel_3D.test_vals = [1.000000, 0.000000, 0.617233, 0.798811, 0.692599] channel_3D.test_vals_aarch64 = [1.000000, 0.000000, 0.611996, 0.798988, 0.702357] channel_3D.unsteady = True channel_3D.multizone = True @@ -981,7 +981,7 @@ def main(): pipe.cfg_dir = "sliding_interface/pipe" pipe.cfg_file = "pipe_NN.cfg" pipe.test_iter = 2 - pipe.test_vals = [0.547322, 0.655095, 0.968232, 1.049121] + pipe.test_vals = [0.568973, 0.692858, 0.989456, 1.048237] pipe.unsteady = True pipe.multizone = True test_list.append(pipe) @@ -991,7 +991,7 @@ def main(): rotating_cylinders.cfg_dir = "sliding_interface/rotating_cylinders" rotating_cylinders.cfg_file = "rot_cylinders_WA.cfg" rotating_cylinders.test_iter = 3 - rotating_cylinders.test_vals = [3.000000, 0.000000, 0.717067, 1.119816, 1.160327] + rotating_cylinders.test_vals = [3.000000, 0.000000, 0.664822, 1.125810, 1.117607] rotating_cylinders.unsteady = True rotating_cylinders.multizone = True test_list.append(rotating_cylinders) @@ -1001,7 +1001,7 @@ def main(): supersonic_vortex_shedding.cfg_dir = "sliding_interface/supersonic_vortex_shedding" supersonic_vortex_shedding.cfg_file = "sup_vor_shed_WA.cfg" supersonic_vortex_shedding.test_iter = 5 - supersonic_vortex_shedding.test_vals = [5.000000, 0.000000, 1.207119, 1.065262] + supersonic_vortex_shedding.test_vals = [5.000000, 0.000000, 0.899637, 1.076225] supersonic_vortex_shedding.unsteady = True supersonic_vortex_shedding.multizone = True test_list.append(supersonic_vortex_shedding) @@ -1122,7 +1122,7 @@ def main(): p1rad.cfg_dir = "radiation/p1model" p1rad.cfg_file = "configp1.cfg" p1rad.test_iter = 50 - p1rad.test_vals = [-8.284674, -8.008659, -2.424204, 0.389030, -56.560000] + p1rad.test_vals = [-8.284673, -8.008659, -2.424204, 0.389030, -56.560000] test_list.append(p1rad) # ############################### @@ -1141,7 +1141,7 @@ def main(): cht_incompressible.cfg_dir = "coupled_cht/incomp_2d" cht_incompressible.cfg_file = "cht_2d_3cylinders.cfg" cht_incompressible.test_iter = 10 - cht_incompressible.test_vals = [-1.376347, -0.591210, -0.591210, -0.591210] + cht_incompressible.test_vals = [-1.376345, -0.591212, -0.591212, -0.591212] cht_incompressible.multizone = True test_list.append(cht_incompressible) @@ -1463,7 +1463,7 @@ def main(): shape_opt_euler_py.cfg_dir = "optimization_euler/steady_naca0012" shape_opt_euler_py.cfg_file = "inv_NACA0012_adv.cfg" shape_opt_euler_py.test_iter = 1 - shape_opt_euler_py.test_vals = [1.000000, 1.000000, 0.000021, 0.003643] + shape_opt_euler_py.test_vals = [1.000000, 1.000000, 0.000021, 0.003642] shape_opt_euler_py.command = TestCase.Command(exec = "shape_optimization.py", param = "-g CONTINUOUS_ADJOINT -f") shape_opt_euler_py.timeout = 1600 shape_opt_euler_py.tol = 0.00001 @@ -1528,7 +1528,7 @@ def main(): opt_2surf1obj_py.cfg_dir = "optimization_euler/multiobjective_wedge" opt_2surf1obj_py.cfg_file = "inv_wedge_ROE_2surf_1obj.cfg" opt_2surf1obj_py.test_iter = 1 - opt_2surf1obj_py.test_vals = [1.000000, 1.000000, 2.005030, 0.000476] + opt_2surf1obj_py.test_vals = [1.000000, 1.000000, 2.005032, 0.000474] opt_2surf1obj_py.command = TestCase.Command(exec = "shape_optimization.py", param = "-g CONTINUOUS_ADJOINT -f") opt_2surf1obj_py.timeout = 1600 opt_2surf1obj_py.tol = 0.00001 @@ -1545,7 +1545,7 @@ def main(): pywrapper_naca0012.cfg_dir = "euler/naca0012" pywrapper_naca0012.cfg_file = "inv_NACA0012_Roe.cfg" pywrapper_naca0012.test_iter = 20 - pywrapper_naca0012.test_vals = [-4.507695, -3.938772, 0.297705, 0.025422] + pywrapper_naca0012.test_vals = [-4.506451, -3.937611, 0.297774, 0.025416] pywrapper_naca0012.command = TestCase.Command(exec = "SU2_CFD.py", param = "-f") pywrapper_naca0012.timeout = 1600 pywrapper_naca0012.tol = 0.00001 @@ -1558,7 +1558,7 @@ def main(): pywrapper_turb_naca0012_sst.cfg_dir = "rans/naca0012" pywrapper_turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" pywrapper_turb_naca0012_sst.test_iter = 10 - pywrapper_turb_naca0012_sst.test_vals = [-12.094371, -15.251083, -5.906366, 1.070413, 0.015775, -3.178593, 0] + pywrapper_turb_naca0012_sst.test_vals = [-12.094425, -15.251083, -5.906366, 1.070413, 0.015775, -3.178933, 0.000000] pywrapper_turb_naca0012_sst.test_vals_aarch64 = [-12.076068, -15.246740, -5.861280, 1.070036, 0.015841, -3.297854, 0.000000] pywrapper_turb_naca0012_sst.command = TestCase.Command(exec = "SU2_CFD.py", param = "-f") pywrapper_turb_naca0012_sst.timeout = 3200 diff --git a/TestCases/serial_regression_AD.py b/TestCases/serial_regression_AD.py index baa6e114700..6e11587b8cf 100644 --- a/TestCases/serial_regression_AD.py +++ b/TestCases/serial_regression_AD.py @@ -194,7 +194,7 @@ def main(): discadj_heat.cfg_dir = "disc_adj_heat" discadj_heat.cfg_file = "disc_adj_heat.cfg" discadj_heat.test_iter = 10 - discadj_heat.test_vals = [-2.677870, 0.674825, 0.000000, -9.215500] + discadj_heat.test_vals = [-2.677870, 0.674827, 0.000000, -9.215500] test_list.append(discadj_heat) ################################### diff --git a/TestCases/tutorials.py b/TestCases/tutorials.py index 60680004487..305ab9fb234 100644 --- a/TestCases/tutorials.py +++ b/TestCases/tutorials.py @@ -59,7 +59,7 @@ def main(): cht_incompressible.cfg_dir = "../Tutorials/multiphysics/steady_cht" cht_incompressible.cfg_file = "cht_2d_3cylinders.cfg" cht_incompressible.test_iter = 10 - cht_incompressible.test_vals = [-1.376347, -0.591210, -0.591210, -0.591210] #last 4 columns + cht_incompressible.test_vals = [-1.376345, -0.591212, -0.591212, -0.591212] cht_incompressible.command = TestCase.Command(exec = "SU2_CFD") cht_incompressible.multizone = True test_list.append(cht_incompressible) @@ -175,7 +175,7 @@ def main(): tutorial_inv_bump.cfg_dir = "../Tutorials/compressible_flow/Inviscid_Bump" tutorial_inv_bump.cfg_file = "inv_channel.cfg" tutorial_inv_bump.test_iter = 0 - tutorial_inv_bump.test_vals = [-1.437425, 4.075857, 0.080374, 0.012019] + tutorial_inv_bump.test_vals = [-1.437425, 4.075857, 0.071414, 0.017198] test_list.append(tutorial_inv_bump) # Inviscid Wedge @@ -183,7 +183,7 @@ def main(): tutorial_inv_wedge.cfg_dir = "../Tutorials/compressible_flow/Inviscid_Wedge" tutorial_inv_wedge.cfg_file = "inv_wedge_HLLC.cfg" tutorial_inv_wedge.test_iter = 0 - tutorial_inv_wedge.test_vals = [-0.481460, 5.253008, -0.253048, 0.044501] + tutorial_inv_wedge.test_vals = [-0.481460, 5.253008, -0.260109, 0.045753] tutorial_inv_wedge.no_restart = True test_list.append(tutorial_inv_wedge) @@ -192,7 +192,7 @@ def main(): tutorial_inv_onera.cfg_dir = "../Tutorials/compressible_flow/Inviscid_ONERAM6" tutorial_inv_onera.cfg_file = "inv_ONERAM6.cfg" tutorial_inv_onera.test_iter = 0 - tutorial_inv_onera.test_vals = [-5.204928, -4.597762, 0.261167, 0.084096] + tutorial_inv_onera.test_vals = [-5.204928, -4.597762, 0.272218, 0.091180] tutorial_inv_onera.no_restart = True test_list.append(tutorial_inv_onera) @@ -237,7 +237,7 @@ def main(): tutorial_trans_flatplate_T3A.cfg_dir = "../Tutorials/compressible_flow/Transitional_Flat_Plate/Langtry_and_Menter/T3A" tutorial_trans_flatplate_T3A.cfg_file = "transitional_LM_model_ConfigFile.cfg" tutorial_trans_flatplate_T3A.test_iter = 20 - tutorial_trans_flatplate_T3A.test_vals = [-5.790137, -2.054834, -3.894661, -0.255074, -1.747074, 5.119341, -3.493237, 0.393262] + tutorial_trans_flatplate_T3A.test_vals = [-5.790137, -2.054834, -3.894660, -0.255074, -1.747074, 5.119341, -3.493237, 0.393262] tutorial_trans_flatplate_T3A.test_vals_aarch64 = [-5.808996, -2.070606, -3.969765, -0.277943, -1.953289, 1.708472, -3.514943, 0.357411] tutorial_trans_flatplate_T3A.no_restart = True test_list.append(tutorial_trans_flatplate_T3A) @@ -247,7 +247,7 @@ def main(): tutorial_trans_flatplate_T3Am.cfg_dir = "../Tutorials/compressible_flow/Transitional_Flat_Plate/Langtry_and_Menter/T3A-" tutorial_trans_flatplate_T3Am.cfg_file = "transitional_LM_model_ConfigFile.cfg" tutorial_trans_flatplate_T3Am.test_iter = 20 - tutorial_trans_flatplate_T3Am.test_vals = [-5.590061, -1.700867, -3.098455, -0.105190, -3.750523, 3.287643, -2.394576, 1.119623] + tutorial_trans_flatplate_T3Am.test_vals = [-5.590222, -1.700867, -3.098733, -0.105332, -3.750523, 3.287643, -2.394576, 1.119623] tutorial_trans_flatplate_T3Am.test_vals_aarch64 = [-5.540938, -1.681627, -2.878831, -0.058224, -3.695533, 3.413628, -2.385345, 1.103633] tutorial_trans_flatplate_T3Am.no_restart = True test_list.append(tutorial_trans_flatplate_T3Am) @@ -257,7 +257,7 @@ def main(): tutorial_trans_e387_sa.cfg_dir = "../Tutorials/compressible_flow/Transitional_Airfoil/Langtry_and_Menter/E387" tutorial_trans_e387_sa.cfg_file = "transitional_SA_LM_model_ConfigFile.cfg" tutorial_trans_e387_sa.test_iter = 20 - tutorial_trans_e387_sa.test_vals = [-6.527027, -5.082051, -0.795021, 1.022607, 0.150175, 2.000000, -9.581277] + tutorial_trans_e387_sa.test_vals = [-6.527027, -5.082048, -0.795021, 1.022607, 0.150183, 2.000000, -9.581276] tutorial_trans_e387_sa.no_restart = True test_list.append(tutorial_trans_e387_sa) @@ -266,7 +266,7 @@ def main(): tutorial_trans_e387_sst.cfg_dir = "../Tutorials/compressible_flow/Transitional_Airfoil/Langtry_and_Menter/E387" tutorial_trans_e387_sst.cfg_file = "transitional_SST_LM_model_ConfigFile.cfg" tutorial_trans_e387_sst.test_iter = 20 - tutorial_trans_e387_sst.test_vals = [-6.532415, -2.932984, 0.401485, 1.078294, 0.188167, 2.000000, -10.005784] + tutorial_trans_e387_sst.test_vals = [-6.532415, -2.932984, 0.401484, 1.078294, 0.188167, 2.000000, -10.005786] tutorial_trans_e387_sst.no_restart = True test_list.append(tutorial_trans_e387_sst) @@ -275,7 +275,7 @@ def main(): tutorial_turb_oneram6.cfg_dir = "../Tutorials/compressible_flow/Turbulent_ONERAM6" tutorial_turb_oneram6.cfg_file = "turb_ONERAM6.cfg" tutorial_turb_oneram6.test_iter = 0 - tutorial_turb_oneram6.test_vals = [-4.564441, -11.533952, 0.330625, 0.097701] + tutorial_turb_oneram6.test_vals = [-4.564441, -11.537596, 0.293674, 0.087628] test_list.append(tutorial_turb_oneram6) # NICFD Nozzle @@ -283,7 +283,7 @@ def main(): tutorial_nicfd_nozzle.cfg_dir = "../Tutorials/compressible_flow/NICFD_nozzle" tutorial_nicfd_nozzle.cfg_file = "NICFD_nozzle.cfg" tutorial_nicfd_nozzle.test_iter = 20 - tutorial_nicfd_nozzle.test_vals = [-1.799850, -6.002739, 4.635400, 0.000000, 0.000000] + tutorial_nicfd_nozzle.test_vals = [-1.800072, -6.002691, 4.635204, 0.000000, 0.000000] tutorial_nicfd_nozzle.no_restart = True test_list.append(tutorial_nicfd_nozzle) @@ -302,7 +302,7 @@ def main(): tutorial_unst_naca0012.cfg_dir = "../Tutorials/compressible_flow/Unsteady_NACA0012" tutorial_unst_naca0012.cfg_file = "unsteady_naca0012.cfg" tutorial_unst_naca0012.test_iter = 520 - tutorial_unst_naca0012.test_vals = [520, 0, -5.294874, 0, 0.307437, 0.796981, 0.000921, 0.006756] + tutorial_unst_naca0012.test_vals = [520.000000, 0.000000, -5.294133, 0.000000, 0.314591, 0.778367, 0.000929, 0.007489] tutorial_unst_naca0012.test_vals_aarch64 = [520, 0, -5.292359, 0, 0.284720, 0.766329, 0.000954, 0.007565] tutorial_unst_naca0012.unsteady = True test_list.append(tutorial_unst_naca0012) @@ -312,7 +312,7 @@ def main(): propeller_var_load.cfg_dir = "../Tutorials/compressible_flow/ActuatorDisk_VariableLoad" propeller_var_load.cfg_file = "propeller_variable_load.cfg" propeller_var_load.test_iter = 20 - propeller_var_load.test_vals = [-1.830257, -4.534990, -0.000323, 0.171646] + propeller_var_load.test_vals = [-1.831126, -4.534989, -0.000323, 0.171579] propeller_var_load.timeout = 3200 test_list.append(propeller_var_load) @@ -323,7 +323,7 @@ def main(): tutorial_design_inv_naca0012.cfg_dir = "../Tutorials/design/Inviscid_2D_Unconstrained_NACA0012" tutorial_design_inv_naca0012.cfg_file = "inv_NACA0012_basic.cfg" tutorial_design_inv_naca0012.test_iter = 0 - tutorial_design_inv_naca0012.test_vals = [-3.585391, -2.989014, 0.169747, 0.235619] + tutorial_design_inv_naca0012.test_vals = [-3.585391, -2.989014, 0.172229, 0.240113] tutorial_design_inv_naca0012.no_restart = True test_list.append(tutorial_design_inv_naca0012) @@ -332,7 +332,7 @@ def main(): tutorial_design_turb_rae2822.cfg_dir = "../Tutorials/design/Turbulent_2D_Constrained_RAE2822" tutorial_design_turb_rae2822.cfg_file = "turb_SA_RAE2822.cfg" tutorial_design_turb_rae2822.test_iter = 0 - tutorial_design_turb_rae2822.test_vals = [-1.700114, -4.941834, 0.218348, 0.190357] + tutorial_design_turb_rae2822.test_vals = [-1.700114, -4.941829, 0.205309, 0.184990] tutorial_design_turb_rae2822.no_restart = True test_list.append(tutorial_design_turb_rae2822) @@ -341,7 +341,7 @@ def main(): tutorial_design_multiobj.cfg_dir = "../Tutorials/design/Multi_Objective_Shape_Design" tutorial_design_multiobj.cfg_file = "inv_wedge_ROE_multiobj_combo.cfg" tutorial_design_multiobj.test_iter = 0 - tutorial_design_multiobj.test_vals = [2.657333, -3.020635, 370220.000000, 0.000000] + tutorial_design_multiobj.test_vals = [2.657333, -3.020635, 370220.000000, -0.000000] tutorial_design_multiobj.no_restart = True test_list.append(tutorial_design_multiobj) diff --git a/TestCases/vandv.py b/TestCases/vandv.py index b78df50eeb3..d14f7507264 100644 --- a/TestCases/vandv.py +++ b/TestCases/vandv.py @@ -45,7 +45,7 @@ def main(): p30n30.cfg_dir = "vandv/rans/30p30n" p30n30.cfg_file = "config.cfg" p30n30.test_iter = 5 - p30n30.test_vals = [-11.267106, -11.168215, -11.182822, -10.949673, -14.233489, 0.052235, 2.830394, 1.318894, -1.210648, 1, 1.2763e+01] + p30n30.test_vals = [-11.267106, -11.168215, -11.182822, -10.949673, -14.233489, 0.052235, 2.830394, 1.318894, -1.210645, 1.000000, 12.763000] test_list.append(p30n30) # This is not part of the V&V cases yet, its tested in this script because it is a relatively long test (~1 min). @@ -63,7 +63,7 @@ def main(): flatplate_sst1994m.cfg_dir = "vandv/rans/flatplate" flatplate_sst1994m.cfg_file = "turb_flatplate_sst.cfg" flatplate_sst1994m.test_iter = 5 - flatplate_sst1994m.test_vals = [-13.040526, -10.136914, -10.942003, -7.980425, -10.323871, -4.732398, 0.002801] + flatplate_sst1994m.test_vals = [-13.040636, -10.136914, -10.942005, -7.981146, -10.323869, -4.732398, 0.002801] flatplate_sst1994m.test_vals_aarch64 = [-13.021715, -9.534786, -10.401912, -7.501836, -9.750800, -4.850665, 0.002807] test_list.append(flatplate_sst1994m) @@ -72,7 +72,7 @@ def main(): bump_sst1994m.cfg_dir = "vandv/rans/bump_in_channel" bump_sst1994m.cfg_file = "turb_bump_sst.cfg" bump_sst1994m.test_iter = 5 - bump_sst1994m.test_vals = [-11.927868, -10.095409, -9.512544, -6.445154, -11.773530, -6.993606, 0.004931] + bump_sst1994m.test_vals = [-11.928332, -10.095849, -9.512485, -6.445671, -11.773518, -6.998128, 0.004931] bump_sst1994m.test_vals_aarch64 = [-13.042689, -10.812982, -10.604523, -7.655547, -10.816257, -5.308083, 0.004911] test_list.append(bump_sst1994m) @@ -81,7 +81,7 @@ def main(): swbli_sa.cfg_dir = "vandv/rans/swbli" swbli_sa.cfg_file = "config_sa.cfg" swbli_sa.test_iter = 5 - swbli_sa.test_vals = [-11.504424, -10.941741, -12.049925, -10.586263, -16.090385, 0.002242, -1.614365, 1.340100] + swbli_sa.test_vals = [-11.502718, -10.939184, -12.034284, -10.581169, -16.088844, 0.002242, -1.664946, 1.257900] swbli_sa.test_vals_aarch64 = [-11.504424, -10.941741, -12.049925, -10.586263, -16.090385, 0.002242, -1.614365, 1.340100] test_list.append(swbli_sa) @@ -91,7 +91,7 @@ def main(): swbli_sst.cfg_dir = "vandv/rans/swbli" swbli_sst.cfg_file = "config_sst.cfg" swbli_sst.test_iter = 5 - swbli_sst.test_vals = [-11.569218, -10.909086, -11.607984, -10.431163, -11.407588, -2.637660, 0.001816, -1.305818, -3.514590, 13.399000] + swbli_sst.test_vals = [-11.319578, -10.641523, -11.224600, -10.150215, -11.407538, -2.637660, 0.001816, -1.839484, -3.514593, 11.136000] test_list.append(swbli_sst) # DSMA661 - SA @@ -99,7 +99,7 @@ def main(): dsma661_sa.cfg_dir = "vandv/rans/dsma661" dsma661_sa.cfg_file = "dsma661_sa_config.cfg" dsma661_sa.test_iter = 5 - dsma661_sa.test_vals = [-11.247169, -8.242321, -9.020952, -5.903807, -10.737679, 0.155687, 0.024232] + dsma661_sa.test_vals = [-11.255214, -8.242489, -8.996097, -5.916501, -10.737676, 0.155687, 0.024232] dsma661_sa.test_vals_aarch64 = [-11.293183, -8.241775, -9.083761, -6.011398, -10.737680, 0.155687, 0.024232] test_list.append(dsma661_sa) @@ -108,7 +108,7 @@ def main(): dsma661_sst.cfg_dir = "vandv/rans/dsma661" dsma661_sst.cfg_file = "dsma661_sst_config.cfg" dsma661_sst.test_iter = 5 - dsma661_sst.test_vals = [-11.023206, -8.157128, -8.995930, -5.936029, -10.650466, -7.864550, 0.155882, 0.023344] + dsma661_sst.test_vals = [-11.027162, -8.156487, -9.036775, -5.963509, -10.650691, -7.872447, 0.155882, 0.023344] dsma661_sst.test_vals_aarch64 = [-10.977195, -8.403731, -8.747068, -5.808899, -10.522786, -7.369851, 0.155875, 0.023353] test_list.append(dsma661_sst) diff --git a/config_template.cfg b/config_template.cfg index 889abb9f6b1..998360550b3 100644 --- a/config_template.cfg +++ b/config_template.cfg @@ -1497,6 +1497,14 @@ CFL_ADAPT= NO % It is reset back to min when linear solvers diverge, or if nonlinear residuals increase too much. CFL_ADAPT_PARAM= ( 0.1, 2.0, 10.0, 1e10, 0.001, 0) % +% For the compressible solver only (EULER, NS, RANS). Detect non-physical solutions statistically instead of +% relying just on zero or negative pressure or temperature, treat all points where temperature is further than N +% standard deviations from the mean as non-physical (MUSCL off and potentially higher dissipation). +% Strategy starts at inner iteration I, mean and sigma update every F, and distribution is printed every P updates. +% OUTLIER_MITIGATION_PARAM= (I, F, P, N). With the default start iteration this is essentially off. +% When starting from freestream, use RAMP_MUSCL and set the start iteration to approximately the end of the MUSCL ramp. +OUTLIER_MITIGATION_PARAM= (999999, 5, 2, 5) +% % Maximum Delta Time in local time stepping simulations MAX_DELTA_TIME= 1E6 %