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

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

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

revision 3641 by caltinay, Thu Sep 15 00:45:04 2011 UTC revision 3642 by caltinay, Thu Oct 27 03:41:51 2011 UTC
# Line 63  typedef struct Paso_SystemMatrix { Line 63  typedef struct Paso_SystemMatrix {
63    
64    /* this comes into play when PASO is used */    /* this comes into play when PASO is used */
65    Paso_SparseMatrix* mainBlock;                      /* main block */    Paso_SparseMatrix* mainBlock;                      /* main block */
66    Paso_SparseMatrix* col_coupleBlock;                    /* coupling to naighbouring processors (row - col) */    Paso_SparseMatrix* col_coupleBlock;                    /* coupling to neighbouring processors (row - col) */
67    Paso_SparseMatrix* row_coupleBlock;                /* coupling to naighbouring processors (col - row)  */    Paso_SparseMatrix* row_coupleBlock;                /* coupling to neighbouring processors (col - row)  */
68    Paso_SparseMatrix* remote_coupleBlock;                /* coupling of rows-cols on naighbouring processors    Paso_SparseMatrix* remote_coupleBlock;                /* coupling of rows-cols on neighbouring processors
69                                                             don't assume that this is set */                                                             don't assume that this is set */
70    
71    bool_t is_balanced;    bool_t is_balanced;
72    double *balance_vector; /* matrix may be balanced by a diagonal matrix D=diagonal(balance_vector)    double *balance_vector; /* matrix may be balanced by a diagonal matrix D=diagonal(balance_vector)
73                    if is_balanced is set, the matrix stored is D*A*D where A is the original matrix                    if is_balanced is set, the matrix stored is D*A*D where A is the original matrix.
74                        When the system of linear equations is solved we solve D*A*D*y=c.                        When the system of linear equations is solved we solve D*A*D*y=c.
75                        so to solve A*x=b one needs to set c=D*b and x=D*y. */                        So to solve A*x=b one needs to set c=D*b and x=D*y. */
76    
77        
78        
79    index_t solver_package;  /* package controling the solver pointer */    index_t solver_package;  /* package controlling the solver pointer */
80    void* solver_p;  /* pointer to data needed by a solver */    void* solver_p;  /* pointer to data needed by a solver */
81    
82    /* this is only used for a trilinos matrix */    /* this is only used for a trilinos matrix */

Legend:
Removed from v.3641  
changed lines
  Added in v.3642

  ViewVC Help
Powered by ViewVC 1.1.26