/[escript]/trunk/finley/src/Assemble.h
ViewVC logotype

Annotation of /trunk/finley/src/Assemble.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 682 - (hide annotations)
Mon Mar 27 02:43:09 2006 UTC (13 years, 7 months ago) by robwdcock
File MIME type: text/plain
File size: 5538 byte(s)
+ NEW BUILD SYSTEM

This commit contains the new build system with cross-platform support.
Most things work are before though you can have more control.

ENVIRONMENT settings have changed:
+ You no longer require LD_LIBRARY_PATH or PYTHONPATH to point to the
esysroot for building and testing performed via scons
+ ACcESS altix users: It is recommended you change your modules to load
the latest intel compiler and other libraries required by boost to match
the setup in svn (you can override). The correct modules are as follows

module load intel_cc.9.0.026
export
MODULEPATH=${MODULEPATH}:/data/raid2/toolspp4/modulefiles/gcc-3.3.6
module load boost/1.33.0/python-2.4.1
module load python/2.4.1
module load numarray/1.3.3


1 jgs 150 /*
2 elspeth 626 ************************************************************
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 jgs 150 */
12 jgs 82
13     /**************************************************************/
14    
15     /* assemblage routines: header file */
16    
17     /**************************************************************/
18    
19 jgs 150 /* Copyrights by ACcESS Australia 2003,2004,2005 */
20     /* Author: gross@access.edu.au */
21     /* Version: $Id$ */
22 jgs 82
23     /**************************************************************/
24 jgs 150
25     #ifndef INC_FINLEY_ASSEMBLE
26     #define INC_FINLEY_ASSEMBLE
27    
28     /**************************************************************/
29    
30 jgs 82 #include "ReferenceElements.h"
31 jgs 150 #include "Finley.h"
32 jgs 82 #include "ElementFile.h"
33     #include "NodeFile.h"
34 robwdcock 682 #include "escript/DataC.h"
35     #include "paso/SystemMatrix.h"
36 jgs 82
37     struct Assemble_Parameters {
38 jgs 123 dim_t numQuad;
39     dim_t numDim;
40     dim_t numElementDim;
41 jgs 82
42 jgs 123 dim_t NN;
43     dim_t NS;
44 jgs 82 Finley_RefElement* referenceElement;
45    
46 jgs 123 dim_t numEqu;
47     index_t* label_row;
48 jgs 82 Finley_RefElement* referenceElement_row;
49 jgs 123 index_t* row_node;
50     dim_t NN_row;
51     dim_t NS_row;
52 jgs 82
53 jgs 123 dim_t numComp;
54     index_t * label_col;
55 jgs 82 Finley_RefElement* referenceElement_col;
56 jgs 123 index_t* col_node;
57     dim_t NN_col;
58     dim_t NS_col;
59 jgs 82
60 jgs 123 index_t id[MAX_numNodes]; /* used to hold a reordering vector, referenced by row_node and col_node */
61 jgs 82 };
62    
63     typedef struct Assemble_Parameters Assemble_Parameters;
64    
65    
66 jgs 123 typedef void (Finley_Assemble_handelShapeMissMatch) (dim_t, dim_t,dim_t, double*,dim_t, dim_t);
67 jgs 82
68 jgs 150 void Finley_Assemble_PDE(Finley_NodeFile*,Finley_ElementFile*,Paso_SystemMatrix*,escriptDataC*,
69 jgs 82 escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*) ;
70 jgs 147 void Finley_Assemble_PDE_RHS(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*,escriptDataC*,escriptDataC*) ;
71 jgs 150 void Finley_Assemble_RobinCondition(Finley_NodeFile*,Finley_ElementFile*,Paso_SystemMatrix*,escriptDataC*,
72 jgs 82 escriptDataC*,escriptDataC*,Finley_Assemble_handelShapeMissMatch) ;
73 jgs 147 void Finley_Assemble_RobinCondition_RHS(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*,escriptDataC*,Finley_Assemble_handelShapeMissMatch);
74 jgs 150 /* void Finley_Assemble_Points(Finley_Mesh*,Paso_SystemMatrix*,escriptDataC*,escriptDataC*,escriptDataC*) ;*/
75 jgs 82 void Finley_Assemble_NodeCoordinates(Finley_NodeFile*,escriptDataC*);
76     void Finley_Assemble_setNormal(Finley_NodeFile*, Finley_ElementFile*, escriptDataC*);
77     void Finley_Assemble_interpolate(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*, escriptDataC*);
78     void Finley_Assemble_gradient(Finley_NodeFile*, Finley_ElementFile*,escriptDataC*, escriptDataC*);
79     void Finley_Assemble_integrate(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*,double*) ;
80     void Finley_Assemble_getSize(Finley_NodeFile*,Finley_ElementFile*, escriptDataC*);
81     void Finley_Assemble_CopyNodalData(Finley_NodeFile* nodes,escriptDataC* out,escriptDataC* in);
82     void Finley_Assemble_CopyElementData(Finley_ElementFile* elements,escriptDataC* out,escriptDataC* in);
83 jgs 123 void Finley_Assemble_PDEMatrix_System2(dim_t,dim_t,dim_t,dim_t,dim_t,double*,double*, double*,dim_t, double*, double*,dim_t, double*,dim_t,double*,dim_t,double*,dim_t);
84     void Finley_Assemble_PDEMatrix_Single2(dim_t,dim_t,dim_t,double*,double*, double*,dim_t, double*, double*,dim_t, double*,dim_t,double*,dim_t,double*,dim_t);
85     void Finley_Assemble_RHSMatrix_System(dim_t,dim_t,dim_t,dim_t,double*,double*,double*,dim_t, double*,double*,dim_t,double*,dim_t);
86     void Finley_Assemble_RHSMatrix_Single(dim_t,dim_t,dim_t,double*,double*,double*,dim_t, double*,double*,dim_t,double*,dim_t);
87 jgs 82
88    
89 jgs 150 void Assemble_getAssembleParameters(Finley_NodeFile*,Finley_ElementFile*,Paso_SystemMatrix*,escriptDataC*,Assemble_Parameters*);
90 jgs 82 Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Step_out;
91     Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Step_in;
92     Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Mean_out;
93     Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Mean_in;
94 jgs 150 void Finley_Assemble_addToSystemMatrix(Paso_SystemMatrix*,dim_t,index_t*, dim_t,dim_t,index_t*,dim_t, double*);
95 jgs 82
96     #endif /* #ifndef INC_FINLEY_ASSEMBLE */
97    
98     /*
99     * $Log$
100 jgs 150 * Revision 1.4 2005/09/15 03:44:21 jgs
101     * Merge of development branch dev-02 back to main trunk on 2005-09-15
102     *
103 jgs 147 * Revision 1.3 2005/08/12 01:45:42 jgs
104     * erge of development branch dev-02 back to main trunk on 2005-08-12
105     *
106 jgs 150 * Revision 1.2.2.2 2005/09/07 06:26:17 gross
107     * the solver from finley are put into the standalone package paso now
108     *
109 jgs 147 * Revision 1.2.2.1 2005/08/04 22:41:11 gross
110     * some extra routines for finley that might speed-up RHS assembling in some cases (not actived right now)
111     *
112 jgs 123 * Revision 1.2 2005/07/08 04:07:45 jgs
113     * Merge of development branch back to main trunk on 2005-07-08
114 jgs 82 *
115 jgs 123 * Revision 1.1.1.1.2.1 2005/06/29 02:34:46 gross
116     * some changes towards 64 integers in finley
117     *
118     * Revision 1.1.1.1 2004/10/26 06:53:56 jgs
119     * initial import of project esys2
120     *
121 jgs 82 * Revision 1.1 2004/07/02 04:21:13 gross
122     * Finley C code has been included
123     *
124     *
125     */

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26