Outils pour utilisateurs

Outils du site


sunfluidh:new_numerical_methods_setup_namelist

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
sunfluidh:new_numerical_methods_setup_namelist [2017/09/28 18:13] – [Simulation control] yannsunfluidh:new_numerical_methods_setup_namelist [2018/05/29 15:06] (Version actuelle) – [Poisson_NumericalMethod] witko
Ligne 96: Ligne 96:
      * __"Home-SORMultigrid-ConstantMatrixCoef"__ : Successive Over-Relaxed method (SOR) coupled with a nV-cycle multigrid method in order to accelerate the convergence. The matrix elements depend on the cell size only (constant elements). This method is directly implemented in the code ("homemade" development). No external library is required to use it. The associated parameters are set in the namelist [[HomeData_PoissonSolver_Namelist |HomeData_PoissonSolver]] .      * __"Home-SORMultigrid-ConstantMatrixCoef"__ : Successive Over-Relaxed method (SOR) coupled with a nV-cycle multigrid method in order to accelerate the convergence. The matrix elements depend on the cell size only (constant elements). This method is directly implemented in the code ("homemade" development). No external library is required to use it. The associated parameters are set in the namelist [[HomeData_PoissonSolver_Namelist |HomeData_PoissonSolver]] .
      * __"Home-HelmholtzApproximation"__ : Poisson's operator (constant matrix elements) is approximated by a Helmholtz's operator (experimental method proposed by J.L. Guermond) - For incompressible flow only. This method is directly implemented in the code ("homemade" development). No external library is required to use it. No parameter setting is needed.      * __"Home-HelmholtzApproximation"__ : Poisson's operator (constant matrix elements) is approximated by a Helmholtz's operator (experimental method proposed by J.L. Guermond) - For incompressible flow only. This method is directly implemented in the code ("homemade" development). No external library is required to use it. No parameter setting is needed.
-     * __"Home-PartialDiagonalization"__ : Partial diagonalisation of the Laplacian operator (constant elements). BEWARE : the problem must be separable. This method is directly implemented in the code ("homemade" development). No external library is required to use it. No parameter setting is needed.+     * __"Home-PartialDiagonalization"__ : Partial diagonalisation of the Laplacian operator (constant elements). BEWARE : the problem must be separable. This method is directly implemented in the code ("homemade" development). External library Lapack and Blas is required to use it. The link must be specified in the makefile. No parameter setting is needed.
      * __"Home-SORMultigrid-VariableMatrixCoef"__ : SOR iterative method coupled with a multigrid method in order to accelerate the convergence. The matrix elements depend on the cell size and the density, the source term is defined from the divergence of the velocity. This method is directly implemented in the code ("homemade" development). No external library is required to use it. The associated parameters are set in the namelist [[HomeData_PoissonSolver_Namelist |HomeData_PoissonSolver]] .      * __"Home-SORMultigrid-VariableMatrixCoef"__ : SOR iterative method coupled with a multigrid method in order to accelerate the convergence. The matrix elements depend on the cell size and the density, the source term is defined from the divergence of the velocity. This method is directly implemented in the code ("homemade" development). No external library is required to use it. The associated parameters are set in the namelist [[HomeData_PoissonSolver_Namelist |HomeData_PoissonSolver]] .
      * __"Hypre-ConstantMatrixCoef"__ : Poisson's equation is solved by the HYPRE library tools. The matrix elements are constants. The parameters of the HYPRE library are set in the namelist [[HypreData_PoissonSolver_Namelist |HypreData_PoissonSolver]] .      * __"Hypre-ConstantMatrixCoef"__ : Poisson's equation is solved by the HYPRE library tools. The matrix elements are constants. The parameters of the HYPRE library are set in the namelist [[HypreData_PoissonSolver_Namelist |HypreData_PoissonSolver]] .
      * __"Hypre-VariableMatrixCoef"__: Poisson's equation is solved by the HYPRE library tools. The matrix elements are non-constants. The parameters of the HYPRE library are set in the namelist [[HypreData_PoissonSolver_Namelist |HypreData_PoissonSolver]] .      * __"Hypre-VariableMatrixCoef"__: Poisson's equation is solved by the HYPRE library tools. The matrix elements are non-constants. The parameters of the HYPRE library are set in the namelist [[HypreData_PoissonSolver_Namelist |HypreData_PoissonSolver]] .
      
-==== Simulation control ===== 
  
