<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Wed, Oct 10, 2018 at 8:41 PM Moritz Cygorek <<a href="mailto:mcygorek@uottawa.ca">mcygorek@uottawa.ca</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div id="m_5272930043455554432divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif">
<p>Thank you very much. Apparently, I've misunderstood what the filter actually does. I thought about the much simpler process, where you diagonalize</p>
<p><br>
</p>
<p>-(A- tau*I)^2 +offset*I</p>
<p><br>
</p>
<p>where tau is my target an offset is large enough so that the global maximum is reached for eigenvalues around tau. </p></div></div></blockquote><div><br></div><div>Is this different from -eps_target_magnitude?</div><div><br></div><div> Thanks,</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div id="m_5272930043455554432divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif"><p>Then you look for the largest eigenvalue of the modified problem and either calculate the Ritz value of the original matrix or calculate back
from the eigenvalues of the modified problem.</p>
<p><br>
</p>
<p>Now, it looks to me like -st_type filter activates something like the package FILTLAN.
</p>
<p><br>
</p>
<p>I guess I can define a MatShell to do the thing I intended in the first place.</p>
<p>But, I guess, this is a common thing, so I am wondering whether it is already implemented somewhere and I just didn't find it in the documentation. Can you say something about this?</p>
<p><br>
</p>
<p>Regards,</p>
<p>Moritz<br>
</p>
<p><br>
</p>
<br>
<br>
<div style="color:rgb(0,0,0)">
<div>
<hr style="display:inline-block;width:98%">
<div id="m_5272930043455554432x_divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> Jose E. Roman <<a href="mailto:jroman@dsic.upv.es" target="_blank">jroman@dsic.upv.es</a>><br>
<b>Sent:</b> Wednesday, October 10, 2018 3:48 PM<br>
<b>To:</b> Moritz Cygorek<br>
<b>Cc:</b> <a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a><br>
<b>Subject:</b> Re: [petsc-users] STFILTER in slepc</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt">
<div class="m_5272930043455554432PlainText">This type of method requires a very high degree polynomial; suggest using degree=100 at least (this is the default value), but larger values may be necessary. Also, for this particular filter the "range" must be approximately equal to
the numerical range; if you have no clue where your first and last eigenvalues are, you may use EPSSolve() calls with EPS_LARGEST_REAL and EPS_SMALLEST_REAL.<br>
<br>
Jose<br>
<br>
> El 10 oct 2018, a las 21:10, Moritz Cygorek <<a href="mailto:mcygorek@uottawa.ca" target="_blank">mcygorek@uottawa.ca</a>> escribió:<br>
> <br>
> Thank you for the fast reply. <br>
> <br>
> I've tried running my program (using the defaul Krylov-Schur method for sparse MPI matrices) with the additional options:<br>
> <br>
> -st_type filter -st_filter_degree 2 -st_filter_interval 2.,2.7 -st_filter_range -2000,2000<br>
> <br>
> and I get the following error message:<br>
> <br>
> [0]PETSC ERROR: STFILTER cannot get the filter specified; please adjust your filter parameters (e.g. increasing the polynomial degree)<br>
> ....<br>
> [0]PETSC ERROR: #1 FILTLAN_GetIntervals() line 451 in /home/applications/sources/libraries/slepc-3.9.2/src/sys/classes/st/impls/filter/filtlan.c<br>
> [0]PETSC ERROR: #2 STFilter_FILTLAN_setFilter() line 1016 in /home/applications/sources/libraries/slepc-3.9.2/src/sys/classes/st/impls/filter/filtlan.c<br>
> [0]PETSC ERROR: #3 STSetUp_Filter() line 42 in /home/applications/sources/libraries/slepc-3.9.2/src/sys/classes/st/impls/filter/filter.c<br>
> [0]PETSC ERROR: #4 STSetUp() line 271 in /home/applications/sources/libraries/slepc-3.9.2/src/sys/classes/st/interface/stsolve.c<br>
> [0]PETSC ERROR: #5 EPSSetUp() line 263 in /home/applications/sources/libraries/slepc-3.9.2/src/eps/interface/epssetup.c<br>
> [0]PETSC ERROR: #6 EPSSolve() line 135 in /home/applications/sources/libraries/slepc-3.9.2/src/eps/interface/epssolve.c<br>
> <br>
> <br>
> <br>
> Do you have a clue what I've missed?<br>
> <br>
> <br>
> Moritz<br>
> <br>
> <br>
> From: Jose E. Roman <<a href="mailto:jroman@dsic.upv.es" target="_blank">jroman@dsic.upv.es</a>><br>
> Sent: Wednesday, October 10, 2018 2:30 PM<br>
> To: Moritz Cygorek<br>
> Cc: <a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a><br>
> Subject: Re: [petsc-users] STFILTER in slepc<br>
> <br>
> <br>
> > El 10 oct 2018, a las 19:54, Moritz Cygorek <<a href="mailto:mcygorek@uottawa.ca" target="_blank">mcygorek@uottawa.ca</a>> escribió:<br>
> > <br>
> > Hi,<br>
> > <br>
> > in the list of changes to SLEPc version 3.8, it is stated that there is a preliminary implementation of polynomial filtering using STFILTER.
<br>
> > <br>
> > Because I am struggling to obtain interior eigenvalues and harmonic extraction seems not to be stable enough in my case, I wanted to give it a try, but I could not find any documentation yet.<br>
> > <br>
> > Does anybody have an example of how to use STFILTER or any documentation about it?<br>
> > <br>
> > Thanks in advance,<br>
> > Moritz<br>
> <br>
> There are no examples. You just set the type to STFILTER and set some parameters such as the interval of interest or the polynomial degree. See functions starting with STFilter here:<a href="http://slepc.upv.es/documentation/current/docs/manualpages/ST/index.html" target="_blank">http://slepc.upv.es/documentation/current/docs/manualpages/ST/index.html</a><br>
> <br>
> In some problems it works well, but don't expect too much. It is still in our to-do list to make it more usable. It will be good to have your feedback. If you want, send results to slepc-maint, maybe we can help tuning the parameters.<br>
> <br>
> Jose<br>
<br>
</div>
</span></font></div>
</div>
</div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>