Skip to content

Commit acd3426

Browse files
committed
remove use of Eigen::Map in divide_columns
1 parent 3f3a52f commit acd3426

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

stan/math/prim/fun/divide_columns.hpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
#ifndef STAN_MATH_PRIM_FUN_DIVIDE_COLUMNS_HPP
22
#define STAN_MATH_PRIM_FUN_DIVIDE_COLUMNS_HPP
33

4+
#include <stan/math/prim/fun/Eigen.hpp>
45
#include <stan/math/prim/meta.hpp>
56
#include <stan/math/prim/err.hpp>
6-
#include <stan/math/prim/fun/Eigen.hpp>
7+
#include <stan/math/prim/fun/as_array_or_scalar.hpp>
78
#include <vector>
89

910
namespace stan {
@@ -27,16 +28,13 @@ divide_columns(const std::vector<Eigen::Matrix<T_x, Eigen::Dynamic, 1>> &x,
2728
const size_t N = x.size();
2829
const size_t D = x[0].size();
2930
check_size_match("divide_columns", "x dimension", D, "vector", vec.size());
30-
Eigen::Map<const Eigen::Array<T_v, Eigen::Dynamic, 1>> v_vec(&vec[0],
31-
vec.size());
32-
3331
std::vector<Eigen::Matrix<return_type_t<T_x, T_v, double>, Eigen::Dynamic, 1>>
3432
out(N);
3533
for (size_t n = 0; n < N; ++n) {
3634
out[n].resize(D);
3735
check_size_match("divide_columns", "x dimension", x[n].size(), "vector",
38-
v_vec.size());
39-
out[n] = x[n].array() / v_vec.array();
36+
vec.size());
37+
out[n] = x[n].array() / as_array_or_scalar(vec).array();
4038
}
4139
return out;
4240
}

0 commit comments

Comments
 (0)