1 |
/* $Id$ */ |
/* |
2 |
|
****************************************************************************** |
3 |
#ifndef INC_FINLEY_ASSEMBLE |
* * |
4 |
#define INC_FINLEY_ASSEMBLE |
* 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 |
|
|
18 |
|
|
19 |
/**************************************************************/ |
/**************************************************************/ |
20 |
|
|
21 |
/* Copyrights by ACcESS Australia, 2003,2004 */ |
/* Copyrights by ACcESS Australia 2003,2004,2005 */ |
22 |
/* author: gross@access.edu.au */ |
/* Author: gross@access.edu.au */ |
23 |
/* Version: $Id$ */ |
/* Version: $Id$ */ |
24 |
|
|
25 |
|
/**************************************************************/ |
26 |
|
|
27 |
|
#ifndef INC_FINLEY_ASSEMBLE |
28 |
|
#define INC_FINLEY_ASSEMBLE |
29 |
|
|
30 |
/**************************************************************/ |
/**************************************************************/ |
31 |
|
|
32 |
#include "ReferenceElements.h" |
#include "ReferenceElements.h" |
33 |
#include "System.h" |
#include "Finley.h" |
34 |
#include "ElementFile.h" |
#include "ElementFile.h" |
35 |
#include "NodeFile.h" |
#include "NodeFile.h" |
36 |
#include "escript/Data/DataC.h" |
#include "escript/Data/DataC.h" |
37 |
|
#include "paso/SystemMatrix.h" |
38 |
|
|
39 |
struct Assemble_Parameters { |
struct Assemble_Parameters { |
40 |
dim_t numQuad; |
dim_t numQuad; |
67 |
|
|
68 |
typedef void (Finley_Assemble_handelShapeMissMatch) (dim_t, dim_t,dim_t, double*,dim_t, dim_t); |
typedef void (Finley_Assemble_handelShapeMissMatch) (dim_t, dim_t,dim_t, double*,dim_t, dim_t); |
69 |
|
|
70 |
void Finley_Assemble_PDE(Finley_NodeFile*,Finley_ElementFile*,Finley_SystemMatrix*,escriptDataC*, |
void Finley_Assemble_PDE(Finley_NodeFile*,Finley_ElementFile*,Paso_SystemMatrix*,escriptDataC*, |
71 |
escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*) ; |
escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*, escriptDataC*) ; |
72 |
void Finley_Assemble_RobinCondition(Finley_NodeFile*,Finley_ElementFile*,Finley_SystemMatrix*,escriptDataC*, |
void Finley_Assemble_PDE_RHS(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*,escriptDataC*,escriptDataC*) ; |
73 |
|
void Finley_Assemble_RobinCondition(Finley_NodeFile*,Finley_ElementFile*,Paso_SystemMatrix*,escriptDataC*, |
74 |
escriptDataC*,escriptDataC*,Finley_Assemble_handelShapeMissMatch) ; |
escriptDataC*,escriptDataC*,Finley_Assemble_handelShapeMissMatch) ; |
75 |
/* void Finley_Assemble_Points(Finley_Mesh*,Finley_SystemMatrix*,escriptDataC*,escriptDataC*,escriptDataC*) ;*/ |
void Finley_Assemble_RobinCondition_RHS(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*,escriptDataC*,Finley_Assemble_handelShapeMissMatch); |
76 |
|
/* void Finley_Assemble_Points(Finley_Mesh*,Paso_SystemMatrix*,escriptDataC*,escriptDataC*,escriptDataC*) ;*/ |
77 |
void Finley_Assemble_NodeCoordinates(Finley_NodeFile*,escriptDataC*); |
void Finley_Assemble_NodeCoordinates(Finley_NodeFile*,escriptDataC*); |
78 |
void Finley_Assemble_setNormal(Finley_NodeFile*, Finley_ElementFile*, escriptDataC*); |
void Finley_Assemble_setNormal(Finley_NodeFile*, Finley_ElementFile*, escriptDataC*); |
79 |
void Finley_Assemble_interpolate(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*, escriptDataC*); |
void Finley_Assemble_interpolate(Finley_NodeFile*,Finley_ElementFile*,escriptDataC*, escriptDataC*); |
88 |
void Finley_Assemble_RHSMatrix_Single(dim_t,dim_t,dim_t,double*,double*,double*,dim_t, double*,double*,dim_t,double*,dim_t); |
void Finley_Assemble_RHSMatrix_Single(dim_t,dim_t,dim_t,double*,double*,double*,dim_t, double*,double*,dim_t,double*,dim_t); |
89 |
|
|
90 |
|
|
91 |
void Assemble_getAssembleParameters(Finley_NodeFile*,Finley_ElementFile*,Finley_SystemMatrix*,escriptDataC*,Assemble_Parameters*); |
void Assemble_getAssembleParameters(Finley_NodeFile*,Finley_ElementFile*,Paso_SystemMatrix*,escriptDataC*,Assemble_Parameters*); |
92 |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Step_out; |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Step_out; |
93 |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Step_in; |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Step_in; |
94 |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Mean_out; |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Mean_out; |
95 |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Mean_in; |
Finley_Assemble_handelShapeMissMatch Finley_Assemble_handelShapeMissMatch_Mean_in; |
96 |
|
void Finley_Assemble_addToSystemMatrix(Paso_SystemMatrix*,dim_t,index_t*, dim_t,dim_t,index_t*,dim_t, double*); |
97 |
|
|
98 |
#endif /* #ifndef INC_FINLEY_ASSEMBLE */ |
#endif /* #ifndef INC_FINLEY_ASSEMBLE */ |
99 |
|
|
100 |
/* |
/* |
101 |
* $Log$ |
* $Log$ |
102 |
|
* Revision 1.4 2005/09/15 03:44:21 jgs |
103 |
|
* Merge of development branch dev-02 back to main trunk on 2005-09-15 |
104 |
|
* |
105 |
|
* Revision 1.3 2005/08/12 01:45:42 jgs |
106 |
|
* erge of development branch dev-02 back to main trunk on 2005-08-12 |
107 |
|
* |
108 |
|
* Revision 1.2.2.2 2005/09/07 06:26:17 gross |
109 |
|
* the solver from finley are put into the standalone package paso now |
110 |
|
* |
111 |
|
* Revision 1.2.2.1 2005/08/04 22:41:11 gross |
112 |
|
* some extra routines for finley that might speed-up RHS assembling in some cases (not actived right now) |
113 |
|
* |
114 |
* Revision 1.2 2005/07/08 04:07:45 jgs |
* Revision 1.2 2005/07/08 04:07:45 jgs |
115 |
* Merge of development branch back to main trunk on 2005-07-08 |
* Merge of development branch back to main trunk on 2005-07-08 |
116 |
* |
* |