19 return std::make_tuple(this->make<mfem::PWVectorCoefficient>(coeff->GetVDim()),
20 std::map<
const std::string, std::shared_ptr<mfem::VectorCoefficient>>());
25 MatrixMap::emptyPWData(std::shared_ptr<mfem::MatrixCoefficient> coeff)
27 return std::make_tuple(
28 this->make<mfem::PWMatrixCoefficient>(coeff->GetHeight(), coeff->GetWidth()),
29 std::map<
const std::string, std::shared_ptr<mfem::MatrixCoefficient>>());
34 VectorMap::checkPWData(std::shared_ptr<mfem::VectorCoefficient> coeff,
35 std::shared_ptr<mfem::PWVectorCoefficient> existing_pw,
36 const std::string & name)
38 const int new_dim = coeff->GetVDim(), old_dim = existing_pw->GetVDim();
39 if (new_dim != old_dim)
40 mooseError(
"Trying to assign vector of dimension " + std::to_string(new_dim) +
41 " to property '" + name +
"' with dimension dimension " + std::to_string(old_dim));
46 MatrixMap::checkPWData(std::shared_ptr<mfem::MatrixCoefficient> coeff,
47 std::shared_ptr<mfem::PWMatrixCoefficient> existing_pw,
48 const std::string & name)
50 const int new_height = coeff->GetHeight(), new_width = coeff->GetWidth(),
51 old_height = existing_pw->GetHeight(), old_width = existing_pw->GetWidth();
52 if (new_height != old_height || new_width != old_width)
53 mooseError(
"Trying to assign matrix with dimensions (" + std::to_string(new_height) +
", " +
54 std::to_string(new_width) +
") to property '" + name +
"' with dimensions (" +
55 std::to_string(old_height) +
", " + std::to_string(old_width) +
")");
PWData emptyPWData(std::shared_ptr< mfem::VectorCoefficient >)
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
std::tuple< std::shared_ptr< mfem::PWVectorCoefficient >, std::map< const std::string, std::shared_ptr< mfem::VectorCoefficient > >> PWData