From e70210aa8cfde76ae93de11b84ebb2e5091bcf65 Mon Sep 17 00:00:00 2001 From: "Dmitry Yu. Naumov" <github@naumov.de> Date: Thu, 23 Aug 2018 14:23:56 +0200 Subject: [PATCH] [PL] BC; Move up axial symm. check. --- .../BoundaryCondition/CreateBoundaryCondition.cpp | 11 +++++++++++ .../NonuniformDirichletBoundaryCondition.cpp | 13 ------------- .../NonuniformNeumannBoundaryCondition.cpp | 10 ---------- 3 files changed, 11 insertions(+), 23 deletions(-) diff --git a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp index 2fd270a1ddf..2dc1cdb9c47 100644 --- a/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/CreateBoundaryCondition.cpp @@ -33,6 +33,17 @@ std::unique_ptr<BoundaryCondition> createBoundaryCondition( const std::vector<std::unique_ptr<ProcessLib::ParameterBase>>& parameters, const Process& process) { + // Surface mesh and bulk mesh must have equal axial symmetry flags! + if (config.boundary_mesh.isAxiallySymmetric() != + bulk_mesh.isAxiallySymmetric()) + { + OGS_FATAL( + "The boundary mesh %s axially symmetric but the bulk mesh %s. Both " + "must have an equal axial symmetry property.", + config.boundary_mesh.isAxiallySymmetric() ? "is" : "is not", + bulk_mesh.isAxiallySymmetric() ? "is" : "is not"); + } + //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} auto const type = config.config.peekConfigParameter<std::string>("type"); diff --git a/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.cpp index 72a3de07895..e05bc789f2c 100644 --- a/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.cpp @@ -26,19 +26,6 @@ createNonuniformDirichletBoundaryCondition( //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} config.checkConfigParameter("type", "NonuniformDirichlet"); - // The axial symmetry is not used in the Dirichlet BC but kept here for - // consistency. - // - // Surface mesh and bulk mesh must have equal axial symmetry flags! - if (boundary_mesh.isAxiallySymmetric() != bulk_mesh.isAxiallySymmetric()) - { - OGS_FATAL( - "The boundary mesh %s axially symmetric but the bulk mesh %s. Both " - "must have an equal axial symmetry property.", - boundary_mesh.isAxiallySymmetric() ? "is" : "is not", - bulk_mesh.isAxiallySymmetric() ? "is" : "is not"); - } - // TODO finally use ProcessLib::Parameter here auto const field_name = //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__NonuniformDirichlet__field_name} diff --git a/ProcessLib/BoundaryCondition/NonuniformNeumannBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/NonuniformNeumannBoundaryCondition.cpp index d56b33a33a0..6aad8fd1a34 100644 --- a/ProcessLib/BoundaryCondition/NonuniformNeumannBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/NonuniformNeumannBoundaryCondition.cpp @@ -25,16 +25,6 @@ createNonuniformNeumannBoundaryCondition( //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__type} config.checkConfigParameter("type", "NonuniformNeumann"); - // Surface mesh and bulk mesh must have equal axial symmetry flags! - if (boundary_mesh.isAxiallySymmetric() != bulk_mesh.isAxiallySymmetric()) - { - OGS_FATAL( - "The boundary mesh %s axially symmetric but the bulk mesh %s. Both " - "must have an equal axial symmetry property.", - boundary_mesh.isAxiallySymmetric() ? "is" : "is not", - bulk_mesh.isAxiallySymmetric() ? "is" : "is not"); - } - // TODO finally use ProcessLib::Parameter here auto const field_name = //! \ogs_file_param{prj__process_variables__process_variable__boundary_conditions__boundary_condition__NonuniformNeumann__field_name} -- GitLab