Esempio n. 1
0
def Factory(settings, Model):
    if(type(settings) != KratosMultiphysics.Parameters):
        raise Exception("Expected input shall be a Parameters object, encapsulating a json string")

    process_settings = settings["Parameters"]

    folder_settings = KratosMultiphysics.Parameters("""{
        "folder_name"                 : "EigenResults",
        "save_output_files_in_folder" : true
    }""")

    process_settings.AddMissingParameters(folder_settings)

    if process_settings["save_output_files_in_folder"].GetBool():
        folder_name = process_settings["folder_name"].GetString()
        kratos_utils.DeleteDirectoryIfExisting(folder_name) # make sure to remove old results
        os.mkdir(folder_name)

    if process_settings.Has("computing_model_part_name"):
        computing_model_part = Model[process_settings["computing_model_part_name"].GetString()]
    else: # using default name
        computing_model_part = Model["Structure"]

    process_settings.RemoveValue("computing_model_part_name")
    process_settings.RemoveValue("help")

    return KSM.PostprocessEigenvaluesProcess(computing_model_part, process_settings)
Esempio n. 2
0
def Factory(settings, Model):
    if(type(settings) != KratosMultiphysics.Parameters):
        raise Exception("Expected input shall be a Parameters object, encapsulating a json string")

    process_settings = settings["Parameters"]

    if process_settings.Has("computing_model_part_name"):
        computing_model_part = Model[process_settings["computing_model_part_name"].GetString()]
    else: # using default name
        computing_model_part = Model["Structure.computing_domain"]

    process_settings.RemoveValue("computing_model_part_name")
    process_settings.RemoveValue("help")

    return KSM.PostprocessEigenvaluesProcess(computing_model_part, process_settings)
    def __init__(self, Model, settings):

        default_settings = KratosMultiphysics.Parameters("""
            {
                "result_file_name" : "Structure",
                "result_file_format_use_ascii" : false,
                "computing_model_part_name"   : "computing_domain",
                "animation_steps"   :  20,
                "list_of_result_variables" : ["DISPLACEMENT"],
                "label_type" : "frequency"
            }
            """)

        settings.ValidateAndAssignDefaults(default_settings)

        KratosMultiphysics.Process.__init__(self)
        model_part = Model[settings["computing_model_part_name"].GetString()]
        settings.RemoveValue("computing_model_part_name")
        self.post_eigen_process = StructuralMechanicsApplication.PostprocessEigenvaluesProcess(
            model_part, settings)
Esempio n. 4
0
 def ExecuteFinalize(self):
     StructuralMechanicsApplication.PostprocessEigenvaluesProcess(
         self.model_part, self.settings).Execute()