Fixed new getters for descriptor fields.

psblas3-type-indexed
Salvatore Filippone 18 years ago
parent 264d07d678
commit 2b48a169bf

@ -1,16 +0,0 @@
1
nella f90_psdspmm si se work non è presente si alloca work1
con dimensione pari a:
llwork= 2*desc_a%matrix_data(psb_n_col_)
if (a%pr(1) /= 0) llwork = llwork + in * ik
if (a%pl(1) /= 0) llwork = llwork + im * ik
però, poi, in psdspmm_.c si controlla semplicemente che la
dimensione di work si maggiore di desc_a%matrix_data(psb_n_row_).
perchè allocare un'area così grande?
2
nella psdspmm_.c nella parte in cui la matrice è trasposta si
usa il puntatore xcopy e si passa desc_as%matrix_data(psb_n_row_)
anzichè lldx: perchè?

@ -585,8 +585,6 @@ subroutine psb_dmdots(res, x, y, desc_a, info)
end subroutine psb_dmdots end subroutine psb_dmdots
subroutine psb_ddot2v(res, x, y,w,z,desc_a, info) subroutine psb_ddot2v(res, x, y,w,z,desc_a, info)
use psb_descriptor_type use psb_descriptor_type
use psb_check_mod use psb_check_mod

@ -219,7 +219,6 @@ function psb_dnrm2v(x, desc_a, info)
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
call psb_chkvect(m,1,size(x),ix,jx,desc_a,info,iix,jjx) call psb_chkvect(m,1,size(x),ix,jx,desc_a,info,iix,jjx)
if(info.ne.0) then if(info.ne.0) then
info=4010 info=4010

@ -176,6 +176,7 @@ subroutine psb_dspmm(alpha,a,x,beta,y,desc_a,info,&
n = psb_cd_get_global_cols(desc_a) n = psb_cd_get_global_cols(desc_a)
nrow = psb_cd_get_local_rows(desc_a) nrow = psb_cd_get_local_rows(desc_a)
ncol = psb_cd_get_local_cols(desc_a) ncol = psb_cd_get_local_cols(desc_a)
lldx = size(x,1) lldx = size(x,1)
lldy = size(y,1) lldy = size(y,1)
@ -499,6 +500,7 @@ subroutine psb_dspmv(alpha,a,x,beta,y,desc_a,info,&
n = psb_cd_get_global_cols(desc_a) n = psb_cd_get_global_cols(desc_a)
nrow = psb_cd_get_local_rows(desc_a) nrow = psb_cd_get_local_rows(desc_a)
ncol = psb_cd_get_local_cols(desc_a) ncol = psb_cd_get_local_cols(desc_a)
lldx = size(x) lldx = size(x)
lldy = size(y) lldy = size(y)

@ -177,6 +177,7 @@ subroutine psb_dspsm(alpha,a,x,beta,y,desc_a,info,&
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
nrow = psb_cd_get_local_rows(desc_a) nrow = psb_cd_get_local_rows(desc_a)
ncol = psb_cd_get_local_cols(desc_a) ncol = psb_cd_get_local_cols(desc_a)
lldx = size(x,1) lldx = size(x,1)
lldy = size(y,1) lldy = size(y,1)
@ -469,6 +470,7 @@ subroutine psb_dspsv(alpha,a,x,beta,y,desc_a,info,&
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
nrow = psb_cd_get_local_rows(desc_a) nrow = psb_cd_get_local_rows(desc_a)
ncol = psb_cd_get_local_cols(desc_a) ncol = psb_cd_get_local_cols(desc_a)
lldx = size(x) lldx = size(x)
lldy = size(y) lldy = size(y)

@ -343,7 +343,6 @@ subroutine psb_zamaxvs (res,x,desc_a, info)
ijx=1 ijx=1
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
call psb_chkvect(m,1,size(x,1),ix,ijx,desc_a,info,iix,jjx) call psb_chkvect(m,1,size(x,1),ix,ijx,desc_a,info,iix,jjx)
if(info.ne.0) then if(info.ne.0) then
info=4010 info=4010

@ -380,7 +380,6 @@ subroutine psb_zasumvs (res,x,desc_a, info)
jx = 1 jx = 1
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
! check vector correctness ! check vector correctness
call psb_chkvect(m,1,size(x),ix,jx,desc_a,info,iix,jjx) call psb_chkvect(m,1,size(x),ix,jx,desc_a,info,iix,jjx)
if(info.ne.0) then if(info.ne.0) then

@ -75,7 +75,6 @@ subroutine psb_zaxpby(alpha, x, beta,y,desc_a,info, n, jx, jy)
call psb_erractionsave(err_act) call psb_erractionsave(err_act)
ictxt=psb_cd_get_context(desc_a) ictxt=psb_cd_get_context(desc_a)
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
if (np == -ione) then if (np == -ione) then
info = 2010 info = 2010

@ -73,7 +73,6 @@ function psb_zdot(x, y,desc_a, info, jx, jy)
call psb_erractionsave(err_act) call psb_erractionsave(err_act)
ictxt=psb_cd_get_context(desc_a) ictxt=psb_cd_get_context(desc_a)
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
if (np == -ione) then if (np == -ione) then
info = 2010 info = 2010
@ -376,7 +375,6 @@ subroutine psb_zdotvs(res, x, y,desc_a, info)
ix = ione ix = ione
iy = ione iy = ione
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
! check vector correctness ! check vector correctness
call psb_chkvect(m,ione,size(x,1),ix,ix,desc_a,info,iix,jjx) call psb_chkvect(m,ione,size(x,1),ix,ix,desc_a,info,iix,jjx)
if (info == 0) & if (info == 0) &

@ -86,7 +86,6 @@ function psb_znrm2(x, desc_a, info, jx)
endif endif
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)
call psb_chkvect(m,1,size(x,1),ix,ijx,desc_a,info,iix,jjx) call psb_chkvect(m,1,size(x,1),ix,ijx,desc_a,info,iix,jjx)
if(info.ne.0) then if(info.ne.0) then
info=4010 info=4010
@ -217,7 +216,6 @@ function psb_znrm2v(x, desc_a, info)
ix = 1 ix = 1
jx=1 jx=1
m = psb_cd_get_global_rows(desc_a) m = psb_cd_get_global_rows(desc_a)

@ -118,7 +118,6 @@ subroutine psb_zspmm(alpha,a,x,beta,y,desc_a,info,&
call psb_erractionsave(err_act) call psb_erractionsave(err_act)
ictxt=psb_cd_get_context(desc_a) ictxt=psb_cd_get_context(desc_a)
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
if (np == -1) then if (np == -1) then
info = 2010 info = 2010
@ -451,7 +450,6 @@ subroutine psb_zspmv(alpha,a,x,beta,y,desc_a,info,&
call psb_erractionsave(err_act) call psb_erractionsave(err_act)
ictxt=psb_cd_get_context(desc_a) ictxt=psb_cd_get_context(desc_a)
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
if (np == -1) then if (np == -1) then
info = 2010 info = 2010

Loading…
Cancel
Save