Hi Wolfgang,

here is what I found out about the topic: 
Originally, I only knew Trilinos because I used the distributed matrices 
and vectors in my application. I also knew that there is a configuration of 
trilinos to make complex numbers available in all packages that support it. 
However, from what I can tell, that only effects Tpetra datatypes, not 
Epetra. From what I have seen in the dealwrappers, they only use Epetra. An 
interesting detail about this is the Komplex-Package, which is described as 
an Epetra based solver for complex systems, which wraps Epetra matrices and 
stores the real and imaginary parts as blocks. (see here:  
https://docs.trilinos.org/dev/packages/komplex/doc/html/index.html )
At GitHub I can see that project 4 deals with adding Tpetra support which 
would make complex numbers in Tpetra usable in deal if the interface is 
built to support them)

About GMRES: I will be using PETSc GMRES to solve my system, but if 
possible I will try to also solve it with dealii::SolverGMRES and let you 
know what happens.

Kind regards,
Pascal

Wolfgang Bangerth schrieb am Sonntag, 26. Juli 2020 um 01:43:44 UTC+2:

> On 7/23/20 10:42 AM, Pascal Kraft wrote:
> > 
> > I have Trillions compiled with support for complex numbers and also 
> searched 
> > through the LinearAlgebra documentation.
>
> I don't think I knew that one can compile Trilinos with complex numbers. 
> How 
> do you do that?
>
> It does not greatly surprise me that we use TrilinosScalar and double 
> interchangeably. If Trilinos can indeed be compiled with complex numbers, 
> then 
> we ought to find a way to (i) make TrilinosScalar dependent on whatever 
> Trilinos was compiled for, (ii) ensure that all of the places that 
> currently 
> don't compile because we use double in place of TrilinosScalar are fixed.
>
> Patches are, as always, very welcome!
>
>
> > I require GMRES as a solver (which should be possible, because the GMRES 
> > Versions all use a templated Vector which can take complex components) 
> and MPI 
> > distribution of a sparse system. I have so far only seen FullMatrix to 
> accept 
> > complex numbers.
>
> I believe that GMRES could indeed be made to work for complex-valued 
> problems, 
> but I'm not sure any of us have every tried. When writing step-58, I toyed 
> with the idea of looking up in the literature what one would need for a 
> complex GMRES, but in the end decided to just make SparseDirectUMFPACK 
> work 
> instead. The issue is that for every matrix-vector and vector-vector 
> operation 
> that happens inside GMRES, you have to think about whether one or the 
> other 
> operand needs to be complex-conjugated. I'm certain that is possible, but 
> would require an audit of a few hundred lines. It would probably be 
> simpler to 
> just use PETSc's (or Trilinos') GMRES implementation.
>
> Best
> W.
>
> -- 
> ------------------------------------------------------------------------
> Wolfgang Bangerth email: bang...@colostate.edu
> www: http://www.math.colostate.edu/~bangerth/
>
>

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/57acc699-f6d9-4bbe-99b1-650dbb554fdcn%40googlegroups.com.

Reply via email to