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

Diff of /trunk/finley/src/Mesh.h

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

trunk/esys2/finley/src/finleyC/Mesh.h revision 150 by jgs, Thu Sep 15 03:44:45 2005 UTC trunk/finley/src/Mesh.h revision 903 by gross, Fri Nov 17 01:59:49 2006 UTC
# Line 1  Line 1 
1  /*  /*
2   ******************************************************************************   ************************************************************
3   *                                                                            *   *          Copyright 2006 by ACcESS MNRF                   *
4   *       COPYRIGHT  ACcESS 2003,2004,2005 -  All Rights Reserved              *   *                                                          *
5   *                                                                            *   *              http://www.access.edu.au                    *
6   * This software is the property of ACcESS. No part of this code              *   *       Primary Business: Queensland, Australia            *
7   * may be copied in any form or by any means without the expressed written    *   *  Licensed under the Open Software License version 3.0    *
8   * consent of ACcESS.  Copying, use or modification of this software          *   *     http://www.opensource.org/licenses/osl-3.0.php       *
9   * by any unauthorised person is illegal unless that person has a software    *   *                                                          *
10   * license agreement with ACcESS.                                             *   ************************************************************
  *                                                                            *  
  ******************************************************************************  
11  */  */
12  /* Version: $Id$ */  /* Version: $Id$ */
13    
# Line 62  Line 60 
60  #include "NodeFile.h"  #include "NodeFile.h"
61  #include "ElementFile.h"  #include "ElementFile.h"
62  #include "paso/SystemMatrixPattern.h"  #include "paso/SystemMatrixPattern.h"
63  #include "escript/Data/DataC.h"  #include "escript/DataC.h"
64    
65    #ifdef PASO_MPI
66    #include "paso/Paso_MPI.h"
67    #endif
68    
69  /**************************************************************/  /**************************************************************/
70    
# Line 84  struct Finley_Mesh { Line 86  struct Finley_Mesh {
86    Paso_SystemMatrixPattern *FullReducedPattern;    Paso_SystemMatrixPattern *FullReducedPattern;
87    Paso_SystemMatrixPattern *ReducedFullPattern;    Paso_SystemMatrixPattern *ReducedFullPattern;
88    Paso_SystemMatrixPattern *ReducedReducedPattern;    Paso_SystemMatrixPattern *ReducedReducedPattern;
89    #ifdef PASO_MPI
90      Paso_MPIInfo *MPIInfo;
91    #endif
92  };  };
93    
94  typedef struct Finley_Mesh Finley_Mesh;  typedef struct Finley_Mesh Finley_Mesh;
# Line 99  typedef struct Finley_Mesh_findMatchingF Line 104  typedef struct Finley_Mesh_findMatchingF
104  /**************************************************************/  /**************************************************************/
105    
106  /*  interfaces: */  /*  interfaces: */
107    #ifndef PASO_MPI
108  Finley_Mesh* Finley_Mesh_alloc(char*,int,int);  Finley_Mesh* Finley_Mesh_alloc(char* name,dim_t numDim, index_t order);
109    #else
110    Finley_Mesh* Finley_Mesh_alloc(char* name,dim_t numDim, index_t order, Paso_MPIInfo *mpi_info);
111    void Finley_Mesh_resolveDegreeOfFreedomOrder( Finley_Mesh *in, bool_t doReduced );
112    void print_mesh_statistics( Finley_Mesh *out, bool_t reduced  );
113    void Finley_Mesh_prepareElementDistribution( Finley_Mesh *in );
114    #endif
115    /*Finley_Mesh* Finley_Mesh_alloc(char*,int,int);*/
116  Finley_Mesh* Finley_Mesh_reference(Finley_Mesh*);  Finley_Mesh* Finley_Mesh_reference(Finley_Mesh*);
117  void Finley_Mesh_dealloc(Finley_Mesh*);  void Finley_Mesh_dealloc(Finley_Mesh*);
118  dim_t Finley_Mesh_getDim(Finley_Mesh*);  dim_t Finley_Mesh_getDim(Finley_Mesh*);
# Line 111  Paso_SystemMatrixPattern* Finley_getPatt Line 123  Paso_SystemMatrixPattern* Finley_getPatt
123  Paso_SystemMatrixPattern* Finley_makePattern(Finley_Mesh *mesh,bool_t reduce_row_order, bool_t reduce_col_order);  Paso_SystemMatrixPattern* Finley_makePattern(Finley_Mesh *mesh,bool_t reduce_row_order, bool_t reduce_col_order);
124  void Finley_Mesh_write(Finley_Mesh*,char*);  void Finley_Mesh_write(Finley_Mesh*,char*);
125  Finley_Mesh* Finley_Mesh_read(char*,index_t);  Finley_Mesh* Finley_Mesh_read(char*,index_t);
126    void Finley_Mesh_setCoordinates(Finley_Mesh*,escriptDataC*);
127    
128  void Finley_Mesh_prepare(Finley_Mesh* in);  void Finley_Mesh_prepare(Finley_Mesh* in);
129  void Finley_Mesh_prepareNodes(Finley_Mesh* in);  void Finley_Mesh_prepareNodes(Finley_Mesh* in);
# Line 128  void Finley_Mesh_joinFaces(Finley_Mesh* Line 141  void Finley_Mesh_joinFaces(Finley_Mesh*
141  int Finley_Mesh_findMatchingFaces_compar(const void*,const void*);  int Finley_Mesh_findMatchingFaces_compar(const void*,const void*);
142  void Finley_Mesh_findMatchingFaces(Finley_NodeFile*,Finley_ElementFile *,double,double, int*, int*,int*,int*);  void Finley_Mesh_findMatchingFaces(Finley_NodeFile*,Finley_ElementFile *,double,double, int*, int*,int*,int*);
143  void Finley_Mesh_print(Finley_Mesh *in);  void Finley_Mesh_print(Finley_Mesh *in);
144  void Finley_Mesh_saveDX(const char *, Finley_Mesh *, escriptDataC*);  void Finley_Mesh_saveDX(const char * filename_p, Finley_Mesh *mesh_p, const dim_t num_data,char* *names_p,escriptDataC* *data_pp);
145  void Finley_Mesh_saveVTK(const char *, Finley_Mesh *, escriptDataC*);  #ifndef PASO_MPI
146    void Finley_Mesh_saveVTK(const char * filename_p, Finley_Mesh *mesh_p, const dim_t num_data,char* *names_p,escriptDataC* *data_pp);
147    #else
148    void Finley_Mesh_saveVTK_MPIO(const char * filename_p, Finley_Mesh *mesh_p, const dim_t num_data,char*
149    *names_p,escriptDataC* *data_pp);
150    #endif
151    
152    
153    
154  #endif /* #ifndef INC_FINLEY_MESH */  #endif /* #ifndef INC_FINLEY_MESH */
155    
 /*  
  * $Log$  
  * Revision 1.7  2005/09/15 03:44:22  jgs  
  * Merge of development branch dev-02 back to main trunk on 2005-09-15  
  *  
  * Revision 1.6.2.1  2005/09/07 06:26:19  gross  
  * the solver from finley are put into the standalone package paso now  
  *  
  * Revision 1.6  2005/07/08 04:07:51  jgs  
  * Merge of development branch back to main trunk on 2005-07-08  
  *  
  * Revision 1.1.1.1.2.3  2005/06/29 02:34:51  gross  
  * some changes towards 64 integers in finley  
  *  
  * Revision 1.1.1.1.2.2  2005/02/09 06:53:59  cochrane  
  * Added Finley_Mesh_saveVTK.  
  *  
  * Revision 1.1.1.1.2.1  2004/11/12 06:58:18  gross  
  * a lot of changes to get the linearPDE class running: most important change is that there is no matrix format exposed to the user anymore. the format is chosen by the Domain according to the solver and symmetry  
  *  
  * Revision 1.1.1.1  2004/10/26 06:53:57  jgs  
  * initial import of project esys2  
  *  
  * Revision 1.5  2004/07/27 08:26:45  gross  
  * Finley: saveDX added: now it is possible to write data on boundary and contact elements  
  *  
  * Revision 1.4  2004/07/26 04:27:15  gross  
  * it allmost compiles now  
  *  
  * Revision 1.3  2004/07/02 04:21:13  gross  
  * Finley C code has been included  
  *  
  * Revision 1.2  2004/07/02 00:03:29  gross  
  * interface for saveDX added  
  *  
  * Revision 1.1.1.1  2004/06/24 04:00:40  johng  
  * Initial version of eys using boost-python.  
  *  
  *  
  */  

Legend:
Removed from v.150  
changed lines
  Added in v.903

  ViewVC Help
Powered by ViewVC 1.1.26