deal.ii and Trilinos

69 views
Skip to first unread message

Marco Delchini

unread,
Jun 7, 2016, 10:57:29 PM6/7/16
to deal.II User Group
Hello,

I am part of a research group in ORNL that is looking at various C++ libraries for development of a new application solving for single- and two-phase flows. We are currently undecided between Trilinos and deal.ii. I have very little experience in deal.ii and know that it can be coupled to Trilinos.

My understanding of Trilinos is that it is a collection of multiple packages dealing with preconditioner, solvers, automatic differentiation, .... My question is how many of these packages are available through deal.ii when coupled to Trilinos?

I would appreciate any insight from deal.ii developers and users who have experience with using Trilinos in deal.ii

Thanks,
Marco

Jean-Paul Pelteret

unread,
Jun 8, 2016, 1:07:08 AM6/8/16
to deal.II User Group
Hi Marco,

Thats a good question. It doesn't look like its explicitly documented anywhere as to which packages deal.II requires Trilinos to be built with (i.e. utilises directly or offers some wrapped functionality for). I'll make a note to do this on the GitHub repository. 

Hints to the answer come from the recommended build instructions for Trilinos, which can be found here, and the documentation for the Trilinos-related functions that are compartmentalised in their own namespace as documented here. From the latter you see that deal.II primarily offers wrappers for classes associated with linear algebra. On the tutorials is a list of examples that use Trilinos. There is also some Sacado-related functionality (see, for example, here and here), but to what extent I'm not sure.

If I'm not mistaken, the build configuration for Trilinos is set by this script which implies that deal.II links to the following libraries:
Amesos Epetra Ifpack AztecOO Sacado Teuchos ML [MueLu]

I hope that this helps,
J-P

Bruno Turcksin

unread,
Jun 8, 2016, 8:01:20 AM6/8/16
to deal.II User Group
Marco,

like Jean-Paul said the Trilinos wrappers are mainly for the linear algebra. This doesn't mean that you can't use a package that we don't have wrapper for. You can always get the underlying Trilinos object from the wrapper and use it when you need to call another package. When you choose between Trilinos and deal.II, you need to be aware that right now deal.II only uses Epetra not Tpetra. I hope to find time to work on the Tpetra stack this summer but for now you have to use Epetra. There will be an easy way to switch from the Epetra stack to the Tpetra stack though.

Best,

Bruno

Marco Delchini

unread,
Jun 8, 2016, 10:26:35 AM6/8/16
to dea...@googlegroups.com
Jean-Paul and Bruno,

thanks for your answer, this is helpful.

What would be the main difference between Epetra and Tpetra? What would be the benefits of using Tpetra over Epetra?

Our objective is to solve for two-phase flows in multi-D using a fully implicit temporal scheme. In the short term, we would need the Trilinos solver/perconditioner capabilities and also are very interested in the Sacado package that does automatic differentiation. 

Thanks,
Marco

--
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 a topic in the Google Groups "deal.II User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/dealii/rwhHI4Ja-4E/unsubscribe.
To unsubscribe from this group and all its topics, send an email to dealii+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Marc-Olivier Delchini
Postdoctoral Fellow
Nuclear Reactor and System Division
Oak Ridge National Laboratory

Bruno Turcksin

unread,
Jun 8, 2016, 10:34:26 AM6/8/16
to dea...@googlegroups.com
Marco,

2016-06-08 10:26 GMT-04:00 Marco Delchini <marco.d...@gmail.com>:
> What would be the main difference between Epetra and Tpetra? What would be
> the benefits of using Tpetra over Epetra?
With Tpetra, you can use Kokkos and you need Kokkos to run Trilinos on GPUs.

> Our objective is to solve for two-phase flows in multi-D using a fully
> implicit temporal scheme. In the short term, we would need the Trilinos
> solver/perconditioner capabilities and also are very interested in the
> Sacado package that does automatic differentiation.
deal.II has wrappers for all these packages.

Best,

Bruno

Wolfgang Bangerth

unread,
Jun 8, 2016, 2:38:13 PM6/8/16
to dea...@googlegroups.com
On 06/08/2016 09:26 AM, Marco Delchini wrote:
>
> Our objective is to solve for two-phase flows in multi-D using a fully
> implicit temporal scheme. In the short term, we would need the Trilinos
> solver/perconditioner capabilities and also are very interested in the Sacado
> package that does automatic differentiation.

As already mentioned, all of these have deal.II wrappers (except Sacado, which
doesn't need that).

You may want to read through step-33, which does all of the things you want to
do for a different equation.

Best
W.

--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@math.tamu.edu
www: http://www.math.tamu.edu/~bangerth/

Reply all
Reply to author
Forward
0 new messages