-We here resort to a specific namelist named "Simulation_Management. It is also used in the next section "Data acquisition". 
-We specify here some parameters in order to define the numerical time step as well as stop criteria and recording rates related to backup and check files. 
-Two examples are given.  
-The first one corresponds to a simulation starting at t= 0 with a variable time step.  
- 
- 
-   &Simulation_Management Restart_Parameter= 0                             ,!--- Option value for starting the simulation from t=0. 
-         Steady_Flow_Stopping_Criterion_Enabled = .false. ,!--- Stop criterion for steady flows. When it is enabled, residues between two successive flow fields are computed 
-         Steady_Flow_Stopping_Criterion = 1.D-20          ,!--- convergence tolerance threshold for a steady flow solution (it works only when the previous parameter is enabled) 
-         Temporal_Iterations_Number = 10                  ,!--- maximum value of time iterations before stopping the computation 
-         Final_Time = 3.D+01                              ,!--- Maximum value of time before stopping the computation 
-         TimeStep_Type = 1 ,                              ,!--- Option value for specifying a variable time-step computed from a CFL criterion 
-         CFL_Min = 0.05                                   ,!--- Minimum value of the CFL criterion imposed by the user when the simulation starts 
-         CFL_Max = 0.4                                    ,!--- Maximum value of the CFL criterion imposed by the user after n time iterations (here n= 100, see the next parameter) 
-         Iterations_For_Timestep_Linear_Progress= 100     ,!--- Number of time iterations over which the CFL criterion increase linearly between CFL_Min and CFL_Max 
-         Simulation_Backup_Rate                 = 1000    ,!--- Recording rate (in time-iteration units) for generating backup files (save_fld_xxxxx_y.d , save_var_xxxxx_y.d) 
-         Simulation_Checking_Rate               = 200     /!--- Recording rate (in time-iteration units) for writing some relevant check data in a file checkcalc_xxxxx.d 
-                            
-The second example corresponds to a restart of the previous simulation with a uniform time step. 
- 
-  &Simulation_Management Restart_Parameter= 3             ,!--- Option value for resuming the simulation from the end of a previous computation. 
-         Steady_Flow_Stopping_Criterion_Enabled = .false. ,!--- Stop criterion for steady flows. When it is enabled, residues between two successive flow fields are computed 
-         Steady_Flow_Stopping_Criterion = 1.D-20          ,!--- convergence tolerance threshold for a steady flow solution (it works only when the previous parameter is enabled) 
-         Temporal_Iterations_Number = 1000                ,!--- maximum value of time iterations before stopping the computation 
-         Final_Time = 6.D+01                              ,!--- Maximum value of time before stopping the computation 
-         TimeStep_Type = 0 ,                              ,!--- Option value for specifying a constant time-step 
-         Timestep_Max = 1.e-3,                            ,!--- Value of the time step 
-         Iterations_For_Timestep_Linear_Progress= 100     ,!--- Number of time iterations over which the CFL criterion increase linearly between CFL_Min and CFL_Max 
-         Simulation_Backup_Rate                 = 1000    ,!--- Recording rate (in time-iteration units) for generating backup files (save_fld_xxxxx_y.d , save_var_xxxxx_y.d) 
-         Simulation_Checking_Rate               = 200     /!--- Recording rate (in time-iteration units) for writing some relevant check data in a file checkcalc_xxxxx.d 
-                           Fields_Recording_Rate = 1.D+00 , 
-                           Probe_Recording_Rate                   = 10     , 
-                           Start_Time_For_Statistics= 1.D+2               ,  
-                           Time_Range_Statistic_Calculation = 1.D+00  / 
- 
-For more information on this data set, [[sunfluidh:simulation_management_setup_namelist|click here]]. 
- 
-</note important> 
-Keep in mind the time step must be chosen with caution because it can generate numerical instabilities when it is too much large. The numerical stability depends on the property of the numerical methods used for solving the conservation equations It often relies on the CFL criterion which have not to exceeded a reference value. This value depends on the numerical scheme properties as well as the computational problem. 
-   * For semi-implicit schemes proposed here, a maximum CFL-value about 0.5 is generally prescribed for usual computations, but it could be smaller for problems with strong gradients. 
-   * For explicit schemes, the CFL criterion also depends on the viscous/diffusive time scales as well as the space dimension of the problem. As a consequence, the CFL value prescribed is generally between $0.5^{n-1}$ and $0.5^n$, where n is the dimension of the problem. 
-When the time-step value is constant, the user can verify if the CFL criterion is respected by checking regularly the file checkcalc_xxxxx.d 
-</note> 
sunfluidh/new_numerical_methods_setup_namelist.1506615209.txt.gz · Dernière modification : 2017/09/28 18:13 de yann

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki