正在加载图片...
交换a,y与a[t, mixcolumn end for (i)交换 shifty与shjt end if (1.6)/*行交换* if (t m≠a[i,v])then (iif ((maxrank-i] and [itmaxow)) then nnerexchangerow()/*处理器内部换行 (i)if( maxrank≠then W()/*处理器之间换行 d if end if (1.7if( my rank=j)then/*主行所在的处理器* /*对主行作归一化运算 (ifor k-y+l to n-1 do a[i, k]=a[i, kla[i, v] (ib(d=b[ai, vla[i, v]=1 /*将主行元素赋予数组f* (infor k-v+I to n-l do fk=ali, k (iv)t}=b可 (v)广播主行到所有处理器 else/*非主行所在的处理器* 接收广播来的主行元素存于数组f中 (1.8if( my rank≤then for k=i+l to m-l d (ifor w=v+I to n-l do a[k, w]=alk, w]-Aw]* alk, vl (iib(k]=b(k]-(n]*alk, rl ifor w=v+l to n-l d a[k, w]=a[k, w]-Aw]*alk, v] d (iib(k]=b(k] n]*akk, vl交换 a[t,v]与 a[t,maxcolumn] end for (ii)交换 shift[v]与 shift[maxcolumn] end if (1.6) /*行交换*/ if (my_rank=j) then if (maxcolumn ≠ a[i,v]) then (i)if ([maxrank=j] and [i≠maxrow]) then innerexchangerow( ) /*处理器内部换行*/ end if (ii)if (maxrank ≠ j) then outerexchangerow( ) /*处理器之间换行*/ end if end if end if (1.7)if (my_rank=j) then /*主行所在的处理器*/ /*对主行作归一化运算*/ (i)for k=v+1 to n-1 do a[i,k]= a[i,k]/a[i,v] end for (ii)b[i]=b[i]/ a[i,v],a[i,v]=1 /*将主行元素赋予数组 f */ (iii)for k=v+1 to n-1 do f[k]= a[i,k] end for (iv)f[n]=b[i] (v)广播主行到所有处理器 else /*非主行所在的处理器*/ 接收广播来的主行元素存于数组 f 中 end if (1.8)if (my_rank ≤ j) then for k=i+1 to m-1 do (i)for w=v+1 to n-1 do a[k,w]= a[k,w]-f[w]* a[k,v] end for (ii)b[k]=b[k]-f[n]* a[k,v] end for end if (1.9)if (my_rank>j) then for k=i to m-1 do (i)for w=v+1 to n-1 do a[k,w]= a[k,w]-f[w]* a[k,v] end for (ii)b[k]=b[k]-f[n]* a[k,v]
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有