[Trilinos-Users] Tpetra::MultiVector replaceMap not found

Nico Schlömer nico.schloemer at ua.ac.be
Tue Oct 13 11:45:33 MDT 2009


Thanks for the quick answer

> As it seems that you need this capability,
Well, not sure about that: What I want to do is ~resize~ a vector, which I 
thought needs to be done by its map.
If there's any other way, I'll be happy to employ it and you guys can save 
some work there.

Cheers,
Nico



On Tuesday 13 October 2009 14:42:04 Chris Baker wrote:
> Nico, the replaceMap() function was not implemented, although the
>  definition was inadvertently left in the header. As a result, it is unable
>  to be compiled by the compiler and remains undefined as you discovered.
>  (These sorts of mistakes are currently done manually; obviously I missed
>  one.)
> 
> As it seems that you need this capability, I will file a bug against Tpetra
> to implement the replaceMap() method in Tpetra::MultiVector. It should go
> out in the next release of 10.0. As soon as I have implemented the change,
>  I will send you a patch.
> 
> I apologize for the inconvenience.
> Chris
> 
> On Tue, Oct 13, 2009 at 08:29, Nico Schlömer <nico.schloemer at ua.ac.be>wrote:
> > Hi again,
> >
> > I understand that replaceMap is the preferred way for "resizing"
> > Tpetra::MultiVectors, but unfortunately I'm running into a problem when
> > using
> > it.
> >
> > At link time, GCC complains about
> >
> > ================== *snip* ==================
> > tpetraTest.o: In function `main':
> > tpetraTest.cpp:(.text+0x47b4): undefined reference to
> > `Tpetra::MultiVector<double, int, int,
> > Kokkos::SerialNode>::replaceMap(Teuchos::RCP<Tpetra::Map<int, int,
> > Kokkos::SerialNode> const> const&)'
> > collect2: ld returned 1 exit status
> > make: *** [tpetraTest.exe] Error 1
> > ================== *snap* ==================
> >
> > When looking at the object file, it strikes me that replaceMap is not
> > resolved
> > to weak symbols just as all the other functions, but remains undefined.
> >
> > ================== *snip* ==================
> > $ nm -C testTpetra.o | grep replace
> > [...]
> >                 U Tpetra::MultiVector<double, int, int,
> > Kokkos::SerialNode>::replaceMap(Teuchos::RCP<Tpetra::Map<int, int,
> > Kokkos::SerialNode> const> const&)
> > 0000000000000000 W Tpetra::MultiVector<double, int, int,
> > Kokkos::SerialNode>::replaceGlobalValue(int, unsigned long, double
> > const&) [...]
> > ================== *snap* ==================
> >
> > Am I missing something here?
> >
> > Cheers,
> > Nico
> >
> > _______________________________________________
> > 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