/[escript]/trunk/finley/src/finleyC/ElementFile_gather.c
ViewVC logotype

Annotation of /trunk/finley/src/finleyC/ElementFile_gather.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 155 - (hide annotations)
Wed Nov 9 02:02:19 2005 UTC (14 years, 1 month ago) by jgs
File MIME type: text/plain
File size: 2937 byte(s)
move all directories from trunk/esys2 into trunk and remove esys2

1 jgs 150 /*
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 jgs 82 /**************************************************************/
16    
17     /* Finley: ElementFile */
18    
19     /* gathers the ElementFile out from the ElementFile in 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 jgs 150 /* Author: gross@access.edu.au */
26     /* Version: $Id$ */
27 jgs 82
28     /**************************************************************/
29    
30     #include "ElementFile.h"
31    
32     /**************************************************************/
33    
34 jgs 123 void Finley_ElementFile_gather(index_t* index, Finley_ElementFile* in, Finley_ElementFile* out) {
35     index_t k;
36     dim_t e,j;
37     dim_t NN_in=in->ReferenceElement->Type->numNodes;
38     dim_t NN_out=out->ReferenceElement->Type->numNodes;
39 jgs 82 if (in!=NULL) {
40     /*OMP */
41     #pragma omp parallel for private(e,k,j) schedule(static)
42     for (e=0;e<out->numElements;e++) {
43     k=index[e];
44     out->Id[e]=in->Id[k];
45     out->Tag[e]=in->Tag[k];
46 jgs 123 out->Color[e]=in->Color[k]+out->maxColor+1;
47 jgs 82 for(j=0;j<MIN(NN_out,NN_in);j++) out->Nodes[INDEX2(j,e,NN_out)]=in->Nodes[INDEX2(j,k,NN_in)];
48     }
49 jgs 123 out->minColor=MIN(out->minColor,in->minColor+out->maxColor+1);
50     out->maxColor=MAX(out->maxColor,in->maxColor+out->maxColor+1);
51 jgs 82 }
52     }
53     /*
54     * $Log$
55 jgs 150 * 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 jgs 123 * Revision 1.2 2005/07/08 04:07:49 jgs
62     * Merge of development branch back to main trunk on 2005-07-08
63 jgs 82 *
64 jgs 123 * 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:49 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 jgs 82 * 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