PetscErrorCode KSPDestroy_TEST(KSP ksp) { PetscErrorCode ierr; PetscFunctionBegin; ierr = KSPDefaultDestroy(ksp);CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode KSPDestroy_Chebychev(KSP ksp) { PetscErrorCode ierr; PetscFunctionBegin; ierr = KSPDefaultDestroy(ksp);CHKERRQ(ierr); ierr = PetscObjectComposeFunctionDynamic((PetscObject)ksp,"KSPChebychevSetEigenvalues_C","",PETSC_NULL);CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode KSPDestroy_BCGSL(KSP ksp) { KSP_BCGSL *bcgsl = (KSP_BCGSL*)ksp->data; PetscErrorCode ierr; PetscFunctionBegin; ierr = PetscFree5(AY0c,AYlc,AYtc,MZa,MZb); CHKERRQ(ierr); ierr = KSPDefaultDestroy(ksp); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode KSPDestroy_CG(KSP ksp) { KSP_CG *cg = (KSP_CG*)ksp->data; PetscErrorCode ierr; PetscFunctionBegin; /* free space used for singular value calculations */ if (ksp->calc_sings) { ierr = PetscFree4(cg->e,cg->d,cg->ee,cg->dd);CHKERRQ(ierr); } ierr = KSPDefaultDestroy(ksp);CHKERRQ(ierr); ierr = PetscObjectComposeFunctionDynamic((PetscObject)ksp,"KSPCGSetType_C","",PETSC_NULL);CHKERRQ(ierr); ierr = PetscObjectComposeFunctionDynamic((PetscObject)ksp,"KSPCGUseSingleReduction_C","",PETSC_NULL);CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode KSPDestroy_NASH(KSP ksp) { PetscErrorCode ierr; PetscFunctionBegin; /***************************************************************************/ /* Clear composed functions */ /***************************************************************************/ ierr = PetscObjectComposeFunctionDynamic((PetscObject)ksp,"KSPNASHSetRadius_C","",PETSC_NULL);CHKERRQ(ierr); ierr = PetscObjectComposeFunctionDynamic((PetscObject)ksp,"KSPNASHGetNormD_C","",PETSC_NULL);CHKERRQ(ierr); ierr = PetscObjectComposeFunctionDynamic((PetscObject)ksp,"KSPNASHGetObjFcn_C","",PETSC_NULL);CHKERRQ(ierr); /***************************************************************************/ /* Destroy KSP object. */ /***************************************************************************/ ierr = KSPDefaultDestroy(ksp);CHKERRQ(ierr); PetscFunctionReturn(0); }