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

Einar Otnes eotnes at gmail.com
Fri Jul 1 09:26:06 MDT 2011


Ross,
Thanks.
Is this functionality available for the Tpetra operators as well? Can I construct a composite operator classes using Thyra and then bring this new operator back as a Tpetra operator?

Thanks,
Einar
On Jul 1, 2011, at 3:48 PM, Bartlett, Roscoe A wrote:

> 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