13 virtual Eigen::MatrixXd
operator()(
const Eigen::MatrixXd& dNdX)
const = 0;
18 Eigen::MatrixXd
operator()(
const Eigen::MatrixXd& dNdX)
const override 20 return dNdX.transpose();
26 Eigen::MatrixXd
operator()(
const Eigen::MatrixXd& dNdX)
const override 28 const int dim = dNdX.cols();
29 const int numNodes = dNdX.rows();
33 return dNdX.transpose();
36 Eigen::MatrixXd B = Eigen::MatrixXd::Zero(3, numNodes * 2);
37 for (
int iNode = 0, iColumn = 0; iNode < numNodes; ++iNode, iColumn += 2)
39 double dNdXx = dNdX(iNode, 0);
40 double dNdXy = dNdX(iNode, 1);
42 B(0, iColumn) = dNdXx;
43 B(1, iColumn + 1) = dNdXy;
44 B(2, iColumn) = dNdXy;
45 B(2, iColumn + 1) = dNdXx;
51 Eigen::MatrixXd B = Eigen::MatrixXd::Zero(6, numNodes * 3);
52 for (
int iNode = 0, iColumn = 0; iNode < numNodes; ++iNode, iColumn += 3)
54 double dNdXx = dNdX(iNode, 0);
55 double dNdXy = dNdX(iNode, 1);
56 double dNdXz = dNdX(iNode, 2);
72 B(0, iColumn) = dNdXx;
73 B(1, iColumn + 1) = dNdXy;
74 B(2, iColumn + 2) = dNdXz;
76 B(3, iColumn + 1) = dNdXz;
77 B(3, iColumn + 2) = dNdXy;
79 B(4, iColumn) = dNdXz;
80 B(4, iColumn + 2) = dNdXx;
82 B(5, iColumn) = dNdXy;
83 B(5, iColumn + 1) = dNdXx;
88 throw Exception(__PRETTY_FUNCTION__,
"c'mon.");
Definition: DifferentialOperators.h:11
Base class for all exceptions thrown in NuTo.
Definition: Exception.h:9
virtual Eigen::MatrixXd operator()(const Eigen::MatrixXd &dNdX) const =0
Eigen::MatrixXd operator()(const Eigen::MatrixXd &dNdX) const override
Definition: DifferentialOperators.h:26
Definition: DifferentialOperators.h:16
Definition: Exception.h:6
Definition: DifferentialOperators.h:24
Eigen::MatrixXd operator()(const Eigen::MatrixXd &dNdX) const override
Definition: DifferentialOperators.h:18
constexpr int dim
Definition: ConstraintNodeToElement2D.cpp:24