当前位置: 首页>>代码示例>>C++>>正文


C++ ndarray::fend方法代码示例

本文整理汇总了C++中types::ndarray::fend方法的典型用法代码示例。如果您正苦于以下问题:C++ ndarray::fend方法的具体用法?C++ ndarray::fend怎么用?C++ ndarray::fend使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在types::ndarray的用法示例。


在下文中一共展示了ndarray::fend方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: roll

 types::ndarray<T,N> roll(types::ndarray<T,N> const& expr, long shift)
 {
     while(shift<0) shift+=expr.flat_size();
     shift %=expr.flat_size();
     types::ndarray<T,N> out(expr.shape(), __builtin__::None);
     std::copy(expr.fbegin(), expr.fend() - shift, std::copy(expr.fend() - shift, expr.fend(), out.fbegin()));
     return out;
 }
开发者ID:coyotte508,项目名称:pythran,代码行数:8,代码来源:roll.hpp

示例2: outer

 types::ndarray<decltype(std::declval<T0>() + std::declval<T1>()), 2>
 outer(types::ndarray<T0, N0> const& a, types::ndarray<T1, N1> const& b)
 {
     types::ndarray<decltype(std::declval<T0>() + std::declval<T1>()), 2> out(types::array<long, 2>{{a.flat_size(), b.flat_size()}}, __builtin__::None);
     auto iter = out.fbegin();
     for(auto iter_a = a.fbegin(), end_a = a.fend(); iter_a != end_a; ++iter_a) {
         auto val_a = *iter_a;
         iter = std::transform(b.fbegin(),  b.fend(), iter, [=](T1 val) { return val_a * val; });
     }
     return out;
 }
开发者ID:Pikalchemist,项目名称:pythran,代码行数:11,代码来源:outer.hpp

示例3: decltype

 types::ndarray<
 typename std::remove_cv<
 typename std::remove_reference<
 decltype(
         std::declval<T>()
         +
         std::declval<typename utils::nested_container_value_type<F>::type>())
 >::type
 >::type,
 1> append(types::ndarray<T,N> const& nto, F const& data) {
     typename types::numpy_expr_to_ndarray<F>::type ndata(data);
     long nsize = nto.size() + ndata.size();
     types::ndarray<
         typename std::remove_cv<
         typename std::remove_reference<
         decltype(
                 std::declval<T>()
                 +
                 std::declval<typename utils::nested_container_value_type<F>::type>())
         >::type
         >::type,
         1> out(types::make_tuple(nsize), __builtin__::None);
     size_t i=0;
     auto out_back = std::copy(nto.fbegin(), nto.fend(), out.fbegin());
     std::copy(ndata.fbegin(), ndata.fend(), out_back);
     return out;
 }
开发者ID:OnlySang,项目名称:pythran,代码行数:27,代码来源:append.hpp

示例4: place

 types::none_type place(types::ndarray<T, N> &expr,
                        types::ndarray<Tp, Np> const &mask, F const &values)
 {
   auto first = expr.fend();
   auto viter = values.begin(), vend = values.end();
   auto miter = mask.fbegin();
   for (auto iter = expr.fbegin(), end = expr.fend(); iter != end;
        ++iter, ++miter) {
     if (*miter) {
       if (first == expr.fend())
         first = iter;
       if (viter != vend) {
         *iter = *viter;
         ++viter;
       } else
         *iter = *first;
     }
   }
   return __builtin__::None;
 }
开发者ID:LuisBL,项目名称:pythran,代码行数:20,代码来源:place.hpp

示例5: repeat

 types::ndarray<T, 1> repeat(types::ndarray<T, N> const &expr, int repeats)
 {
   types::ndarray<T, 1> out(
       types::array<long, 1>{{expr.flat_size() * repeats}},
       __builtin__::None);
   auto out_iter = out.fbegin();
   for (auto iter = expr.fbegin(), end = expr.fend(); iter != end; ++iter)
     for (int i = 0; i < repeats; ++i)
       *out_iter++ = *iter;
   return out;
 }
开发者ID:artas360,项目名称:pythran,代码行数:11,代码来源:repeat.hpp

示例6: resize

types::ndarray<T,1> resize(types::ndarray<T,N> const& expr, int new_shape)
{
    types::ndarray<T,1> out(types::array<long, N> {{new_shape}}, __builtin__::None);
    auto n = expr.size();
    if(n < new_shape) {
        auto iter = std::copy(expr.fbegin(), expr.fend(), out.fbegin());
        for(size_t i = 1; i < new_shape / n; ++i)
            iter = std::copy(out.fbegin(), out.fbegin() + n, iter);
        std::copy(out.fbegin(), out.fbegin() + new_shape % n, iter);
    }
    else
        std::copy(expr.fbegin(), expr.fbegin() + new_shape, out.fbegin());
    return out;
}
开发者ID:baoboa,项目名称:pythran,代码行数:14,代码来源:resize.hpp

示例7: fill

 types::none_type fill(types::ndarray<T, N> &e, F f)
 {
   std::fill(e.fbegin(), e.fend(), f);
   return __builtin__::None;
 }
开发者ID:LuisBL,项目名称:pythran,代码行数:5,代码来源:fill.hpp


注:本文中的types::ndarray::fend方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。