Changeset 5851


Ignore:
Timestamp:
09/16/10 15:19:29 (15 years ago)
Author:
seroussi
Message:

split Coupling into 2

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

Legend:

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

    r5850 r5851  
    20022002void Penta::CreateKMatrixCouplingMacAyealPattyn( Mat Kgg){
    20032003
     2004        this->CreateKMatrixCouplingMacAyealPattynViscous(Kgg);
     2005        this->CreateKMatrixCouplingMacAyealPattynFriction(Kgg);
     2006}
     2007/*}}}*/
     2008/*FUNCTION Penta::CreateKMatrixCouplingMacAyealPattynViscous{{{1*/
     2009void Penta::CreateKMatrixCouplingMacAyealPattynViscous( Mat Kgg){
     2010
    20042011        /* local declarations */
    20052012        int             i,j;
     
    21202127        MatSetValues(Kgg,numdofm,doflistm,numdofp,doflistp,(const double*)Ke_gg_transp,ADD_VALUES);
    21212128
    2122         //Deal with 2d friction at the bedrock interface
    2123         if(IsOnBed() && !IsOnShelf()){
    2124 
    2125                 /*Build a tria element using the 3 grids of the base of the penta. Then use
    2126                  * the tria functionality to build a friction stiffness matrix on these 3
    2127                  * grids: */
    2128 
    2129                 tria->CreateKMatrixCouplingMacAyealPattynFriction(Kgg);
    2130         }
    2131 
    2132         delete tria->matice; delete tria;
    2133 
    21342129        xfree((void**)&doflistm);
    21352130        xfree((void**)&doflistp);
     2131        delete tria->matice; delete tria;
    21362132        delete gauss;
    21372133        delete gauss_tria;
     2134}
     2135/*}}}*/
     2136/*FUNCTION Penta::CreateKMatrixCouplingMacAyealPattynFriction{{{1*/
     2137void Penta::CreateKMatrixCouplingMacAyealPattynFriction( Mat Kgg){
     2138
     2139        /*Initialize Element matrix and return if necessary*/
     2140        if(IsOnWater() || IsOnShelf() || !IsOnBed()) return;
     2141
     2142        Tria* tria=(Tria*)SpawnTria(0,1,2); //grids 0, 1 and 2 make the new tria.
     2143        tria->CreateKMatrixCouplingMacAyealPattynFriction(Kgg);
     2144        delete tria->matice; delete tria;
    21382145}
    21392146/*}}}*/
  • issm/trunk/src/c/objects/Elements/Penta.h

    r5850 r5851  
    124124                void      CreateKMatrixBalancedvelocities(Mat Kggg);
    125125                void      CreateKMatrixCouplingMacAyealPattyn( Mat Kgg);
     126                void      CreateKMatrixCouplingMacAyealPattynViscous( Mat Kgg);
     127                void      CreateKMatrixCouplingMacAyealPattynFriction( Mat Kgg);
    126128                void      CreateKMatrixCouplingPattynStokes( Mat Kgg);
    127129                void      CreateKMatrixDiagnosticHoriz( Mat Kgg);
Note: See TracChangeset for help on using the changeset viewer.