6 def DriftModel_1DChannelGravity():
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] = 578 ;
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.setInletEnthalpyBoundaryCondition("inlet",inletEnthalpy,inletConc,inletVelocityX)
44 myProblem.setOutletBoundaryCondition("outlet", outletPressure,[xsup]);
46 # set physical parameters
47 myProblem.setGravity(gravite);
49 # set the numerical method
50 myProblem.setNumericalScheme(cf.upwind, cf.Implicit);
51 myProblem.setNonLinearFormulation(cf.VFRoe)
54 fileName = "1DChannelGravityUpwindImplicite";
56 # simulation parameters
63 myProblem.setCFL(cfl);
64 myProblem.setPrecision(precision);
65 myProblem.setMaxNbOfTimeStep(MaxNbOfTimeStep);
66 myProblem.setTimeMax(maxTime);
67 myProblem.setFreqSave(freqSave);
68 myProblem.setFileName(fileName);
69 myProblem.saveAllFields(True);
70 myProblem.usePrimitiveVarsInNewton(True);
73 myProblem.initialize();
77 print( "Simulation python " + fileName + " is successful !" );
80 print( "Simulation python " + fileName + " failed ! " );
83 print( "------------ End of calculation !!! -----------" );
85 myProblem.terminate();
88 if __name__ == """__main__""":
89 DriftModel_1DChannelGravity()