Changeset 17943


Ignore:
Timestamp:
05/05/14 23:36:48 (11 years ago)
Author:
Mathieu Morlighem
Message:

CHG: simplifying friction coefficient call

Location:
issm/trunk-jpl/src/c
Files:
7 edited

Legend:

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

    r17886 r17943  
    588588                        geothermalflux_input->GetInputValue(&geothermalflux,gauss);
    589589
    590                         friction->GetAlpha2(&alpha2,gauss,vx_input,vy_input,vz_input);
     590                        friction->GetAlpha2(&alpha2,gauss);
    591591                        vx_input->GetInputValue(&vx,gauss);
    592592                        vy_input->GetInputValue(&vy,gauss);
     
    990990
    991991                        /*basal friction*/
    992                         friction->GetAlpha2(&alpha2,gauss,vx_input,vy_input,vz_input);
     992                        friction->GetAlpha2(&alpha2,gauss);
    993993                        vx_input->GetInputValue(&vx,gauss);
    994994                        vy_input->GetInputValue(&vy,gauss);
  • issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp

    r17925 r17943  
    12211221        element->FindParam(&migration_style,GroundinglineMigrationEnum);
    12221222        Input* surface_input    = element->GetInput(SurfaceEnum); _assert_(surface_input);
    1223         Input* vx_input         = element->GetInput(VxEnum);      _assert_(vx_input);
    12241223        Input* gllevelset_input = NULL;
    1225         Input* vy_input         = NULL;
    1226         if(dim==2){vy_input     = element->GetInput(VyEnum);      _assert_(vy_input);}
    12271224
    12281225        /*build friction object, used later on: */
     
    12441241                gauss->GaussPoint(ig);
    12451242
    1246                 friction->GetAlpha2(&alpha2, gauss,vx_input,vy_input,NULL);
     1243                friction->GetAlpha2(&alpha2,gauss);
    12471244                if(migration_style==SubelementMigrationEnum) alpha2=phi*alpha2;
    12481245                if(migration_style==SubelementMigration2Enum){
     
    22492246        element->GetVerticesCoordinatesBase(&xyz_list_base);
    22502247        element->FindParam(&migration_style,GroundinglineMigrationEnum);
    2251         Input* vx_input = element->GetInput(VxEnum);   _assert_(vx_input);
    2252         Input* vy_input = element->GetInput(VyEnum);   _assert_(vy_input);
    2253         Input* vz_input = NULL;
    22542248        Input* gllevelset_input = NULL;
    2255         if(dim==3){vz_input=element->GetInput(VzEnum); _assert_(vz_input);}
    22562249
    22572250        /*build friction object, used later on: */
     
    22742267                gauss->GaussPoint(ig);
    22752268
    2276                 friction->GetAlpha2(&alpha2,gauss,vx_input,vy_input,vz_input);
     2269                friction->GetAlpha2(&alpha2,gauss);
    22772270                if(migration_style==SubelementMigrationEnum) alpha2=phi*alpha2;
    22782271                if(migration_style==SubelementMigration2Enum){
     
    32223215        element->GetVerticesCoordinatesBase(&xyz_list_base);
    32233216        element->FindParam(&migration_style,GroundinglineMigrationEnum);
    3224         Input* vx_input         = element->GetInput(VxEnum);      _assert_(vx_input);
    3225         Input* vy_input         = element->GetInput(VyEnum);      _assert_(vy_input);
    3226         Input* vz_input         = NULL;
    3227         if(dim==3){    vz_input = element->GetInput(VzEnum);      _assert_(vz_input);}
    32283217        Input* gllevelset_input = NULL;
    32293218
     
    32483237                gauss->GaussPoint(ig);
    32493238
    3250                 friction->GetAlpha2(&alpha2,gauss,vx_input,vy_input,vz_input);
     3239                friction->GetAlpha2(&alpha2,gauss);
    32513240                if(migration_style==SubelementMigrationEnum) alpha2=phi*alpha2;
    32523241                if(migration_style==SubelementMigration2Enum){
     
    48144803        /*retrieve inputs :*/
    48154804        element->GetVerticesCoordinatesBase(&xyz_list_tria);
    4816         Input* vx_input=element->GetInput(VxEnum);  _assert_(vx_input);
    4817         Input* vy_input=element->GetInput(VyEnum);  _assert_(vy_input);
    4818         Input* vz_input=element->GetInput(VzEnum);  _assert_(vz_input);
    48194805
    48204806        /*build friction object, used later on: */
     
    48284814
    48294815                /*Friction: */
    4830                 friction->GetAlpha2(&alpha2,gauss,vx_input,vy_input,vz_input);
     4816                friction->GetAlpha2(&alpha2,gauss);
    48314817                element->JacobianDeterminantBase(&Jdet2d, xyz_list_tria,gauss);
    48324818                this->GetBHOFriction(L,element,3,xyz_list_tria,gauss);
     
    50395025
    50405026                element->NormalBase(&bed_normal[0],xyz_list_tria);
    5041                 friction->GetAlpha2(&alpha2_gauss, gauss,vx_input,vy_input,vz_input);
     5027                friction->GetAlpha2(&alpha2_gauss,gauss);
    50425028
    50435029                DLSSAFS[0][0]=alpha2_gauss*gauss->weight*Jdet2d;
     
    53195305                element->NormalBase(&bed_normal[0],xyz_list_tria);
    53205306                element->ViscosityFS(&viscosity,dim,xyz_list,gauss,vx_input,vy_input,vz_input);
    5321                 friction->GetAlpha2(&alpha2_gauss, gauss,vx_input,vy_input,vz_input);
     5307                friction->GetAlpha2(&alpha2_gauss,gauss);
    53225308
    53235309                for(i=0;i<3;i++){
     
    54805466                element->NormalBase(&bed_normal[0],xyz_list_tria);
    54815467                element->ViscosityFS(&viscosity,dim,xyz_list,gauss,vx_input,vy_input,vz_input);
    5482                 friction->GetAlpha2(&alpha2_gauss, gauss,vx_input,vy_input,vz_input);
     5468                friction->GetAlpha2(&alpha2_gauss,gauss);
    54835469
    54845470                for(i=0;i<3;i++){
  • issm/trunk-jpl/src/c/analyses/ThermalAnalysis.cpp

    r17935 r17943  
    476476
    477477                geothermalflux_input->GetInputValue(&geothermalflux,gauss);
    478                 friction->GetAlpha2(&alpha2,gauss,vx_input,vy_input,vz_input);
     478                friction->GetAlpha2(&alpha2,gauss);
    479479                vx_input->GetInputValue(&vx,gauss);
    480480                vy_input->GetInputValue(&vy,gauss);
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r17941 r17943  
    32343234
    32353235                /*Build alpha_complement_list: */
    3236                 friction->GetAlphaComplement(&alpha_complement,gauss,vx_input,vy_input,NULL);
     3236                friction->GetAlphaComplement(&alpha_complement,gauss);
    32373237
    32383238                dragcoefficient_input->GetInputValue(&drag, gauss);
     
    33063306
    33073307                /*Recover alpha_complement and drag: */
    3308                 friction->GetAlphaComplement(&alpha_complement,gauss,vx_input,vy_input,vz_input);
     3308                friction->GetAlphaComplement(&alpha_complement,gauss);
    33093309                drag_input->GetInputValue(&drag,gauss);
    33103310
  • issm/trunk-jpl/src/c/classes/Elements/Tria.cpp

    r17941 r17943  
    32423242
    32433243                /*Build alpha_complement_list: */
    3244                 friction->GetAlphaComplement(&alpha_complement,gauss,vx_input,vy_input,NULL);
     3244                friction->GetAlphaComplement(&alpha_complement,gauss);
    32453245
    32463246                dragcoefficient_input->GetInputValue(&drag, gauss);
     
    32673267        //for (int iv=0;iv<NUMVERTICES;iv++){
    32683268        //      gauss->GaussVertex(iv);
    3269         //      friction->GetAlphaComplement(&alpha_complement,gauss,vx_input,vy_input,vz_input);
     3269        //      friction->GetAlphaComplement(&alpha_complement,gauss);
    32703270        //      dragcoefficient_input->GetInputValue(&drag, gauss);
    32713271        //      adjointx_input->GetInputValue(&lambda, gauss);
  • issm/trunk-jpl/src/c/classes/Loads/Friction.cpp

    r17938 r17943  
    4242/*}}}*/
    4343/*FUNCTION Friction::GetAlpha2{{{*/
    44 void Friction::GetAlpha2(IssmDouble* palpha2, Gauss* gauss,Input* vx_input,Input* vy_input,Input* vz_input){
     44void Friction::GetAlpha2(IssmDouble* palpha2, Gauss* gauss){
    4545
    4646        /*This routine calculates the basal friction coefficient
     
    7676        switch(dim){
    7777                case 1:
    78                         vx_input->GetInputValue(&vx,gauss);
     78                        element->GetInputValue(&vx,gauss,VxEnum);
    7979                        vmag=sqrt(vx*vx);
    8080                        break;
    8181                case 2:
    82                         vx_input->GetInputValue(&vx,gauss);
    83                         vy_input->GetInputValue(&vy,gauss);
     82                        element->GetInputValue(&vx,gauss,VxEnum);
     83                        element->GetInputValue(&vy,gauss,VyEnum);
    8484                        vmag=sqrt(vx*vx+vy*vy);
    8585                        break;
    8686                case 3:
    87                         vx_input->GetInputValue(&vx,gauss);
    88                         vy_input->GetInputValue(&vy,gauss);
    89                         vz_input->GetInputValue(&vz,gauss);
     87                        element->GetInputValue(&vx,gauss,VxEnum);
     88                        element->GetInputValue(&vy,gauss,VyEnum);
     89                        element->GetInputValue(&vz,gauss,VzEnum);
    9090                        vmag=sqrt(vx*vx+vy*vy+vz*vz);
    9191                        break;
     
    101101        /*Assign output pointers:*/
    102102        *palpha2=alpha2;
    103 }
    104 /*}}}*/
     103}/*}}}*/
    105104/*FUNCTION Friction::GetAlphaComplement(IssmDouble* palpha_complement, Gauss* gauss,int vxenum,int vyenum,int vzenum) {{{*/
    106 void Friction::GetAlphaComplement(IssmDouble* palpha_complement, Gauss* gauss,Input* vx_input,Input* vy_input,Input* vz_input){
     105void Friction::GetAlphaComplement(IssmDouble* palpha_complement, Gauss* gauss){
    107106
    108107        /* FrictionGetAlpha2 computes alpha2= drag^2 * Neff ^r * vel ^s, with Neff=rho_ice*g*thickness+rho_ice*g*bed, r=q/p and s=1/p.
     
    140139        switch(dim){
    141140                case 1:
    142                         vx_input->GetInputValue(&vx,gauss);
     141                        element->GetInputValue(&vx,gauss,VxEnum);
    143142                        vmag=sqrt(vx*vx);
    144143                        break;
    145144                case 2:
    146                         vx_input->GetInputValue(&vx,gauss);
    147                         vy_input->GetInputValue(&vy,gauss);
     145                        element->GetInputValue(&vx,gauss,VxEnum);
     146                        element->GetInputValue(&vy,gauss,VyEnum);
    148147                        vmag=sqrt(vx*vx+vy*vy);
    149148                        break;
    150149                case 3:
    151                         vx_input->GetInputValue(&vx,gauss);
    152                         vy_input->GetInputValue(&vy,gauss);
    153                         vz_input->GetInputValue(&vz,gauss);
     150                        element->GetInputValue(&vx,gauss,VxEnum);
     151                        element->GetInputValue(&vy,gauss,VyEnum);
     152                        element->GetInputValue(&vz,gauss,VzEnum);
    154153                        vmag=sqrt(vx*vx+vy*vy+vz*vz);
    155154                        break;
  • issm/trunk-jpl/src/c/classes/Loads/Friction.h

    r16873 r17943  
    2828
    2929                void  Echo(void);
    30                 void  GetAlpha2(IssmDouble* palpha2, Gauss* gauss,Input* vx_input,Input* vy_input,Input* vz_input);
    31                 void  GetAlphaComplement(IssmDouble* alpha_complement,Gauss* gauss,Input* vx_input,Input* vy_input,Input* vz_input);
     30                void  GetAlpha2(IssmDouble* palpha2,Gauss* gauss);
     31                void  GetAlphaComplement(IssmDouble* alpha_complement,Gauss* gauss);
    3232};
    3333
Note: See TracChangeset for help on using the changeset viewer.