6 def DriftModel_2DInclinedBoilingChannel():
10 print( "Loading unstructured mesh " );
11 inputfile="../resources/CanalTrianglesStructures.med";
19 # set the limit field for each boundary
30 gravite = [0] * spaceDim
37 myProblem = cf.DriftModel(cf.around155bars600K,spaceDim);
38 nVar =myProblem.getNumberOfVariables();
40 # Prepare for the initial condition
44 VV_Constant[0] = inletConcentration;
45 VV_Constant[1] = outletPressure ;
46 VV_Constant[2] = inletVelocityX;
47 VV_Constant[3] = inletVelocityY;
48 VV_Constant[4] = inletTemperature ;
50 #Initial field creation
51 print("Building mesh and initial data " );
52 myProblem.setInitialFieldConstant(spaceDim,VV_Constant,
53 xinf,xsup,nx,"wall","wall",
54 yinf,ysup,ny,"inlet","outlet",
57 # the boundary conditions
58 myProblem.setOutletBoundaryCondition("outlet", outletPressure,[xsup,ysup]);
59 myProblem.setInletBoundaryCondition("inlet", inletTemperature, inletConcentration, inletVelocityX, inletVelocityY);
60 myProblem.setWallBoundaryCondition("wall", wallTemperature, wallVelocityX, wallVelocityY);
62 # set physical parameters
63 myProblem.setHeatSource(heatPower);
64 myProblem.setGravity(gravite);
66 # set the numerical method
67 myProblem.setNumericalScheme(cf.staggered, cf.Implicit);
68 myProblem.setWellBalancedCorrection(True);
69 myProblem.setNonLinearFormulation(cf.VFFC)
72 fileName = "2DInclinedChannelGravityTriangles";
74 # simulation parameters
81 myProblem.setCFL(cfl);
82 myProblem.setPrecision(precision);
83 myProblem.setMaxNbOfTimeStep(MaxNbOfTimeStep);
84 myProblem.setTimeMax(maxTime);
85 myProblem.setFreqSave(freqSave);
86 myProblem.setFileName(fileName);
87 myProblem.usePrimitiveVarsInNewton(True)
90 myProblem.initialize();
94 print( "Simulation python " + fileName + " is successful !" );
97 print( "Simulation python " + fileName + " failed ! " );
100 print( "------------ End of calculation !!! -----------" );
102 myProblem.terminate();
105 if __name__ == """__main__""":
106 DriftModel_2DInclinedBoilingChannel()