Panzer
Version of the Day
Loading...
Searching...
No Matches
disc-fe
src
Panzer_PointValues2.cpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// Panzer: A partial differential equation assembly
4
// engine for strongly coupled complex multiphysics systems
5
//
6
// Copyright 2011 NTESS and the Panzer contributors.
7
// SPDX-License-Identifier: BSD-3-Clause
8
// *****************************************************************************
9
// @HEADER
10
11
#include "PanzerDiscFE_config.hpp"
12
#include "
Panzer_PointValues2.hpp
"
13
#include "
Panzer_PointValues2_impl.hpp
"
14
15
#include "
Panzer_CommonArrayFactories.hpp
"
16
#include "
Panzer_Traits.hpp
"
17
18
19
namespace
panzer
{
20
21
// do some explicit instantiation so things build faster.
22
23
#define POINT_VALUES_INSTANTIATION(SCALAR) \
24
template class PointValues2<SCALAR>;
25
26
#define POINT_VALUES_INSTANTIATION2(SCALAR,SCALAR2)\
27
template void PointValues2<SCALAR>::copyNodeCoords<PHX::MDField<SCALAR2> >(const PHX::MDField<SCALAR2> & in_node_coords); \
28
template void PointValues2<SCALAR>::copyNodeCoords<PHX::MDField<SCALAR2,Cell,NODE,Dim> >(const PHX::MDField<SCALAR2,Cell,NODE,Dim> & in_node_coords); \
29
template void PointValues2<SCALAR>::copyNodeCoords<Kokkos::DynRankView<SCALAR2,PHX::Device> >(const Kokkos::DynRankView<SCALAR2,PHX::Device> & in_node_coords); \
30
\
31
template void PointValues2<SCALAR>::copyPointCoords<PHX::MDField<SCALAR2> >(const PHX::MDField<SCALAR2> & in_node_coords); \
32
template void PointValues2<SCALAR>::copyPointCoords<PHX::MDField<SCALAR2,BASIS,Dim> >(const PHX::MDField<SCALAR2,BASIS,Dim> & in_node_coords); \
33
template void PointValues2<SCALAR>::copyPointCoords<Kokkos::DynRankView<SCALAR2,PHX::Device> >(const Kokkos::DynRankView<SCALAR2,PHX::Device> & in_node_coords);
34
35
// special case for PointGenerator....yikes!
36
template
void
PointValues2<double>::copyPointCoords<Kokkos::DynRankView<double> >(
const
Kokkos::DynRankView<double> & in_node_coords);
37
38
POINT_VALUES_INSTANTIATION
(
panzer::Traits::RealType
)
39
// Disabled FAD support due to long build times on cuda (in debug mode
40
// it takes multiple hours on some platforms). If we need
41
// sensitivities wrt coordinates, we can reenable.
42
// POINT_VALUES_INSTANTIATION(panzer::Traits::FadType)
43
#ifdef Panzer_BUILD_HESSIAN_SUPPORT
44
POINT_VALUES_INSTANTIATION
(
panzer::Traits::HessianType
)
45
#endif
46
47
// This is very complicated for reasons I don't fully understand...
48
POINT_VALUES_INSTANTIATION2
(
panzer::Traits::RealType
,
panzer::Traits::RealType
)
49
// Disabled FAD support due to long build times on cuda (in debug mode
50
// it takes multiple hours on some platforms). If we need
51
// sensitivities wrt coordinates, we can reenable.
52
// POINT_VALUES_INSTANTIATION2(panzer::Traits::FadType,panzer::Traits::RealType)
53
// POINT_VALUES_INSTANTIATION2(panzer::Traits::FadType,panzer::Traits::FadType)
54
#ifdef Panzer_BUILD_HESSIAN_SUPPORT
55
POINT_VALUES_INSTANTIATION2
(
panzer::Traits::HessianType
,
panzer::Traits::RealType
)
56
#endif
57
58
}
// namespace panzer
Panzer_CommonArrayFactories.hpp
POINT_VALUES_INSTANTIATION
#define POINT_VALUES_INSTANTIATION(SCALAR)
Definition
Panzer_PointValues2.cpp:23
POINT_VALUES_INSTANTIATION2
#define POINT_VALUES_INSTANTIATION2(SCALAR, SCALAR2)
Definition
Panzer_PointValues2.cpp:26
Panzer_PointValues2.hpp
Panzer_PointValues2_impl.hpp
Panzer_Traits.hpp
panzer
Computes .
Definition
Panzer_BasisValues_Evaluator_decl.hpp:22
panzer::Traits::RealType
double RealType
Definition
Panzer_Traits.hpp:55
panzer::Traits::HessianType
Sacado::Fad::DFad< Sacado::Fad::SFad< RealType, 1 > > HessianType
Definition
Panzer_Traits.hpp:65
Generated by
1.9.8