Esempio n. 1
0
    def SetPostMeshingProcesses(self):

        # The order set is the order of execution:
        if (self.echo_level > 0):
            print(
                "::[fluid_pre_refining_mesher]:: -START SetPostMeshingProcesses-"
            )

        refining_parameters = self.MeshingParameters.GetRefiningParameters()
        refining_options = refining_parameters.GetRefiningOptions()

        #select mesh elements
        select_mesh_elements = KratosPfemFluid.SelectMeshElementsForFluids(
            self.model_part, self.MeshingParameters, self.echo_level)
        #select_mesh_elements  = KratosDelaunay.SelectMeshElements(self.main_model_part, self.MeshingParameters, self.echo_level)
        self.mesher.SetPostMeshingProcess(select_mesh_elements)
        #rebuild elements
        #rebuild_mesh_elements = KratosDelaunay.BuildMeshElements(self.main_model_part, self.MeshingParameters, self.echo_level)
        #self.mesher.SetPostMeshingProcess(rebuild_mesh_elements)

        if (refining_options.Is(
                KratosDelaunay.MesherUtilities.REFINE_ADD_NODES)):
            select_refine_elements = KratosDelaunay.RefineElementsOnSize(
                self.model_part, self.MeshingParameters, self.echo_level)
            self.mesher.SetPostMeshingProcess(select_refine_elements)

        #rebuild elements
        rebuild_mesh_elements = KratosDelaunay.GenerateNewElements(
            self.model_part, self.MeshingParameters, self.echo_level)
        self.mesher.SetPostMeshingProcess(rebuild_mesh_elements)

        #rebuild boundary
        rebuild_mesh_boundary = KratosDelaunay.GenerateNewConditions(
            self.model_part, self.MeshingParameters, self.echo_level)
        self.mesher.SetPostMeshingProcess(rebuild_mesh_boundary)
Esempio n. 2
0
    def SetPostMeshingProcesses(self):

        # The order set is the order of execution:

        refining_parameters = self.MeshingParameters.GetRefiningParameters()
        refining_options = refining_parameters.GetRefiningOptions()

        #select mesh elements
        select_mesh_elements = KratosDelaunay.SelectElements(
            self.model_part, self.MeshingParameters, self.echo_level)
        self.mesher.SetPostMeshingProcess(select_mesh_elements)

        if (refining_options.Is(
                KratosDelaunay.MesherUtilities.REFINE_ADD_NODES)):
            select_refine_elements = KratosDelaunay.RefineElementsOnSize(
                self.model_part, self.MeshingParameters, self.echo_level)
            self.mesher.SetPostMeshingProcess(select_refine_elements)
    def SetPostMeshingProcesses(self):

        # The order set is the order of execution:
        if (self.echo_level > 0):
            print(
                "::[fluid_pre_refining_mesher]:: -START SetPostMeshingProcesses-"
            )

        refining_parameters = self.MeshingParameters.GetRefiningParameters()
        refining_options = refining_parameters.GetRefiningOptions()

        #select mesh elements
        select_mesh_elements = KratosPfemFluid.SelectMeshElementsForFluids(
            self.model_part, self.MeshingParameters, self.echo_level)
        #select_mesh_elements  = KratosDelaunay.SelectMeshElements(self.main_model_part, self.MeshingParameters, self.echo_level)
        self.mesher.SetPostMeshingProcess(select_mesh_elements)
        #rebuild elements
        #rebuild_mesh_elements = KratosDelaunay.BuildMeshElements(self.main_model_part, self.MeshingParameters, self.echo_level)
        #self.mesher.SetPostMeshingProcess(rebuild_mesh_elements)

        if (refining_options.Is(
                KratosDelaunay.MesherUtilities.REFINE_ADD_NODES)):
            select_refine_elements = KratosDelaunay.RefineElementsOnSize(
                self.model_part, self.MeshingParameters, self.echo_level)
            self.mesher.SetPostMeshingProcess(select_refine_elements)

        #rebuild elements
        rebuild_mesh_elements = KratosDelaunay.GenerateNewElements(
            self.model_part, self.MeshingParameters, self.echo_level)
        self.mesher.SetPostMeshingProcess(rebuild_mesh_elements)

        ### rebuild boundary
        ############ choose just one of the following two options: ############
        ## use this if you want conditions
        ## ATTENTION: this is slow, and must be used together with ModelMeshingWithConditionsForFluids and BuildModelPartBoundary
        #rebuild_mesh_boundary = KratosPfemFluid.GenerateNewConditionsForFluids(self.model_part, self.MeshingParameters, self.echo_level)

        ## if you use the following, you will not use/build/compute conditions
        ## ATTENTION: it must be used together with ModelMeshingForFluids and BuildModelPartBoundaryForFluids
        rebuild_mesh_boundary = KratosPfemFluid.BuildMeshBoundaryForFluids(
            self.model_part, self.MeshingParameters, self.echo_level)
        #######################################################################
        self.mesher.SetPostMeshingProcess(rebuild_mesh_boundary)