NuTo
Numerics Tool
EigenCompanion.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <vector>
4 #include <string>
5 #include <Eigen/Core>
6 
7 namespace NuTo
8 {
9 
11 namespace EigenCompanion
12 {
16 inline Eigen::Vector3d To3D(const Eigen::VectorXd& data)
17 {
18  const int dimension = data.rows();
19  Eigen::Vector3d vector3d = Eigen::Vector3d::Zero();
20  vector3d.block(0, 0, dimension, 1) = data;
21  return vector3d;
22 }
23 
25 inline Eigen::VectorXd ToEigen(std::initializer_list<double> l)
26 {
27  Eigen::VectorXd v(l.size());
28 
29  int position = 0;
30  for (auto value : l)
31  v[position++] = value;
32 
33  return v;
34 }
35 
37 inline Eigen::VectorXd ToEigen(double d)
38 {
39  return Eigen::VectorXd::Constant(1, d);
40 }
41 } /* EigenCompanion */
42 } /* NuTo */
const NuTo::DofType d("...", 1)
string value
Definition: single_edge_notch_tension_test.py:6
Eigen::Vector3d To3D(const Eigen::VectorXd &data)
converts data to a 3D vector, fills with zeros if needed
Definition: EigenCompanion.h:16
Eigen::VectorXd ToEigen(std::initializer_list< double > l)
transforms an initializer_list to an Eigen::VectorXd
Definition: EigenCompanion.h:25
int v
Definition: Quad2DPatchTest.py:9
Definition: Exception.h:6
constexpr int dimension
Definition: single_edge_notched_tension_test.cpp:30