| Rev |
Age |
Author |
Path |
Log message |
| 1997 |
1084d 07h |
eromero |
/trunk/src/eps/impls/davidson/common/dvd_schm.c |
- Made STPrecondGetMatForPC(st,P) be equivalent to STGetKSP(st,ksp), KSPSetOperator(ksp,0,P)
- Infinite value shifts supported by STPrecond
- Adapted Davidson solvers for STPrecond |
| 1992 |
1090d 22h |
eromero |
/trunk/src/eps/impls/davidson/common/dvd_schm.c |
- Corrected the state of the vectors in functions in dvd_blas
- Removed many calls to PetscObjectStateIncrease in VecComp object because the PETSc interface for Vec does it
- Completed the code that frees all the allocated objects by the Davidson solver |
| 1991 |
1091d 05h |
eromero |
/trunk/src/eps/impls/davidson/common/dvd_schm.c |
- Davidson uses the eps->conv_func as convergence test |
| 1987 |
1093d 17h |
eromero |
/trunk/src/eps/impls/davidson/common/dvd_schm.c |
- Merging from branches/davidsones to trunk |
| 1985 |
1094d 06h |
eromero |
/branches/davidsones/src/eps/impls/davidson/common/dvd_schm.c |
- Renamed EPS_DAVIDSONES to EPS_DAVIDSON
- Changed davidsones.* davidson.*
- Removed the custom fortran wrapper tags from the EPSGDGet* |
| 1980 |
1097d 22h |
eromero |
/branches/davidsones/src/eps/impls/davidson/common/dvd_schm.c |
- Include EPSGD???InitialSize and -eps_gd_initial_size replacing -eps_davidsones_initv
- Removed the experimental macros EPSObj{Get,Set}{Prop,2Props} and replacing by functions in traditional PETSc manner
- Added 3 projectors more
- Removed dvd_improvex_{gdbasic,gdolsen}. The GD is implemented by dvd_improvex_jd with ksp==0. Advantages: less code and GD can use the JD projectors |
| 1976 |
1101d 01h |
eromero |
/branches/davidsones/src/eps/impls/davidson/common/dvd_schm.c |
- Transformation of the experimental Davidson solver "DAVIDSONES" to a full integrated family of solvers "davidson". The first solver is "gd". The code shared by the "davidson" solvers is packaged by the virtual solver "DAVIDSON": EPSSetUp_DAVIDSON, EPSSolve_DAVIDSON...
- Partially fixed bug: the size of the starting searching subspace is set by eps->nini, but this value can be negative.
- Integration of "davidsones_harm" as "eps_extraction" |
| 1965 |
1126d 06h |
eromero |
/dvd_schm.c |
- bug fixed: residual vector in complex case but real arithmetic is computed with normalized eigenvectors
- bug fixed: a ksp doesn't allow operators of different size; so VecComp can operate with a virtual size
- bug fixed: RJDQZ needs that JD correction equation operates with eigenvectors instead of Schur vectors. For that the projectors of JD correction equation can operate with any projection of the left and right subspaces
- bug fixed: block size adapted to RJDQZ
- Added an UpdateVectors routine for non-contiguous stored vectors
- bug fixed: enforced restarting when improveX doesn't add any vector
- bug fixed: recomputing eigenvalues adapted to RJDQZ
- bugs fixed in SlepcUpdateVectorsS and SlepcUpdateStrideVectors
- lots of minor bug fixed... |
| 1883 |
1233d 21h |
eromero |
/dvd_schm.c |
- Independent harmonic target and EPS target
- Added the 'fix' parameter for JD
- Homogeneous EPS target representation
- Fixed bug: error extracting the eigenvectors from the converged Schur decomposition for the complex case
- Fixed bug: harmonic eigenpairs weren't back-transformed
- Updated the Krylov initial subspace and added as new option
- Added 'calcpairs_proj_res' for custom residual computation
- Standard problems solved with harmonic are handled as generalized
- Fixed minor bugs in 'dvd_calcpairs_projeig_qz_gen', 'dvd_schm_basic_preconf', 'dvd_managementV_basic'
- 'dvd_improvex_jd_proj_uv_0' implements an advance correction equation, instead of a collection
- Bug fixed: 'dvd_jacobi_precond' test if MatGetDiagonal is available
- Bug fixed: corrected some harmonic transformations
- Changed HarmType_t to enum type
- Added function lists called in the starting and in the ending of EPSSolve
- Improved the support of preconditioners |
| 1875 |
1267d 03h |
eromero |
/dvd_schm.c |
The user initial subspace routine allows to add random vectors. |
| 1874 |
1268d 16h |
eromero |
/dvd_schm.c |
- First support for multiple initial vectors
- Davidson solver adaptation for the multiple initial vectors interface |
| 1867 |
1296d 17h |
eromero |
/dvd_schm.c |
First version of Jacobi-Davidson variant based on Manel Cruz (mbc@isep.ipp.pt) code |
| 1809 |
1360d 00h |
eromero |
/dvd_schm.c |
- Update of olsen variant for harmonics version |
| 1795 |
1363d 03h |
eromero |
/dvd_schm.c |
- Rewriting of updating, restarting and converging routines
- First implementation of harmonics (only largest eigenvalues tested). For some ncv, the solver doesn't converge or converge to wrong eigenpairs. Moreover, it is unstable when the number of processors grows |
| 1777 |
1379d 07h |
eromero |
/dvd_schm.c |
Create a branch for davidsones with MatMultZ, because the resulting improvement is not important enough. |
| 1764 |
1421d 23h |
eromero |
/dvd_schm.c |
- calculate H and J in one reduction at dvd_improvex_gdolsen_undef_std function.
- support for B-orthonormal version.
- the convergence test takes account of X norm.
Warning: dvd_improvex_gdbasic is not support. |
| 1756 |
1437d 05h |
eromero |
/dvd_schm.c |
- Compute the converged eigenvectors from the Schur vectors.
- Differentiation between hermitian-definite problem (DVD_IS(d->sEP,DVD_EP_HERMITIAN)) and hermitian matrices problem (DVD_IS(d->sA,DVD_MAT_HERMITIAN) && DVD_IS(d->sB,DVD_MAT_HERMITIAN)).
- When the eigenproblem is hermitian-definite, the left eigenvalues aren't computed explicitly.
- bug repaired: the rr version of calcpairs, when the matrices were hermitian, the projected matrices were upper triangular, but EPSDenseGHEP and EPSDenseHEP worked with lower triangular ones.
WARNING: complex code and standard problem don't work. |
| 1751 |
1444d 00h |
eromero |
/dvd_schm.c |
Quick and dirty left eigenspace management implementation. It seems it works for some examples. |
| 1750 |
1444d 07h |
eromero |
/dvd_schm.c |
First calcPairs QZ version. It doesn't work yet, because its lack of the left eigenspace management. |
| 1743 |
1479d 00h |
eromero |
/dvd_schm.c |
First implementation of GD+k restart.
Deflation is not implemented. |