From fc4fd23dd68ee05f057efdb2c22430ab782135b4 Mon Sep 17 00:00:00 2001 From: michael Date: Wed, 24 Nov 2021 16:00:42 +0100 Subject: [PATCH] Updated python diffusion tests --- .../DiffusionEquation_1DHeatedRod.py | 2 +- .../DiffusionEquation_1DHeatedRod_FE.py | 2 +- .../DiffusionEquation_2DSpherical.py | 100 +++++++++++------- .../BoxWithMeshWithTriangularCells.med | Bin 255327 -> 326991 bytes 4 files changed, 63 insertions(+), 41 deletions(-) diff --git a/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod.py b/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod.py index 333936a..e6bf404 100755 --- a/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod.py +++ b/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod.py @@ -42,7 +42,7 @@ def DiffusionEquation_1DHeatedRod(): # set the numerical method myProblem.setTimeScheme( cf.Explicit); - # myProblem.setLinearSolver(GMRES,ILU,True); + # myProblem.setLinearSolver(GMRES,ILU); # name of result file fileName = "1DRodTemperature"; diff --git a/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod_FE.py b/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod_FE.py index 920869d..3e7fc30 100755 --- a/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod_FE.py +++ b/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_1DHeatedRod_FE.py @@ -44,7 +44,7 @@ def DiffusionEquation_1DHeatedRod(): # set the numerical method myProblem.setTimeScheme( cf.Explicit); - # myProblem.setLinearSolver(GMRES,ILU,True); + # myProblem.setLinearSolver(GMRES,ILU); # name of result file fileName = "1DRodTemperature_FE"; diff --git a/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_2DSpherical.py b/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_2DSpherical.py index cd47f4b..8330537 100644 --- a/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_2DSpherical.py +++ b/CoreFlows/examples/Python/DiffusionEquation/DiffusionEquation_2DSpherical.py @@ -11,7 +11,7 @@ import solverlab #================================================================================================================================ -def DiffusionEquation_2DSpherical(FECalculation): +def DiffusionEquation_2DSpherical(FECalculation, fileName): """ Description : Test solving the diffusion of the temperature T in a solid (default is Uranium). Equation : Thermal diffusion equation \rho cp dT/dt-\lambda\Delta T=\Phi + \lambda_{sf} (T_{fluid}-T) @@ -19,34 +19,53 @@ def DiffusionEquation_2DSpherical(FECalculation): The solid may be extra refrigerated by a fluid with transfer coefficient using functions setFluidTemperature and setHeatTransfertCoeff The solid may receive some extra heat power due to nuclear fissions using function setHeatSource """ - - # Prepare for the mesh and initial data - inputfile="../resources/BoxWithMeshWithTriangularCells"; - fieldName="Temperature"; + #Space dimension of the problem spaceDim=2 # Mandatory physical values - specific_heat=300# specific heat capacity - density=10000# density - conductivity=5# conductivity - - myProblem = solverlab.DiffusionEquation(spaceDim,FECalculation,density,specific_heat,conductivity); + solid_specific_heat=300# specific heat capacity, default value 300 + solid_density=10000# density, default value 10000 + solid_conductivity=5# conductivity, default value 5 - # Optional physical values (default value is zero) - fluidTemperature=573.;#fluid mean temperature - heatTransfertCoeff=1000.;#fluid/solid exchange coefficient - constant_heat=1e5;#heat power ddensity - myProblem.setFluidTemperature(fluidTemperature); - myProblem.setHeatTransfertCoeff(heatTransfertCoeff); - myProblem.setHeatSource(constant_heat); + myProblem = solverlab.DiffusionEquation(spaceDim,FECalculation,solid_density,solid_specific_heat,solid_conductivity); - #Initial field load - time_iteration=0 - print("Loading unstructured mesh and initial data" ) + # Definition of field support parameter if( FECalculation): - myProblem.setInitialField(inputfile,fieldName,time_iteration, solverlab.NODES) + supportOfField=solverlab.NODES else: - myProblem.setInitialField(inputfile,fieldName,time_iteration, solverlab.CELLS) + supportOfField=solverlab.CELLS + + # Set the mesh and initial data + initial_data_inputfile="../resources/BoxWithMeshWithTriangularCells"; + initial_data_fieldName="Temperature"; + print("Loading unstructured mesh and initial data", " in file ", initial_data_inputfile ) + initial_data_time_iteration=0# default value is 0 + initial_data_time_sub_iteration=0# default value is 0 + initial_data_time_meshLevel=0# default value is 0 + myProblem.setInitialField(initial_data_inputfile, initial_data_fieldName, initial_data_time_iteration, initial_data_time_sub_iteration, initial_data_time_meshLevel, supportOfField) + + #### Optional physical values (default value is zero) : fluid temperature field, heat transfert coefficient, heat power field + # Loading and setting fluid temperature field + fluid_temperature_inputfile="../resources/BoxWithMeshWithTriangularCells"; + fluid_temperature_fieldName="Fluid temperature field"; + fluid_temperature_time_iteration=0# default value is 0 + fluid_temperature_time_sub_iteration=0# default value is 0 + fluid_temperature_meshLevel=0# default value is 0 + print("Loading field :", fluid_temperature_fieldName, " in file ", fluid_temperature_inputfile) + fluidTemperatureField=solverlab.Field(fluid_temperature_inputfile, supportOfField, fluid_temperature_fieldName, fluid_temperature_time_iteration, fluid_temperature_time_sub_iteration, fluid_temperature_meshLevel) + myProblem.setFluidTemperatureField(fluidTemperatureField) + # Setting heat transfert coefficient + heatTransfertCoeff=1000.;#fluid/solid exchange coefficient, default value is 0 + myProblem.setHeatTransfertCoeff(heatTransfertCoeff); + # Loading heat power field + heat_power_inputfile="../resources/BoxWithMeshWithTriangularCells"; + heat_power_fieldName="Heat power field"; + heat_power_time_iteration=0# default value is 0 + heat_power_time_sub_iteration=0# default value is 0 + heat_power_meshLevel=0# default value is 0 + print("Loading field :", heat_power_fieldName, " in file ", heat_power_inputfile) + heatPowerField=solverlab.Field(heat_power_inputfile, supportOfField, heat_power_fieldName, heat_power_time_iteration, heat_power_time_sub_iteration, heat_power_meshLevel) + myProblem.setHeatPowerField(heatPowerField) # the boundary conditions : if( FECalculation): @@ -63,20 +82,16 @@ def DiffusionEquation_2DSpherical(FECalculation): # set the numerical method myProblem.setTimeScheme( solverlab.Explicit); - myProblem.setLinearSolver(solverlab.GMRES,solverlab.ILU); - - # name of result file - if( FECalculation): - fileName = "2DSpherical_FE"; - else: - fileName = "2DSpherical_FV"; + max_nb_its_lin_solver = 50 + myProblem.setLinearSolver(solverlab.GMRES, solverlab.ILU, max_nb_its_lin_solver ); # computation parameters - MaxNbOfTimeStep = 3 ; - freqSave = 1; - cfl = 0.95; - maxTime = 100000000; - precision = 1e-6; + MaxNbOfTimeStep = 3 ;# default value is 10 + freqSave = 1;# default value is 1 + cfl = 0.95;# default value is 1 + maxTime = 100000000;# default value is 10 + precision = 1e-6;# default value is 1e-6 + result_directory="."# default value = current directory myProblem.setCFL(cfl); myProblem.setPrecision(precision); @@ -84,20 +99,22 @@ def DiffusionEquation_2DSpherical(FECalculation): myProblem.setTimeMax(maxTime); myProblem.setFreqSave(freqSave); myProblem.setFileName(fileName); + myProblem.setResultDirectory(result_directory) + myProblem.setSaveFileFormat(solverlab.MED)#default value is solverlab.VTK # evolution myProblem.initialize(); - print("Running python "+ fileName ); + print("Running python test "+ fileName ); ok = myProblem.run(); if (ok): - print( "Simulation python " + fileName + " is successful !" ); + print( "Python simulation " + fileName + " is successful !" ); pass else: - print( "Simulation python " + fileName + " failed ! " ); + print( "Python simulation " + fileName + " failed ! " ); pass - print( "------------ End of calculation !!! -----------" ); + print( "------------ End of simulation !!! -----------" ); myProblem.terminate(); return ok @@ -105,6 +122,11 @@ def DiffusionEquation_2DSpherical(FECalculation): if __name__ == """__main__""": if len(sys.argv) >1 : FECalculation = bool(int(sys.argv[1])) - DiffusionEquation_2DSpherical(FECalculation) + # name of result file + if( FECalculation): + fileName = "2DSpherical_FE";# default value is "" + else: + fileName = "2DSpherical_FV";# default value is "" + DiffusionEquation_2DSpherical(FECalculation, fileName) else : raise ValueError("DiffusionEquation_2DSpherical : missing one argument") diff --git a/CoreFlows/examples/resources/BoxWithMeshWithTriangularCells.med b/CoreFlows/examples/resources/BoxWithMeshWithTriangularCells.med index de865a0725cc7f544116dffa2f9a2eb3da1c3008..2ae956ab43d262343d00afce2147ec84c8325bee 100755 GIT binary patch literal 326991 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 F1^^LdBqsm> -- 2.39.2