/[escript]/trunk/finley/src/Mesh_prepare.c
ViewVC logotype

Contents of /trunk/finley/src/Mesh_prepare.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 616 - (show annotations)
Wed Mar 22 02:46:56 2006 UTC (13 years, 7 months ago) by elspeth
File MIME type: text/plain
File size: 2867 byte(s)
Copyright added to more source files.

1 /*
2 ************************************************************
3 * Copyright 2006 by ACcESS MNRF *
4 * *
5 * http://www.access.edu.au *
6 * Primary Business: Queensland, Australia *
7 * Licensed under the Open Software License version 3.0 *
8 * http://www.opensource.org/licenses/osl-3.0.php *
9 * *
10 ************************************************************
11 */
12
13 /**************************************************************/
14
15 /* Finley: Mesh: prepares the mesh for further calculations */
16
17 /**************************************************************/
18
19 /* Author: gross@access.edu.au */
20 /* Version: $Id$ */
21
22 /**************************************************************/
23
24 #include "Mesh.h"
25
26 /**************************************************************/
27
28 void Finley_Mesh_prepare(Finley_Mesh* in) {
29
30 /* set the labeling vectors in node files: */
31 Finley_Mesh_prepareNodes(in);
32
33 /* rearrange elements: */
34 Finley_Mesh_optimizeElementDistribution(in);
35
36 /* improve coloring */
37 Finley_Mesh_improveColoring(in);
38 }
39 /* */
40 /* tries to reduce the coloring for all element files: */
41 /* */
42 void Finley_Mesh_improveColoring(Finley_Mesh* in) {
43 Finley_ElementFile_improveColoring(in->Elements,in->Nodes->numNodes,in->Nodes->degreeOfFreedom);
44 Finley_ElementFile_improveColoring(in->FaceElements,in->Nodes->numNodes,in->Nodes->degreeOfFreedom);
45 Finley_ElementFile_improveColoring(in->Points,in->Nodes->numNodes,in->Nodes->degreeOfFreedom);
46 Finley_ElementFile_improveColoring(in->ContactElements,in->Nodes->numNodes,in->Nodes->degreeOfFreedom);
47 }
48 /* */
49 /* redistribute elements to minimize communication during assemblage */
50 /* */
51 void Finley_Mesh_optimizeElementDistribution(Finley_Mesh* in) {
52 Finley_ElementFile_optimizeDistribution(&(in->Elements));
53 Finley_ElementFile_optimizeDistribution(&(in->FaceElements));
54 Finley_ElementFile_optimizeDistribution(&(in->Points));
55 Finley_ElementFile_optimizeDistribution(&(in->ContactElements));
56 }
57
58 /*
59 * $Log$
60 * Revision 1.2 2005/09/15 03:44:22 jgs
61 * Merge of development branch dev-02 back to main trunk on 2005-09-15
62 *
63 * Revision 1.1.1.1.6.1 2005/09/07 06:26:19 gross
64 * the solver from finley are put into the standalone package paso now
65 *
66 * Revision 1.1.1.1 2004/10/26 06:53:57 jgs
67 * initial import of project esys2
68 *
69 * Revision 1.1.1.1 2004/06/24 04:00:40 johng
70 * Initial version of eys using boost-python.
71 *
72 *
73 */
74

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26