[Trilinos-Users] Belos explicit instantiation question

David Hysom hysom1 at llnl.gov
Tue Oct 13 12:41:12 EDT 2015


Hi,

The below code-snippet  works fine if I compile with -D
Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=OFF
however, if I compile with ON I get:

class "Tpetra::MultiVector<scalar_t={double}, local_ordinal_t={int},
global_ordinal_t={int}, node_t>" has no member

"this_type_is_missing_a_specialization"
          return MV::this_type_is_missing_a_specialization();
detected during:
              instantiation of "ScalarType
Belos::UndefinedMultiVecTraits<ScalarType, MV>::notDefined() [with
ScalarType=scalar_t={double}, MV=mvec_t]" at line 223
...

Any idea why this is so? My code is taking ~seven minutes to compile,
and I *really* want to save time by enabling explicit instantiation.

thanks, David

code snippet:

RCP<Belos::SolverManager<scalar_t, mvec_t, operator_t> > solver =
solveFactory.create(solverType.c_str(), solverParams);

where:
typedef double scalar_t;
typeedef int   local_ordinal_t;
typedef int   global_ordinal_t;
typedef Kokkos::OpenMPNode  node_t;
typedef Tpetra::MultiVector<scalar_t, local_ordinal_t, global_ordinal_t,
node_t>   mvec_t;
typedef Tpetra::Operator<scalar_t, local_ordinal_t, global_ordinal_t,
node_t> operator_t;




More information about the Trilinos-Users mailing list