7 def DiffusionEquation_1DHeatedRod():
14 print ("Building of a 1D mesh with ", nx ," cells")
16 # set the limit field for each boundary
23 myProblem = cf.DiffusionEquation(spaceDim,FECalculation,rho_ur,cp_ur,lambda_ur);
24 nVar = myProblem.getNumberOfVariables();
27 fluidTemp=573.;#fluid mean temperature
28 heatTransfertCoeff=1000.;#fluid/solid exchange coefficient
29 phi=1e5;#heat power ddensity
30 myProblem.setFluidTemperature(fluidTemp);
31 myProblem.setHeatTransfertCoeff(heatTransfertCoeff);
32 myProblem.setHeatSource(phi);
37 #Initial field creation
38 print("Building initial data" );
39 #Syntax should be simplified when problem of enum swig is solved
40 myProblem.setInitialFieldConstant(spaceDim,VV_Constant,xinf,xsup,nx,"Neumann","Neumann",0.,0.,0,"","",0.,0.,0,"","",cm.NODES);
42 # the boundary conditions
43 myProblem.setNeumannBoundaryCondition("Neumann");
45 # set the numerical method
46 myProblem.setTimeScheme( cf.Explicit);
47 # myProblem.setLinearSolver(GMRES,ILU);
50 fileName = "1DRodTemperature_FE";
52 # computation parameters
59 myProblem.setCFL(cfl);
60 myProblem.setPrecision(precision);
61 myProblem.setMaxNbOfTimeStep(MaxNbOfTimeStep);
62 myProblem.setTimeMax(maxTime);
63 myProblem.setFreqSave(freqSave);
64 myProblem.setFileName(fileName);
67 myProblem.initialize();
68 print("Running python "+ fileName );
72 print( "Simulation python " + fileName + " is successful !" );
75 print( "Simulation python " + fileName + " failed ! " );
78 print( "------------ End of calculation !!! -----------" );
80 myProblem.terminate();
83 if __name__ == """__main__""":
84 DiffusionEquation_1DHeatedRod()