~vcs-imports/escript-finley/trunk

« back to all changes in this revision

Viewing changes to dudley/src/ElementFile_relableNodes.c

  • Committer: jfenwick
  • Date: 2010-10-11 01:48:14 UTC
  • Revision ID: svn-v4:77569008-7704-0410-b7a0-a92fef0b09fd:trunk:3259
Merging dudley and scons updates from branches

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
/*******************************************************
 
3
*
 
4
* Copyright (c) 2003-2010 by University of Queensland
 
5
* Earth Systems Science Computational Center (ESSCC)
 
6
* http://www.uq.edu.au/esscc
 
7
*
 
8
* Primary Business: Queensland, Australia
 
9
* Licensed under the Open Software License version 3.0
 
10
* http://www.opensource.org/licenses/osl-3.0.php
 
11
*
 
12
*******************************************************/
 
13
 
 
14
/**************************************************************/
 
15
 
 
16
/*   Dudley: ElementFile */
 
17
 
 
18
/*                                                                      */
 
19
/*   assigns new node reference numbers to elements in element file in. */
 
20
/*   if k is the old node, the new node is newNode[k-offset].           */
 
21
 
 
22
/**************************************************************/
 
23
 
 
24
#include "ElementFile.h"
 
25
 
 
26
/**************************************************************/
 
27
 
 
28
void Dudley_ElementFile_relableNodes(index_t * newNode, index_t offset, Dudley_ElementFile * in)
 
29
{
 
30
    dim_t i, j, NN;
 
31
 
 
32
    if (in != NULL)
 
33
    {
 
34
        NN = in->numNodes;
 
35
#pragma omp parallel for private(j,i) schedule(static)
 
36
        for (j = 0; j < in->numElements; j++)
 
37
        {
 
38
            for (i = 0; i < NN; i++)
 
39
            {
 
40
                in->Nodes[INDEX2(i, j, NN)] = newNode[in->Nodes[INDEX2(i, j, NN)] - offset];
 
41
            }
 
42
        }
 
43
    }
 
44
}