Пример #1
0
    void operator () () const {
        try {
            V v1 (N), v2 (N), v3 (N);
            (*this) (v1, v2, v3);

#ifdef USE_RANGE
            ublas::vector_range<V> vr1 (v1, ublas::range (0, N)),
                                   vr2 (v2, ublas::range (0, N)),
                                   vr3 (v3, ublas::range (0, N));
            (*this) (vr1, vr2, vr3);
#endif

#ifdef USE_SLICE
            ublas::vector_slice<V> vs1 (v1, ublas::slice (0, 1, N)),
                                   vs2 (v2, ublas::slice (0, 1, N)),
                                   vs3 (v3, ublas::slice (0, 1, N));
            (*this) (vs1, vs2, vs3);
#endif
        }
        catch (std::exception &e) {
            std::cout << e.what () << std::endl;
        }
        catch (...) {
            std::cout << "unknown exception" << std::endl;
        }
    }
Пример #2
0
    void operator () () const {
        V v1 (N), v2 (N), v3 (N);
        test_expression_with (v1, v2, v3);
        test_container_with (v1);

#ifdef USE_RANGE
        ublas::vector_range<V> vr1 (v1, ublas::range (0, N)),
                               vr2 (v2, ublas::range (0, N)),
                               vr3 (v3, ublas::range (0, N));
        test_expression_with (vr1, vr2, vr3);
#endif

#ifdef USE_SLICE
        ublas::vector_slice<V> vs1 (v1, ublas::slice (0, 1, N)),
                               vs2 (v2, ublas::slice (0, 1, N)),
                               vs3 (v3, ublas::slice (0, 1, N));
        test_expression_with (vs1, vs2, vs3);
#endif
    }