| Line 83... |
Line 83... |
|
|
switch (qep->problem_type) {
|
switch (qep->problem_type) {
|
case QEP_GENERAL: i = 0; break;
|
case QEP_GENERAL: i = 0; break;
|
case QEP_HERMITIAN: i = 2; break;
|
case QEP_HERMITIAN: i = 2; break;
|
case QEP_GYROSCOPIC: i = 4; break;
|
case QEP_GYROSCOPIC: i = 4; break;
|
default: SETERRQ(1,"Wrong value of qep->problem_type");
|
default: SETERRQ(((PetscObject)qep)->comm,1,"Wrong value of qep->problem_type");
|
}
|
}
|
i += ctx->cform-1;
|
i += ctx->cform-1;
|
|
|
if (ctx->explicitmatrix) {
|
if (ctx->explicitmatrix) {
|
ctx->x1 = ctx->x2 = ctx->y1 = ctx->y2 = PETSC_NULL;
|
ctx->x1 = ctx->x2 = ctx->y1 = ctx->y2 = PETSC_NULL;
|
| Line 113... |
Line 113... |
case QEP_SMALLEST_MAGNITUDE: which = EPS_SMALLEST_MAGNITUDE; break;
|
case QEP_SMALLEST_MAGNITUDE: which = EPS_SMALLEST_MAGNITUDE; break;
|
case QEP_LARGEST_REAL: which = EPS_LARGEST_REAL; break;
|
case QEP_LARGEST_REAL: which = EPS_LARGEST_REAL; break;
|
case QEP_SMALLEST_REAL: which = EPS_SMALLEST_REAL; break;
|
case QEP_SMALLEST_REAL: which = EPS_SMALLEST_REAL; break;
|
case QEP_LARGEST_IMAGINARY: which = EPS_LARGEST_IMAGINARY; break;
|
case QEP_LARGEST_IMAGINARY: which = EPS_LARGEST_IMAGINARY; break;
|
case QEP_SMALLEST_IMAGINARY: which = EPS_SMALLEST_IMAGINARY; break;
|
case QEP_SMALLEST_IMAGINARY: which = EPS_SMALLEST_IMAGINARY; break;
|
default: SETERRQ(1,"Wrong value of which");
|
default: SETERRQ(((PetscObject)qep)->comm,1,"Wrong value of which");
|
}
|
}
|
ierr = EPSSetWhichEigenpairs(ctx->eps,which);CHKERRQ(ierr);
|
ierr = EPSSetWhichEigenpairs(ctx->eps,which);CHKERRQ(ierr);
|
ierr = EPSSetLeftVectorsWanted(ctx->eps,qep->leftvecs);CHKERRQ(ierr);
|
ierr = EPSSetLeftVectorsWanted(ctx->eps,qep->leftvecs);CHKERRQ(ierr);
|
ierr = EPSSetDimensions(ctx->eps,qep->nev,qep->ncv,qep->mpd);CHKERRQ(ierr);
|
ierr = EPSSetDimensions(ctx->eps,qep->nev,qep->ncv,qep->mpd);CHKERRQ(ierr);
|
ierr = EPSSetTolerances(ctx->eps,qep->tol,qep->max_it);CHKERRQ(ierr);
|
ierr = EPSSetTolerances(ctx->eps,qep->tol,qep->max_it);CHKERRQ(ierr);
|
| Line 479... |
Line 479... |
|
|
PetscFunctionBegin;
|
PetscFunctionBegin;
|
if (cform==PETSC_IGNORE) PetscFunctionReturn(0);
|
if (cform==PETSC_IGNORE) PetscFunctionReturn(0);
|
if (cform==PETSC_DECIDE || cform==PETSC_DEFAULT) ctx->cform = 1;
|
if (cform==PETSC_DECIDE || cform==PETSC_DEFAULT) ctx->cform = 1;
|
else {
|
else {
|
if (cform!=1 && cform!=2) SETERRQ(PETSC_ERR_ARG_OUTOFRANGE,"Invalid value of argument 'cform'");
|
if (cform!=1 && cform!=2) SETERRQ(((PetscObject)qep)->comm,PETSC_ERR_ARG_OUTOFRANGE,"Invalid value of argument 'cform'");
|
ctx->cform = cform;
|
ctx->cform = cform;
|
}
|
}
|
PetscFunctionReturn(0);
|
PetscFunctionReturn(0);
|
}
|
}
|
EXTERN_C_END
|
EXTERN_C_END
|