From b65c51d5e799d6d4033af01e2f5f027308e7abbc Mon Sep 17 00:00:00 2001 From: Salvatore Filippone Date: Tue, 25 Jul 2017 10:39:59 +0100 Subject: [PATCH] Propagated fixes from Daniela to S/C/Z --- examples/fileread/mld_cexample_ml.f90 | 3 +-- examples/fileread/mld_dexample_ml.f90 | 4 ++-- examples/fileread/mld_sexample_ml.f90 | 3 +-- examples/fileread/mld_zexample_ml.f90 | 3 +-- examples/pdegen/mld_sexample_ml.f90 | 5 ++--- tests/pdegen/mld_s_pde2d.f90 | 15 --------------- tests/pdegen/mld_s_pde3d.f90 | 15 --------------- 7 files changed, 7 insertions(+), 41 deletions(-) diff --git a/examples/fileread/mld_cexample_ml.f90 b/examples/fileread/mld_cexample_ml.f90 index 02bdd290..2167ecd0 100644 --- a/examples/fileread/mld_cexample_ml.f90 +++ b/examples/fileread/mld_cexample_ml.f90 @@ -53,7 +53,7 @@ ! sweeps (with ILU(0) on the blocks) as coarsest-level solver(Sec. 5.1, Fig. 3) ! ! - choice = 3, build a W-cycle preconditioner with 2 hybrid forward/backward -! GS sweeps as pre/post-smoother, a distributed coarsest +! GS sweeps as pre/post-smoother, a distributed coarsest ! matrix, and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) ! ! The matrix and the rhs are read from files (if an rhs is not available, the @@ -237,7 +237,6 @@ program mld_cexample_ml call P%init('ML',info) call P%set('ML_CYCLE','WCYCLE',info) - call P%set('SMOOTHER_TYPE','FBGS',info) call P%set('SMOOTHER_SWEEPS',2,info) call P%set('COARSE_SOLVE','MUMPS',info) call P%set('COARSE_MAT','DIST',info) diff --git a/examples/fileread/mld_dexample_ml.f90 b/examples/fileread/mld_dexample_ml.f90 index 9e9f18b4..c6826ae3 100644 --- a/examples/fileread/mld_dexample_ml.f90 +++ b/examples/fileread/mld_dexample_ml.f90 @@ -53,8 +53,8 @@ ! sweeps (with ILU(0) on the blocks) as coarsest-level solver(Sec. 5.1, Fig. 3) ! ! - choice = 3, build a W-cycle preconditioner with 2 hybrid forward/backward -! GS sweeps as pre/post-smoother, a distributed coarsest matrix, -! and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) +! GS sweeps as pre/post-smoother, a distributed coarsest +! matrix, and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) ! ! The matrix and the rhs are read from files (if an rhs is not available, the ! unit rhs is set). diff --git a/examples/fileread/mld_sexample_ml.f90 b/examples/fileread/mld_sexample_ml.f90 index 03a05dac..b31cae52 100644 --- a/examples/fileread/mld_sexample_ml.f90 +++ b/examples/fileread/mld_sexample_ml.f90 @@ -53,7 +53,7 @@ ! sweeps (with ILU(0) on the blocks) as coarsest-level solver(Sec. 5.1, Fig. 3) ! ! - choice = 3, build a W-cycle preconditioner with 2 hybrid forward/backward -! GS sweeps as pre/post-smoother, a distributed coarsest +! GS sweeps as pre/post-smoother, a distributed coarsest ! matrix, and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) ! ! The matrix and the rhs are read from files (if an rhs is not available, the @@ -237,7 +237,6 @@ program mld_sexample_ml call P%init('ML',info) call P%set('ML_CYCLE','WCYCLE',info) - call P%set('SMOOTHER_TYPE','FBGS',info) call P%set('SMOOTHER_SWEEPS',2,info) call P%set('COARSE_SOLVE','MUMPS',info) call P%set('COARSE_MAT','DIST',info) diff --git a/examples/fileread/mld_zexample_ml.f90 b/examples/fileread/mld_zexample_ml.f90 index c559d7c7..37954615 100644 --- a/examples/fileread/mld_zexample_ml.f90 +++ b/examples/fileread/mld_zexample_ml.f90 @@ -53,7 +53,7 @@ ! sweeps (with ILU(0) on the blocks) as coarsest-level solver(Sec. 5.1, Fig. 3) ! ! - choice = 3, build a W-cycle preconditioner with 2 hybrid forward/backward -! GS sweeps as pre/post-smoother, a distributed coarsest +! GS sweeps as pre/post-smoother, a distributed coarsest ! matrix, and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) ! ! The matrix and the rhs are read from files (if an rhs is not available, the @@ -237,7 +237,6 @@ program mld_zexample_ml call P%init('ML',info) call P%set('ML_CYCLE','WCYCLE',info) - call P%set('SMOOTHER_TYPE','FBGS',info) call P%set('SMOOTHER_SWEEPS',2,info) call P%set('COARSE_SOLVE','MUMPS',info) call P%set('COARSE_MAT','DIST',info) diff --git a/examples/pdegen/mld_sexample_ml.f90 b/examples/pdegen/mld_sexample_ml.f90 index 119405a1..2da5d038 100644 --- a/examples/pdegen/mld_sexample_ml.f90 +++ b/examples/pdegen/mld_sexample_ml.f90 @@ -54,8 +54,8 @@ ! sweeps (with ILU(0) on the blocks) as coarsest-level solver(Sec. 5.1, Fig. 3) ! ! - choice = 3, build a W-cycle preconditioner with 2 hybrid forward/backward -! GS sweeps as pre/post-smoother, a distributed coarsest -! matrix, and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) +! GS sweeps as pre/post-smoother, a distributed coarsest matrix, +! and MUMPS as coarsest-level solver (Sec. 5.1, Fig. 4) ! ! The PDE is a general second order equation in 3d ! @@ -193,7 +193,6 @@ program mld_sexample_ml call P%init('ML',info) call P%set('ML_CYCLE','WCYCLE',info) - call P%set('SMOOTHER_TYPE','FBGS',info) call P%set('SMOOTHER_SWEEPS',2,info) call P%set('COARSE_SOLVE','MUMPS',info) call P%set('COARSE_MAT','DIST',info) diff --git a/tests/pdegen/mld_s_pde2d.f90 b/tests/pdegen/mld_s_pde2d.f90 index 52ede85f..0648063a 100644 --- a/tests/pdegen/mld_s_pde2d.f90 +++ b/tests/pdegen/mld_s_pde2d.f90 @@ -177,9 +177,6 @@ program mld_s_pde2d integer(psb_ipk_) :: thrvsz ! size of threshold vector real(psb_spk_) :: athres ! smoothed aggregation threshold real(psb_spk_) :: ascale ! smoothed aggregation scale factor for threshold - character(len=16) :: aggr_omalg ! algorithm for estimating omega parameter - character(len=16) :: aggr_eig ! Eigenvalue estimation procedure - real(psb_spk_) :: omega_val ! Eigenvalue estimate value integer(psb_ipk_) :: csize ! minimum size of coarsest matrix ! AMG smoother or pre-smoother; also 1-lev preconditioner @@ -298,12 +295,6 @@ program mld_s_pde2d call prec%set('aggr_alg', p_choice%aggr_alg, info) call prec%set('aggr_ord', p_choice%aggr_ord, info) call prec%set('aggr_filter', p_choice%aggr_filter,info) - call prec%set('aggr_omega_alg', p_choice%aggr_omalg, info) - if (psb_toupper(p_choice%aggr_omalg) == 'EIG_EST') then - call prec%set('aggr_eig', p_choice%aggr_eig, info) - else if (psb_toupper(p_choice%aggr_omalg) == 'USER_CHOICE') then - call prec%set('aggr_omega_val', p_choice%omega_val, info) - end if call prec%set('coarse_solve', p_choice%csolve, info) if (psb_toupper(p_choice%csolve) == 'BJAC') & & call prec%set('coarse_subsolve', p_choice%csbsolve, info) @@ -525,9 +516,6 @@ contains read(psb_inp_unit,*) ! dummy read to skip a record end if call read_data(prec%athres,psb_inp_unit) ! smoothed aggr thresh - call read_data(prec%aggr_omalg,psb_inp_unit) ! alg for estimating omega - call read_data(prec%aggr_eig,psb_inp_unit) ! alg for estimating omega - call read_data(prec%omega_val,psb_inp_unit) ! alg for estimating omega ! AMG smoother (or pre-smoother) / 1-lev preconditioner call read_data(prec%smther,psb_inp_unit) ! smoother type call read_data(prec%jsweeps,psb_inp_unit) ! (pre-)smoother / 1-lev prec sweeps @@ -606,9 +594,6 @@ contains end if call psb_bcast(ictxt,prec%athres) call psb_bcast(ictxt,prec%ascale) - call psb_bcast(ictxt,prec%aggr_omalg) - call psb_bcast(ictxt,prec%aggr_eig) - call psb_bcast(ictxt,prec%omega_val) call psb_bcast(icontxt,prec%csize) call psb_bcast(icontxt,prec%cmat) diff --git a/tests/pdegen/mld_s_pde3d.f90 b/tests/pdegen/mld_s_pde3d.f90 index 8460c4b2..73122d2c 100644 --- a/tests/pdegen/mld_s_pde3d.f90 +++ b/tests/pdegen/mld_s_pde3d.f90 @@ -189,9 +189,6 @@ program mld_s_pde3d integer(psb_ipk_) :: thrvsz ! size of threshold vector real(psb_spk_) :: athres ! smoothed aggregation threshold real(psb_spk_) :: ascale ! smoothed aggregation scale factor for threshold - character(len=16) :: aggr_omalg ! algorithm for estimating omega parameter - character(len=16) :: aggr_eig ! Eigenvalue estimation procedure - real(psb_spk_) :: omega_val ! Eigenvalue estimate value integer(psb_ipk_) :: csize ! minimum size of coarsest matrix ! AMG smoother or pre-smoother; also 1-lev preconditioner @@ -311,12 +308,6 @@ program mld_s_pde3d call prec%set('aggr_alg', p_choice%aggr_alg, info) call prec%set('aggr_ord', p_choice%aggr_ord, info) call prec%set('aggr_filter', p_choice%aggr_filter,info) - call prec%set('aggr_omega_alg', p_choice%aggr_omalg, info) - if (psb_toupper(p_choice%aggr_omalg) == 'EIG_EST') then - call prec%set('aggr_eig', p_choice%aggr_eig, info) - else if (psb_toupper(p_choice%aggr_omalg) == 'USER_CHOICE') then - call prec%set('aggr_omega_val', p_choice%omega_val, info) - end if call prec%set('coarse_solve', p_choice%csolve, info) if (psb_toupper(p_choice%csolve) == 'BJAC') & & call prec%set('coarse_subsolve', p_choice%csbsolve, info) @@ -538,9 +529,6 @@ contains read(psb_inp_unit,*) ! dummy read to skip a record end if call read_data(prec%athres,psb_inp_unit) ! smoothed aggr thresh - call read_data(prec%aggr_omalg,psb_inp_unit) ! alg for estimating omega - call read_data(prec%aggr_eig,psb_inp_unit) ! alg for estimating omega - call read_data(prec%omega_val,psb_inp_unit) ! alg for estimating omega ! AMG smoother (or pre-smoother) / 1-lev preconditioner call read_data(prec%smther,psb_inp_unit) ! smoother type call read_data(prec%jsweeps,psb_inp_unit) ! (pre-)smoother / 1-lev prec sweeps @@ -619,9 +607,6 @@ contains end if call psb_bcast(ictxt,prec%athres) call psb_bcast(ictxt,prec%ascale) - call psb_bcast(ictxt,prec%aggr_omalg) - call psb_bcast(ictxt,prec%aggr_eig) - call psb_bcast(ictxt,prec%omega_val) call psb_bcast(icontxt,prec%csize) call psb_bcast(icontxt,prec%cmat)