Please respond to the list. The mpd parameter means "maximum projected dimension". You can think of the projected problem as the "sequential" part of the computation, that is not parallelized ("small" dense eigenproblem). When you run with
ZjQcmQRYFpfptBannerStart
This
Computing the full spectrum is always an unpleasant task. But if you cannot avoid it, I would suggest that you compute the eigenvalues in two runs: n/2 largest real eigenvalues and n/2 smallest real. If your matrix-vector product is cheap,
ZjQcmQRYFpfptBannerStart
This
Don't use -mat_mumps_icntl_14 to reduce the memory used by MUMPS.
Most likely the problem is that the interval you gave is too large and contains
too many eigenvalues (SLEPc needs to allocate at least one vector per each
eigenvalue). You can count the eigenvalues in the interval with the
> El 19 nov 2019, a las 22:05, Yann Jobic escribió:
>
> Thanks for the fast answer !
> The error coming from MUMPS is :
> On return from DMUMPS, INFOG(1)= -9
> On return from DMUMPS, INFOG(2)=29088157
> The matrix size : 4972410*4972410
You may want to try running with
Are you getting an error from MUMPS or from BV? What is the error message you
get? What is the size of the matrix? How many eigenvalues do you need to
compute?
In principle you can use any KSP+PC, see section 3.4.1 of the users manual. If
you have a good preconditioner, then an alternative to
JD sets STPRECOND at EPSSetUp(), if it was not set before. So I guess you need
to add -st_type precond on the command line, so that it is set at
EPSSetFromOptions().
Jose
> El 5 nov 2019, a las 18:13, Fande Kong escribió:
>
> How about I want to determine the ST type on runtime?
>
>
Currently, the function that passes the preconditioner matrix is specific of
STPRECOND, so you have to add
ierr = STSetType(st,STPRECOND);CHKERRQ(ierr);
before
ierr = STPrecondSetMatForPC(st,B);CHKERRQ(ierr);
otherwise this latter call is ignored.
We may be changing a little bit the way in
Did you follow the instructions in section 3.4.5 of the SLEPc users manual?
Send the output of -eps_view
Jose
> El 4 nov 2019, a las 18:33, Perceval Desforges via petsc-users
> escribió:
>
> Dear petsc and slepc developpers,
>
> I am using slepc to solve an eigenvalue problem. Since I need
Yes, it is confusing. Here is the explanation: when you use a target, the
preconditioner is built from matrix A-sigma*B. By default, instead of
TARGET_MAGNITUDE we set LARGEST_MAGNITUDE, and in Jacobi-Davidson we treat this
case by setting sigma=PETSC_MAX_REAL. In this case, the preconditioner
I now see what is happening. In the expression of the paper the antishift has
different sign compared to the expression used in SLEPc (see the users manual):
(A-sigma*B)^{-1}*(A+nu*B)x = \theta x
So nu=-sigma is a forbidden value, otherwise both factors cancel out (I will
fix the interface so
Try setting -eps_target -1 instead of -st_shift -1
Does sinvert work with target -1?
Can you send me the matrices so that I can reproduce the issue?
Jose
> El 27 sept 2019, a las 13:11, Michael Werner escribió:
>
> Thank you for the link to the paper, it's quite interesting and pretty
> close
> El 25 sept 2019, a las 16:18, Michael Werner via petsc-users
> escribió:
>
> Hello,
>
> I'm looking for advice on how to set shift and antishift for the cayley
> spectral transformation. So far I've been using sinvert to find the
> eigenvalues with the smallest real part (but possibly
I have tried with slepc-master and it works:
$ mpiexec -n 2 ./ex1 -eps_ciss_partitions 2
matrix size 774
(-78.7875,8.8022)
(-73.9569,-42.2401)
(-66.9942,-7.50907)
(-62.262,-2.71603)
(-58.9716,0.60)
(-57.9883,0.298729)
(-57.8323,1.06041)
(-56.5317,1.10758)
(-56.0234,45.2405)
(-54.4058,2.88373)
Michael,
In my previous email I should have checked it better. The CISS solver works
indeed with dense matrices:
$ mpiexec -n 2 ./ex2 -n 30 -eps_type ciss -terse -rg_type ellipse
-rg_ellipse_center 1.175 -rg_ellipse_radius 0.075 -eps_ciss_partitions 2
-mat_type dense
2-D Laplacian
If you run with debugging enabled you will get an error at EPSSetOperators()
saying that "eps" and "matrix_petsc" have different communicators. You cannot
pass a sequential matrix to a parallel solver.
Jose
> El 11 sept 2019, a las 5:46, Povolotskyi, Mykhailo via petsc-users
> escribió:
>
In the ring region, you should choose appropriate start and end angles to
narrow down the region, so that it fits closer to the wanted eigenvalues,
otherwise the region spans the whole circumference. Note that there is a fixed
number of integration points around the contour, so if the area is
> El 29 ago 2019, a las 22:20, Povolotskyi, Mykhailo
> escribió:
>
> Thank you for suggestion.
>
> Is it interfaced to SLEPC?
No, could be a future project...
>
>
> On 08/29/2019 04:14 PM, Jose E. Roman wrote:
>> I am not an expert in contour integral eigensolvers. I think difficulties
I am not an expert in contour integral eigensolvers. I think difficulties come
with corners, so ellipses are the best choice. I don't think ring regions are
relevant here.
Have you considered using ScaLAPACK. Some time ago we were able to address
problems of size up to 400k
The CISS solver is supposed to estimate the number of eigenvalues contained in
the contour. My impression is that the estimation is less accurate in case of
rectangular contours, compared to elliptic ones. But of course, with ellipses
it is not possible to fully cover the complex plane unless
See FAQ #10
http://slepc.upv.es/documentation/faq.htm
> El 1 ago 2019, a las 15:58, Yang Bo (Asst Prof) via petsc-users
> escribió:
>
> Hi everyone,
>
> I am trying to use the Shift-and-invert spectral transformations for my
> diagonalisation code. While there is no problem running the code
Internally the solver builds a subspace of dimension L*M, which defaults to 128.
See the details here http://slepc.upv.es/documentation/reports/str11.pdf
I guess the method is not prepared for smallish matrices. Try reducing the
values of L and M.
Jose
> El 11 jul 2019, a las 19:43, Matthew
You can try the following:
- Try with a different DS method: -ds_method 1 or -ds_method 2 (see
DSSetMethod)
- Run with -ds_parallel synchronized (see DSSetParallel)
If it does not help, send a reproducible code to slepc-maint
Jose
> El 1 jul 2019, a las 11:10, Ale Foggia via petsc-users
>
The options -eps_largest_real -eps_smallest_real are exclusive.
The second one, overrides the first one, because both of them call
http://slepc.upv.es/documentation/current/docs/manualpages/EPS/EPSSetWhichEigenpairs.html
You should run the example twice, or create a program that calls
Is your B-matrix singular? Then the solver might be approximating an infinite
eigenvalue even if you ask for smallest real eigenvalues. For Lanczos-type
solvers, it is safer to run with -st_type sinvert -eps_target 0 if you know
that eigenvalues are positive. Or instead of 0 use a target
Use SLEPc 3.11 with PETSc 3.11.
> El 25 abr 2019, a las 13:16, Eda Oktay via petsc-users
> escribió:
>
> Hello everyone,
>
> I am trying to run my program in petsc 3.11.0. It is currently working in
> petsc 3.10.3.
>
> I am using slepc in the program, so when I used 3.10.3 the slepc
I have made a fix in branch jose/maint/change-maxit-lobpcg
It will be included in maint once the nightly tests are clean.
Thanks for reporting this.
Jose
> El 4 abr 2019, a las 23:37, Pieter Ghysels escribió:
>
> Dear Jose,
>
> It indeed works correctly when I set maxit after calling EPSSetUp.
Oops, the intention was to set 5 as the default value, but it is set at
EPSSetUp() so changing it before is useless. This is wrong behaviour. I will
try to fix it tomorrow.
Jose
> El 4 abr 2019, a las 20:45, Pieter Ghysels via petsc-users
> escribió:
>
> Hi,
>
> I'm trying to set the
You could just do
E.getBV().setType(SLEPc.BV.Type.VECS)
before E.setFromOptions()
Jose
> El 3 abr 2019, a las 13:05, Jan Grießer via petsc-users
> escribió:
>
> Hello, everybody,
> I use Splec4py to solve the lowest eigenvalues and corresponding eigenvectors
> of systems up to 20 Mio x
Do not add the ".c" extension. Read my answer: 'make DENEME_TEMIZ_ENYENI_FINAL'
> El 20 mar 2019, a las 11:15, Eda Oktay escribió:
>
> Before using mpicc, I just tried to compile with make DENEME_ENYENI-FINAL.c
> but it says there is nothing to do.
>
> On Wed, Mar 20, 2019, 12:39 PM Jose E.
Mat objects in PETSc are parallel, meaning that the data structure is
distributed. You should use MatGetOwnershipRange() so that each process
accesses its local rows only.
https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Mat/MatGetOwnershipRange.html
This is very basic usage. You
You must compile your program with 'make DENEME_TEMIZ_ENYENI_FINAL' or just
'make', not with 'mpicc DENEME_TEMIZ_ENYENI_FINAL.c'
> El 20 mar 2019, a las 8:25, Eda Oktay via petsc-users
> escribió:
>
> Hello,
>
> I am trying to compile a parallel program DENEME_TEMIZ_ENYENI_FINAL.c in
>
libmpi.so.0, needed by
> > /home/slurm_local/e200781/petsc-3.10.4/arch-linux2-c-debug/lib/libopenblas.so,
> > may conflict with libmpi.so.40
> > /home/slurm_local/e200781/petsc-3.10.4/arch-linux2-c-debug/lib/libpetsc.so:
> > undefined reference to `MatPartitioningParmetis
, 19 Mar 2019 Sal, 13:49 tarihinde şunu
> yazdı:
> Correction: the correct path is
> $PETSC_DIR/$PETSC_ARCH/externalpackages/git.slepc/$PETSC_ARCH/lib/slepc/conf/configure.log
>
>
>
> > El 19 mar 2019, a las 11:46, Jose E. Roman via petsc-users
> > escribió:
>
Correction: the correct path is
$PETSC_DIR/$PETSC_ARCH/externalpackages/git.slepc/$PETSC_ARCH/lib/slepc/conf/configure.log
> El 19 mar 2019, a las 11:46, Jose E. Roman via petsc-users
> escribió:
>
> And what is in $SLEPC_DIR/arch-linux2-c-debug/lib/slepc/conf/configure.
Don't know why it should cause problems. I'd rather try before asking.
> El 28 feb 2019, a las 9:21, Eda Oktay escribió:
>
> Dear Professor Roman,
>
> Thank you for your answer. I used PetscBinaryWrite.m file and converted
> matrices into binary format but I have a question:
>
> When I look
It is better to convert the matrices to PETSc binary format first. One easy way
is to read them into Matlab with mmread.m and write with PETSc's
PetscBinaryWrite.m. This can be done similarly in python.
Jose
> El 12 feb 2019, a las 8:50, Eda Oktay via petsc-users
> escribió:
>
> Hello,
>
>
You are printing the variable as an integer, and it is not an integer, it's a
PetscScalar. Use %g
Jose
> El 8 feb 2019, a las 15:02, Eda Oktay via petsc-users
> escribió:
>
> Hello,
>
> I am trying to test EPSGetEigenpair function on ex11 in EPS.
>
> First, I executed ex11 and get
You need to create a makefile for your program or add rules to an existing
makefile. See section 1.4.2 of SLEPc's user manual.
Jose
> El 8 feb 2019, a las 14:24, Eda Oktay via petsc-users
> escribió:
>
> Hello,
>
> I installed SLEPc during configuration of PETSc and now I am trying to write
This case is treated in the same way as the (shift-and-invert) spectral
transformation. There are nested objects EPS > ST > KSP > PC. By default
ST=SHIFT, which is what you need. So you just have to get access to the KSP/PC
objects to set options.
Basically you can use ex9.py in slepc4py but
One thing you can do is use a symmetric matrix format: -mat_type sbaij
In this way, your matrix will always be symmetric because only the upper
triangular part is stored. The drawback is that efficiency will likely decrease.
To check symmetry, one (possibly bad) way is to take a bunch of random
As Matt points out, the probable cause is that your matrix is not exactly
Hermitian. In our implementation of Lanczos we assume symmetry, so if ||A-A^*||
is non-negligible then some information is being discarded, which may confuse
Lanczos giving some eigenpair as converged when it is not.
Why
This is really strange. We cannot say what is going on, everything seems fine.
Could you try solving the problem as non-Hermitian to see what happens? Just
run with -eps_non_hermitian. Depending on the result, we can suggest other
things to try.
Jose
> El 13 nov 2018, a las 10:58, Ale Foggia
42 matches
Mail list logo