Changeset 17420


Ignore:
Timestamp:
03/12/14 10:09:49 (11 years ago)
Author:
seroussi
Message:

BUG: fixed Stokes ice shelf dampening in 3d

Location:
issm/trunk-jpl
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp

    r17412 r17420  
    29982998        int         j,i,meshtype,dim;
    29992999        IssmDouble  Jdet,slope2,scalar,dt;
    3000         IssmDouble  slope[2];
     3000        IssmDouble  slope[3];
    30013001        IssmDouble *xyz_list_base = NULL;
     3002        IssmDouble *xyz_list      = NULL;
    30023003        Gauss*      gauss         = NULL;
    30033004
     
    30213022        /*Retrieve all inputs and parameters*/
    30223023        element->GetVerticesCoordinatesBase(&xyz_list_base);
     3024        element->GetVerticesCoordinates(&xyz_list);
    30233025        element->FindParam(&dt,TimesteppingTimeStepEnum);
    30243026        if(dt==0)   dt=1.e+5;
     
    30323034                gauss->GaussPoint(ig);
    30333035
    3034                 surface_input->GetInputDerivativeValue(&slope[0],xyz_list_base,gauss);
     3036                surface_input->GetInputDerivativeValue(&slope[0],xyz_list,gauss);
    30353037                element->NodalFunctionsVelocity(vbasis,gauss);
    30363038                element->JacobianDeterminantBase(&Jdet,xyz_list_base,gauss);
     
    30403042                for(i=0;i<vnumnodes;i++){
    30413043                        for(j=0;j<vnumnodes;j++){
    3042                                 Ke->values[numdof*(i*dim+1)+j*dim+1] += scalar*vbasis[i]*vbasis[j];
     3044                                Ke->values[numdof*((i+1)*dim-1)+(j+1)*dim-1] += scalar*vbasis[i]*vbasis[j];
    30433045                        }
    30443046                }
     
    30503052        delete gauss;
    30513053        xDelete<IssmDouble>(xyz_list_base);
     3054        xDelete<IssmDouble>(xyz_list);
    30523055        xDelete<IssmDouble>(vbasis);
    30533056        return Ke;
  • issm/trunk-jpl/test/NightlyRun/test204.m

    r17316 r17420  
    44md=extrude(md,3,2.);
    55md=setflowequation(md,'FS','all');
    6 md.cluster=generic('name',oshostname(),'np',3);
     6md.cluster=generic('name',oshostname(),'np',1);
     7md.stressbalance.shelf_dampening=1;
     8md.timestepping.time_step=0;
     9md1=solve(md,StressbalanceSolutionEnum());
     10md.stressbalance.shelf_dampening=0;
    711md=solve(md,StressbalanceSolutionEnum());
    812
    913%Fields and tolerances to track changes
    10 field_names     ={'Vx','Vy','Vz','Vel','Pressure'};
    11 field_tolerances={1e-08,1e-08,2e-07,1e-08,1e-08};
     14field_names     ={'Vx','Vy','Vz','Vel','Pressure','Vx_damp','Vy_damp','Vz_damp','Vel_damp','Pressure_damp'};
     15field_tolerances={1e-08,1e-08,2e-07,1e-08,1e-08,1e-08,1e-08,2e-07,1e-08,1e-08};
    1216field_values={...
    1317        (md.results.StressbalanceSolution.Vx),...
     
    1620        (md.results.StressbalanceSolution.Vel),...
    1721        (md.results.StressbalanceSolution.Pressure),...
     22        (md1.results.StressbalanceSolution.Vx),...
     23        (md1.results.StressbalanceSolution.Vy),...
     24        (md1.results.StressbalanceSolution.Vz),...
     25        (md1.results.StressbalanceSolution.Vel),...
     26        (md1.results.StressbalanceSolution.Pressure),...
    1827        };
  • issm/trunk-jpl/test/NightlyRun/test204.py

    r17316 r17420  
    1515md=setflowequation(md,'FS','all')
    1616md.cluster=generic('name',oshostname(),'np',3)
     17md.stressbalance.shelf_dampening=1;
     18md.timestepping.time_step=0;
     19md1=solve(md,StressbalanceSolutionEnum())
     20md.stressbalance.shelf_dampening=0;
    1721md=solve(md,StressbalanceSolutionEnum())
    1822
Note: See TracChangeset for help on using the changeset viewer.