[Trilinos-Users] Creating linear operators by combining other linear operators

Bartlett, Roscoe A rabartl at sandia.gov
Fri Jul 1 08:48:22 MDT 2011


With the magic of Thyra::EpetraOperatorWapper shown at:

   http://trilinos.sandia.gov/packages/docs/r10.6/packages/thyra/doc/html/classThyra_1_1EpetraOperatorWrapper.html

you can use all of the Thyra composite operator classes and still get back an Epetra_Operator in the end.  There is no need to write any new software for this.

-Ross


> -----Original Message-----
> From: trilinos-users-bounces at software.sandia.gov [mailto:trilinos-
> users-bounces at software.sandia.gov] On Behalf Of Baker, Christopher G.
> Sent: Friday, July 01, 2011 8:37 AM
> To: Einar Otnes; trilinos-users at software.sandia.gov
> Subject: Re: [Trilinos-Users] Creating linear operators by combining
> other linear operators
> 
> Hi Einar,
> 
> There are a few different linear operator interfaces in Trilinos. Most
> notably, there are Epetra and Thyra.
> Supporting composite linear operators in Thyra is more straight-forward
> than Epetra, because the linear operator interface is based on
> y = alpha*Op*x + beta*y
> whereas Epetra's linear operator interface is
> y = Op*x
> As such, Thyra has significant support for composite operators of many
> different forms. I have used these in the past, and they are very
> convenient. See, for example, the "Composite and other linear operator
> base classes" under the THyra operator/vector extended interfaces at
> the
> following URL:
> trilinos.sandia.gov/packages/docs/r10.6/packages/thyra/doc/html/index.h
> tml#
> interfaces_operator_vector_ana_extended
> 
> In particular, the one that you are looking for is here:
> trilinos.sandia.gov/packages/docs/r10.6/packages/thyra/doc/html/classTh
> yra_
> 1_1MultipliedLinearOpBase.html
> 
> 
> As for Epetra, I don't know of an implementation to support this. It
> should be straightforward to write one, and to encapsulate it into an
> Epetra_Operator implementation.
> 
> 
> Chris
> 
> 
> 
> On 7/1/11 6:24 AM, "Einar Otnes" <eotnes at gmail.com> wrote:
> 
> >Dear experts,
> >I have a question related to constructing linear operators in
> Trilinos.
> >Are there any packages in trilinos that support constructing new
> linear
> >operators from previously defined ones.
> >In other words, say I want to do two operations
> >
> >y = A(x)
> >z = B(y)
> >
> >Is there a way I can combine the two operators such that
> >z=B(y) = B(A(x)) = (BA)(x) = C(x) , where C is now a new operator
> >generated from  B and A?
> >
> >Thanks,
> >Einar
> >
> >_______________________________________________
> >Trilinos-Users mailing list
> >Trilinos-Users at software.sandia.gov
> >hxxp://software.sandia.gov/mailman/listinfo/trilinos-users
> >
> >
> 
> 
> 
> _______________________________________________
> Trilinos-Users mailing list
> Trilinos-Users at software.sandia.gov
> http://software.sandia.gov/mailman/listinfo/trilinos-users



More information about the Trilinos-Users mailing list