Thyra Version of the Day
Loading...
Searching...
No Matches
Thyra_ModelEvaluatorBase.cpp
1/*
2// @HEADER
3// ***********************************************************************
4//
5// Thyra: Interfaces and Support for Abstract Numerical Algorithms
6// Copyright (2004) Sandia Corporation
7//
8// Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
9// license for use of this work by or on behalf of the U.S. Government.
10//
11// Redistribution and use in source and binary forms, with or without
12// modification, are permitted provided that the following conditions are
13// met:
14//
15// 1. Redistributions of source code must retain the above copyright
16// notice, this list of conditions and the following disclaimer.
17//
18// 2. Redistributions in binary form must reproduce the above copyright
19// notice, this list of conditions and the following disclaimer in the
20// documentation and/or other materials provided with the distribution.
21//
22// 3. Neither the name of the Corporation nor the names of the
23// contributors may be used to endorse or promote products derived from
24// this software without specific prior written permission.
25//
26// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37//
38// Questions? Contact Roscoe A. Bartlett (bartlettra@ornl.gov)
39//
40// ***********************************************************************
41// @HEADER
42*/
43
44#include "Thyra_ModelEvaluatorBase_decl.hpp"
45
46
47namespace Thyra {
48
49
51{}
52
53
54std::string
56{
57 std::ostringstream oss;
58 oss << "DerivativeSupport{";
59 if (none()) {
60 oss << "none";
61 }
62 else {
63 bool wroteOutput = false;
64 if (supportsLinearOp_) {
65 oss << "DERIV_LINEAR_OP";
66 wroteOutput = true;
67 }
68 if (supportsMVByCol_) {
69 oss << (wroteOutput?",":"") << toString(DERIV_MV_BY_COL);
70 wroteOutput = true;
71 }
72 if (supportsTransMVByRow_) {
73 oss << (wroteOutput?",":"") << toString(DERIV_TRANS_MV_BY_ROW);
74 wroteOutput = true;
75 }
76 }
77 oss << "}";
78 return oss.str();
79}
80
81
82} // namespace Thyra
83
84
85#ifdef HAVE_THYRA_EXPLICIT_INSTANTIATION
86
87
88#include "Thyra_ModelEvaluatorBase_def.hpp"
89#include "Teuchos_ExplicitInstantiationHelpers.hpp"
90
91namespace Thyra {
92
93TEUCHOS_MACRO_TEMPLATE_INSTANT_SCALAR_TYPES(THYRA_MODEL_EVALUATOR_BASE_INSTANT)
94
95} // namespace Thyra
96
97#endif // HAVE_THYRA_EXPLICIT_INSTANTIATION
#define TEUCHOS_MACRO_TEMPLATE_INSTANT_SCALAR_TYPES(MACRONAME)
TEUCHOSCORE_LIB_DLL_EXPORT std::string toString(const EVerbosityLevel verbLevel)