Changeset 15753


Ignore:
Timestamp:
08/08/13 11:56:59 (12 years ago)
Author:
seroussi
Message:

BUG: fixed pressure for coupling HO/FS and starting debuging SSA/FS

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r15752 r15753  
    98919891
    98929892        const int    numdofm=NDOF2*NUMVERTICES;
    9893         const int    numdofs=NDOF4*NUMVERTICES;
     9893        const int    numdofs=NDOF3*NUMVERTICES;
    98949894        const int    numdof2d=NDOF2*NUMVERTICES2D;
     9895        const int    numdofpressure=NDOF1*NUMVERTICES;
    98959896
    98969897        int     i;
     
    98989899        IssmDouble  SSA_values[numdofm];
    98999900        IssmDouble  FS_values[numdofs];
     9901        IssmDouble  Pressure_values[numdofs];
    99009902        IssmDouble  vx[NUMVERTICES];
    99019903        IssmDouble  vy[NUMVERTICES];
     
    99089910        int*    doflistm        = NULL;
    99099911        int*    doflists        = NULL;
     9912        int*    doflistpressure = NULL;
    99109913        Penta   *penta          = NULL;
    99119914
     
    99179920        penta->GetDofList(&doflistm,SSAApproximationEnum,GsetEnum);
    99189921        GetDofList(&doflists,FSvelocityEnum,GsetEnum);
     9922        GetDofListPressure(&doflistpressure,GsetEnum);
    99199923        this->parameters->FindParam(&FSreconditioning,DiagnosticFSreconditioningEnum);
    99209924
     
    99279931                SSA_values[i+numdof2d]=solution[doflistm[i]];
    99289932        }
    9929         for(i=0;i<numdofs;i++){
    9930                 FS_values[i]=solution[doflists[i]];
    9931         }
     9933        for(i=0;i<numdofs;i++)FS_values[i]=solution[doflists[i]];
     9934        for(i=0;i<numdofpressure;i++) Pressure_values[i]=solution[doflistpressure[i]];
    99329935
    99339936        /*Transform solution in Cartesian Space*/
     
    99379940        /*Ok, we have vx and vy in values, fill in vx and vy arrays: */
    99389941        for(i=0;i<NUMVERTICES;i++){
    9939                 vx[i]=FS_values[i*NDOF4+0]+SSA_values[i*NDOF2+0];
    9940                 vy[i]=FS_values[i*NDOF4+1]+SSA_values[i*NDOF2+1];
    9941                 vzFS[i]=FS_values[i*NDOF4+2];
    9942                 pressure[i]=FS_values[i*NDOF4+3]*FSreconditioning;
     9942                vx[i]=FS_values[i*NDOF3+0]+SSA_values[i*NDOF2+0];
     9943                vy[i]=FS_values[i*NDOF3+1]+SSA_values[i*NDOF2+1];
     9944                vzFS[i]=FS_values[i*NDOF3+2];
     9945                pressure[i]=Pressure_values[i*NDOF1]*FSreconditioning;
    99439946
    99449947                /*Check solution*/
     
    1019310196                vy[i]=FS_values[i*NDOF3+1]+HO_values[i*NDOF2+1];
    1019410197                vzFS[i]=FS_values[i*NDOF3+2];
    10195                 pressure[i]=FS_values[i*NDOF1]*FSreconditioning;
     10198                pressure[i]=Pressure_values[i*NDOF1]*FSreconditioning;
    1019610199
    1019710200                /*Check solution*/
Note: See TracChangeset for help on using the changeset viewer.