Renamed tent_prol to smooth_prol_.

stopcriterion
Salvatore Filippone 18 years ago
parent 89ffbacdf1
commit 65c2358e2e

@ -72,7 +72,7 @@ subroutine mld_daggrmat_asb(a,desc_a,ac,desc_ac,p,info)
end if
if (aggr_dump) call psb_csprt(90+me,ac,head='% Raw aggregate.')
case(tent_prol_,biz_prol_)
case(smooth_prol_,biz_prol_)
if (aggr_dump) call psb_csprt(70+me,a,head='% Input matrix')
call mld_aggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)

@ -108,7 +108,7 @@ subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
naggrm1 = sum(p%nlaggr(1:me))
naggrp1 = sum(p%nlaggr(1:me+1))
ml_global_nmb = ( (p%iprcparm(aggr_kind_) == tent_prol_).or.&
ml_global_nmb = ( (p%iprcparm(aggr_kind_) == smooth_prol_).or.&
& ( (p%iprcparm(aggr_kind_) == biz_prol_).and.&
& (p%iprcparm(coarse_mat_) == repl_mat_)) )
@ -369,7 +369,7 @@ subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
call psb_numbmm(a,am1,am3)
if (debug) write(0,*) me,'Done NUMBMM 2'
if (p%iprcparm(aggr_kind_) == tent_prol_) then
if (p%iprcparm(aggr_kind_) == smooth_prol_) then
call psb_transp(am1,am2,fmt='COO')
nzl = am2%infoa(psb_nnz_)
i=0
@ -397,7 +397,7 @@ subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
endif
if (debug) write(0,*) me,'starting sphalo/ rwxtd'
if (p%iprcparm(aggr_kind_) == tent_prol_) then
if (p%iprcparm(aggr_kind_) == smooth_prol_) then
! am2 = ((i-wDA)Ptilde)^T
call psb_sphalo(am3,desc_a,am4,info,clcnv=.false.)
@ -454,7 +454,7 @@ subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
select case(p%iprcparm(aggr_kind_))
case(tent_prol_)
case(smooth_prol_)
select case(p%iprcparm(coarse_mat_))

@ -393,7 +393,7 @@ subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
n_row = psb_cd_get_local_rows(baseprecv(ilev)%base_desc)
if (ismth /= no_smooth_) then
if (ismth == tent_prol_) &
if (ismth == smooth_prol_) &
& call psb_halo(mlprec_wrk(ilev+1)%y2l,baseprecv(ilev+1)%desc_data,&
& info,work=work)
call psb_csmm(done,baseprecv(ilev+1)%av(sm_pr_),mlprec_wrk(ilev+1)%y2l,&
@ -548,7 +548,7 @@ subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
if (ismth /= no_smooth_) then
if (ismth == tent_prol_) &
if (ismth == smooth_prol_) &
& call psb_halo(mlprec_wrk(ilev+1)%y2l,&
& baseprecv(ilev+1)%desc_data,info,work=work)
call psb_csmm(done,baseprecv(ilev+1)%av(sm_pr_),mlprec_wrk(ilev+1)%y2l,&
@ -708,7 +708,7 @@ subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
n_row = psb_cd_get_local_rows(baseprecv(ilev)%base_desc)
if (ismth /= no_smooth_) then
if (ismth == tent_prol_) &
if (ismth == smooth_prol_) &
& call psb_halo(mlprec_wrk(ilev+1)%y2l,baseprecv(ilev+1)%desc_data,&
& info,work=work)
call psb_csmm(done,baseprecv(ilev+1)%av(sm_pr_),mlprec_wrk(ilev+1)%y2l,&

@ -72,7 +72,7 @@ subroutine mld_dmlprec_bld(a,desc_a,p,info)
call mld_check_def(p%iprcparm(aggr_alg_),'aggregation',&
& dec_aggr_,is_legal_ml_aggr_kind)
call mld_check_def(p%iprcparm(aggr_kind_),'Smoother kind',&
& tent_prol_,is_legal_ml_smth_kind)
& smooth_prol_,is_legal_ml_smth_kind)
call mld_check_def(p%iprcparm(coarse_mat_),'Coarse matrix',&
& distr_mat_,is_legal_ml_coarse_mat)
call mld_check_def(p%iprcparm(smooth_pos_),'smooth_pos',&

@ -162,7 +162,7 @@ subroutine mld_dprecinit(p,ptype,info,nlev)
p%baseprecv(ilev_)%iprcparm(n_ovr_) = 0
p%baseprecv(ilev_)%iprcparm(ml_type_) = mult_ml
p%baseprecv(ilev_)%iprcparm(aggr_alg_) = dec_aggr_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = tent_prol_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = smooth_prol_
p%baseprecv(ilev_)%iprcparm(coarse_mat_) = distr_mat_
p%baseprecv(ilev_)%iprcparm(smooth_pos_) = post_smooth_
p%baseprecv(ilev_)%iprcparm(aggr_eig_) = max_norm_
@ -183,7 +183,7 @@ subroutine mld_dprecinit(p,ptype,info,nlev)
p%baseprecv(ilev_)%iprcparm(n_ovr_) = 0
p%baseprecv(ilev_)%iprcparm(ml_type_) = mult_ml
p%baseprecv(ilev_)%iprcparm(aggr_alg_) = dec_aggr_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = tent_prol_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = smooth_prol_
p%baseprecv(ilev_)%iprcparm(coarse_mat_) = distr_mat_
p%baseprecv(ilev_)%iprcparm(smooth_pos_) = post_smooth_
p%baseprecv(ilev_)%iprcparm(aggr_eig_) = max_norm_

@ -174,7 +174,7 @@ module mld_prec_type
integer, parameter :: glb_aggr_=2, new_dec_aggr_=3
integer, parameter :: new_glb_aggr_=4, max_aggr_=new_glb_aggr_
! Legal values for entry: aggr_kind_
integer, parameter :: no_smooth_=0, tent_prol_=1, biz_prol_=2
integer, parameter :: no_smooth_=0, smooth_prol_=1, biz_prol_=2
! Legal values for entry: aggr_eig_
integer, parameter :: max_norm_=0, user_choice_=999
! Legal values for entry: coarse_mat_

@ -72,7 +72,7 @@ subroutine mld_zaggrmat_asb(a,desc_a,ac,desc_ac,p,info)
end if
if (aggr_dump) call psb_csprt(90+me,ac,head='% Raw aggregate.')
case(tent_prol_,biz_prol_)
case(smooth_prol_,biz_prol_)
if (aggr_dump) call psb_csprt(70+me,a,head='% Input matrix')
call mld_aggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)

@ -108,7 +108,7 @@ subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
naggrm1 = sum(p%nlaggr(1:me))
naggrp1 = sum(p%nlaggr(1:me+1))
ml_global_nmb = ( (p%iprcparm(aggr_kind_) == tent_prol_).or.&
ml_global_nmb = ( (p%iprcparm(aggr_kind_) == smooth_prol_).or.&
& ( (p%iprcparm(aggr_kind_) == biz_prol_).and.&
& (p%iprcparm(coarse_mat_) == repl_mat_)) )
@ -369,7 +369,7 @@ subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
call psb_numbmm(a,am1,am3)
if (debug) write(0,*) me,'Done NUMBMM 2'
if (p%iprcparm(aggr_kind_) == tent_prol_) then
if (p%iprcparm(aggr_kind_) == smooth_prol_) then
call psb_transp(am1,am2,fmt='COO')
nzl = am2%infoa(psb_nnz_)
i=0
@ -397,7 +397,7 @@ subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
endif
if (debug) write(0,*) me,'starting sphalo/ rwxtd'
if (p%iprcparm(aggr_kind_) == tent_prol_) then
if (p%iprcparm(aggr_kind_) == smooth_prol_) then
! am2 = ((i-wDA)Ptilde)^T
call psb_sphalo(am3,desc_a,am4,info,clcnv=.false.)
@ -454,7 +454,7 @@ subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
select case(p%iprcparm(aggr_kind_))
case(tent_prol_)
case(smooth_prol_)
select case(p%iprcparm(coarse_mat_))

@ -387,7 +387,7 @@ subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
n_row = psb_cd_get_local_rows(baseprecv(ilev)%base_desc)
if (ismth /= no_smooth_) then
if (ismth == tent_prol_) &
if (ismth == smooth_prol_) &
& call psb_halo(mlprec_wrk(ilev+1)%y2l,baseprecv(ilev+1)%desc_data,&
& info,work=work)
call psb_csmm(zone,baseprecv(ilev+1)%av(sm_pr_),mlprec_wrk(ilev+1)%y2l,&
@ -542,7 +542,7 @@ subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
if (ismth /= no_smooth_) then
if (ismth == tent_prol_) &
if (ismth == smooth_prol_) &
& call psb_halo(mlprec_wrk(ilev+1)%y2l,&
& baseprecv(ilev+1)%desc_data,info,work=work)
call psb_csmm(zone,baseprecv(ilev+1)%av(sm_pr_),mlprec_wrk(ilev+1)%y2l,&
@ -702,7 +702,7 @@ subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
n_row = psb_cd_get_local_rows(baseprecv(ilev)%base_desc)
if (ismth /= no_smooth_) then
if (ismth == tent_prol_) &
if (ismth == smooth_prol_) &
& call psb_halo(mlprec_wrk(ilev+1)%y2l,baseprecv(ilev+1)%desc_data,&
& info,work=work)
call psb_csmm(zone,baseprecv(ilev+1)%av(sm_pr_),mlprec_wrk(ilev+1)%y2l,&

@ -73,7 +73,7 @@ subroutine mld_zmlprec_bld(a,desc_a,p,info)
call mld_check_def(p%iprcparm(aggr_alg_),'aggregation',&
& dec_aggr_,is_legal_ml_aggr_kind)
call mld_check_def(p%iprcparm(aggr_kind_),'Smoother kind',&
& tent_prol_,is_legal_ml_smth_kind)
& smooth_prol_,is_legal_ml_smth_kind)
call mld_check_def(p%iprcparm(coarse_mat_),'Coarse matrix',&
& distr_mat_,is_legal_ml_coarse_mat)
call mld_check_def(p%iprcparm(smooth_pos_),'smooth_pos',&

@ -158,7 +158,7 @@ subroutine mld_zprecinit(p,ptype,info,nlev)
p%baseprecv(ilev_)%iprcparm(n_ovr_) = 0
p%baseprecv(ilev_)%iprcparm(ml_type_) = mult_ml
p%baseprecv(ilev_)%iprcparm(aggr_alg_) = dec_aggr_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = tent_prol_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = smooth_prol_
p%baseprecv(ilev_)%iprcparm(coarse_mat_) = distr_mat_
p%baseprecv(ilev_)%iprcparm(smooth_pos_) = post_smooth_
p%baseprecv(ilev_)%iprcparm(aggr_eig_) = max_norm_
@ -178,7 +178,7 @@ subroutine mld_zprecinit(p,ptype,info,nlev)
p%baseprecv(ilev_)%iprcparm(n_ovr_) = 0
p%baseprecv(ilev_)%iprcparm(ml_type_) = mult_ml
p%baseprecv(ilev_)%iprcparm(aggr_alg_) = dec_aggr_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = tent_prol_
p%baseprecv(ilev_)%iprcparm(aggr_kind_) = smooth_prol_
p%baseprecv(ilev_)%iprcparm(coarse_mat_) = distr_mat_
p%baseprecv(ilev_)%iprcparm(smooth_pos_) = post_smooth_
p%baseprecv(ilev_)%iprcparm(aggr_eig_) = max_norm_

Loading…
Cancel
Save