18 for( j = 0; j < nc; ++j, Ccol += na, Bcol += nb )
21 for( i = 0; i < na; ++i )
23 for( k = 0; k < nb; ++k, Acol += na )
24 for( i = 0; i < na; ++i )
25 Ccol[i] += Acol[i] * Bcol[k];
34 for( j = 0; j < nc; ++j, Ccol += na, Bcol += nb )
37 for( i = 0; i < na; ++i, Arow += nb )
40 for( k = 0; k < nb; ++k )
41 Ccol[i] += Arow[k] * Bcol[k];
50 for( i = 0; i < na * nc; ++i )
52 for( k = 0; k < nb; ++k, Acol += na, Brow += nc )
55 for( j = 0; j < nc; ++j, Ccol += na )
56 for( i = 0; i < na; ++i )
57 Ccol[i] += Acol[i] * Brow[j];
97 }
while( yp != y_end );
98 for( ++x; x != x_end; ++x )
105 }
while( yp != y_end );
122 }
while( y != y_end );
177 mxm_cr( W, mr, S, ns, v, ms );
192 mxm_cc( W, mr, S, ns, v, ms );
211 unsigned n, mrns = mr * ns, mrms = mr * ms;
214 for( n = 0; n < nt; ++n, W += mrns, Zp += mrms )
215 mxm_cr( W, mr, S, ns, Zp, ms );
216 mxm_cr( Z, mrms, T, nt, v, mt );
235 unsigned n, mrns = mr * ns, mrms = mr * ms;
238 for( n = 0; n < nt; ++n, W += mrns, Zp += mrms )
239 mxm_cc( W, mr, S, ns, Zp, ms );
240 mxm_cc( Z, mrms, T, nt, v, mt );
269 return inner( Js, work, ns );
283 mxv_r( work2, ns * nt, u, Jr,
nr );
284 mxv_r( work, nt, work2, Js, ns );
285 return inner( Jt, work, nt );
324 g[0] =
inner( Js, ar, ns );
325 g[1] =
inner( Ds, a, ns );
326 return inner( Js, a, ns );
343 unsigned nsnt = ns * nt;
344 realType *a = work, *ar = a + nsnt, *b = ar + nsnt, *br = b + ns, *bs = br + ns;
347 mxv_r( b, nt, a, Js, ns );
348 mxv_r( br, nt, ar, Js, ns );
349 mxv_r( bs, nt, a, Ds, ns );
350 g[0] =
inner( Jt, br, nt );
351 g[1] =
inner( Jt, bs, nt );
352 g[2] =
inner( Dt, b, nt );
353 return inner( Jt, b, nt );