diff --git a/test/pargen/psb_d_pde2d.F90 b/test/pargen/psb_d_pde2d.F90 index 7b99fb05..a7de0585 100644 --- a/test/pargen/psb_d_pde2d.F90 +++ b/test/pargen/psb_d_pde2d.F90 @@ -757,8 +757,22 @@ program psb_d_pde2d call psb_barrier(ctxt) t1 = psb_wtime() eps = 1.d-6 - call psb_krylov(kmethd,a,prec,bv,xxv,eps,desc_a,info,& - & itmax=itmax,iter=iter,err=err,itrace=itrace,istop=istopc,irst=irst) + select case(psb_toupper(trim(kmethd))) + case('RICHARDSON') + call psb_richardson(a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,& + & err=err,itrace=itrace,& + & istop=istopc) + case('BICGSTAB','BICGSTABL','BICG','CG','CGS','FCG','GCR','RGMRES') + call psb_krylov(kmethd,a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,err=err,itrace=itrace,& + & istop=istopc,irst=irst) + case default + write(psb_err_unit,*) 'Unknown method :"',trim(kmethd),'"' + info=psb_err_invalid_input_ + call psb_errpush(info,name) + goto 9999 + end select if(info /= psb_success_) then info=psb_err_from_subroutine_ diff --git a/test/pargen/psb_d_pde3d.F90 b/test/pargen/psb_d_pde3d.F90 index fca19c80..d634f245 100644 --- a/test/pargen/psb_d_pde3d.F90 +++ b/test/pargen/psb_d_pde3d.F90 @@ -814,8 +814,22 @@ program psb_d_pde3d call psb_barrier(ctxt) t1 = psb_wtime() eps = 1.d-6 - call psb_krylov(kmethd,a,prec,bv,xxv,eps,desc_a,info,& - & itmax=itmax,iter=iter,err=err,itrace=itrace,istop=istopc,irst=irst) + select case(psb_toupper(trim(kmethd))) + case('RICHARDSON') + call psb_richardson(a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,& + & err=err,itrace=itrace,& + & istop=istopc) + case('BICGSTAB','BICGSTABL','BICG','CG','CGS','FCG','GCR','RGMRES') + call psb_krylov(kmethd,a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,err=err,itrace=itrace,& + & istop=istopc,irst=irst) + case default + write(psb_err_unit,*) 'Unknown method :"',trim(kmethd),'"' + info=psb_err_invalid_input_ + call psb_errpush(info,name) + goto 9999 + end select if(info /= psb_success_) then info=psb_err_from_subroutine_ diff --git a/test/pargen/psb_s_pde2d.F90 b/test/pargen/psb_s_pde2d.F90 index 9bfcc271..14b45a0f 100644 --- a/test/pargen/psb_s_pde2d.F90 +++ b/test/pargen/psb_s_pde2d.F90 @@ -757,8 +757,22 @@ program psb_s_pde2d call psb_barrier(ctxt) t1 = psb_wtime() eps = 1.d-6 - call psb_krylov(kmethd,a,prec,bv,xxv,eps,desc_a,info,& - & itmax=itmax,iter=iter,err=err,itrace=itrace,istop=istopc,irst=irst) + select case(psb_toupper(trim(kmethd))) + case('RICHARDSON') + call psb_richardson(a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,& + & err=err,itrace=itrace,& + & istop=istopc) + case('BICGSTAB','BICGSTABL','BICG','CG','CGS','FCG','GCR','RGMRES') + call psb_krylov(kmethd,a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,err=err,itrace=itrace,& + & istop=istopc,irst=irst) + case default + write(psb_err_unit,*) 'Unknown method :"',trim(kmethd),'"' + info=psb_err_invalid_input_ + call psb_errpush(info,name) + goto 9999 + end select if(info /= psb_success_) then info=psb_err_from_subroutine_ diff --git a/test/pargen/psb_s_pde3d.F90 b/test/pargen/psb_s_pde3d.F90 index b62073d2..51c6e849 100644 --- a/test/pargen/psb_s_pde3d.F90 +++ b/test/pargen/psb_s_pde3d.F90 @@ -814,8 +814,22 @@ program psb_s_pde3d call psb_barrier(ctxt) t1 = psb_wtime() eps = 1.d-6 - call psb_krylov(kmethd,a,prec,bv,xxv,eps,desc_a,info,& - & itmax=itmax,iter=iter,err=err,itrace=itrace,istop=istopc,irst=irst) + select case(psb_toupper(trim(kmethd))) + case('RICHARDSON') + call psb_richardson(a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,& + & err=err,itrace=itrace,& + & istop=istopc) + case('BICGSTAB','BICGSTABL','BICG','CG','CGS','FCG','GCR','RGMRES') + call psb_krylov(kmethd,a,prec,bv,xxv,eps,& + & desc_a,info,itmax=itmax,iter=iter,err=err,itrace=itrace,& + & istop=istopc,irst=irst) + case default + write(psb_err_unit,*) 'Unknown method :"',trim(kmethd),'"' + info=psb_err_invalid_input_ + call psb_errpush(info,name) + goto 9999 + end select if(info /= psb_success_) then info=psb_err_from_subroutine_ diff --git a/test/pargen/runs/ppde.inp b/test/pargen/runs/ppde.inp index 6b758ab9..ae8bfe8f 100644 --- a/test/pargen/runs/ppde.inp +++ b/test/pargen/runs/ppde.inp @@ -1,5 +1,5 @@ 17 Number of entries below this -BICGSTAB Iterative method BICGSTAB CGS BICG BICGSTABL RGMRES FCG CGR +BICGSTAB Iterative method BICGSTAB CGS BICG BICGSTABL RGMRES FCG CGR RICHARDSON BJAC Preconditioner NONE DIAG BJAC CSR Storage format for matrix A: CSR COO 200 Domain size (acutal system is this**3 (pde3d) or **2 (pde2d) )