MCPcopy Create free account
hub / github.com/CoolProp/CoolProp / makeColVector

Function makeColVector

include/CoolProp/numerics/MatrixMath.h:181–193  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

179
180template <class T>
181Eigen::Matrix<T, Eigen::Dynamic, 1> makeColVector(const Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>& matrix) {
182 std::size_t r = matrix.rows();
183 std::size_t c = matrix.cols();
184 Eigen::Matrix<T, Eigen::Dynamic, 1> vector;
185 if (r == 1 && c >= 1) { // Check passed, matrix can be transformed
186 vector = matrix.transpose().block(0, 0, c, r);
187 } else if (r >= 1 && c == 1) { // Check passed, matrix can be transformed
188 vector = matrix.block(0, 0, r, c);
189 } else { // Check failed, throw error
190 throw ValueError(format("Your matrix (%d,%d) cannot be converted into a vector (x,1).", r, c));
191 }
192 return vector;
193}
194template <class T>
195Eigen::Matrix<T, Eigen::Dynamic, 1> makeVector(const Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>& matrix) {
196 return makeColVector(matrix);

Callers 1

makeVectorFunction · 0.85

Calls 1

formatFunction · 0.50

Tested by

no test coverage detected