diff --git a/applications/FluidDynamicsApplication/python_scripts/navier_stokes_two_fluid_hydraulic_solver.py b/applications/FluidDynamicsApplication/python_scripts/navier_stokes_two_fluid_hydraulic_solver.py index 51803d30947f..43739f1180d2 100644 --- a/applications/FluidDynamicsApplication/python_scripts/navier_stokes_two_fluid_hydraulic_solver.py +++ b/applications/FluidDynamicsApplication/python_scripts/navier_stokes_two_fluid_hydraulic_solver.py @@ -129,9 +129,9 @@ def __init__(self, model, custom_settings): self.eulerian_fm_ale = self.settings["eulerian_fm_ale"].GetBool() if self.eulerian_fm_ale: - self.fm_ale_variable = KratosCFD.CONVECTION_SCALAR - self.eulerian_gradient = KratosCFD.CONVECTION_VELOCITY - self.eulerian_convection_var = KratosCFD.CONVECTION_SCALAR_GRADIENT + self.fm_ale_variable = KratosCFD.CONVECTION_SCALAR + self.eulerian_gradient = KratosCFD.CONVECTION_SCALAR_GRADIENT + self.eulerian_convection_var = KratosCFD.CONVECTION_VELOCITY self.settings["eulerian_fm_ale_settings"].AddEmptyValue("levelset_variable_name").SetString("CONVECTION_SCALAR") self.settings["eulerian_fm_ale_settings"].AddEmptyValue("levelset_gradient_variable_name").SetString("CONVECTION_SCALAR_GRADIENT") self.settings["eulerian_fm_ale_settings"].AddEmptyValue("levelset_convection_variable_name").SetString("CONVECTION_VELOCITY") @@ -234,6 +234,11 @@ def Initialize(self): KratosMultiphysics.VariableUtils().SetNonHistoricalVariableToZero(KratosCFD.ARTIFICIAL_DYNAMIC_VISCOSITY, self.main_model_part.Elements) KratosMultiphysics.Logger.PrintInfo(self.__class__.__name__, "Solver initialization finished.") + def Check(self): + super().Check() + # Check if Inlet and Outlet boundary conditions are defined + self._HydraulicBoundaryConditionCheck(KratosMultiphysics.INLET,"INLET") + self._HydraulicBoundaryConditionCheck(KratosMultiphysics.OUTLET,"OUTLET") def InitializeSolutionStep(self): @@ -653,7 +658,13 @@ def _CreateScheme(self): domain_size + 1) return scheme - + + def _HydraulicBoundaryConditionCheck(self,boundary,name): + # Check if the inlet and outl + computing_model_part = self.GetComputingModelPart() + not_boundary_nodes=any([node.Is(boundary) for node in computing_model_part.Nodes]) + if not not_boundary_nodes: + KratosMultiphysics.Logger.PrintWarning(self.__class__.__name__, name +" condition is not defined in the model part.")