Changeset 5823


Ignore:
Timestamp:
09/15/10 12:40:05 (15 years ago)
Author:
seroussi
Message:

coupling Pattyn/Stokes

Location:
issm/trunk/src/c/objects/Elements
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/objects/Elements/Penta.cpp

    r5810 r5823  
    722722                        CreateKMatrixDiagnosticPattyn( Kgg);
    723723                        CreateKMatrixDiagnosticStokes( Kgg);
    724                         //CreateKMatrixCouplingPattynStokes( Kgg);
     724                        CreateKMatrixCouplingPattynStokes( Kgg);
    725725                }
    726726                else ISSMERROR("Approximation %s not supported yet",EnumToString(approximation));
     
    21812181}
    21822182/*}}}*/
     2183/*FUNCTION Penta::CreateKMatrixCouplingPattynStokes{{{1*/
     2184void Penta::CreateKMatrixCouplingPattynStokes( Mat Kgg){
     2185
     2186        int        i,j;
     2187        /* node data: */
     2188        const int  numdofp=NDOF2*NUMVERTICES;
     2189        const int  numdofs=NDOF4*NUMVERTICES;
     2190        int*       doflistp=NULL;
     2191        int*       doflists=NULL;
     2192
     2193        /*Matrices*/
     2194        double Kestokes_gg[24][24];
     2195        double Kepattyn_gg[12][12];
     2196        double Keps_gg[12][24]={0.0};
     2197        double Kesp_gg[24][12]={0.0};
     2198
     2199        /*Get Pattyn and Stokes doflist*/
     2200        GetDofList(&doflistp,PattynApproximationEnum,GsetEnum); //Pattyn dof list
     2201        GetDofList(&doflists,StokesApproximationEnum,GsetEnum); //Stokes dof list
     2202
     2203        ISSMERROR("not supported yet");
     2204//      /*Get CreateKMatrixDiagnosticStokes*/
     2205//      Kestokes_gg=CreateKMatrixDiagnosticStokes;
     2206//     
     2207//      /*Modify it and plug in into Kgg*/
     2208//      for( i=0; i<numdofs; i++){
     2209//              for(j=0;j<NUMVERTICES; j++){
     2210//                      Kesp_gg[i][(j-1)*NDOF2+0]+=Kestokes_gg[i][(j-1)*NDOF4+0];
     2211//                      Kesp_gg[i][(j-1)*NDOF2+1]+=Kestokes_gg[i][(j-1)*NDOF4+1];
     2212//              }
     2213//      }
     2214//      MatSetValues(Kgg,numdofs,doflists,numdofp,doflistp,(const double*)Kesp_gg,ADD_VALUES);
     2215//
     2216//      /*Get CreateKMatrixDiagnosticPattyn*/
     2217//      Kepattyn_gg=CreateKMatrixDiagnosticPattyn;
     2218//
     2219//      /*Modify it and plug in into Kgg*/
     2220//      for( i=0; i<numdofp; i++){
     2221//              for(j=0;j<NUMVERTICES; j++){
     2222//                      Kesp_gg[i][(j-1)*NDOF4+0]+=Kestokes_gg[i][(j-1)*NDOF2+0];
     2223//                      Kesp_gg[i][(j-1)*NDOF4+1]+=Kestokes_gg[i][(j-1)*NDOF2+1];
     2224//              }
     2225//      }
     2226//      MatSetValues(Kgg,numdofp,doflistp,numdofs,doflists,(const double*)Keps_gg,ADD_VALUES);
     2227
     2228}
     2229/*}}}*/
    21832230/*FUNCTION Penta::CreateKMatrixDiagnosticHutter{{{1*/
    21842231void  Penta::CreateKMatrixDiagnosticHutter(Mat Kgg){
  • issm/trunk/src/c/objects/Elements/Penta.h

    r5810 r5823  
    122122                void      CreateKMatrixBalancedvelocities(Mat Kggg);
    123123                void      CreateKMatrixCouplingMacAyealPattyn( Mat Kgg);
     124                void      CreateKMatrixCouplingPattynStokes( Mat Kgg);
    124125                void      CreateKMatrixDiagnosticHutter( Mat Kgg);
    125126                void      CreateKMatrixDiagnosticMacAyeal( Mat Kgg);
Note: See TracChangeset for help on using the changeset viewer.