diff --git a/mlprec/impl/smoother/mld_c_as_smoother_apply_vect.f90 b/mlprec/impl/smoother/mld_c_as_smoother_apply_vect.f90 index 3c74d6ae..1f442af4 100644 --- a/mlprec/impl/smoother/mld_c_as_smoother_apply_vect.f90 +++ b/mlprec/impl/smoother/mld_c_as_smoother_apply_vect.f90 @@ -126,7 +126,8 @@ subroutine mld_c_as_smoother_apply_vect(alpha,sm,x,beta,y,desc_data,trans,& ! call psb_geasb(tx,sm%desc_data,info,mold=x%v,scratch=.true.) call psb_geasb(ty,sm%desc_data,info,mold=x%v,scratch=.true.) - call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + ! Need to zero tx because of the apply_restr call. call tx%zero() ! ! Unroll the first iteration and fold it inside SELECT CASE diff --git a/mlprec/impl/smoother/mld_d_as_smoother_apply_vect.f90 b/mlprec/impl/smoother/mld_d_as_smoother_apply_vect.f90 index 3063e398..2c8114a7 100644 --- a/mlprec/impl/smoother/mld_d_as_smoother_apply_vect.f90 +++ b/mlprec/impl/smoother/mld_d_as_smoother_apply_vect.f90 @@ -126,7 +126,8 @@ subroutine mld_d_as_smoother_apply_vect(alpha,sm,x,beta,y,desc_data,trans,& ! call psb_geasb(tx,sm%desc_data,info,mold=x%v,scratch=.true.) call psb_geasb(ty,sm%desc_data,info,mold=x%v,scratch=.true.) - call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + ! Need to zero tx because of the apply_restr call. call tx%zero() ! ! Unroll the first iteration and fold it inside SELECT CASE diff --git a/mlprec/impl/smoother/mld_s_as_smoother_apply_vect.f90 b/mlprec/impl/smoother/mld_s_as_smoother_apply_vect.f90 index ea1d20ba..9b89d844 100644 --- a/mlprec/impl/smoother/mld_s_as_smoother_apply_vect.f90 +++ b/mlprec/impl/smoother/mld_s_as_smoother_apply_vect.f90 @@ -126,7 +126,8 @@ subroutine mld_s_as_smoother_apply_vect(alpha,sm,x,beta,y,desc_data,trans,& ! call psb_geasb(tx,sm%desc_data,info,mold=x%v,scratch=.true.) call psb_geasb(ty,sm%desc_data,info,mold=x%v,scratch=.true.) - call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + ! Need to zero tx because of the apply_restr call. call tx%zero() ! ! Unroll the first iteration and fold it inside SELECT CASE diff --git a/mlprec/impl/smoother/mld_z_as_smoother_apply_vect.f90 b/mlprec/impl/smoother/mld_z_as_smoother_apply_vect.f90 index a0fe467b..bb3cce93 100644 --- a/mlprec/impl/smoother/mld_z_as_smoother_apply_vect.f90 +++ b/mlprec/impl/smoother/mld_z_as_smoother_apply_vect.f90 @@ -126,7 +126,8 @@ subroutine mld_z_as_smoother_apply_vect(alpha,sm,x,beta,y,desc_data,trans,& ! call psb_geasb(tx,sm%desc_data,info,mold=x%v,scratch=.true.) call psb_geasb(ty,sm%desc_data,info,mold=x%v,scratch=.true.) - call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + call psb_geasb(ww,sm%desc_data,info,mold=x%v,scratch=.true.) + ! Need to zero tx because of the apply_restr call. call tx%zero() ! ! Unroll the first iteration and fold it inside SELECT CASE