matrix_crt_multiply_helper< C > Struct Template Reference

#include <matrix_crt.hpp>

List of all members.

Public Types

Static Public Member Functions

Static Public Attributes


Detailed Description

template<typename C>
struct mmx::matrix_crt_multiply_helper< C >

Definition at line 60 of file matrix_crt.hpp.


Member Typedef Documentation

Definition at line 64 of file matrix_crt.hpp.

typedef moduli_helper<C, modulus<typename crt_transformer::modulus_base, typename crt_transformer::modulus_base_variant> > moduli_sequence

Definition at line 67 of file matrix_crt.hpp.


Member Function Documentation

static nat size ( const C s1,
nat  s1_rs,
nat  s1_cs,
const C s2,
nat  s2_rs,
nat  s2_cs,
nat  r,
nat  l,
nat  c 
) [inline, static]

Definition at line 69 of file matrix_crt.hpp.

References mmx::C, max(), and mmx::N().

00071                                  {
00072     nat sz= 0;
00073     for (nat k= 0; k < l; k++) {
00074       nat sz1= 0, sz2= 0;
00075       const C* ss1= s1 + k * s1_cs;
00076       const C* ss2= s2 + k * s2_rs;
00077       for (nat i= 0; i < r; i++, ss1 += s1_rs) sz1= max (sz1, N (*ss1));
00078       for (nat j= 0; j < c; j++, ss2 += s2_cs) sz2= max (sz2, N (*ss2));
00079       sz= max (sz, sz1 + sz2);
00080     }
00081     return sz; }


Member Data Documentation

const nat dimension_threshold = 7 [static]

Definition at line 61 of file matrix_crt.hpp.

const nat ratio_threshold = 100 [static]

Definition at line 62 of file matrix_crt.hpp.


The documentation for this struct was generated from the following file:

Generated on 6 Dec 2012 for algebramix by  doxygen 1.6.1