/[escript]/temp/finley/src/ElementFile_scatter.c
ViewVC logotype

Contents of /temp/finley/src/ElementFile_scatter.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 201 - (show annotations)
Wed Nov 23 04:10:21 2005 UTC (14 years ago) by jgs
Original Path: trunk/finley/src/finley/ElementFile_scatter.c
File MIME type: text/plain
File size: 3378 byte(s)
copy finleyC and CPPAdapter to finley and finley/CPPAdapter to
facilitate scons builds

1 /*
2 ******************************************************************************
3 * *
4 * COPYRIGHT ACcESS 2003,2004,2005 - All Rights Reserved *
5 * *
6 * This software is the property of ACcESS. No part of this code *
7 * may be copied in any form or by any means without the expressed written *
8 * consent of ACcESS. Copying, use or modification of this software *
9 * by any unauthorised person is illegal unless that person has a software *
10 * license agreement with ACcESS. *
11 * *
12 ******************************************************************************
13 */
14
15 /**************************************************************/
16 /* */
17 /* Finley: ElementFile */
18 /* */
19 /* scatter the ElementFile in into the ElementFile out using index[0:out->numElements-1]. */
20 /* index has to be between 0 and in->numElements-1. */
21 /* a conservative assumtion on the coloring is made */
22 /* */
23 /**************************************************************/
24
25 /* Author: gross@access.edu.au */
26 /* Version: $Id$ */
27
28 /**************************************************************/
29
30 #include "ElementFile.h"
31
32 /**************************************************************/
33
34 void Finley_ElementFile_scatter(index_t* index, Finley_ElementFile* in, Finley_ElementFile* out) {
35 index_t k;
36 dim_t e,j;
37 if (in!=NULL) {
38 dim_t NN_in=in->ReferenceElement->Type->numNodes;
39 dim_t NN_out=out->ReferenceElement->Type->numNodes;
40 /*OMP */
41 #pragma omp parallel for private(e,k,j) schedule(static)
42 for (e=0;e<in->numElements;e++) {
43 k=index[e];
44 out->Id[k]=in->Id[e];
45 out->Tag[k]=in->Tag[e];
46 out->Color[k]=in->Color[e]+out->maxColor+1;
47 for(j=0;j<MIN(NN_out,NN_in);j++) out->Nodes[INDEX2(j,k,NN_out)]=in->Nodes[INDEX2(j,e,NN_in)];
48 }
49 out->minColor=MIN(out->minColor,in->minColor+out->maxColor+1);
50 out->maxColor=MAX(out->maxColor,in->maxColor+out->maxColor+1);
51 }
52 }
53 /*
54 * $Log$
55 * Revision 1.3 2005/09/15 03:44:22 jgs
56 * Merge of development branch dev-02 back to main trunk on 2005-09-15
57 *
58 * Revision 1.2.2.1 2005/09/07 06:26:18 gross
59 * the solver from finley are put into the standalone package paso now
60 *
61 * Revision 1.2 2005/07/08 04:07:50 jgs
62 * Merge of development branch back to main trunk on 2005-07-08
63 *
64 * Revision 1.1.1.1.2.2 2005/06/30 01:53:55 gross
65 * a bug in coloring fixed
66 *
67 * Revision 1.1.1.1.2.1 2005/06/29 02:34:50 gross
68 * some changes towards 64 integers in finley
69 *
70 * Revision 1.1.1.1 2004/10/26 06:53:57 jgs
71 * initial import of project esys2
72 *
73 * Revision 1.1.1.1 2004/06/24 04:00:40 johng
74 * Initial version of eys using boost-python.
75 *
76 *
77 */

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26