/[escript]/trunk/finley/src/finleyC/Assemble_getAssembleParameters.c
ViewVC logotype

Diff of /trunk/finley/src/finleyC/Assemble_getAssembleParameters.c

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

revision 100 by jgs, Wed Dec 15 03:48:48 2004 UTC revision 102 by jgs, Wed Dec 15 07:08:39 2004 UTC
# Line 31  void Assemble_getAssembleParameters(Finl Line 31  void Assemble_getAssembleParameters(Finl
31    parm->numDim=nodes->numDim;    parm->numDim=nodes->numDim;
32    parm->numElementDim=parm->referenceElement->Type->numDim;    parm->numElementDim=parm->referenceElement->Type->numDim;
33    
34    if (!isExpanded(F) ) {    if (!isEmpty(F) && !isExpanded(F) ) {
35        Finley_ErrorCode=TYPE_ERROR;        Finley_ErrorCode=TYPE_ERROR;
36        sprintf(Finley_ErrorMsg,"Right hand side is not expanded.");        sprintf(Finley_ErrorMsg,"Right hand side is not expanded.");
37        return;        return;
38    }    }
39    /*  check the dimensions of S and F */    /*  check the dimensions of S and F */
40    if (S!=NULL && !isEmpty(F)) {    if (S!=NULL && !isEmpty(F)) {
41      if ( getDataPointSize(F)!=S->total_row_block_size) {      if ( getDataPointSize(F)!=S->logical_row_block_size) {
42        Finley_ErrorCode=TYPE_ERROR;        Finley_ErrorCode=TYPE_ERROR;
43        sprintf(Finley_ErrorMsg,"matrix rows and number of components of right hand side don't match.");        sprintf(Finley_ErrorMsg,"matrix row block size and number of components of right hand side don't match.");
44        return;        return;
45      }      }
46      if (! numSamplesEqual(F,1,S->num_rows*S->row_block_size)) {      if (! numSamplesEqual(F,1,(S->num_rows*S->row_block_size)/S->logical_row_block_size)) {
47        Finley_ErrorCode=TYPE_ERROR;        Finley_ErrorCode=TYPE_ERROR;
48        sprintf(Finley_ErrorMsg,"number of rows of matrix and length of right hand side don't match.");        sprintf(Finley_ErrorMsg,"number of rows of matrix and length of right hand side don't match.");
49        return;        return;
# Line 51  void Assemble_getAssembleParameters(Finl Line 51  void Assemble_getAssembleParameters(Finl
51    }    }
52    /* get the number of equations and components */    /* get the number of equations and components */
53    if (S!=NULL) {    if (S!=NULL) {
54      parm->numEqu=S->total_row_block_size;      parm->numEqu=S->logical_row_block_size;
55      parm->numComp=S->total_col_block_size;      parm->numComp=S->logical_col_block_size;
56    } else {    } else {
57      parm->numEqu=1;      parm->numEqu=1;
58      parm->numComp=1;      parm->numComp=1;
# Line 125  void Assemble_getAssembleParameters(Finl Line 125  void Assemble_getAssembleParameters(Finl
125    
126  /*  /*
127   * $Log$   * $Log$
128   * Revision 1.3  2004/12/15 03:48:44  jgs   * Revision 1.4  2004/12/15 07:08:32  jgs
129   * *** empty log message ***   * *** empty log message ***
130   *   *
  * Revision 1.1.1.1  2004/10/26 06:53:57  jgs  
  * initial import of project esys2  
  *  
  * Revision 1.2  2004/07/21 05:00:54  gross  
  * name changes in DataC  
  *  
  * Revision 1.1  2004/07/02 04:21:13  gross  
  * Finley C code has been included  
  *  
131   *   *
132   */   */
133    

Legend:
Removed from v.100  
changed lines
  Added in v.102

  ViewVC Help
Powered by ViewVC 1.1.26