本文整理汇总了C++中teuchos::Ptr::dimension方法的典型用法代码示例。如果您正苦于以下问题:C++ Ptr::dimension方法的具体用法?C++ Ptr::dimension怎么用?C++ Ptr::dimension使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类teuchos::Ptr
的用法示例。
在下文中一共展示了Ptr::dimension方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
void PointValues_Evaluator<EvalT,TraitsT>::initialize(const Teuchos::RCP<const panzer::PointRule> & pointRule,
const Teuchos::Ptr<const Intrepid::FieldContainer<double> > & 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 = Intrepid::FieldContainer<double>(userArray->dimension(0),userArray->dimension(1));
TEUCHOS_ASSERT(refPointArray.size()==userArray->size());
for(int i=0;i<userArray->size();i++)
refPointArray[i] = (*userArray)[i];
}
// 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);
}