def _run_test(self): model = KratosMultiphysics.Model() with open(self.file_name + "_parameters.json", 'r') as parameter_file: ProjectParameters = KratosMultiphysics.Parameters( parameter_file.read()) if self.print_output: ProjectParameters.AddValue( "output_processes", KratosMultiphysics.Parameters(r'''{ "gid_output" : [{ "python_module" : "gid_output_process", "kratos_module" : "KratosMultiphysics", "process_name" : "GiDOutputProcess", "help" : "This process writes postprocessing files for GiD", "Parameters" : { "model_part_name" : "MainModelPart", "output_name" : "naca0012", "postprocess_parameters" : { "result_file_configuration" : { "gidpost_flags" : { "GiDPostMode" : "GiD_PostBinary", "WriteDeformedMeshFlag" : "WriteDeformed", "WriteConditionsFlag" : "WriteConditions", "MultiFileFlag" : "SingleFile" }, "file_label" : "step", "output_control_type" : "step", "output_frequency" : 1, "body_output" : true, "node_output" : false, "skin_output" : false, "plane_output" : [], "nodal_results" : ["VELOCITY_POTENTIAL","AUXILIARY_VELOCITY_POTENTIAL","DISTANCE","UPPER_WAKE","LOWER_WAKE","POTENTIAL_JUMP","AIRFOIL","TRAILING_EDGE","KUTTA"], "gauss_point_results" : ["PRESSURE","VELOCITY","VELOCITY_LOWER","PRESSURE_LOWER","WAKE","TRAILING_EDGE","ELEMENTAL_DISTANCES","KUTTA","DISTANCE"] }, "point_data_configuration" : [] } } }] }''')) potential_flow_analysis = PotentialFlowAnalysis( model, ProjectParameters) potential_flow_analysis.Run()
def _runTest(self, settings_file_name): model = KratosMultiphysics.Model() with open(settings_file_name, 'r') as settings_file: settings = KratosMultiphysics.Parameters(settings_file.read()) if self.print_output: if settings_file_name == "naca0012_small_sensitivities_adjoint_parameters.json": settings.AddValue( "output_processes", KratosMultiphysics.Parameters(r'''{ "gid_output" : [{ "python_module" : "gid_output_process", "kratos_module" : "KratosMultiphysics", "process_name" : "GiDOutputProcess", "help" : "This process writes postprocessing files for GiD", "Parameters" : { "model_part_name" : "MainModelPart", "output_name" : "naca0012_adjoint", "postprocess_parameters" : { "result_file_configuration" : { "gidpost_flags" : { "GiDPostMode" : "GiD_PostBinary", "WriteDeformedMeshFlag" : "WriteDeformed", "WriteConditionsFlag" : "WriteConditions", "MultiFileFlag" : "SingleFile" }, "file_label" : "step", "output_control_type" : "step", "output_frequency" : 1, "body_output" : true, "node_output" : false, "skin_output" : false, "plane_output" : [], "nodal_results" : ["SHAPE_SENSITIVITY","ADJOINT_VELOCITY_POTENTIAL", "ADJOINT_AUXILIARY_VELOCITY_POTENTIAL"], "nodal_nonhistorical_results": [], "elemental_conditional_flags_results": [], "gauss_point_results" : [] }, "point_data_configuration" : [] } } }] }''')) else: settings.AddValue( "output_processes", KratosMultiphysics.Parameters(r'''{ "gid_output" : [{ "python_module" : "gid_output_process", "kratos_module" : "KratosMultiphysics", "process_name" : "GiDOutputProcess", "help" : "This process writes postprocessing files for GiD", "Parameters" : { "model_part_name" : "MainModelPart", "output_name" : "naca0012", "postprocess_parameters" : { "result_file_configuration" : { "gidpost_flags" : { "GiDPostMode" : "GiD_PostBinary", "WriteDeformedMeshFlag" : "WriteDeformed", "WriteConditionsFlag" : "WriteConditions", "MultiFileFlag" : "SingleFile" }, "file_label" : "step", "output_control_type" : "step", "output_frequency" : 1, "body_output" : true, "node_output" : false, "skin_output" : false, "plane_output" : [], "nodal_results" : ["VELOCITY_POTENTIAL","AUXILIARY_VELOCITY_POTENTIAL"], "nodal_nonhistorical_results": ["TRAILING_EDGE","WAKE_DISTANCE"], "elemental_conditional_flags_results": ["STRUCTURE"], "gauss_point_results" : ["PRESSURE_COEFFICIENT","VELOCITY","WAKE","WAKE_ELEMENTAL_DISTANCES","KUTTA"] }, "point_data_configuration" : [] } } }] }''')) potential_flow_analysis = PotentialFlowAnalysis(model, settings) potential_flow_analysis.Run() self.main_model_part = model.GetModelPart( settings["solver_settings"]["model_part_name"].GetString())
def _CreateAnalysisStage(self): return PotentialFlowAnalysis(self.model, self.project_parameters)
from __future__ import print_function, absolute_import, division #makes KratosMultiphysics backward compatible with python 2.6 and 2.7 import KratosMultiphysics from KratosMultiphysics.CompressiblePotentialFlowApplication.potential_flow_analysis import PotentialFlowAnalysis """ For user-scripting it is intended that a new class is derived from PotentialFlowAnalysis to do modifications """ if __name__ == "__main__": with open("ProjectParameters.json",'r') as parameter_file: parameters = KratosMultiphysics.Parameters(parameter_file.read()) model = KratosMultiphysics.Model() simulation = PotentialFlowAnalysis(model,parameters) simulation.Run()