<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>ublas: operation_blocked.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    </ul>
  </div>
<h1>operation_blocked.hpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//</span>
<a name="l00002"></a>00002 <span class="comment">//  Copyright (c) 2000-2002</span>
<a name="l00003"></a>00003 <span class="comment">//  Joerg Walter, Mathias Koch</span>
<a name="l00004"></a>00004 <span class="comment">//</span>
<a name="l00005"></a>00005 <span class="comment">//  Distributed under the Boost Software License, Version 1.0. (See</span>
<a name="l00006"></a>00006 <span class="comment">//  accompanying file LICENSE_1_0.txt or copy at</span>
<a name="l00007"></a>00007 <span class="comment">//  http://www.boost.org/LICENSE_1_0.txt)</span>
<a name="l00008"></a>00008 <span class="comment">//</span>
<a name="l00009"></a>00009 <span class="comment">//  The authors gratefully acknowledge the support of</span>
<a name="l00010"></a>00010 <span class="comment">//  GeNeSys mbH &amp; Co. KG in producing this work.</span>
<a name="l00011"></a>00011 <span class="comment">//</span>
<a name="l00012"></a>00012 
<a name="l00013"></a>00013 <span class="preprocessor">#ifndef _BOOST_UBLAS_OPERATION_BLOCKED_</span>
<a name="l00014"></a>00014 <span class="preprocessor"></span><span class="preprocessor">#define _BOOST_UBLAS_OPERATION_BLOCKED_</span>
<a name="l00015"></a>00015 <span class="preprocessor"></span>
<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;boost/numeric/ublas/traits.hpp&gt;</span>
<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;boost/numeric/ublas/detail/vector_assign.hpp&gt;</span> <span class="comment">// indexing_vector_assign</span>
<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;boost/numeric/ublas/detail/matrix_assign.hpp&gt;</span> <span class="comment">// indexing_matrix_assign</span>
<a name="l00019"></a>00019 
<a name="l00020"></a>00020 
<a name="l00021"></a>00021 <span class="keyword">namespace </span>boost { <span class="keyword">namespace </span>numeric { <span class="keyword">namespace </span>ublas {
<a name="l00022"></a>00022 
<a name="l00023"></a>00023     <span class="keyword">template</span>&lt;<span class="keyword">class</span> V, <span class="keyword">typename</span> V::<span class="keywordtype">size_t</span>ype BS, <span class="keyword">class</span> E1, <span class="keyword">class</span> E2&gt;
<a name="l00024"></a>00024     BOOST_UBLAS_INLINE
<a name="l00025"></a>00025     V
<a name="l00026"></a>00026     block_prod (<span class="keyword">const</span> matrix_expression&lt;E1&gt; &amp;e1,
<a name="l00027"></a>00027                 <span class="keyword">const</span> vector_expression&lt;E2&gt; &amp;e2) {
<a name="l00028"></a>00028         <span class="keyword">typedef</span> V vector_type;
<a name="l00029"></a>00029         <span class="keyword">typedef</span> <span class="keyword">const</span> E1 expression1_type;
<a name="l00030"></a>00030         <span class="keyword">typedef</span> <span class="keyword">const</span> E2 expression2_type;
<a name="l00031"></a>00031         <span class="keyword">typedef</span> <span class="keyword">typename</span> V::size_type size_type;
<a name="l00032"></a>00032         <span class="keyword">typedef</span> <span class="keyword">typename</span> V::value_type value_type;
<a name="l00033"></a>00033         <span class="keyword">const</span> size_type block_size = BS;
<a name="l00034"></a>00034 
<a name="l00035"></a>00035         V v (e1 ().size1 ());
<a name="l00036"></a>00036 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00037"></a>00037 <span class="preprocessor"></span>        vector&lt;value_type&gt; cv (v.size ());
<a name="l00038"></a>00038         <span class="keyword">typedef</span> <span class="keyword">typename</span> type_traits&lt;value_type&gt;::real_type real_type;
<a name="l00039"></a>00039         real_type verrorbound (norm_1 (v) + norm_1 (e1) * norm_1 (e2));
<a name="l00040"></a>00040         indexing_vector_assign&lt;scalar_assign&gt; (cv, prod (e1, e2));
<a name="l00041"></a>00041 <span class="preprocessor">#endif</span>
<a name="l00042"></a>00042 <span class="preprocessor"></span>        size_type i_size = e1 ().size1 ();
<a name="l00043"></a>00043         size_type j_size = BOOST_UBLAS_SAME (e1 ().size2 (), e2 ().size ());
<a name="l00044"></a>00044         <span class="keywordflow">for</span> (size_type i_begin = 0; i_begin &lt; i_size; i_begin += block_size) {
<a name="l00045"></a>00045             size_type i_end = i_begin + (std::min) (i_size - i_begin, block_size);
<a name="l00046"></a>00046             <span class="comment">// FIX: never ignore Martin Weiser&apos;s advice ;-(</span>
<a name="l00047"></a>00047 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span>            vector_range&lt;vector_type&gt; v_range (v, range (i_begin, i_end));
<a name="l00049"></a>00049 <span class="preprocessor">#else</span>
<a name="l00050"></a>00050 <span class="preprocessor"></span>            <span class="comment">// vector&lt;value_type, bounded_array&lt;value_type, block_size&gt; &gt; v_range (i_end - i_begin);</span>
<a name="l00051"></a>00051             vector&lt;value_type&gt; v_range (i_end - i_begin);
<a name="l00052"></a>00052 <span class="preprocessor">#endif</span>
<a name="l00053"></a>00053 <span class="preprocessor"></span>            v_range.assign (zero_vector&lt;value_type&gt; (i_end - i_begin));
<a name="l00054"></a>00054             <span class="keywordflow">for</span> (size_type j_begin = 0; j_begin &lt; j_size; j_begin += block_size) {
<a name="l00055"></a>00055                 size_type j_end = j_begin + (std::min) (j_size - j_begin, block_size);
<a name="l00056"></a>00056 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00057"></a>00057 <span class="preprocessor"></span>                <span class="keyword">const</span> matrix_range&lt;expression1_type&gt; e1_range (e1 (), range (i_begin, i_end), range (j_begin, j_end));
<a name="l00058"></a>00058                 <span class="keyword">const</span> vector_range&lt;expression2_type&gt; e2_range (e2 (), range (j_begin, j_end));
<a name="l00059"></a>00059                 v_range.plus_assign (prod (e1_range, e2_range));
<a name="l00060"></a>00060 <span class="preprocessor">#else</span>
<a name="l00061"></a>00061 <span class="preprocessor"></span>                <span class="comment">// const matrix&lt;value_type, row_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; e1_range (project (e1 (), range (i_begin, i_end), range (j_begin, j_end)));</span>
<a name="l00062"></a>00062                 <span class="comment">// const vector&lt;value_type, bounded_array&lt;value_type, block_size&gt; &gt; e2_range (project (e2 (), range (j_begin, j_end)));</span>
<a name="l00063"></a>00063                 <span class="keyword">const</span> matrix&lt;value_type, row_major&gt; e1_range (project (e1 (), range (i_begin, i_end), range (j_begin, j_end)));
<a name="l00064"></a>00064                 <span class="keyword">const</span> vector&lt;value_type&gt; e2_range (project (e2 (), range (j_begin, j_end)));
<a name="l00065"></a>00065                 v_range.plus_assign (prod (e1_range, e2_range));
<a name="l00066"></a>00066 <span class="preprocessor">#endif</span>
<a name="l00067"></a>00067 <span class="preprocessor"></span>            }
<a name="l00068"></a>00068 <span class="preprocessor">#ifndef BOOST_UBLAS_NO_CACHE</span>
<a name="l00069"></a>00069 <span class="preprocessor"></span>            project (v, range (i_begin, i_end)).assign (v_range);
<a name="l00070"></a>00070 <span class="preprocessor">#endif</span>
<a name="l00071"></a>00071 <span class="preprocessor"></span>        }
<a name="l00072"></a>00072 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00073"></a>00073 <span class="preprocessor"></span>        BOOST_UBLAS_CHECK (norm_1 (v - cv) &lt;= 2 * std::numeric_limits&lt;real_type&gt;::epsilon () * verrorbound, internal_logic ());
<a name="l00074"></a>00074 <span class="preprocessor">#endif</span>
<a name="l00075"></a>00075 <span class="preprocessor"></span>        <span class="keywordflow">return</span> v;
<a name="l00076"></a>00076     }
<a name="l00077"></a>00077 
<a name="l00078"></a>00078     <span class="keyword">template</span>&lt;<span class="keyword">class</span> V, <span class="keyword">typename</span> V::<span class="keywordtype">size_t</span>ype BS, <span class="keyword">class</span> E1, <span class="keyword">class</span> E2&gt;
<a name="l00079"></a>00079     BOOST_UBLAS_INLINE
<a name="l00080"></a>00080     V
<a name="l00081"></a>00081     block_prod (<span class="keyword">const</span> vector_expression&lt;E1&gt; &amp;e1,
<a name="l00082"></a>00082                 <span class="keyword">const</span> matrix_expression&lt;E2&gt; &amp;e2) {
<a name="l00083"></a>00083         <span class="keyword">typedef</span> V vector_type;
<a name="l00084"></a>00084         <span class="keyword">typedef</span> <span class="keyword">const</span> E1 expression1_type;
<a name="l00085"></a>00085         <span class="keyword">typedef</span> <span class="keyword">const</span> E2 expression2_type;
<a name="l00086"></a>00086         <span class="keyword">typedef</span> <span class="keyword">typename</span> V::size_type size_type;
<a name="l00087"></a>00087         <span class="keyword">typedef</span> <span class="keyword">typename</span> V::value_type value_type;
<a name="l00088"></a>00088         <span class="keyword">const</span> size_type block_size = BS;
<a name="l00089"></a>00089 
<a name="l00090"></a>00090         V v (e2 ().size2 ());
<a name="l00091"></a>00091 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00092"></a>00092 <span class="preprocessor"></span>        vector&lt;value_type&gt; cv (v.size ());
<a name="l00093"></a>00093         <span class="keyword">typedef</span> <span class="keyword">typename</span> type_traits&lt;value_type&gt;::real_type real_type;
<a name="l00094"></a>00094         real_type verrorbound (norm_1 (v) + norm_1 (e1) * norm_1 (e2));
<a name="l00095"></a>00095         indexing_vector_assign&lt;scalar_assign&gt; (cv, prod (e1, e2));
<a name="l00096"></a>00096 <span class="preprocessor">#endif</span>
<a name="l00097"></a>00097 <span class="preprocessor"></span>        size_type i_size = BOOST_UBLAS_SAME (e1 ().size (), e2 ().size1 ());
<a name="l00098"></a>00098         size_type j_size = e2 ().size2 ();
<a name="l00099"></a>00099         <span class="keywordflow">for</span> (size_type j_begin = 0; j_begin &lt; j_size; j_begin += block_size) {
<a name="l00100"></a>00100             size_type j_end = j_begin + (std::min) (j_size - j_begin, block_size);
<a name="l00101"></a>00101             <span class="comment">// FIX: never ignore Martin Weiser&apos;s advice ;-(</span>
<a name="l00102"></a>00102 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00103"></a>00103 <span class="preprocessor"></span>            vector_range&lt;vector_type&gt; v_range (v, range (j_begin, j_end));
<a name="l00104"></a>00104 <span class="preprocessor">#else</span>
<a name="l00105"></a>00105 <span class="preprocessor"></span>            <span class="comment">// vector&lt;value_type, bounded_array&lt;value_type, block_size&gt; &gt; v_range (j_end - j_begin);</span>
<a name="l00106"></a>00106             vector&lt;value_type&gt; v_range (j_end - j_begin);
<a name="l00107"></a>00107 <span class="preprocessor">#endif</span>
<a name="l00108"></a>00108 <span class="preprocessor"></span>            v_range.assign (zero_vector&lt;value_type&gt; (j_end - j_begin));
<a name="l00109"></a>00109             <span class="keywordflow">for</span> (size_type i_begin = 0; i_begin &lt; i_size; i_begin += block_size) {
<a name="l00110"></a>00110                 size_type i_end = i_begin + (std::min) (i_size - i_begin, block_size);
<a name="l00111"></a>00111 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00112"></a>00112 <span class="preprocessor"></span>                <span class="keyword">const</span> vector_range&lt;expression1_type&gt; e1_range (e1 (), range (i_begin, i_end));
<a name="l00113"></a>00113                 <span class="keyword">const</span> matrix_range&lt;expression2_type&gt; e2_range (e2 (), range (i_begin, i_end), range (j_begin, j_end));
<a name="l00114"></a>00114 <span class="preprocessor">#else</span>
<a name="l00115"></a>00115 <span class="preprocessor"></span>                <span class="comment">// const vector&lt;value_type, bounded_array&lt;value_type, block_size&gt; &gt; e1_range (project (e1 (), range (i_begin, i_end)));</span>
<a name="l00116"></a>00116                 <span class="comment">// const matrix&lt;value_type, column_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; e2_range (project (e2 (), range (i_begin, i_end), range (j_begin, j_end)));</span>
<a name="l00117"></a>00117                 <span class="keyword">const</span> vector&lt;value_type&gt; e1_range (project (e1 (), range (i_begin, i_end)));
<a name="l00118"></a>00118                 <span class="keyword">const</span> matrix&lt;value_type, column_major&gt; e2_range (project (e2 (), range (i_begin, i_end), range (j_begin, j_end)));
<a name="l00119"></a>00119 <span class="preprocessor">#endif</span>
<a name="l00120"></a>00120 <span class="preprocessor"></span>                v_range.plus_assign (prod (e1_range, e2_range));
<a name="l00121"></a>00121             }
<a name="l00122"></a>00122 <span class="preprocessor">#ifndef BOOST_UBLAS_NO_CACHE</span>
<a name="l00123"></a>00123 <span class="preprocessor"></span>            project (v, range (j_begin, j_end)).assign (v_range);
<a name="l00124"></a>00124 <span class="preprocessor">#endif</span>
<a name="l00125"></a>00125 <span class="preprocessor"></span>        }
<a name="l00126"></a>00126 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00127"></a>00127 <span class="preprocessor"></span>        BOOST_UBLAS_CHECK (norm_1 (v - cv) &lt;= 2 * std::numeric_limits&lt;real_type&gt;::epsilon () * verrorbound, internal_logic ());
<a name="l00128"></a>00128 <span class="preprocessor">#endif</span>
<a name="l00129"></a>00129 <span class="preprocessor"></span>        <span class="keywordflow">return</span> v;
<a name="l00130"></a>00130     }
<a name="l00131"></a>00131 
<a name="l00132"></a>00132     <span class="keyword">template</span>&lt;<span class="keyword">class</span> M, <span class="keyword">typename</span> M::<span class="keywordtype">size_t</span>ype BS, <span class="keyword">class</span> E1, <span class="keyword">class</span> E2&gt;
<a name="l00133"></a>00133     BOOST_UBLAS_INLINE
<a name="l00134"></a>00134     M
<a name="l00135"></a>00135     block_prod (<span class="keyword">const</span> matrix_expression&lt;E1&gt; &amp;e1,
<a name="l00136"></a>00136                 <span class="keyword">const</span> matrix_expression&lt;E2&gt; &amp;e2,
<a name="l00137"></a>00137                 row_major_tag) {
<a name="l00138"></a>00138         <span class="keyword">typedef</span> M matrix_type;
<a name="l00139"></a>00139         <span class="keyword">typedef</span> <span class="keyword">const</span> E1 expression1_type;
<a name="l00140"></a>00140         <span class="keyword">typedef</span> <span class="keyword">const</span> E2 expression2_type;
<a name="l00141"></a>00141         <span class="keyword">typedef</span> <span class="keyword">typename</span> M::size_type size_type;
<a name="l00142"></a>00142         <span class="keyword">typedef</span> <span class="keyword">typename</span> M::value_type value_type;
<a name="l00143"></a>00143         <span class="keyword">const</span> size_type block_size = BS;
<a name="l00144"></a>00144 
<a name="l00145"></a>00145         M m (e1 ().size1 (), e2 ().size2 ());
<a name="l00146"></a>00146 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00147"></a>00147 <span class="preprocessor"></span>        matrix&lt;value_type, row_major&gt; cm (m.size1 (), m.size2 ());
<a name="l00148"></a>00148         <span class="keyword">typedef</span> <span class="keyword">typename</span> type_traits&lt;value_type&gt;::real_type real_type;
<a name="l00149"></a>00149         real_type merrorbound (norm_1 (m) + norm_1 (e1) * norm_1 (e2));
<a name="l00150"></a>00150         indexing_matrix_assign&lt;scalar_assign&gt; (cm, prod (e1, e2), row_major_tag ());
<a name="l00151"></a>00151         disable_type_check&lt;bool&gt;::value = <span class="keyword">true</span>;
<a name="l00152"></a>00152 <span class="preprocessor">#endif</span>
<a name="l00153"></a>00153 <span class="preprocessor"></span>        size_type i_size = e1 ().size1 ();
<a name="l00154"></a>00154         size_type j_size = e2 ().size2 ();
<a name="l00155"></a>00155         size_type k_size = BOOST_UBLAS_SAME (e1 ().size2 (), e2 ().size1 ());
<a name="l00156"></a>00156         <span class="keywordflow">for</span> (size_type i_begin = 0; i_begin &lt; i_size; i_begin += block_size) {
<a name="l00157"></a>00157             size_type i_end = i_begin + (std::min) (i_size - i_begin, block_size);
<a name="l00158"></a>00158             <span class="keywordflow">for</span> (size_type j_begin = 0; j_begin &lt; j_size; j_begin += block_size) {
<a name="l00159"></a>00159                 size_type j_end = j_begin + (std::min) (j_size - j_begin, block_size);
<a name="l00160"></a>00160                 <span class="comment">// FIX: never ignore Martin Weiser&apos;s advice ;-(</span>
<a name="l00161"></a>00161 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00162"></a>00162 <span class="preprocessor"></span>                matrix_range&lt;matrix_type&gt; m_range (m, range (i_begin, i_end), range (j_begin, j_end));
<a name="l00163"></a>00163 <span class="preprocessor">#else</span>
<a name="l00164"></a>00164 <span class="preprocessor"></span>                <span class="comment">// matrix&lt;value_type, row_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; m_range (i_end - i_begin, j_end - j_begin);</span>
<a name="l00165"></a>00165                 matrix&lt;value_type, row_major&gt; m_range (i_end - i_begin, j_end - j_begin);
<a name="l00166"></a>00166 <span class="preprocessor">#endif</span>
<a name="l00167"></a>00167 <span class="preprocessor"></span>                m_range.assign (zero_matrix&lt;value_type&gt; (i_end - i_begin, j_end - j_begin));
<a name="l00168"></a>00168                 <span class="keywordflow">for</span> (size_type k_begin = 0; k_begin &lt; k_size; k_begin += block_size) {
<a name="l00169"></a>00169                     size_type k_end = k_begin + (std::min) (k_size - k_begin, block_size);
<a name="l00170"></a>00170 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00171"></a>00171 <span class="preprocessor"></span>                    <span class="keyword">const</span> matrix_range&lt;expression1_type&gt; e1_range (e1 (), range (i_begin, i_end), range (k_begin, k_end));
<a name="l00172"></a>00172                     <span class="keyword">const</span> matrix_range&lt;expression2_type&gt; e2_range (e2 (), range (k_begin, k_end), range (j_begin, j_end));
<a name="l00173"></a>00173 <span class="preprocessor">#else</span>
<a name="l00174"></a>00174 <span class="preprocessor"></span>                    <span class="comment">// const matrix&lt;value_type, row_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; e1_range (project (e1 (), range (i_begin, i_end), range (k_begin, k_end)));</span>
<a name="l00175"></a>00175                     <span class="comment">// const matrix&lt;value_type, column_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; e2_range (project (e2 (), range (k_begin, k_end), range (j_begin, j_end)));</span>
<a name="l00176"></a>00176                     <span class="keyword">const</span> matrix&lt;value_type, row_major&gt; e1_range (project (e1 (), range (i_begin, i_end), range (k_begin, k_end)));
<a name="l00177"></a>00177                     <span class="keyword">const</span> matrix&lt;value_type, column_major&gt; e2_range (project (e2 (), range (k_begin, k_end), range (j_begin, j_end)));
<a name="l00178"></a>00178 <span class="preprocessor">#endif</span>
<a name="l00179"></a>00179 <span class="preprocessor"></span>                    m_range.plus_assign (prod (e1_range, e2_range));
<a name="l00180"></a>00180                 }
<a name="l00181"></a>00181 <span class="preprocessor">#ifndef BOOST_UBLAS_NO_CACHE</span>
<a name="l00182"></a>00182 <span class="preprocessor"></span>                project (m, range (i_begin, i_end), range (j_begin, j_end)).assign (m_range);
<a name="l00183"></a>00183 <span class="preprocessor">#endif</span>
<a name="l00184"></a>00184 <span class="preprocessor"></span>            }
<a name="l00185"></a>00185         }
<a name="l00186"></a>00186 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00187"></a>00187 <span class="preprocessor"></span>        disable_type_check&lt;bool&gt;::value = <span class="keyword">false</span>;
<a name="l00188"></a>00188         BOOST_UBLAS_CHECK (norm_1 (m - cm) &lt;= 2 * std::numeric_limits&lt;real_type&gt;::epsilon () * merrorbound, internal_logic ());
<a name="l00189"></a>00189 <span class="preprocessor">#endif</span>
<a name="l00190"></a>00190 <span class="preprocessor"></span>        <span class="keywordflow">return</span> m;
<a name="l00191"></a>00191     }
<a name="l00192"></a>00192 
<a name="l00193"></a>00193     <span class="keyword">template</span>&lt;<span class="keyword">class</span> M, <span class="keyword">typename</span> M::<span class="keywordtype">size_t</span>ype BS, <span class="keyword">class</span> E1, <span class="keyword">class</span> E2&gt;
<a name="l00194"></a>00194     BOOST_UBLAS_INLINE
<a name="l00195"></a>00195     M
<a name="l00196"></a>00196     block_prod (<span class="keyword">const</span> matrix_expression&lt;E1&gt; &amp;e1,
<a name="l00197"></a>00197                 <span class="keyword">const</span> matrix_expression&lt;E2&gt; &amp;e2,
<a name="l00198"></a>00198                 column_major_tag) {
<a name="l00199"></a>00199         <span class="keyword">typedef</span> M matrix_type;
<a name="l00200"></a>00200         <span class="keyword">typedef</span> <span class="keyword">const</span> E1 expression1_type;
<a name="l00201"></a>00201         <span class="keyword">typedef</span> <span class="keyword">const</span> E2 expression2_type;
<a name="l00202"></a>00202         <span class="keyword">typedef</span> <span class="keyword">typename</span> M::size_type size_type;
<a name="l00203"></a>00203         <span class="keyword">typedef</span> <span class="keyword">typename</span> M::value_type value_type;
<a name="l00204"></a>00204         <span class="keyword">const</span> size_type block_size = BS;
<a name="l00205"></a>00205 
<a name="l00206"></a>00206         M m (e1 ().size1 (), e2 ().size2 ());
<a name="l00207"></a>00207 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00208"></a>00208 <span class="preprocessor"></span>        matrix&lt;value_type, column_major&gt; cm (m.size1 (), m.size2 ());
<a name="l00209"></a>00209         <span class="keyword">typedef</span> <span class="keyword">typename</span> type_traits&lt;value_type&gt;::real_type real_type;
<a name="l00210"></a>00210         real_type merrorbound (norm_1 (m) + norm_1 (e1) * norm_1 (e2));
<a name="l00211"></a>00211         indexing_matrix_assign&lt;scalar_assign&gt; (cm, prod (e1, e2), column_major_tag ());
<a name="l00212"></a>00212         disable_type_check&lt;bool&gt;::value = <span class="keyword">true</span>;
<a name="l00213"></a>00213 <span class="preprocessor">#endif</span>
<a name="l00214"></a>00214 <span class="preprocessor"></span>        size_type i_size = e1 ().size1 ();
<a name="l00215"></a>00215         size_type j_size = e2 ().size2 ();
<a name="l00216"></a>00216         size_type k_size = BOOST_UBLAS_SAME (e1 ().size2 (), e2 ().size1 ());
<a name="l00217"></a>00217         <span class="keywordflow">for</span> (size_type j_begin = 0; j_begin &lt; j_size; j_begin += block_size) {
<a name="l00218"></a>00218             size_type j_end = j_begin + (std::min) (j_size - j_begin, block_size);
<a name="l00219"></a>00219             <span class="keywordflow">for</span> (size_type i_begin = 0; i_begin &lt; i_size; i_begin += block_size) {
<a name="l00220"></a>00220                 size_type i_end = i_begin + (std::min) (i_size - i_begin, block_size);
<a name="l00221"></a>00221                 <span class="comment">// FIX: never ignore Martin Weiser&apos;s advice ;-(</span>
<a name="l00222"></a>00222 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00223"></a>00223 <span class="preprocessor"></span>                matrix_range&lt;matrix_type&gt; m_range (m, range (i_begin, i_end), range (j_begin, j_end));
<a name="l00224"></a>00224 <span class="preprocessor">#else</span>
<a name="l00225"></a>00225 <span class="preprocessor"></span>                <span class="comment">// matrix&lt;value_type, column_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; m_range (i_end - i_begin, j_end - j_begin);</span>
<a name="l00226"></a>00226                 matrix&lt;value_type, column_major&gt; m_range (i_end - i_begin, j_end - j_begin);
<a name="l00227"></a>00227 <span class="preprocessor">#endif</span>
<a name="l00228"></a>00228 <span class="preprocessor"></span>                m_range.assign (zero_matrix&lt;value_type&gt; (i_end - i_begin, j_end - j_begin));
<a name="l00229"></a>00229                 <span class="keywordflow">for</span> (size_type k_begin = 0; k_begin &lt; k_size; k_begin += block_size) {
<a name="l00230"></a>00230                     size_type k_end = k_begin + (std::min) (k_size - k_begin, block_size);
<a name="l00231"></a>00231 <span class="preprocessor">#ifdef BOOST_UBLAS_NO_CACHE</span>
<a name="l00232"></a>00232 <span class="preprocessor"></span>                    <span class="keyword">const</span> matrix_range&lt;expression1_type&gt; e1_range (e1 (), range (i_begin, i_end), range (k_begin, k_end));
<a name="l00233"></a>00233                     <span class="keyword">const</span> matrix_range&lt;expression2_type&gt; e2_range (e2 (), range (k_begin, k_end), range (j_begin, j_end));
<a name="l00234"></a>00234 <span class="preprocessor">#else</span>
<a name="l00235"></a>00235 <span class="preprocessor"></span>                    <span class="comment">// const matrix&lt;value_type, row_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; e1_range (project (e1 (), range (i_begin, i_end), range (k_begin, k_end)));</span>
<a name="l00236"></a>00236                     <span class="comment">// const matrix&lt;value_type, column_major, bounded_array&lt;value_type, block_size * block_size&gt; &gt; e2_range (project (e2 (), range (k_begin, k_end), range (j_begin, j_end)));</span>
<a name="l00237"></a>00237                     <span class="keyword">const</span> matrix&lt;value_type, row_major&gt; e1_range (project (e1 (), range (i_begin, i_end), range (k_begin, k_end)));
<a name="l00238"></a>00238                     <span class="keyword">const</span> matrix&lt;value_type, column_major&gt; e2_range (project (e2 (), range (k_begin, k_end), range (j_begin, j_end)));
<a name="l00239"></a>00239 <span class="preprocessor">#endif</span>
<a name="l00240"></a>00240 <span class="preprocessor"></span>                    m_range.plus_assign (prod (e1_range, e2_range));
<a name="l00241"></a>00241                 }
<a name="l00242"></a>00242 <span class="preprocessor">#ifndef BOOST_UBLAS_NO_CACHE</span>
<a name="l00243"></a>00243 <span class="preprocessor"></span>                project (m, range (i_begin, i_end), range (j_begin, j_end)).assign (m_range);
<a name="l00244"></a>00244 <span class="preprocessor">#endif</span>
<a name="l00245"></a>00245 <span class="preprocessor"></span>            }
<a name="l00246"></a>00246         }
<a name="l00247"></a>00247 <span class="preprocessor">#if BOOST_UBLAS_TYPE_CHECK</span>
<a name="l00248"></a>00248 <span class="preprocessor"></span>        disable_type_check&lt;bool&gt;::value = <span class="keyword">false</span>;
<a name="l00249"></a>00249         BOOST_UBLAS_CHECK (norm_1 (m - cm) &lt;= 2 * std::numeric_limits&lt;real_type&gt;::epsilon () * merrorbound, internal_logic ());
<a name="l00250"></a>00250 <span class="preprocessor">#endif</span>
<a name="l00251"></a>00251 <span class="preprocessor"></span>        <span class="keywordflow">return</span> m;
<a name="l00252"></a>00252     }
<a name="l00253"></a>00253 
<a name="l00254"></a>00254     <span class="comment">// Dispatcher</span>
<a name="l00255"></a>00255     <span class="keyword">template</span>&lt;<span class="keyword">class</span> M, <span class="keyword">typename</span> M::<span class="keywordtype">size_t</span>ype BS, <span class="keyword">class</span> E1, <span class="keyword">class</span> E2&gt;
<a name="l00256"></a>00256     BOOST_UBLAS_INLINE
<a name="l00257"></a>00257     M
<a name="l00258"></a>00258     block_prod (<span class="keyword">const</span> matrix_expression&lt;E1&gt; &amp;e1,
<a name="l00259"></a>00259                 <span class="keyword">const</span> matrix_expression&lt;E2&gt; &amp;e2) {
<a name="l00260"></a>00260         <span class="keyword">typedef</span> <span class="keyword">typename</span> M::orientation_category orientation_category;
<a name="l00261"></a>00261         <span class="keywordflow">return</span> block_prod&lt;M, BS&gt; (e1, e2, orientation_category ());
<a name="l00262"></a>00262     }
<a name="l00263"></a>00263 
<a name="l00264"></a>00264 }}}
<a name="l00265"></a>00265 
<a name="l00266"></a>00266 <span class="preprocessor">#endif</span>
</pre></div></div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Jul 4 20:30:58 2010 for ublas by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>
