Commit 14f0dff0 authored by Guillaume Demesy's avatar Guillaume Demesy

options petsc/slepc 3.9

parent c1d6c93e
Pipeline #2108 passed with stage
in 1 minute 38 seconds
......@@ -497,30 +497,13 @@ PostOperation {
}
}
// In the list of changes of PETSc 3.9
// http://www.mcs.anl.gov/petsc/documentation/changes/39.html
// MatSolverPackage is replaced with MatSolverType
//
// So you have to change in the command line option:
// -st_pc_factor_mat_solver_package mumps
// to:
// -st_pc_factor_mat_solver_type mumps
// fine tuning slecp options
// -pep_ncv 600 (set size of the Krylov subspace)
// -pep_mpd 600
// -pep_toar_locking 0 ("do not take an EV for granted")
eig_tol = 1e-6;
slepc_options_nep_pol = " -nep_max_it 1000 -nep_type nleigs -nep_target_magnitude ";
// // Warning slepc > 3.8 : -nep_nleigs_rational => -nep_rational
slepc_options_nep_rat = Sprintf(" -nep_max_it 1000 -nep_type nleigs -nep_nleigs_rational -nep_target_magnitude -nep_tol %.10f -nep_view",eig_tol);
// slepc_options_nep_rat = Sprintf(" -nep_max_it 1000 -nep_type nleigs -nep_rational -nep_target_magnitude -nep_tol %.10f ",eig_tol);
slepc_options_nep_rat = Sprintf(" -nep_max_it 1000 -nep_type nleigs -nep_nleigs_rational -nep_target_magnitude -nep_tol %.10f -nep_view ",eig_tol);
// slepc_options_nep_rat = Sprintf(" -nep_type nleigs -nep_rational ");
// // Warning petsc > 3.9 st_pc_factor_mat_solver_package => st_pc_factor_mat_solver_type
slepc_options_st = "-solve -st_type sinvert -st_ksp_type preonly -st_pc_type lu -st_pc_factor_mat_solver_package mumps -petsc_prealloc 200 -pos";
// slepc_options_st = "-solve -st_type sinvert -st_ksp_type preonly -st_pc_type lu -st_pc_factor_mat_solver_type mumps -petsc_prealloc 200 -pos";
slepc_options_st = " -solve -st_type sinvert -st_ksp_type preonly -st_pc_type lu -st_pc_factor_mat_solver_type mumps -petsc_prealloc 200 -pos";
slepc_options_pep = Sprintf(" -pep_max_it 400 -pep_target_magnitude -pep_tol %.10f ",eig_tol);
......@@ -559,5 +542,5 @@ str_slepc_options = StrCat(str_slepc_options," -nep_monitor_all :temp_eigenvalue
DefineConstant[
R_ = {StrCat("res_",which_res), Name "GetDP/1ResolutionChoices", Visible 1},
C_ = {Sprintf(StrCat("-solve -pos -v2 -slepc ",str_slepc_options,slepc_options_rg)), Name "GetDP/9ComputeCommand", Visible 1},
C_ = {Sprintf(StrCat("-solve -pos -v 10 -slepc ",str_slepc_options,slepc_options_rg)), Name "GetDP/9ComputeCommand", Visible 1},
P_ = {StrCat("postop_",which_res), Name "GetDP/2PostOperationChoices", Visible 1}];
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment