def __init__(self, Model, settings ): KratosMultiphysics.Process.__init__(self) model_part = Model[settings["model_part_name"].GetString()] params = KratosMultiphysics.Parameters("{}") params.AddValue("model_part_name",settings["model_part_name"]) params.AddValue("variable_name",settings["variable_name"]) if settings.Has("is_fixed"): params.AddValue("is_fixed",settings["is_fixed"]) if settings.Has("hydrostatic"): if settings["hydrostatic"].GetBool() == False: params.AddValue("value",settings["value"]) if settings["table"].GetInt() == 0: self.process = KratosMultiphysics.ApplyConstantScalarValueProcess(model_part, params) else: params.AddValue("table",settings["table"]) self.process = KratosPoro.ApplyDoubleTableProcess(model_part, params) else: params.AddValue("gravity_direction",settings["gravity_direction"]) params.AddValue("reference_coordinate",settings["reference_coordinate"]) params.AddValue("specific_weight",settings["specific_weight"]) if settings["table"].GetInt() == 0: self.process = KratosPoro.ApplyConstantHydrostaticPressureProcess(model_part, params) else: params.AddValue("table",settings["table"]) self.process = KratosPoro.ApplyHydrostaticPressureTableProcess(model_part, params) else: params.AddValue("value",settings["value"]) if settings["table"].GetInt() == 0: self.process = KratosMultiphysics.ApplyConstantScalarValueProcess(model_part, params) else: params.AddValue("table",settings["table"]) self.process = KratosPoro.ApplyDoubleTableProcess(model_part, params)
def __init__(self, Model, settings): KratosMultiphysics.Process.__init__(self) model_part = Model[settings["model_part_name"].GetString()] self.components_process_list = [] if settings["active"][0].GetBool() == True: normal_params = KratosMultiphysics.Parameters("{}") normal_params.AddValue("model_part_name", settings["model_part_name"]) normal_params.AddValue("mesh_id", settings["mesh_id"]) normal_params.AddValue("variable_name", settings["variable_name"]) if settings["hydrostatic"].GetBool() == False: normal_params.AddValue("value", settings["value"][0]) if settings["table"][0].GetInt() == 0: self.components_process_list.append( KratosMultiphysics.ApplyConstantScalarValueProcess( model_part, normal_params)) else: normal_params.AddValue("table", settings["table"][0]) self.components_process_list.append( KratosPoro.ApplyDoubleTableProcess( model_part, normal_params)) else: normal_params.AddValue("gravity_direction", settings["gravity_direction"]) normal_params.AddValue("reference_coordinate", settings["reference_coordinate"]) normal_params.AddValue("specific_weight", settings["specific_weight"]) if settings["table"][0].GetInt() == 0: self.components_process_list.append( KratosPoro.ApplyConstantHydrostaticPressureProcess( model_part, normal_params)) else: normal_params.AddValue("table", settings["table"][0]) self.components_process_list.append( KratosPoro.ApplyHydrostaticPressureTableProcess( model_part, normal_params)) if settings["active"][1].GetBool() == True: tangential_params = KratosMultiphysics.Parameters("{}") tangential_params.AddValue("model_part_name", settings["model_part_name"]) tangential_params.AddValue("mesh_id", settings["mesh_id"]) tangential_params.AddEmptyValue("variable_name").SetString( "TANGENTIAL_CONTACT_STRESS") # Note: this is not general tangential_params.AddValue("value", settings["value"][1]) if settings["table"][1].GetInt() == 0: self.components_process_list.append( KratosMultiphysics.ApplyConstantScalarValueProcess( model_part, tangential_params)) else: tangential_params.AddValue("table", settings["table"][1]) self.components_process_list.append( KratosPoro.ApplyDoubleTableProcess(model_part, tangential_params))