# Contents of /trunk/paso/src/Solvers/Solver_applyBlockDiagonalMatrix.c

Revision 633 - (show annotations)
Thu Mar 23 05:37:00 2006 UTC (13 years, 10 months ago) by dhawcroft
File MIME type: text/plain
File size: 3107 byte(s)

 1 /* \$Id\$ */ 2 3 4 /* 5 ******************************************************************************** 6 * Copyright 2006 by ACcESS MNRF * 7 * * 8 * http://www.access.edu.au * 9 * Primary Business: Queensland, Australia * 10 * Licensed under the Open Software License version 3.0 * 11 * http://www.opensource.org/licenses/osl-3.0.php * 12 ******************************************************************************** 13 */ 14 15 /**************************************************************/ 16 17 /* Paso: apply block diagonal matrix D: x=D*b */ 18 19 /* should be called within a parallel region */ 20 /* barrier synconization should be performed to make sure that the input vector available */ 21 22 /**************************************************************/ 23 24 /* Copyrights by ACcESS Australia 2003, 2004, 2005 */ 25 /* Author: gross@access.edu.au */ 26 27 /**************************************************************/ 28 29 #include "Paso.h" 30 31 /**************************************************************/ 32 33 34 void Paso_Solver_applyBlockDiagonalMatrix(dim_t n_block,dim_t n,double* D,index_t* pivot,double* x,double* b) { 35 dim_t i; 36 register dim_t i3,i9; 37 register double b0,b1,b2,D00,D10,D20,D01,D11,D21,D02,D12,D22; 38 39 if (n_block==1) { 40 #pragma omp for private(i) schedule(static) 41 for (i=0;i

## Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision