本文整理汇总了C++中teuchos::Ptr::extent_int方法的典型用法代码示例。如果您正苦于以下问题:C++ Ptr::extent_int方法的具体用法?C++ Ptr::extent_int怎么用?C++ Ptr::extent_int使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类teuchos::Ptr
的用法示例。
在下文中一共展示了Ptr::extent_int方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
void PointValues_Evaluator<EvalT,TRAITST>::initialize(const Teuchos::RCP<const panzer::PointRule> & pointRule,
const Teuchos::Ptr<const ArrayT> & userArray,
// const Teuchos::Ptr<const Kokkos::DynRankView<double,PHX::Device> > & userArray,
const Teuchos::RCP<const panzer::PureBasis> & pureBasis)
{
basis = pureBasis;
if(userArray!=Teuchos::null && basis==Teuchos::null)
useBasisValuesRefArray = false;
else if(userArray==Teuchos::null && basis!=Teuchos::null)
useBasisValuesRefArray = true;
else {
// this is a conflicting request, throw an exception
TEUCHOS_ASSERT(false);
}
panzer::MDFieldArrayFactory af(pointRule->getName()+"_");
// copy user array data
if(userArray!=Teuchos::null) {
TEUCHOS_ASSERT(userArray->rank()==2);
refPointArray = Kokkos::DynRankView<double,PHX::Device>("refPointArray",userArray->dimension(0),userArray->dimension(1));
// TEUCHOS_ASSERT(refPointArray.size()==userArray->size());
for(int i=0;i<userArray->extent_int(0);i++)
for(int j=0;j<userArray->extent_int(1);j++)
refPointArray(i,j) = (*userArray)(i,j);
}
// setup all fields to be evaluated and constructed
pointValues.setupArrays(pointRule,af);
// the field manager will allocate all of these field
this->addEvaluatedField(pointValues.coords_ref);
this->addEvaluatedField(pointValues.node_coordinates);
this->addEvaluatedField(pointValues.jac);
this->addEvaluatedField(pointValues.jac_inv);
this->addEvaluatedField(pointValues.jac_det);
this->addEvaluatedField(pointValues.point_coords);
std::string n = "PointValues_Evaluator: " + pointRule->getName();
this->setName(n);
}