6 def DriftModel_1DBoilingChannel():
10 print("Building mesh " );
15 # set the limit field for each boundary
25 myProblem = cf.DriftModel(cf.around155bars600K,spaceDim);
26 nVar = myProblem.getNumberOfVariables();
28 # Prepare for the initial condition
29 VV_Constant =[0]*nVar;
32 VV_Constant[0] = inletConc;
33 VV_Constant[1] = outletPressure ;
34 VV_Constant[2] = inletVelocityX;
35 VV_Constant[3] = inletTemperature ;
38 #Initial field creation
39 print("Building initial data " );
40 myProblem.setInitialFieldConstant( spaceDim, VV_Constant, xinf, xsup, nx,"inlet","outlet");
42 # set the boundary conditions
43 myProblem.setInletBoundaryCondition("inlet",inletTemperature,inletConc,inletVelocityX)
44 myProblem.setOutletBoundaryCondition("outlet", outletPressure,[xsup]);
46 # set physical parameters
47 myProblem.setHeatSource(heatPower);
49 # set the numerical method
50 myProblem.setNumericalScheme(cf.upwind, cf.Implicit);
51 myProblem.setWellBalancedCorrection(True);
52 myProblem.setNonLinearFormulation(cf.VFFC)
55 fileName = "1DBoilingChannelUpwindWBImplicite";
57 # simulation parameters
64 myProblem.setCFL(cfl);
65 myProblem.setPrecision(precision);
66 myProblem.setMaxNbOfTimeStep(MaxNbOfTimeStep);
67 myProblem.setTimeMax(maxTime);
68 myProblem.setFreqSave(freqSave);
69 myProblem.setFileName(fileName);
70 myProblem.saveAllFields(True);
71 myProblem.usePrimitiveVarsInNewton(True);
74 myProblem.initialize();
78 print( "Simulation python " + fileName + " is successful !" );
81 print( "Simulation python " + fileName + " failed ! " );
84 print( "------------ End of calculation !!! -----------" );
86 myProblem.terminate();
89 if __name__ == """__main__""":
90 DriftModel_1DBoilingChannel()