/[escript]/trunk/paso/src/SystemMatrixPattern.h
ViewVC logotype

Diff of /trunk/paso/src/SystemMatrixPattern.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 971 by ksteube, Wed Feb 14 04:40:49 2007 UTC revision 1312 by ksteube, Mon Sep 24 06:18:44 2007 UTC
# Line 1  Line 1 
1    
2  /* $Id$ */  /* $Id$ */
3    
4  /*  /*******************************************************
5  ********************************************************************************   *
6  *               Copyright  2006 by ACcESS MNRF                                 *   *           Copyright 2003-2007 by ACceSS MNRF
7  *                                                                              *   *       Copyright 2007 by University of Queensland
8  *                 http://www.access.edu.au                                     *   *
9  *           Primary Business: Queensland, Australia                            *   *                http://esscc.uq.edu.au
10  *     Licensed under the Open Software License version 3.0             *   *        Primary Business: Queensland, Australia
11  *        http://www.opensource.org/licenses/osl-3.0.php                        *   *  Licensed under the Open Software License version 3.0
12  ********************************************************************************   *     http://www.opensource.org/licenses/osl-3.0.php
13  */   *
14     *******************************************************/
15    
16  /**************************************************************/  /**************************************************************/
17    
# Line 25  Line 27 
27  #ifndef INC_PASO_SYSTEMMATRIXPATTERN  #ifndef INC_PASO_SYSTEMMATRIXPATTERN
28  #define INC_PASO_SYSTEMMATRIXPATTERN  #define INC_PASO_SYSTEMMATRIXPATTERN
29    
30  #include "Common.h"  #include "Distribution.h"
31    #include "Pattern.h"
32    #include "Coupler.h"
33    
34  /**************************************************************/  /**************************************************************/
35    
 #define PATTERN_FORMAT_DEFAULT 0  
 #define PATTERN_FORMAT_SYM 1  
 #define PATTERN_FORMAT_OFFSET1 2  
   
36  typedef struct Paso_SystemMatrixPattern {  typedef struct Paso_SystemMatrixPattern {
37    int type;    int type;
38    dim_t n_ptr;  
39    dim_t n_index;    Paso_MPIInfo *mpi_info;
40    index_t* ptr;  
41    index_t* index;    Paso_Pattern* mainPattern;
42    dim_t len;    Paso_Pattern* couplePattern;
43      Paso_Coupler* coupler;
44      Paso_Distribution *output_distribution;
45      Paso_Distribution *input_distribution;
46    
47    dim_t reference_counter;    dim_t reference_counter;
48      
49    
50  } Paso_SystemMatrixPattern;  } Paso_SystemMatrixPattern;
51    
52    
53  /*  interfaces: */  /*  interfaces: */
54    
55  Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_alloc(int ,dim_t, index_t*,index_t*);  Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_alloc(int type, Paso_Distribution* output_distribution, Paso_Distribution* input_distribution, Paso_Pattern* mainPattern, Paso_Pattern* couplePattern, Paso_Coupler* coupler);
56  Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_reference(Paso_SystemMatrixPattern*);  Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_reference(Paso_SystemMatrixPattern*);
57  void Paso_SystemMatrixPattern_dealloc(Paso_SystemMatrixPattern*);  void Paso_SystemMatrixPattern_free(Paso_SystemMatrixPattern*);
58  int Paso_comparIndex(const void *,const void *);  Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_unrollBlocks(Paso_SystemMatrixPattern* pattern,
59  Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_getSubpattern(Paso_SystemMatrixPattern*,dim_t,index_t*,index_t*);                                             int type, dim_t output_block_size,dim_t input_block_size);
 void Paso_SystemMatrixPattern_mis(Paso_SystemMatrixPattern* pattern_p, index_t* mis_marker);  
 Paso_SystemMatrixPattern* Paso_SystemMatrixPattern_unrollBlocks(Paso_SystemMatrixPattern*,int, dim_t,dim_t);  
60    
61  #endif /* #ifndef INC_PASO_SYSTEMPATTERN */  #endif /* #ifndef INC_PASO_SYSTEMPATTERN */
   
 /*  
  * $Log$  
  * Revision 1.2  2005/09/15 03:44:38  jgs  
  * Merge of development branch dev-02 back to main trunk on 2005-09-15  
  *  
  * Revision 1.1.2.1  2005/09/05 06:29:47  gross  
  * These files have been extracted from finley to define a stand alone libray for iterative  
  * linear solvers on the ALTIX. main entry through Paso_solve. this version compiles but  
  * has not been tested yet.  
  *  
  *  
  */  

Legend:
Removed from v.971  
changed lines
  Added in v.1312

  ViewVC Help
Powered by ViewVC 1.1.26