| Line 441... |
Line 441... |
break;
|
break;
|
}
|
}
|
switch (st->bilinear_form) {
|
switch (st->bilinear_form) {
|
case STINNER_HERMITIAN:
|
case STINNER_HERMITIAN:
|
case STINNER_B_HERMITIAN:
|
case STINNER_B_HERMITIAN:
|
ierr = VecMDot(n,st->w,y,p);CHKERRQ(ierr);
|
ierr = VecMDot(st->w,n,y,p);CHKERRQ(ierr);
|
break;
|
break;
|
case STINNER_SYMMETRIC:
|
case STINNER_SYMMETRIC:
|
case STINNER_B_SYMMETRIC:
|
case STINNER_B_SYMMETRIC:
|
ierr = VecMTDot(n,st->w,y,p);CHKERRQ(ierr);
|
ierr = VecMTDot(st->w,n,y,p);CHKERRQ(ierr);
|
break;
|
break;
|
}
|
}
|
ierr = PetscLogEventEnd(ST_InnerProduct,st,x,0,0);CHKERRQ(ierr);
|
ierr = PetscLogEventEnd(ST_InnerProduct,st,x,0,0);CHKERRQ(ierr);
|
PetscFunctionReturn(0);
|
PetscFunctionReturn(0);
|
}
|
}
|
| Line 483... |
Line 483... |
switch (st->bilinear_form) {
|
switch (st->bilinear_form) {
|
case STINNER_HERMITIAN:
|
case STINNER_HERMITIAN:
|
case STINNER_B_HERMITIAN:
|
case STINNER_B_HERMITIAN:
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
if (mdot) {
|
if (mdot) {
|
ierr = VecMDotBegin(n,st->w,y,p);CHKERRQ(ierr);
|
ierr = VecMDotBegin(st->w,n,y,p);CHKERRQ(ierr);
|
} else {
|
} else {
|
for (i=0;i<n;i++) {
|
for (i=0;i<n;i++) {
|
ierr = VecDotBegin(st->w,y[i],p+i);CHKERRQ(ierr);
|
ierr = VecDotBegin(st->w,y[i],p+i);CHKERRQ(ierr);
|
}
|
}
|
}
|
}
|
break;
|
break;
|
case STINNER_SYMMETRIC:
|
case STINNER_SYMMETRIC:
|
case STINNER_B_SYMMETRIC:
|
case STINNER_B_SYMMETRIC:
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
if (mdot) {
|
if (mdot) {
|
ierr = VecMTDotBegin(n,st->w,y,p);CHKERRQ(ierr);
|
ierr = VecMTDotBegin(st->w,n,y,p);CHKERRQ(ierr);
|
} else {
|
} else {
|
for (i=0;i<n;i++) {
|
for (i=0;i<n;i++) {
|
ierr = VecTDotBegin(st->w,y[i],p+i);CHKERRQ(ierr);
|
ierr = VecTDotBegin(st->w,y[i],p+i);CHKERRQ(ierr);
|
}
|
}
|
}
|
}
|
| Line 527... |
Line 527... |
switch (st->bilinear_form) {
|
switch (st->bilinear_form) {
|
case STINNER_HERMITIAN:
|
case STINNER_HERMITIAN:
|
case STINNER_B_HERMITIAN:
|
case STINNER_B_HERMITIAN:
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
if (mdot) {
|
if (mdot) {
|
ierr = VecMDotEnd(n,st->w,y,p);CHKERRQ(ierr);
|
ierr = VecMDotEnd(st->w,n,y,p);CHKERRQ(ierr);
|
} else {
|
} else {
|
for (i=0;i<n;i++) {
|
for (i=0;i<n;i++) {
|
ierr = VecDotEnd(st->w,y[i],p+i);CHKERRQ(ierr);
|
ierr = VecDotEnd(st->w,y[i],p+i);CHKERRQ(ierr);
|
}
|
}
|
}
|
}
|
break;
|
break;
|
case STINNER_SYMMETRIC:
|
case STINNER_SYMMETRIC:
|
case STINNER_B_SYMMETRIC:
|
case STINNER_B_SYMMETRIC:
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
ierr = PetscOptionsHasName(st->prefix,"-mdot",&mdot);CHKERRQ(ierr);
|
if (mdot) {
|
if (mdot) {
|
ierr = VecMTDotEnd(n,st->w,y,p);CHKERRQ(ierr);
|
ierr = VecMTDotEnd(st->w,n,y,p);CHKERRQ(ierr);
|
} else {
|
} else {
|
for (i=0;i<n;i++) {
|
for (i=0;i<n;i++) {
|
ierr = VecTDotEnd(st->w,y[i],p+i);CHKERRQ(ierr);
|
ierr = VecTDotEnd(st->w,y[i],p+i);CHKERRQ(ierr);
|
}
|
}
|
}
|
}
|