Changeset 26206


Ignore:
Timestamp:
04/22/21 11:14:54 (4 years ago)
Author:
tsantos
Message:

BUG: fixing friction computation for MLHO

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

Legend:

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

    r26205 r26206  
    27322732ElementMatrix* StressbalanceAnalysis::CreateKMatrixMLHO(Element* element){/*{{{*/
    27332733       
    2734         _error_("Mono Layer Higher-Order called, not fully tested. If you are sure of using it, comment this line.");
     2734        //_error_("Mono Layer Higher-Order called, not fully tested. If you are sure of using it, comment this line.");
    27352735       
    27362736        /* Check if ice in element */
     
    27832783
    27842784        /*build friction object, used later on: */
    2785         Friction* friction=new Friction(element,dim);
     2785        Friction* friction=new Friction(element,dim,true);
    27862786
    27872787        /*Recover portion of element that is grounded*/
  • issm/trunk-jpl/src/c/classes/Loads/Friction.cpp

    r26204 r26206  
    2020        this->dim=0;
    2121        this->law=0;
     22        this->isMLHO=false;
    2223
    2324}
    2425/*}}}*/
    25 Friction::Friction(Element* element_in,int dim_in){/*{{{*/
     26Friction::Friction(Element* element_in,int dim_in,bool isMLHO_in){/*{{{*/
    2627
    2728        this->element=element_in;
    2829        this->dim=dim_in;
     30        this->isMLHO=isMLHO_in;
    2931        element_in->FindParam(&this->law,FrictionLawEnum);
    3032}
     
    855857
    856858        /*diverse*/
    857         bool isMLHO=false; //employing mono layer higher order model? Default is no
    858859        IssmDouble vx,vy,vz,vmag;
    859860       
    860         element->parameters->FindParam(&isMLHO,FlowequationIsMLHOEnum);
    861         if(isMLHO) _assert_(dim==2);
     861        if(this->isMLHO) _assert_(dim==2);
    862862
    863863        switch(dim){
     
    867867                        break;
    868868                case 2:
    869                         if(isMLHO){
     869                        if(this->isMLHO){
    870870                                element->GetInputValue(&vx,gauss,VxBaseEnum);
    871871                                element->GetInputValue(&vy,gauss,VyBaseEnum);
  • issm/trunk-jpl/src/c/classes/Loads/Friction.h

    r25973 r26206  
    1717                int      dim;
    1818                int      law;
     19                bool            isMLHO=false;
    1920
    2021                /*methods: */
    2122                Friction();
    22                 Friction(Element* element_in,int dim_in);
     23                Friction(Element* element_in,int dim_in,bool isMLHO=0);
    2324                ~Friction();
    2425
Note: See TracChangeset for help on using the changeset viewer.