Ignore:
Timestamp:
09/13/10 15:59:12 (15 years ago)
Author:
seroussi
Message:

some modifications for PattynStokes

File:
1 edited

Legend:

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

    r5772 r5785  
    35773577        double du[3];
    35783578        double dv[3];
    3579         double dudx,dvdy;
     3579        double dw[3];
     3580        double dudx,dvdy,dwdz;
     3581
     3582        /*Get some parameters*/
     3583        int approximation;
    35803584
    35813585        /*If on water, skip: */
    35823586        if(IsOnWater())return;
     3587        inputs->GetParameterValue(&approximation,ApproximationEnum);
    35833588
    35843589        /*If we are on the bedrock, spawn a tria on the bedrock, and use it to build the
     
    35983603        Input* vx_input=inputs->GetInput(VxEnum); ISSMASSERT(vx_input);
    35993604        Input* vy_input=inputs->GetInput(VyEnum); ISSMASSERT(vy_input);
     3605        Input* vz_input=NULL;
     3606        if(approximation==PattynStokesApproximationEnum){
     3607                vz_input=inputs->GetInput(VzEnum); ISSMASSERT(vz_input);
     3608        }
    36003609
    36013610        /* Start  looping on the number of gaussian points: */
     
    36083617                vx_input->GetParameterDerivativeValue(&du[0],&xyz_list[0][0],gauss);
    36093618                vy_input->GetParameterDerivativeValue(&dv[0],&xyz_list[0][0],gauss);
     3619                if(approximation==PattynStokesApproximationEnum){
     3620                        vz_input->GetParameterDerivativeValue(&dw[0],&xyz_list[0][0],gauss);
     3621                        dwdz=dw[2];
     3622                }
     3623                else dwdz=0;
    36103624                dudx=du[0];
    36113625                dvdy=dv[1];
     
    36193633                /*Build pe_g_gaussian vector: */
    36203634                for (i=0;i<NUMVERTICES;i++){
    3621                         pe_g_gaussian[i]=(dudx+dvdy)*Jdet*gauss->weight*l1l6[i];
     3635                        pe_g_gaussian[i]=(dudx+dvdy+dwdz)*Jdet*gauss->weight*l1l6[i];
    36223636                }
    36233637
Note: See TracChangeset for help on using the changeset viewer.