Changeset 15567


Ignore:
Timestamp:
Jul 23, 2013, 2:30:29 PM (13 years ago)
Author:
Mathieu Morlighem
Message:

CHG: MacAyeal -> SSA

Location:
issm/trunk-jpl/src
Files:
27 added
27 deleted
34 edited

Legend:

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

    r15564 r15567  
    5656                if(VerboseSolution()) _printf0_("   computing SIA velocities\n");
    5757
    58                 /*Take the last velocity into account so that the velocity on the MacAyeal domain is not zero*/
     58                /*Take the last velocity into account so that the velocity on the SSA domain is not zero*/
    5959                if(isSSA || isL1L2 || isHO ) ResetBoundaryConditions(femmodel,DiagnosticSIAAnalysisEnum);
    6060                femmodel->SetCurrentConfiguration(DiagnosticSIAAnalysisEnum);
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r15564 r15567  
    11931193                        GetSolutionFromInputsDiagnosticFS(solution);
    11941194                }
    1195                 else if (approximation==MacAyealApproximationEnum || approximation==HOApproximationEnum || approximation==SIAApproximationEnum){
     1195                else if (approximation==SSAApproximationEnum || approximation==HOApproximationEnum || approximation==SIAApproximationEnum){
    11961196                        GetSolutionFromInputsDiagnosticHoriz(solution);
    11971197                }
    1198                 else if (approximation==MacAyealHOApproximationEnum || approximation==HOFSApproximationEnum || approximation==MacAyealFSApproximationEnum){
     1198                else if (approximation==SSAHOApproximationEnum || approximation==HOFSApproximationEnum || approximation==SSAFSApproximationEnum){
    11991199                        return; //the elements around will create the solution
    12001200                }
    … …  
    19701970        //Need to know the type of approximation for this element
    19711971        if(iomodel->Data(FlowequationElementEquationEnum)){
    1972                 if (iomodel->Data(FlowequationElementEquationEnum)[index]==MacAyealApproximationEnum){
    1973                         this->inputs->AddInput(new IntInput(ApproximationEnum,MacAyealApproximationEnum));
     1972                if (iomodel->Data(FlowequationElementEquationEnum)[index]==SSAApproximationEnum){
     1973                        this->inputs->AddInput(new IntInput(ApproximationEnum,SSAApproximationEnum));
    19741974                }
    19751975                else if (iomodel->Data(FlowequationElementEquationEnum)[index]==HOApproximationEnum){
    19761976                        this->inputs->AddInput(new IntInput(ApproximationEnum,HOApproximationEnum));
    19771977                }
    1978                 else if (iomodel->Data(FlowequationElementEquationEnum)[index]==MacAyealHOApproximationEnum){
    1979                         this->inputs->AddInput(new IntInput(ApproximationEnum,MacAyealHOApproximationEnum));
     1978                else if (iomodel->Data(FlowequationElementEquationEnum)[index]==SSAHOApproximationEnum){
     1979                        this->inputs->AddInput(new IntInput(ApproximationEnum,SSAHOApproximationEnum));
    19801980                }
    19811981                else if (iomodel->Data(FlowequationElementEquationEnum)[index]==SIAApproximationEnum){
    … …  
    19881988                        this->inputs->AddInput(new IntInput(ApproximationEnum,FSApproximationEnum));
    19891989                }
    1990                 else if (iomodel->Data(FlowequationElementEquationEnum)[index]==MacAyealFSApproximationEnum){
    1991                         this->inputs->AddInput(new IntInput(ApproximationEnum,MacAyealFSApproximationEnum));
     1990                else if (iomodel->Data(FlowequationElementEquationEnum)[index]==SSAFSApproximationEnum){
     1991                        this->inputs->AddInput(new IntInput(ApproximationEnum,SSAFSApproximationEnum));
    19921992                }
    19931993                else if (iomodel->Data(FlowequationElementEquationEnum)[index]==HOFSApproximationEnum){
    … …  
    27882788        /*For FS only: we want the CS to be tangential to the bedrock*/
    27892789        inputs->GetInputValue(&approximation,ApproximationEnum);
    2790         if(IsFloating() || !IsOnBed() || (approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum &&  approximation!=HOFSApproximationEnum)) return;
     2790        if(IsFloating() || !IsOnBed() || (approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum &&  approximation!=HOFSApproximationEnum)) return;
    27912791
    27922792        /*Get slope on each node*/
    … …  
    28832883        if(analysis_type==DiagnosticHorizAnalysisEnum){
    28842884                inputs->GetInputValue(&approximation,ApproximationEnum);
    2885                 if(approximation==MacAyealHOApproximationEnum || approximation==MacAyealFSApproximationEnum){
     2885                if(approximation==SSAHOApproximationEnum || approximation==SSAFSApproximationEnum){
    28862886                        parameters->FindParam(&numlayers,MeshNumberoflayersEnum);
    28872887                        o_nz += numlayers*3;
    … …  
    29992999
    30003000        /*Bail out if this element if:
    3001          * -> Non MacAyeal not on the surface
    3002          * -> MacAyeal (2d model) and not on bed) */
    3003         if ((approximation!=MacAyealApproximationEnum && !IsOnSurface()) || (approximation==MacAyealApproximationEnum && !IsOnBed())){
     3001         * -> Non SSA not on the surface
     3002         * -> SSA (2d model) and not on bed) */
     3003        if ((approximation!=SSAApproximationEnum && !IsOnSurface()) || (approximation==SSAApproximationEnum && !IsOnBed())){
    30043004                return 0;
    30053005        }
    3006         else if (approximation==MacAyealApproximationEnum){
     3006        else if (approximation==SSAApproximationEnum){
    30073007
    30083008                /*This element should be collapsed into a tria element at its base. Create this tria element,
    … …  
    31943194                                }
    31953195                        }
    3196                         if(*(iomodel->Data(FlowequationElementEquationEnum)+index)==MacAyealFSApproximationEnum){
    3197                                 /*Create VzMacAyeal and VzFS Enums*/
     3196                        if(*(iomodel->Data(FlowequationElementEquationEnum)+index)==SSAFSApproximationEnum){
     3197                                /*Create VzSSA and VzFS Enums*/
    31983198                                if(iomodel->Data(VzEnum) && iomodel->Data(FlowequationBorderFSEnum)){
    31993199                                        for(i=0;i<6;i++) nodeinputs[i]=iomodel->Data(VzEnum)[penta_vertex_ids[i]-1]*iomodel->Data(FlowequationBorderFSEnum)[penta_vertex_ids[i]-1];
    32003200                                        this->inputs->AddInput(new PentaInput(VzFSEnum,nodeinputs,P1Enum));
    32013201                                        for(i=0;i<6;i++) nodeinputs[i]=iomodel->Data(VzEnum)[penta_vertex_ids[i]-1]*(1-iomodel->Data(FlowequationBorderFSEnum)[penta_vertex_ids[i]-1]);
    3202                                         this->inputs->AddInput(new PentaInput(VzMacAyealEnum,nodeinputs,P1Enum));
     3202                                        this->inputs->AddInput(new PentaInput(VzSSAEnum,nodeinputs,P1Enum));
    32033203                                }
    32043204                                else{
    32053205                                        for(i=0;i<6;i++)nodeinputs[i]=0;
    32063206                                        this->inputs->AddInput(new PentaInput(VzFSEnum,nodeinputs,P1Enum));
    3207                                         this->inputs->AddInput(new PentaInput(VzMacAyealEnum,nodeinputs,P1Enum));
     3207                                        this->inputs->AddInput(new PentaInput(VzSSAEnum,nodeinputs,P1Enum));
    32083208                                }
    32093209                        }
    … …  
    47744774
    47754775        switch(approximation){
    4776                 case MacAyealApproximationEnum:
    4777                         return CreateKMatrixAdjointMacAyeal2d();
     4776                case SSAApproximationEnum:
     4777                        return CreateKMatrixAdjointSSA2d();
    47784778                case HOApproximationEnum:
    47794779                        return CreateKMatrixAdjointHO();
    … …  
    47874787}
    47884788/*}}}*/
    4789 /*FUNCTION Penta::CreateKMatrixAdjointMacAyeal2d{{{*/
    4790 ElementMatrix* Penta::CreateKMatrixAdjointMacAyeal2d(void){
     4789/*FUNCTION Penta::CreateKMatrixAdjointSSA2d{{{*/
     4790ElementMatrix* Penta::CreateKMatrixAdjointSSA2d(void){
    47914791
    47924792        /*Figure out if this penta is collapsed. If so, then bailout, except if it is at the
    … …  
    48104810        /*Call Tria function*/
    48114811        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    4812         ElementMatrix* Ke=tria->CreateKMatrixAdjointMacAyeal();
     4812        ElementMatrix* Ke=tria->CreateKMatrixAdjointSSA();
    48134813        delete tria->material; delete tria;
    48144814
    … …  
    49714971
    49724972        switch(approximation){
    4973                 case MacAyealApproximationEnum:
    4974                         return CreatePVectorAdjointMacAyeal();
     4973                case SSAApproximationEnum:
     4974                        return CreatePVectorAdjointSSA();
    49754975                case HOApproximationEnum:
    49764976                        return CreatePVectorAdjointHO();
    … …  
    49844984}
    49854985/*}}}*/
    4986 /*FUNCTION Penta::CreatePVectorAdjointMacAyeal{{{*/
    4987 ElementVector* Penta::CreatePVectorAdjointMacAyeal(){
     4986/*FUNCTION Penta::CreatePVectorAdjointSSA{{{*/
     4987ElementVector* Penta::CreatePVectorAdjointSSA(){
    49884988
    49894989        if (!IsOnBed()) return NULL;
    … …  
    50565056                        inputs->GetInputValue(&approximation,ApproximationEnum);
    50575057                        switch(approximation){
    5058                                 case MacAyealApproximationEnum:
    5059                                         GradjDragMacAyeal(gradient,control_index);
     5058                                case SSAApproximationEnum:
     5059                                        GradjDragSSA(gradient,control_index);
    50605060                                        break;
    50615061                                case HOApproximationEnum:
    … …  
    50765076                        inputs->GetInputValue(&approximation,ApproximationEnum);
    50775077                        switch(approximation){
    5078                                 case MacAyealApproximationEnum:
    5079                                         GradjBbarMacAyeal(gradient,control_index);
     5078                                case SSAApproximationEnum:
     5079                                        GradjBbarSSA(gradient,control_index);
    50805080                                        break;
    50815081                                case HOApproximationEnum:
    … …  
    51315131}
    51325132/*}}}*/
    5133 /*FUNCTION Penta::GradjDragMacAyeal {{{*/
    5134 void  Penta::GradjDragMacAyeal(Vector<IssmDouble>* gradient,int control_index){
     5133/*FUNCTION Penta::GradjDragSSA {{{*/
     5134void  Penta::GradjDragSSA(Vector<IssmDouble>* gradient,int control_index){
    51355135
    51365136        /*Gradient is 0 if on shelf or not on bed*/
    … …  
    51395139        /*Spawn tria*/
    51405140        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    5141         tria->GradjDragMacAyeal(gradient,control_index);
     5141        tria->GradjDragSSA(gradient,control_index);
    51425142        delete tria->material; delete tria;
    51435143
    … …  
    53065306}
    53075307/*}}}*/
    5308 /*FUNCTION Penta::GradjBbarMacAyeal {{{*/
    5309 void  Penta::GradjBbarMacAyeal(Vector<IssmDouble>* gradient,int control_index){
     5308/*FUNCTION Penta::GradjBbarSSA {{{*/
     5309void  Penta::GradjBbarSSA(Vector<IssmDouble>* gradient,int control_index){
    53105310
    53115311        /*This element should be collapsed into a tria element at its base*/
    … …  
    53175317        /*Collapse element to the base*/
    53185318        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria (lower face).
    5319         tria->GradjBMacAyeal(gradient,control_index);
     5319        tria->GradjBSSA(gradient,control_index);
    53205320        delete tria->material; delete tria;
    53215321
    … …  
    53355335        /*Collapse element to the base*/
    53365336        Tria* tria=(Tria*)SpawnTria(0,1,2);
    5337         tria->GradjBMacAyeal(gradient,control_index);    //We use MacAyeal as an estimate for now
     5337        tria->GradjBSSA(gradient,control_index);    //We use SSA as an estimate for now
    53385338        delete tria->material; delete tria;
    53395339
    … …  
    53525352        /*Collapse element to the base*/
    53535353        Tria* tria=(Tria*)SpawnTria(0,1,2);
    5354         tria->GradjBMacAyeal(gradient,control_index);    //We use MacAyeal as an estimate for now
     5354        tria->GradjBSSA(gradient,control_index);    //We use SSA as an estimate for now
    53555355        delete tria->material; delete tria;
    53565356
    … …  
    54955495
    54965496        /*Bail out if this element if:
    5497          * -> Non MacAyeal and not on the surface
    5498          * -> MacAyeal (2d model) and not on bed) */
    5499         if ((approximation!=MacAyealApproximationEnum && !IsOnSurface()) || (approximation==MacAyealApproximationEnum && !IsOnBed())){
     5497         * -> Non SSA and not on the surface
     5498         * -> SSA (2d model) and not on bed) */
     5499        if ((approximation!=SSAApproximationEnum && !IsOnSurface()) || (approximation==SSAApproximationEnum && !IsOnBed())){
    55005500                return 0;
    55015501        }
    5502         else if (approximation==MacAyealApproximationEnum){
     5502        else if (approximation==SSAApproximationEnum){
    55035503
    55045504                /*This element should be collapsed into a tria element at its base. Create this tria element,
    … …  
    55325532
    55335533        /*Bail out if this element if:
    5534          * -> Non MacAyeal and not on the surface
    5535          * -> MacAyeal (2d model) and not on bed) */
    5536         if ((approximation!=MacAyealApproximationEnum && !IsOnSurface()) || (approximation==MacAyealApproximationEnum && !IsOnBed())){
     5534         * -> Non SSA and not on the surface
     5535         * -> SSA (2d model) and not on bed) */
     5536        if ((approximation!=SSAApproximationEnum && !IsOnSurface()) || (approximation==SSAApproximationEnum && !IsOnBed())){
    55375537                return 0;
    55385538        }
    5539         else if (approximation==MacAyealApproximationEnum){
     5539        else if (approximation==SSAApproximationEnum){
    55405540
    55415541                /*This element should be collapsed into a tria element at its base. Create this tria element,
    … …  
    55695569
    55705570        /*Bail out if this element if:
    5571          * -> Non MacAyeal and not on the surface
    5572          * -> MacAyeal (2d model) and not on bed) */
    5573         if ((approximation!=MacAyealApproximationEnum && !IsOnSurface()) || (approximation==MacAyealApproximationEnum && !IsOnBed())){
     5571         * -> Non SSA and not on the surface
     5572         * -> SSA (2d model) and not on bed) */
     5573        if ((approximation!=SSAApproximationEnum && !IsOnSurface()) || (approximation==SSAApproximationEnum && !IsOnBed())){
    55745574                return 0;
    55755575        }
    5576         else if (approximation==MacAyealApproximationEnum){
     5576        else if (approximation==SSAApproximationEnum){
    55775577
    55785578                /*This element should be collapsed into a tria element at its base. Create this tria element,
    … …  
    56085608
    56095609        /*Bail out if this element if:
    5610          * -> Non MacAyeal and not on the surface
    5611          * -> MacAyeal (2d model) and not on bed) */
    5612         if ((approximation!=MacAyealApproximationEnum && !IsOnSurface()) || (approximation==MacAyealApproximationEnum && !IsOnBed())){
     5610         * -> Non SSA and not on the surface
     5611         * -> SSA (2d model) and not on bed) */
     5612        if ((approximation!=SSAApproximationEnum && !IsOnSurface()) || (approximation==SSAApproximationEnum && !IsOnBed())){
    56135613                return 0;
    56145614        }
    5615         else if (approximation==MacAyealApproximationEnum){
     5615        else if (approximation==SSAApproximationEnum){
    56165616
    56175617                /*This element should be collapsed into a tria element at its base. Create this tria element,
    … …  
    56455645
    56465646        /*Bail out if this element if:
    5647          * -> Non MacAyeal and not on the surface
    5648          * -> MacAyeal (2d model) and not on bed) */
    5649         if ((approximation!=MacAyealApproximationEnum && !IsOnSurface()) || (approximation==MacAyealApproximationEnum && !IsOnBed())){
     5647         * -> Non SSA and not on the surface
     5648         * -> SSA (2d model) and not on bed) */
     5649        if ((approximation!=SSAApproximationEnum && !IsOnSurface()) || (approximation==SSAApproximationEnum && !IsOnBed())){
    56505650                return 0;
    56515651        }
    5652         else if (approximation==MacAyealApproximationEnum){
     5652        else if (approximation==SSAApproximationEnum){
    56535653
    56545654                /*This element should be collapsed into a tria element at its base. Create this tria element,
    … …  
    59835983}
    59845984/*}}}*/
    5985 /*FUNCTION Penta::CreateKMatrixCouplingMacAyealHO{{{*/
    5986 ElementMatrix* Penta::CreateKMatrixCouplingMacAyealHO(void){
     5985/*FUNCTION Penta::CreateKMatrixCouplingSSAHO{{{*/
     5986ElementMatrix* Penta::CreateKMatrixCouplingSSAHO(void){
    59875987
    59885988        /*compute all stiffness matrices for this element*/
    5989         ElementMatrix* Ke1=CreateKMatrixCouplingMacAyealHOViscous();
    5990         ElementMatrix* Ke2=CreateKMatrixCouplingMacAyealHOFriction();
     5989        ElementMatrix* Ke1=CreateKMatrixCouplingSSAHOViscous();
     5990        ElementMatrix* Ke2=CreateKMatrixCouplingSSAHOFriction();
    59915991        ElementMatrix* Ke=new ElementMatrix(Ke1,Ke2);
    59925992
    … …  
    59975997}
    59985998/*}}}*/
    5999 /*FUNCTION Penta::CreateKMatrixCouplingMacAyealHOViscous{{{*/
    6000 ElementMatrix* Penta::CreateKMatrixCouplingMacAyealHOViscous(void){
     5999/*FUNCTION Penta::CreateKMatrixCouplingSSAHOViscous{{{*/
     6000ElementMatrix* Penta::CreateKMatrixCouplingSSAHOViscous(void){
    60016001
    60026002        /*Constants*/
    … …  
    60366036
    60376037        /*Initialize Element matrix*/
    6038         ElementMatrix* Ke1=new ElementMatrix(pentabase->nodes,NUMVERTICES,this->parameters,MacAyealApproximationEnum);
     6038        ElementMatrix* Ke1=new ElementMatrix(pentabase->nodes,NUMVERTICES,this->parameters,SSAApproximationEnum);
    60396039        ElementMatrix* Ke2=new ElementMatrix(this->nodes     ,NUMVERTICES,this->parameters,HOApproximationEnum);
    60406040        ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2);
    … …  
    60586058
    60596059                GetJacobianDeterminant(&Jdet, &xyz_list[0][0],gauss);
    6060                 GetBMacAyealHO(&B[0][0], &xyz_list[0][0], gauss);
    6061                 tria->GetBprimeMacAyeal(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
     6060                GetBSSAHO(&B[0][0], &xyz_list[0][0], gauss);
     6061                tria->GetBprimeSSA(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
    60626062
    60636063                this->GetStrainRate3dHO(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input);
    … …  
    60906090}
    60916091/*}}}*/
    6092 /*FUNCTION Penta::CreateKMatrixCouplingMacAyealHOFriction{{{*/
    6093 ElementMatrix* Penta::CreateKMatrixCouplingMacAyealHOFriction(void){
     6092/*FUNCTION Penta::CreateKMatrixCouplingSSAHOFriction{{{*/
     6093ElementMatrix* Penta::CreateKMatrixCouplingSSAHOFriction(void){
    60946094
    60956095        /*Constants*/
    … …  
    61156115        /*Initialize Element matrix and return if necessary*/
    61166116        if(IsFloating() || !IsOnBed()) return NULL;
    6117         ElementMatrix* Ke1=new ElementMatrix(nodes,NUMVERTICES,this->parameters,MacAyealApproximationEnum);
     6117        ElementMatrix* Ke1=new ElementMatrix(nodes,NUMVERTICES,this->parameters,SSAApproximationEnum);
    61186118        ElementMatrix* Ke2=new ElementMatrix(nodes,NUMVERTICES,this->parameters,HOApproximationEnum);
    61196119        ElementMatrix* Ke=new ElementMatrix(Ke1,Ke2);
    … …  
    61756175}
    61766176/*}}}*/
    6177 /*FUNCTION Penta::CreateKMatrixCouplingMacAyealFS{{{*/
    6178 ElementMatrix* Penta::CreateKMatrixCouplingMacAyealFS(void){
     6177/*FUNCTION Penta::CreateKMatrixCouplingSSAFS{{{*/
     6178ElementMatrix* Penta::CreateKMatrixCouplingSSAFS(void){
    61796179
    61806180        /*compute all stiffness matrices for this element*/
    6181         ElementMatrix* Ke1=CreateKMatrixCouplingMacAyealFSViscous();
    6182         ElementMatrix* Ke2=CreateKMatrixCouplingMacAyealFSFriction();
     6181        ElementMatrix* Ke1=CreateKMatrixCouplingSSAFSViscous();
     6182        ElementMatrix* Ke2=CreateKMatrixCouplingSSAFSFriction();
    61836183        ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2);
    61846184
    … …  
    61896189}
    61906190/*}}}*/
    6191 /*FUNCTION Penta::CreateKMatrixCouplingMacAyealFSViscous{{{*/
    6192 ElementMatrix* Penta::CreateKMatrixCouplingMacAyealFSViscous(void){
     6191/*FUNCTION Penta::CreateKMatrixCouplingSSAFSViscous{{{*/
     6192ElementMatrix* Penta::CreateKMatrixCouplingSSAFSViscous(void){
    61936193
    61946194        /*Constants*/
    … …  
    62336233
    62346234        /*Initialize Element matrix and return if necessary*/
    6235         ElementMatrix* Ke1=new ElementMatrix(pentabase->nodes,NUMVERTICES,this->parameters,MacAyealApproximationEnum);
     6235        ElementMatrix* Ke1=new ElementMatrix(pentabase->nodes,NUMVERTICES,this->parameters,SSAApproximationEnum);
    62366236        ElementMatrix* Ke2=new ElementMatrix(this->nodes     ,NUMVERTICES,this->parameters,FSApproximationEnum);
    62376237        ElementMatrix* Ke=new ElementMatrix(Ke1,Ke2);
    … …  
    62546254
    62556255                GetJacobianDeterminant(&Jdet, &xyz_list[0][0],gauss);
    6256                 GetBMacAyealFS(&B[0][0], &xyz_list[0][0], gauss);
    6257                 tria->GetBprimeMacAyealFS(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
    6258                 tria->GetBMacAyealFS(&B2[0][0], &xyz_list[0][0], gauss_tria);
    6259                 GetBprimeMacAyealFS(&Bprime2[0][0], &xyz_list[0][0], gauss);
     6256                GetBSSAFS(&B[0][0], &xyz_list[0][0], gauss);
     6257                tria->GetBprimeSSAFS(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
     6258                tria->GetBSSAFS(&B2[0][0], &xyz_list[0][0], gauss_tria);
     6259                GetBprimeSSAFS(&Bprime2[0][0], &xyz_list[0][0], gauss);
    62606260
    62616261                this->GetStrainRate3d(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input,vz_input);
    … …  
    62936293}
    62946294/*}}}*/
    6295 /*FUNCTION Penta::CreateKMatrixCouplingMacAyealFSFriction {{{*/
    6296 ElementMatrix* Penta::CreateKMatrixCouplingMacAyealFSFriction(void){
     6295/*FUNCTION Penta::CreateKMatrixCouplingSSAFSFriction {{{*/
     6296ElementMatrix* Penta::CreateKMatrixCouplingSSAFSFriction(void){
    62976297
    62986298        /*Constants*/
    … …  
    63136313        IssmDouble xyz_list[NUMVERTICES][3];
    63146314        IssmDouble xyz_list_tria[NUMVERTICES2D][3];
    6315         IssmDouble LMacAyealFS[8][numdof2dm];
    6316         IssmDouble LprimeMacAyealFS[8][numdof2d];
    6317         IssmDouble DLMacAyealFS[8][8]={0.0};
    6318         IssmDouble LFSMacAyeal[4][numdof2d];
    6319         IssmDouble LprimeFSMacAyeal[4][numdof2dm];
    6320         IssmDouble DLFSMacAyeal[4][4]={0.0};
     6315        IssmDouble LSSAFS[8][numdof2dm];
     6316        IssmDouble LprimeSSAFS[8][numdof2d];
     6317        IssmDouble DLSSAFS[8][8]={0.0};
     6318        IssmDouble LFSSSA[4][numdof2d];
     6319        IssmDouble LprimeFSSSA[4][numdof2dm];
     6320        IssmDouble DLFSSSA[4][4]={0.0};
    63216321        IssmDouble Ke_drag_gaussian[numdof2dm][numdof2d];
    63226322        IssmDouble Ke_drag_gaussian2[numdof2d][numdof2dm];
    … …  
    63296329        inputs->GetInputValue(&approximation,ApproximationEnum);
    63306330        if(IsFloating() || !IsOnBed()) return NULL;
    6331         ElementMatrix* Ke1=new ElementMatrix(this->nodes,NUMVERTICES,this->parameters,MacAyealApproximationEnum);
     6331        ElementMatrix* Ke1=new ElementMatrix(this->nodes,NUMVERTICES,this->parameters,SSAApproximationEnum);
    63326332        ElementMatrix* Ke2=new ElementMatrix(this->nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    63336333        ElementMatrix* Ke=new ElementMatrix(Ke1,Ke2);
    … …  
    63616361
    63626362                GetTriaJacobianDeterminant(&Jdet2d, &xyz_list_tria[0][0],gauss);
    6363                 GetLMacAyealFS(&LMacAyealFS[0][0], gauss);
    6364                 GetLprimeMacAyealFS(&LprimeMacAyealFS[0][0], &xyz_list[0][0], gauss);
    6365                 GetLFSMacAyeal(&LFSMacAyeal[0][0], gauss);
    6366                 GetLprimeFSMacAyeal(&LprimeFSMacAyeal[0][0], &xyz_list[0][0], gauss);
     6363                GetLSSAFS(&LSSAFS[0][0], gauss);
     6364                GetLprimeSSAFS(&LprimeSSAFS[0][0], &xyz_list[0][0], gauss);
     6365                GetLFSSSA(&LFSSSA[0][0], gauss);
     6366                GetLprimeFSSSA(&LprimeFSSSA[0][0], &xyz_list[0][0], gauss);
    63676367
    63686368                this->GetStrainRate3d(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input,vz_input);
    … …  
    63726372                friction->GetAlpha2(&alpha2_gauss, gauss,VxEnum,VyEnum,VzEnum);
    63736373
    6374                 DLMacAyealFS[0][0]=alpha2_gauss*gauss->weight*Jdet2d;
    6375                 DLMacAyealFS[1][1]=alpha2_gauss*gauss->weight*Jdet2d;
    6376                 DLMacAyealFS[2][2]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[0]*bed_normal[2];
    6377                 DLMacAyealFS[3][3]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[1]*bed_normal[2];
    6378                 DLMacAyealFS[4][4]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[0];
    6379                 DLMacAyealFS[5][5]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[1];
    6380                 DLMacAyealFS[6][6]=FSreconditioning*gauss->weight*Jdet2d*bed_normal[0];
    6381                 DLMacAyealFS[7][7]=FSreconditioning*gauss->weight*Jdet2d*bed_normal[1];
    6382 
    6383                 DLFSMacAyeal[0][0]=alpha2_gauss*gauss->weight*Jdet2d;
    6384                 DLFSMacAyeal[1][1]=alpha2_gauss*gauss->weight*Jdet2d;
    6385                 DLFSMacAyeal[2][2]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[0]*bed_normal[2];
    6386                 DLFSMacAyeal[3][3]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[1]*bed_normal[2];
    6387 
    6388                 TripleMultiply( &LMacAyealFS[0][0],8,numdof2dm,1,
    6389                                         &DLMacAyealFS[0][0],8,8,0,
    6390                                         &LprimeMacAyealFS[0][0],8,numdof2d,0,
     6374                DLSSAFS[0][0]=alpha2_gauss*gauss->weight*Jdet2d;
     6375                DLSSAFS[1][1]=alpha2_gauss*gauss->weight*Jdet2d;
     6376                DLSSAFS[2][2]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[0]*bed_normal[2];
     6377                DLSSAFS[3][3]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[1]*bed_normal[2];
     6378                DLSSAFS[4][4]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[0];
     6379                DLSSAFS[5][5]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[1];
     6380                DLSSAFS[6][6]=FSreconditioning*gauss->weight*Jdet2d*bed_normal[0];
     6381                DLSSAFS[7][7]=FSreconditioning*gauss->weight*Jdet2d*bed_normal[1];
     6382
     6383                DLFSSSA[0][0]=alpha2_gauss*gauss->weight*Jdet2d;
     6384                DLFSSSA[1][1]=alpha2_gauss*gauss->weight*Jdet2d;
     6385                DLFSSSA[2][2]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[0]*bed_normal[2];
     6386                DLFSSSA[3][3]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[1]*bed_normal[2];
     6387
     6388                TripleMultiply( &LSSAFS[0][0],8,numdof2dm,1,
     6389                                        &DLSSAFS[0][0],8,8,0,
     6390                                        &LprimeSSAFS[0][0],8,numdof2d,0,
    63916391                                        &Ke_drag_gaussian[0][0],0);
    63926392
    6393                 TripleMultiply( &LFSMacAyeal[0][0],4,numdof2d,1,
    6394                                         &DLFSMacAyeal[0][0],4,4,0,
    6395                                         &LprimeFSMacAyeal[0][0],4,numdof2dm,0,
     6393                TripleMultiply( &LFSSSA[0][0],4,numdof2d,1,
     6394                                        &DLFSSSA[0][0],4,4,0,
     6395                                        &LprimeFSSSA[0][0],4,numdof2dm,0,
    63966396                                        &Ke_drag_gaussian2[0][0],0);
    63976397
    … …  
    64656465
    64666466        switch(approximation){
    6467                 case MacAyealApproximationEnum:
    6468                         return CreateKMatrixDiagnosticMacAyeal2d();
     6467                case SSAApproximationEnum:
     6468                        return CreateKMatrixDiagnosticSSA2d();
    64696469                case L1L2ApproximationEnum:
    64706470                        return CreateKMatrixDiagnosticL1L2();
    … …  
    64776477                case NoneApproximationEnum:
    64786478                        return NULL;
    6479                 case MacAyealHOApproximationEnum:
    6480                         return CreateKMatrixDiagnosticMacAyealHO();
    6481                 case MacAyealFSApproximationEnum:
    6482                         return CreateKMatrixDiagnosticMacAyealFS();
     6479                case SSAHOApproximationEnum:
     6480                        return CreateKMatrixDiagnosticSSAHO();
     6481                case SSAFSApproximationEnum:
     6482                        return CreateKMatrixDiagnosticSSAFS();
    64836483                case HOFSApproximationEnum:
    64846484                        return CreateKMatrixDiagnosticHOFS();
    … …  
    65516551        return Ke;
    65526552}/*}}}*/
    6553 /*FUNCTION Penta::CreateKMatrixDiagnosticMacAyeal2d{{{*/
    6554 ElementMatrix* Penta::CreateKMatrixDiagnosticMacAyeal2d(void){
     6553/*FUNCTION Penta::CreateKMatrixDiagnosticSSA2d{{{*/
     6554ElementMatrix* Penta::CreateKMatrixDiagnosticSSA2d(void){
    65556555
    65566556        /*Figure out if this penta is collapsed. If so, then bailout, except if it is at the
    … …  
    65746574        /*Call Tria function*/
    65756575        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    6576         ElementMatrix* Ke=tria->CreateKMatrixDiagnosticMacAyeal();
     6576        ElementMatrix* Ke=tria->CreateKMatrixDiagnosticSSA();
    65776577        delete tria->material; delete tria;
    65786578
    … …  
    65856585}
    65866586/*}}}*/
    6587 /*FUNCTION Penta::CreateKMatrixDiagnosticMacAyeal3d{{{*/
    6588 ElementMatrix* Penta::CreateKMatrixDiagnosticMacAyeal3d(void){
     6587/*FUNCTION Penta::CreateKMatrixDiagnosticSSA3d{{{*/
     6588ElementMatrix* Penta::CreateKMatrixDiagnosticSSA3d(void){
    65896589
    65906590        /*compute all stiffness matrices for this element*/
    6591         ElementMatrix* Ke1=CreateKMatrixDiagnosticMacAyeal3dViscous();
    6592         ElementMatrix* Ke2=CreateKMatrixDiagnosticMacAyeal3dFriction();
     6591        ElementMatrix* Ke1=CreateKMatrixDiagnosticSSA3dViscous();
     6592        ElementMatrix* Ke2=CreateKMatrixDiagnosticSSA3dFriction();
    65936593        ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2);
    65946594
    … …  
    65996599}
    66006600/*}}}*/
    6601 /*FUNCTION Penta::CreateKMatrixDiagnosticMacAyeal3dViscous{{{*/
    6602 ElementMatrix* Penta::CreateKMatrixDiagnosticMacAyeal3dViscous(void){
     6601/*FUNCTION Penta::CreateKMatrixDiagnosticSSA3dViscous{{{*/
     6602ElementMatrix* Penta::CreateKMatrixDiagnosticSSA3dViscous(void){
    66036603
    66046604        /*Constants*/
    … …  
    66276627
    66286628        /*Initialize Element matrix*/
    6629         ElementMatrix* Ke=new ElementMatrix(tria->nodes,NUMVERTICES2D,this->parameters,MacAyealApproximationEnum);
     6629        ElementMatrix* Ke=new ElementMatrix(tria->nodes,NUMVERTICES2D,this->parameters,SSAApproximationEnum);
    66306630        inputs->GetInputValue(&approximation,ApproximationEnum);
    66316631
    … …  
    66486648
    66496649                GetJacobianDeterminant(&Jdet, &xyz_list[0][0],gauss);
    6650                 tria->GetBMacAyeal(&B[0][0], &xyz_list[0][0], gauss_tria);
    6651                 tria->GetBprimeMacAyeal(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
    6652 
    6653                 if(approximation==MacAyealHOApproximationEnum){
     6650                tria->GetBSSA(&B[0][0], &xyz_list[0][0], gauss_tria);
     6651                tria->GetBprimeSSA(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
     6652
     6653                if(approximation==SSAHOApproximationEnum){
    66546654                        this->GetStrainRate3dHO(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input);
    66556655                        this->GetStrainRate3dHO(&oldepsilon[0],&xyz_list[0][0],gauss,vxold_input,vyold_input);
    … …  
    66596659                        newviscosity=viscosity+viscosity_overshoot*(viscosity-oldviscosity);
    66606660                }
    6661                 else if (approximation==MacAyealFSApproximationEnum){
     6661                else if (approximation==SSAFSApproximationEnum){
    66626662                        this->GetStrainRate3d(&epsilons[0],&xyz_list[0][0],gauss,vx_input,vy_input,vz_input);
    66636663                        material->GetViscosity3dFS(&newviscosity,&epsilons[0]);
    … …  
    66876687}
    66886688/*}}}*/
    6689 /*FUNCTION Penta::CreateKMatrixDiagnosticMacAyeal3dFriction{{{*/
    6690 ElementMatrix* Penta::CreateKMatrixDiagnosticMacAyeal3dFriction(void){
     6689/*FUNCTION Penta::CreateKMatrixDiagnosticSSA3dFriction{{{*/
     6690ElementMatrix* Penta::CreateKMatrixDiagnosticSSA3dFriction(void){
    66916691
    66926692        /*Initialize Element matrix and return if necessary*/
    … …  
    66976697         * nodes: */
    66986698        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    6699         ElementMatrix* Ke=tria->CreateKMatrixDiagnosticMacAyealFriction();
     6699        ElementMatrix* Ke=tria->CreateKMatrixDiagnosticSSAFriction();
    67006700        delete tria->material; delete tria;
    67016701
    … …  
    67046704}
    67056705/*}}}*/
    6706 /*FUNCTION Penta::CreateKMatrixDiagnosticMacAyealHO{{{*/
    6707 ElementMatrix* Penta::CreateKMatrixDiagnosticMacAyealHO(void){
     6706/*FUNCTION Penta::CreateKMatrixDiagnosticSSAHO{{{*/
     6707ElementMatrix* Penta::CreateKMatrixDiagnosticSSAHO(void){
    67086708
    67096709        /*compute all stiffness matrices for this element*/
    6710         ElementMatrix* Ke1=CreateKMatrixDiagnosticMacAyeal3d();
     6710        ElementMatrix* Ke1=CreateKMatrixDiagnosticSSA3d();
    67116711        ElementMatrix* Ke2=CreateKMatrixDiagnosticHO();
    6712         ElementMatrix* Ke3=CreateKMatrixCouplingMacAyealHO();
     6712        ElementMatrix* Ke3=CreateKMatrixCouplingSSAHO();
    67136713        ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2,Ke3);
    67146714
    … …  
    67206720}
    67216721/*}}}*/
    6722 /*FUNCTION Penta::CreateKMatrixDiagnosticMacAyealFS{{{*/
    6723 ElementMatrix* Penta::CreateKMatrixDiagnosticMacAyealFS(void){
     6722/*FUNCTION Penta::CreateKMatrixDiagnosticSSAFS{{{*/
     6723ElementMatrix* Penta::CreateKMatrixDiagnosticSSAFS(void){
    67246724
    67256725        /*compute all stiffness matrices for this element*/
    6726         ElementMatrix* Ke1=CreateKMatrixDiagnosticMacAyeal3d();
     6726        ElementMatrix* Ke1=CreateKMatrixDiagnosticSSA3d();
    67276727        ElementMatrix* Ke2=CreateKMatrixDiagnosticFS();
    6728         ElementMatrix* Ke3=CreateKMatrixCouplingMacAyealFS();
     6728        ElementMatrix* Ke3=CreateKMatrixCouplingSSAFS();
    67296729        ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2,Ke3);
    67306730
    … …  
    67926792
    67936793                GetJacobianDeterminant(&Jdet, &xyz_list[0][0],gauss);
    6794                 tria->GetBMacAyeal(&B[0][0], &xyz_list[0][0], gauss_tria);
    6795                 tria->GetBprimeMacAyeal(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
     6794                tria->GetBSSA(&B[0][0], &xyz_list[0][0], gauss_tria);
     6795                tria->GetBprimeSSA(&Bprime[0][0], &xyz_list[0][0], gauss_tria);
    67966796
    67976797                /*Get viscosity for L1L2 model*/
    … …  
    68286828         * nodes: */
    68296829        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    6830         ElementMatrix* Ke=tria->CreateKMatrixDiagnosticMacAyealFriction();
     6830        ElementMatrix* Ke=tria->CreateKMatrixDiagnosticSSAFriction();
    68316831        delete tria->material; delete tria;
    68326832
    … …  
    70517051        /*If on water or not FS, skip stiffness: */
    70527052        inputs->GetInputValue(&approximation,ApproximationEnum);
    7053         if(approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
     7053        if(approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
    70547054        ElementMatrix* Ke=new ElementMatrix(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    70557055
    … …  
    71307130        /*If on water or not FS, skip stiffness: */
    71317131        inputs->GetInputValue(&approximation,ApproximationEnum);
    7132         if(approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
     7132        if(approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
    71337133        ElementMatrix* Ke=new ElementMatrix(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    71347134
    … …  
    72587258        /*If on water or not FS, skip stiffness: */
    72597259        inputs->GetInputValue(&approximation,ApproximationEnum);
    7260         if(IsFloating() || !IsOnBed() || (approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum &&  approximation!=HOFSApproximationEnum)) return NULL;
     7260        if(IsFloating() || !IsOnBed() || (approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum &&  approximation!=HOFSApproximationEnum)) return NULL;
    72617261        ElementMatrix* Ke=new ElementMatrix(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    72627262
    … …  
    74127412}
    74137413/*}}}*/
    7414 /*FUNCTION Penta::CreatePVectorCouplingMacAyealFS {{{*/
    7415 ElementVector* Penta::CreatePVectorCouplingMacAyealFS(void){
     7414/*FUNCTION Penta::CreatePVectorCouplingSSAFS {{{*/
     7415ElementVector* Penta::CreatePVectorCouplingSSAFS(void){
    74167416
    74177417        /*compute all load vectors for this element*/
    7418         ElementVector* pe1=CreatePVectorCouplingMacAyealFSViscous();
    7419         ElementVector* pe2=CreatePVectorCouplingMacAyealFSFriction();
     7418        ElementVector* pe1=CreatePVectorCouplingSSAFSViscous();
     7419        ElementVector* pe2=CreatePVectorCouplingSSAFSFriction();
    74207420        ElementVector* pe =new ElementVector(pe1,pe2);
    74217421
    … …  
    74267426}
    74277427/*}}}*/
    7428 /*FUNCTION Penta::CreatePVectorCouplingMacAyealFSViscous {{{*/
    7429 ElementVector* Penta::CreatePVectorCouplingMacAyealFSViscous(void){
     7428/*FUNCTION Penta::CreatePVectorCouplingSSAFSViscous {{{*/
     7429ElementVector* Penta::CreatePVectorCouplingSSAFSViscous(void){
    74307430
    74317431        /*Constants*/
    … …  
    74467446        /*Initialize Element vector and return if necessary*/
    74477447        inputs->GetInputValue(&approximation,ApproximationEnum);
    7448         if(approximation!=MacAyealFSApproximationEnum) return NULL;
     7448        if(approximation!=SSAFSApproximationEnum) return NULL;
    74497449        ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    74507450
    … …  
    74557455        Input* vy_input=inputs->GetInput(VyEnum);               _assert_(vy_input);
    74567456        Input* vz_input=inputs->GetInput(VzEnum);               _assert_(vz_input);
    7457         Input* vzSSA_input=inputs->GetInput(VzMacAyealEnum);   _assert_(vzSSA_input);
     7457        Input* vzSSA_input=inputs->GetInput(VzSSAEnum);   _assert_(vzSSA_input);
    74587458
    74597459        /* Start  looping on the number of gaussian points: */
    … …  
    74887488}
    74897489/*}}}*/
    7490 /*FUNCTION Penta::CreatePVectorCouplingMacAyealFSFriction{{{*/
    7491 ElementVector* Penta::CreatePVectorCouplingMacAyealFSFriction(void){
     7490/*FUNCTION Penta::CreatePVectorCouplingSSAFSFriction{{{*/
     7491ElementVector* Penta::CreatePVectorCouplingSSAFSFriction(void){
    74927492
    74937493        /*Constants*/
    … …  
    75137513        if(!IsOnBed() || IsFloating()) return NULL;
    75147514        inputs->GetInputValue(&approximation,ApproximationEnum);
    7515         if(approximation!=MacAyealFSApproximationEnum) return NULL;
     7515        if(approximation!=SSAFSApproximationEnum) return NULL;
    75167516        ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    75177517
    … …  
    75237523        Input* vy_input=inputs->GetInput(VyEnum);               _assert_(vy_input);
    75247524        Input* vz_input=inputs->GetInput(VzEnum);               _assert_(vz_input);
    7525         Input* vzSSA_input=inputs->GetInput(VzMacAyealEnum);   _assert_(vzSSA_input);
     7525        Input* vzSSA_input=inputs->GetInput(VzSSAEnum);   _assert_(vzSSA_input);
    75267526
    75277527        for(i=0;i<NUMVERTICES2D;i++) for(j=0;j<3;j++) xyz_list_tria[i][j]=xyz_list[i][j];
    … …  
    77217721
    77227722        switch(approximation){
    7723                 case MacAyealApproximationEnum:
    7724                         return CreatePVectorDiagnosticMacAyeal();
     7723                case SSAApproximationEnum:
     7724                        return CreatePVectorDiagnosticSSA();
    77257725                case HOApproximationEnum:
    77267726                        return CreatePVectorDiagnosticHO();
    … …  
    77337733                case FSApproximationEnum:
    77347734                        return CreatePVectorDiagnosticFS();
    7735                 case MacAyealHOApproximationEnum:
    7736                         return CreatePVectorDiagnosticMacAyealHO();
    7737                 case MacAyealFSApproximationEnum:
    7738                         return CreatePVectorDiagnosticMacAyealFS();
     7735                case SSAHOApproximationEnum:
     7736                        return CreatePVectorDiagnosticSSAHO();
     7737                case SSAFSApproximationEnum:
     7738                        return CreatePVectorDiagnosticSSAFS();
    77397739                case HOFSApproximationEnum:
    77407740                        return CreatePVectorDiagnosticHOFS();
    … …  
    77447744}
    77457745/*}}}*/
    7746 /*FUNCTION Penta::CreatePVectorDiagnosticMacAyealHO{{{*/
    7747 ElementVector* Penta::CreatePVectorDiagnosticMacAyealHO(void){
     7746/*FUNCTION Penta::CreatePVectorDiagnosticSSAHO{{{*/
     7747ElementVector* Penta::CreatePVectorDiagnosticSSAHO(void){
    77487748
    77497749        /*compute all load vectors for this element*/
    7750         ElementVector* pe1=CreatePVectorDiagnosticMacAyeal();
     7750        ElementVector* pe1=CreatePVectorDiagnosticSSA();
    77517751        ElementVector* pe2=CreatePVectorDiagnosticHO();
    77527752        ElementVector* pe =new ElementVector(pe1,pe2);
    … …  
    77587758}
    77597759/*}}}*/
    7760 /*FUNCTION Penta::CreatePVectorDiagnosticMacAyealFS{{{*/
    7761 ElementVector* Penta::CreatePVectorDiagnosticMacAyealFS(void){
     7760/*FUNCTION Penta::CreatePVectorDiagnosticSSAFS{{{*/
     7761ElementVector* Penta::CreatePVectorDiagnosticSSAFS(void){
    77627762
    77637763        /*compute all load vectors for this element*/
    7764         ElementVector* pe1=CreatePVectorDiagnosticMacAyeal();
     7764        ElementVector* pe1=CreatePVectorDiagnosticSSA();
    77657765        ElementVector* pe2=CreatePVectorDiagnosticFS();
    7766         ElementVector* pe3=CreatePVectorCouplingMacAyealFS();
     7766        ElementVector* pe3=CreatePVectorCouplingSSAFS();
    77677767        ElementVector* pe =new ElementVector(pe1,pe2,pe3);
    77687768
    … …  
    78757875}
    78767876/*}}}*/
    7877 /*FUNCTION Penta::CreatePVectorDiagnosticMacAyeal{{{*/
    7878 ElementVector* Penta::CreatePVectorDiagnosticMacAyeal(void){
     7877/*FUNCTION Penta::CreatePVectorDiagnosticSSA{{{*/
     7878ElementVector* Penta::CreatePVectorDiagnosticSSA(void){
    78797879
    78807880        if (!IsOnBed()) return NULL;
    … …  
    78827882        /*Call Tria function*/
    78837883        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    7884         ElementVector* pe=tria->CreatePVectorDiagnosticMacAyeal();
     7884        ElementVector* pe=tria->CreatePVectorDiagnosticSSA();
    78857885        delete tria->material; delete tria;
    78867886
    … …  
    78967896        /*Call Tria function*/
    78977897        Tria* tria=(Tria*)SpawnTria(0,1,2); //nodes 0, 1 and 2 make the new tria.
    7898         ElementVector* pe=tria->CreatePVectorDiagnosticMacAyeal();
     7898        ElementVector* pe=tria->CreatePVectorDiagnosticSSA();
    78997899        delete tria->material; delete tria;
    79007900
    … …  
    81068106        /*Initialize Element vector and return if necessary*/
    81078107        inputs->GetInputValue(&approximation,ApproximationEnum);
    8108         if(approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
     8108        if(approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
    81098109        ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    81108110
    … …  
    82768276        /*Initialize Element vector and return if necessary*/
    82778277        inputs->GetInputValue(&approximation,ApproximationEnum);
    8278         if(approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
     8278        if(approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
    82798279        parameters->FindParam(&FSreconditioning,DiagnosticFSreconditioningEnum);
    82808280        ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    … …  
    83928392        inputs->GetInputValue(&approximation,ApproximationEnum);
    83938393        this->parameters->FindParam(&shelf_dampening,DiagnosticShelfDampeningEnum);
    8394         if(approximation!=FSApproximationEnum && approximation!=MacAyealFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
     8394        if(approximation!=FSApproximationEnum && approximation!=SSAFSApproximationEnum && approximation!=HOFSApproximationEnum) return NULL;
    83958395        ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters,FSApproximationEnum);
    83968396
    … …  
    84788478        Input* vy_input=inputs->GetInput(VyEnum); _assert_(vy_input);
    84798479        Input* vzFS_input=NULL;
    8480         if(approximation==HOFSApproximationEnum || approximation==MacAyealFSApproximationEnum){
     8480        if(approximation==HOFSApproximationEnum || approximation==SSAFSApproximationEnum){
    84818481                vzFS_input=inputs->GetInput(VzFSEnum); _assert_(vzFS_input);
    84828482        }
    … …  
    84938493                vx_input->GetInputDerivativeValue(&du[0],&xyz_list[0][0],gauss);
    84948494                vy_input->GetInputDerivativeValue(&dv[0],&xyz_list[0][0],gauss);
    8495                 if(approximation==HOFSApproximationEnum || approximation==MacAyealFSApproximationEnum){
     8495                if(approximation==HOFSApproximationEnum || approximation==SSAFSApproximationEnum){
    84968496                        vzFS_input->GetInputDerivativeValue(&dw[0],&xyz_list[0][0],gauss);
    84978497                        dwdz=dw[2];
    … …  
    85408540        Input* vy_input=inputs->GetInput(VyEnum);                                  _assert_(vy_input);
    85418541        Input* vzFS_input=NULL;
    8542         if(approximation==HOFSApproximationEnum || approximation==MacAyealFSApproximationEnum){
     8542        if(approximation==HOFSApproximationEnum || approximation==SSAFSApproximationEnum){
    85438543                vzFS_input=inputs->GetInput(VzFSEnum);       _assert_(vzFS_input);
    85448544        }
    … …  
    85548554                vx_input->GetInputValue(&vx, gauss);
    85558555                vy_input->GetInputValue(&vy, gauss);
    8556                 if(approximation==HOFSApproximationEnum || approximation==MacAyealFSApproximationEnum){
     8556                if(approximation==HOFSApproximationEnum || approximation==SSAFSApproximationEnum){
    85578557                        vzFS_input->GetInputValue(&vz, gauss);
    85588558                }
    … …  
    85808580
    85818581        switch(approximation){
    8582                 case MacAyealApproximationEnum:
     8582                case SSAApproximationEnum:
    85838583                        return CreateJacobianDiagnosticSSA2d();
    85848584                case HOApproximationEnum:
    … …  
    87848784
    87858785        /*If the element is a coupling, do nothing: every node is also on an other elements
    8786          * (as coupling is between MacAyeal and HO) so the other element will take care of it*/
     8786         * (as coupling is between SSA and HO) so the other element will take care of it*/
    87878787        GetDofList(&doflist,approximation,GsetEnum);
    87888788
    … …  
    89998999        inputs->GetInputValue(&approximation,ApproximationEnum);
    90009000
    9001         /*MacAyeal, everything is done by the element on bed*/
    9002         if (approximation==MacAyealApproximationEnum){
     9001        /*SSA, everything is done by the element on bed*/
     9002        if (approximation==SSAApproximationEnum){
    90039003                if (!IsOnBed()){
    90049004                        /*Do nothing. Element on bed will take care of it*/
    … …  
    90069006                }
    90079007                else{
    9008                         InputUpdateFromSolutionDiagnosticMacAyeal(solution);
     9008                        InputUpdateFromSolutionDiagnosticSSA(solution);
    90099009                        return;
    90109010                }
    … …  
    90219021                InputUpdateFromSolutionDiagnosticHOFS(solution);
    90229022        }
    9023         else if (approximation==MacAyealFSApproximationEnum){
    9024                 InputUpdateFromSolutionDiagnosticMacAyealFS(solution);
     9023        else if (approximation==SSAFSApproximationEnum){
     9024                InputUpdateFromSolutionDiagnosticSSAFS(solution);
    90259025        }
    90269026        else if (approximation==FSApproximationEnum || approximation==NoneApproximationEnum){
    90279027                InputUpdateFromSolutionDiagnosticFS(solution);
    90289028        }
    9029         else if (approximation==MacAyealHOApproximationEnum){
    9030                 InputUpdateFromSolutionDiagnosticMacAyealHO(solution);
    9031         }
    9032 }
    9033 /*}}}*/
    9034 /*FUNCTION Penta::InputUpdateFromSolutionDiagnosticMacAyeal {{{*/
    9035 void  Penta::InputUpdateFromSolutionDiagnosticMacAyeal(IssmDouble* solution){
     9029        else if (approximation==SSAHOApproximationEnum){
     9030                InputUpdateFromSolutionDiagnosticSSAHO(solution);
     9031        }
     9032}
     9033/*}}}*/
     9034/*FUNCTION Penta::InputUpdateFromSolutionDiagnosticSSA {{{*/
     9035void  Penta::InputUpdateFromSolutionDiagnosticSSA(IssmDouble* solution){
    90369036
    90379037        const int    numdof=NDOF2*NUMVERTICES;
    … …  
    90519051
    90529052        /*Get dof list: */
    9053         GetDofList(&doflist,MacAyealApproximationEnum,GsetEnum);
     9053        GetDofList(&doflist,SSAApproximationEnum,GsetEnum);
    90549054
    90559055        /*Use the dof list to index into the solution vector: */
    … …  
    91139113}
    91149114/*}}}*/
    9115 /*FUNCTION Penta::InputUpdateFromSolutionDiagnosticMacAyealHO {{{*/
    9116 void  Penta::InputUpdateFromSolutionDiagnosticMacAyealHO(IssmDouble* solution){
     9115/*FUNCTION Penta::InputUpdateFromSolutionDiagnosticSSAHO {{{*/
     9116void  Penta::InputUpdateFromSolutionDiagnosticSSAHO(IssmDouble* solution){
    91179117
    91189118        const int    numdof=NDOF2*NUMVERTICES;
    … …  
    91409140        /*Get dof listof this element (HO dofs) and of the penta at base (SSA dofs): */
    91419141        GetDofList(&doflistp,HOApproximationEnum,GsetEnum);
    9142         penta->GetDofList(&doflistm,MacAyealApproximationEnum,GsetEnum);
     9142        penta->GetDofList(&doflistm,SSAApproximationEnum,GsetEnum);
    91439143
    91449144        /*Get node data: */
    … …  
    91979197}
    91989198/*}}}*/
    9199 /*FUNCTION Penta::InputUpdateFromSolutionDiagnosticMacAyealFS {{{*/
    9200 void  Penta::InputUpdateFromSolutionDiagnosticMacAyealFS(IssmDouble* solution){
     9199/*FUNCTION Penta::InputUpdateFromSolutionDiagnosticSSAFS {{{*/
     9200void  Penta::InputUpdateFromSolutionDiagnosticSSAFS(IssmDouble* solution){
    92019201
    92029202        const int    numdofm=NDOF2*NUMVERTICES;
    … …  
    92259225
    92269226        /*Get dof listof this element (SSA dofs) and of the penta at base (SSA dofs): */
    9227         penta->GetDofList(&doflistm,MacAyealApproximationEnum,GsetEnum);
     9227        penta->GetDofList(&doflistm,SSAApproximationEnum,GsetEnum);
    92289228        GetDofList(&doflists,FSApproximationEnum,GsetEnum);
    92299229        this->parameters->FindParam(&FSreconditioning,DiagnosticFSreconditioningEnum);
    … …  
    92609260
    92619261        /*Get Vz*/
    9262         Input* vzSSA_input=inputs->GetInput(VzMacAyealEnum);
     9262        Input* vzSSA_input=inputs->GetInput(VzSSAEnum);
    92639263        if (vzSSA_input){
    92649264                if (vzSSA_input->ObjectEnum()!=PentaInputEnum){
    9265                         _error_("Cannot compute Vel as VzMacAyeal is of type " << EnumToStringx(vzSSA_input->ObjectEnum()));
    9266                 }
    9267                 GetInputListOnVertices(&vzSSA[0],VzMacAyealEnum);
     9265                        _error_("Cannot compute Vel as VzSSA is of type " << EnumToStringx(vzSSA_input->ObjectEnum()));
     9266                }
     9267                GetInputListOnVertices(&vzSSA[0],VzSSAEnum);
    92689268        }
    92699269        else{
    9270                 _error_("Cannot update solution as VzMacAyeal is not present");
     9270                _error_("Cannot update solution as VzSSA is not present");
    92719271        }
    92729272
    … …  
    96539653        GetInputListOnVertices(&vy[0],VyEnum,0.0); //default is 0
    96549654
    9655         /*Do some modifications if we actually have a HOFS or MacAyealFS element*/
     9655        /*Do some modifications if we actually have a HOFS or SSAFS element*/
    96569656        if(approximation==HOFSApproximationEnum){
    96579657                Input* vzFS_input=inputs->GetInput(VzFSEnum);
    … …  
    96669666                }
    96679667        }
    9668         else if(approximation==MacAyealFSApproximationEnum){
     9668        else if(approximation==SSAFSApproximationEnum){
    96699669                Input* vzFS_input=inputs->GetInput(VzFSEnum);
    96709670                if (vzFS_input){
    … …  
    96729672                        GetInputListOnVertices(&vzFS[0],VzFSEnum);
    96739673                }
    9674                 else _error_("Cannot compute Vz as VzFS in not present in MacAyealFS element");
     9674                else _error_("Cannot compute Vz as VzFS in not present in SSAFS element");
    96759675                for(i=0;i<NUMVERTICES;i++){
    96769676                        vzSSA[i]=vz[i];
    … …  
    96849684        /*For pressure: we have not computed pressure in this analysis, for this element. We are in 3D,
    96859685         *so the pressure is just the pressure at the z elevation: except it this is a HOFS element */
    9686         if(approximation!=HOFSApproximationEnum &&  approximation!=MacAyealFSApproximationEnum){
     9686        if(approximation!=HOFSApproximationEnum &&  approximation!=SSAFSApproximationEnum){
    96879687                rho_ice=matpar->GetRhoIce();
    96889688                g=matpar->GetG();
    … …  
    96959695        this->inputs->ChangeEnum(VzEnum,VzPicardEnum);
    96969696
    9697         if(approximation!=HOFSApproximationEnum && approximation!=MacAyealFSApproximationEnum){
     9697        if(approximation!=HOFSApproximationEnum && approximation!=SSAFSApproximationEnum){
    96989698                this->inputs->ChangeEnum(PressureEnum,PressurePicardEnum);
    96999699                this->inputs->AddInput(new PentaInput(PressureEnum,pressure,P1Enum));
    … …  
    97029702                this->inputs->AddInput(new PentaInput(VzHOEnum,vzHO,P1Enum));
    97039703        }
    9704         else if(approximation==MacAyealFSApproximationEnum){
    9705                 this->inputs->AddInput(new PentaInput(VzMacAyealEnum,vzSSA,P1Enum));
     9704        else if(approximation==SSAFSApproximationEnum){
     9705                this->inputs->AddInput(new PentaInput(VzSSAEnum,vzSSA,P1Enum));
    97069706        }
    97079707        this->inputs->AddInput(new PentaInput(VzEnum,vz,P1Enum));
  • issm/trunk-jpl/src/c/classes/Elements/Penta.h

    r15564 r15567  
    144144                void   GradientIndexing(int* indexing,int control_index);
    145145                void   Gradj(Vector<IssmDouble>* gradient,int control_type,int control_index);
    146                 void   GradjDragMacAyeal(Vector<IssmDouble>* gradient,int control_index);
     146                void   GradjDragSSA(Vector<IssmDouble>* gradient,int control_index);
    147147                void   GradjDragHO(Vector<IssmDouble>* gradient,int control_index);
    148148                void   GradjDragFS(Vector<IssmDouble>* gradient,int control_index);
    149                 void   GradjBbarMacAyeal(Vector<IssmDouble>* gradient,int control_index);
     149                void   GradjBbarSSA(Vector<IssmDouble>* gradient,int control_index);
    150150                void   GradjBbarHO(Vector<IssmDouble>* gradient,int control_index);
    151151                void   GradjBbarFS(Vector<IssmDouble>* gradient,int control_index);
    … …  
    223223
    224224                #ifdef _HAVE_DIAGNOSTIC_
    225                 ElementMatrix* CreateKMatrixCouplingMacAyealHO(void);
    226                 ElementMatrix* CreateKMatrixCouplingMacAyealHOViscous(void);
    227                 ElementMatrix* CreateKMatrixCouplingMacAyealHOFriction(void);
    228                 ElementMatrix* CreateKMatrixCouplingMacAyealFS(void);
    229                 ElementMatrix* CreateKMatrixCouplingMacAyealFSViscous(void);
    230                 ElementMatrix* CreateKMatrixCouplingMacAyealFSFriction(void);
     225                ElementMatrix* CreateKMatrixCouplingSSAHO(void);
     226                ElementMatrix* CreateKMatrixCouplingSSAHOViscous(void);
     227                ElementMatrix* CreateKMatrixCouplingSSAHOFriction(void);
     228                ElementMatrix* CreateKMatrixCouplingSSAFS(void);
     229                ElementMatrix* CreateKMatrixCouplingSSAFSViscous(void);
     230                ElementMatrix* CreateKMatrixCouplingSSAFSFriction(void);
    231231                ElementMatrix* CreateKMatrixCouplingHOFS(void);
    232232                ElementMatrix* CreateKMatrixDiagnosticHoriz(void);
    … …  
    235235                ElementVector* CreateDVectorDiagnosticFS(void);
    236236                ElementMatrix* CreateKMatrixDiagnosticSIA(void);
    237                 ElementMatrix* CreateKMatrixDiagnosticMacAyeal2d(void);
    238                 ElementMatrix* CreateKMatrixDiagnosticMacAyeal3d(void);
    239                 ElementMatrix* CreateKMatrixDiagnosticMacAyeal3dViscous(void);
    240                 ElementMatrix* CreateKMatrixDiagnosticMacAyeal3dFriction(void);
    241                 ElementMatrix* CreateKMatrixDiagnosticMacAyealHO(void);
    242                 ElementMatrix* CreateKMatrixDiagnosticMacAyealFS(void);
     237                ElementMatrix* CreateKMatrixDiagnosticSSA2d(void);
     238                ElementMatrix* CreateKMatrixDiagnosticSSA3d(void);
     239                ElementMatrix* CreateKMatrixDiagnosticSSA3dViscous(void);
     240                ElementMatrix* CreateKMatrixDiagnosticSSA3dFriction(void);
     241                ElementMatrix* CreateKMatrixDiagnosticSSAHO(void);
     242                ElementMatrix* CreateKMatrixDiagnosticSSAFS(void);
    243243                ElementMatrix* CreateKMatrixDiagnosticL1L2(void);
    244244                ElementMatrix* CreateKMatrixDiagnosticL1L2Viscous(void);
    … …  
    261261                ElementMatrix* CreateJacobianDiagnosticFS(void);
    262262                void           InputUpdateFromSolutionDiagnosticHoriz( IssmDouble* solutiong);
    263                 void           InputUpdateFromSolutionDiagnosticMacAyeal( IssmDouble* solutiong);
    264                 void           InputUpdateFromSolutionDiagnosticMacAyealHO( IssmDouble* solutiong);
    265                 void           InputUpdateFromSolutionDiagnosticMacAyealFS( IssmDouble* solutiong);
     263                void           InputUpdateFromSolutionDiagnosticSSA( IssmDouble* solutiong);
     264                void           InputUpdateFromSolutionDiagnosticSSAHO( IssmDouble* solutiong);
     265                void           InputUpdateFromSolutionDiagnosticSSAFS( IssmDouble* solutiong);
    266266                void           InputUpdateFromSolutionDiagnosticL1L2( IssmDouble* solutiong);
    267267                void           InputUpdateFromSolutionDiagnosticHO( IssmDouble* solutiong);
    … …  
    274274                void             GetSolutionFromInputsDiagnosticFS(Vector<IssmDouble>* solutiong);
    275275                void             GetSolutionFromInputsDiagnosticVert(Vector<IssmDouble>* solutiong);
    276                 ElementVector* CreatePVectorCouplingMacAyealFS(void);
    277                 ElementVector* CreatePVectorCouplingMacAyealFSViscous(void);
    278                 ElementVector* CreatePVectorCouplingMacAyealFSFriction(void);
     276                ElementVector* CreatePVectorCouplingSSAFS(void);
     277                ElementVector* CreatePVectorCouplingSSAFSViscous(void);
     278                ElementVector* CreatePVectorCouplingSSAFSFriction(void);
    279279                ElementVector* CreatePVectorCouplingHOFS(void);
    280280                ElementVector* CreatePVectorCouplingHOFSViscous(void);
    … …  
    282282                ElementVector* CreatePVectorDiagnosticHoriz(void);
    283283                ElementVector* CreatePVectorDiagnosticSIA(void);
    284                 ElementVector* CreatePVectorDiagnosticMacAyeal(void);
    285                 ElementVector* CreatePVectorDiagnosticMacAyealHO(void);
    286                 ElementVector* CreatePVectorDiagnosticMacAyealFS(void);
     284                ElementVector* CreatePVectorDiagnosticSSA(void);
     285                ElementVector* CreatePVectorDiagnosticSSAHO(void);
     286                ElementVector* CreatePVectorDiagnosticSSAFS(void);
    287287                ElementVector* CreatePVectorDiagnosticL1L2(void);
    288288                ElementVector* CreatePVectorDiagnosticHO(void);
    … …  
    303303                #ifdef _HAVE_CONTROL_
    304304                ElementVector* CreatePVectorAdjointHoriz(void);
    305                 ElementMatrix* CreateKMatrixAdjointMacAyeal2d(void);
     305                ElementMatrix* CreateKMatrixAdjointSSA2d(void);
    306306                ElementMatrix* CreateKMatrixAdjointHO(void);
    307307                ElementMatrix* CreateKMatrixAdjointFS(void);
    308                 ElementVector* CreatePVectorAdjointMacAyeal(void);
     308                ElementVector* CreatePVectorAdjointSSA(void);
    309309                ElementVector* CreatePVectorAdjointHO(void);
    310310                ElementVector* CreatePVectorAdjointFS(void);
  • issm/trunk-jpl/src/c/classes/Elements/PentaRef.cpp

    r15564 r15567  
    5454
    5555/*Reference Element numerics*/
    56 /*FUNCTION PentaRef::GetBMacAyealHO {{{*/
    57 void PentaRef::GetBMacAyealHO(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss){
     56/*FUNCTION PentaRef::GetBSSAHO {{{*/
     57void PentaRef::GetBSSAHO(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss){
    5858        /*Compute B  matrix. B=[B1 B2 B3 B4 B5 B6] where Bi is of size 5*NDOF2.
    5959         * For node i, Bi can be expressed in the actual coordinate system
    … …  
    8585}
    8686/*}}}*/
    87 /*FUNCTION PentaRef::GetBMacAyealFS{{{*/
    88 void PentaRef::GetBMacAyealFS(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss){
     87/*FUNCTION PentaRef::GetBSSAFS{{{*/
     88void PentaRef::GetBSSAFS(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss){
    8989        /*Compute B  matrix. B=[B1 B2 B3 B4 B5 B6] where Bi is of size 5*NDOF2.
    9090         * For node i, Bi can be expressed in the actual coordinate system
    … …  
    209209}
    210210/*}}}*/
    211 /*FUNCTION PentaRef::GetBprimeMacAyealFS{{{*/
    212 void PentaRef::GetBprimeMacAyealFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussPenta* gauss){
     211/*FUNCTION PentaRef::GetBprimeSSAFS{{{*/
     212void PentaRef::GetBprimeSSAFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussPenta* gauss){
    213213        /*Compute Bprime  matrix. Bprime=[Bprime1 Bprime2 Bprime3 Bprime4 Bprime5 Bprime6] where Bprimei is of size 5*NDOF2.
    214214         * For node i, Bprimei can be expressed in the actual coordinate system
    … …  
    786786}
    787787/*}}}*/
    788 /*FUNCTION PentaRef::GetLMacAyealFS {{{*/
    789 void PentaRef::GetLMacAyealFS(IssmDouble* LFS, GaussPenta* gauss){
     788/*FUNCTION PentaRef::GetLSSAFS {{{*/
     789void PentaRef::GetLSSAFS(IssmDouble* LFS, GaussPenta* gauss){
    790790        /*
    791791         * Compute L  matrix. L=[L1 L2 L3] where Li is square and of size numdof.
    … …  
    832832}
    833833/*}}}*/
    834 /*FUNCTION PentaRef::GetLprimeMacAyealFS {{{*/
    835 void PentaRef::GetLprimeMacAyealFS(IssmDouble* LprimeFS, IssmDouble* xyz_list, GaussPenta* gauss){
     834/*FUNCTION PentaRef::GetLprimeSSAFS {{{*/
     835void PentaRef::GetLprimeSSAFS(IssmDouble* LprimeFS, IssmDouble* xyz_list, GaussPenta* gauss){
    836836        /* Compute Lprime  matrix. Lprime=[Lp1 Lp2 Lp3] where Lpi is square and of size numdof.
    837837         * For node i, Lpi can be expressed in the actual coordinate system
    … …  
    895895}
    896896/*}}}*/
    897 /*FUNCTION PentaRef::GetLFSMacAyeal {{{*/
    898 void PentaRef::GetLFSMacAyeal(IssmDouble* LFS, GaussPenta* gauss){
     897/*FUNCTION PentaRef::GetLFSSSA {{{*/
     898void PentaRef::GetLFSSSA(IssmDouble* LFS, GaussPenta* gauss){
    899899        /* Compute L  matrix. L=[L1 L2 L3] where Li is square and of size numdof.
    900900         * For node i, Li can be expressed in the actual coordinate system
    … …  
    936936}
    937937/*}}}*/
    938 /*FUNCTION PentaRef::GetLprimeFSMacAyeal {{{*/
    939 void PentaRef::GetLprimeFSMacAyeal(IssmDouble* LprimeFS, IssmDouble* xyz_list, GaussPenta* gauss){
     938/*FUNCTION PentaRef::GetLprimeFSSSA {{{*/
     939void PentaRef::GetLprimeFSSSA(IssmDouble* LprimeFS, IssmDouble* xyz_list, GaussPenta* gauss){
    940940        /* Compute Lprime  matrix. Lprime=[Lp1 Lp2 Lp3] where Lpi is square and of size numdof.
    941941         * For node i, Lpi can be expressed in the actual coordinate system
  • issm/trunk-jpl/src/c/classes/Elements/PentaRef.h

    r15564 r15567  
    3838                void GetSegmentJacobianDeterminant(IssmDouble*  Jdet, IssmDouble* xyz_list,GaussPenta* gauss);
    3939                void GetJacobianInvert(IssmDouble*  Jinv, IssmDouble* xyz_list,GaussPenta* gauss);
    40                 void GetBMacAyealHO(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
    41                 void GetBMacAyealFS(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
     40                void GetBSSAHO(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
     41                void GetBSSAFS(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
    4242                void GetBHO(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
    4343                void GetBFS(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
    4444                void GetBFSGLS(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
    45                 void GetBprimeMacAyealFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussPenta* gauss);
     45                void GetBprimeSSAFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussPenta* gauss);
    4646                void GetBprimeHO(IssmDouble* B, IssmDouble* xyz_list, GaussPenta* gauss);
    4747                void GetBprimeFS(IssmDouble* B_prime, IssmDouble* xyz_list, GaussPenta* gauss);
    … …  
    5555                void GetLFS(IssmDouble* LFS, GaussPenta* gauss);
    5656                void GetLprimeFS(IssmDouble* LprimeFS, IssmDouble* xyz_list, GaussPenta* gauss);
    57                 void GetLMacAyealFS(IssmDouble* LMacAyealFS, GaussPenta* gauss);
    58                 void GetLprimeMacAyealFS(IssmDouble* LprimeMacAyealFS, IssmDouble* xyz_list, GaussPenta* gauss);
    59                 void GetLFSMacAyeal(IssmDouble* LFSMacAyeal, GaussPenta* gauss);
    60                 void GetLprimeFSMacAyeal(IssmDouble* LprimeFSMacAyeal, IssmDouble* xyz_list, GaussPenta* gauss);
     57                void GetLSSAFS(IssmDouble* LSSAFS, GaussPenta* gauss);
     58                void GetLprimeSSAFS(IssmDouble* LprimeSSAFS, IssmDouble* xyz_list, GaussPenta* gauss);
     59                void GetLFSSSA(IssmDouble* LFSSSA, GaussPenta* gauss);
     60                void GetLprimeFSSSA(IssmDouble* LprimeFSSSA, IssmDouble* xyz_list, GaussPenta* gauss);
    6161                void GetInputValue(IssmDouble* pvalue,IssmDouble* plist, GaussPenta* gauss);
    6262                void GetInputValue(IssmDouble* pvalue,IssmDouble* plist,GaussTria* gauss){_error_("only PentaGauss are supported");};
  • issm/trunk-jpl/src/c/classes/Elements/Tria.cpp

    r15564 r15567  
    191191                #ifdef _HAVE_DIAGNOSTIC_
    192192                case DiagnosticHorizAnalysisEnum:
    193                         Ke=CreateKMatrixDiagnosticMacAyeal();
     193                        Ke=CreateKMatrixDiagnosticSSA();
    194194                        break;
    195195                case DiagnosticSIAAnalysisEnum:
    … …  
    224224                        break;
    225225                case AdjointHorizAnalysisEnum:
    226                         Ke=CreateKMatrixAdjointMacAyeal();
     226                        Ke=CreateKMatrixAdjointSSA();
    227227                        break;
    228228                #endif
    … …  
    304304                #ifdef _HAVE_DIAGNOSTIC_
    305305                case DiagnosticHorizAnalysisEnum:
    306                         pe=CreatePVectorDiagnosticMacAyeal();
     306                        pe=CreatePVectorDiagnosticSSA();
    307307                        break;
    308308                case DiagnosticSIAAnalysisEnum:
    … …  
    28862886
    28872887#ifdef _HAVE_DIAGNOSTIC_
    2888 /*FUNCTION Tria::CreateKMatrixDiagnosticMacAyeal {{{*/
    2889 ElementMatrix* Tria::CreateKMatrixDiagnosticMacAyeal(void){
     2888/*FUNCTION Tria::CreateKMatrixDiagnosticSSA {{{*/
     2889ElementMatrix* Tria::CreateKMatrixDiagnosticSSA(void){
    28902890
    28912891        /*compute all stiffness matrices for this element*/
    2892         ElementMatrix* Ke1=CreateKMatrixDiagnosticMacAyealViscous();
    2893         ElementMatrix* Ke2=CreateKMatrixDiagnosticMacAyealFriction();
     2892        ElementMatrix* Ke1=CreateKMatrixDiagnosticSSAViscous();
     2893        ElementMatrix* Ke2=CreateKMatrixDiagnosticSSAFriction();
    28942894        ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2);
    28952895
    … …  
    29002900}
    29012901/*}}}*/
    2902 /*FUNCTION Tria::CreateKMatrixDiagnosticMacAyealViscous{{{*/
    2903 ElementMatrix* Tria::CreateKMatrixDiagnosticMacAyealViscous(void){
     2902/*FUNCTION Tria::CreateKMatrixDiagnosticSSAViscous{{{*/
     2903ElementMatrix* Tria::CreateKMatrixDiagnosticSSAViscous(void){
    29042904
    29052905        /*Intermediaries*/
    … …  
    29162916
    29172917        /*Initialize Element matrix and vectors*/
    2918         ElementMatrix* Ke     = new ElementMatrix(nodes,numnodes,this->parameters,MacAyealApproximationEnum);
     2918        ElementMatrix* Ke     = new ElementMatrix(nodes,numnodes,this->parameters,SSAApproximationEnum);
    29192919        IssmDouble*    B      = xNew<IssmDouble>(3*numdof);
    29202920        IssmDouble*    Bprime = xNew<IssmDouble>(3*numdof);
    … …  
    29372937
    29382938                GetJacobianDeterminant(&Jdet, &xyz_list[0][0],gauss);
    2939                 GetBMacAyeal(&B[0], &xyz_list[0][0], gauss);
    2940                 GetBprimeMacAyeal(&Bprime[0], &xyz_list[0][0], gauss);
     2939                GetBSSA(&B[0], &xyz_list[0][0], gauss);
     2940                GetBprimeSSA(&Bprime[0], &xyz_list[0][0], gauss);
    29412941
    29422942                this->GetStrainRate2d(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input);
    … …  
    29672967}
    29682968/*}}}*/
    2969 /*FUNCTION Tria::CreateKMatrixDiagnosticMacAyealFriction {{{*/
    2970 ElementMatrix* Tria::CreateKMatrixDiagnosticMacAyealFriction(void){
     2969/*FUNCTION Tria::CreateKMatrixDiagnosticSSAFriction {{{*/
     2970ElementMatrix* Tria::CreateKMatrixDiagnosticSSAFriction(void){
    29712971
    29722972        /*Intermediaries*/
    … …  
    29932993
    29942994        /*Initialize Element matrix and vectors*/
    2995         ElementMatrix* Ke     = new ElementMatrix(nodes,numnodes,this->parameters,MacAyealApproximationEnum);
     2995        ElementMatrix* Ke     = new ElementMatrix(nodes,numnodes,this->parameters,SSAApproximationEnum);
    29962996        IssmDouble*    B      = xNew<IssmDouble>(2*numdof);
    29972997        IssmDouble*    D      = xNewZeroInit<IssmDouble>(2*2);
    … …  
    30333033                }
    30343034
    3035                 GetBMacAyealFriction(&B[0], &xyz_list[0][0], gauss);
     3035                GetBSSAFriction(&B[0], &xyz_list[0][0], gauss);
    30363036                GetJacobianDeterminant(&Jdet, &xyz_list[0][0],gauss);
    30373037                D_scalar=alpha2*gauss->weight*Jdet;
    … …  
    30763076}
    30773077/*}}}*/
    3078 /*FUNCTION Tria::CreatePVectorDiagnosticMacAyeal {{{*/
    3079 ElementVector* Tria::CreatePVectorDiagnosticMacAyeal(){
     3078/*FUNCTION Tria::CreatePVectorDiagnosticSSA {{{*/
     3079ElementVector* Tria::CreatePVectorDiagnosticSSA(){
    30803080
    30813081        /*compute all load vectors for this element*/
    3082         ElementVector* pe1=CreatePVectorDiagnosticMacAyealDrivingStress();
    3083         ElementVector* pe2=CreatePVectorDiagnosticMacAyealFront();
     3082        ElementVector* pe1=CreatePVectorDiagnosticSSADrivingStress();
     3083        ElementVector* pe2=CreatePVectorDiagnosticSSAFront();
    30843084        ElementVector* pe =new ElementVector(pe1,pe2);
    30853085
    … …  
    30903090}
    30913091/*}}}*/
    3092 /*FUNCTION Tria::CreatePVectorDiagnosticMacAyealDrivingStress {{{*/
    3093 ElementVector* Tria::CreatePVectorDiagnosticMacAyealDrivingStress(){
     3092/*FUNCTION Tria::CreatePVectorDiagnosticSSADrivingStress {{{*/
     3093ElementVector* Tria::CreatePVectorDiagnosticSSADrivingStress(){
    30943094
    30953095        /*Intermediaries */
    … …  
    31063106
    31073107        /*Initialize Element vector and vectors*/
    3108         ElementVector* pe=new ElementVector(nodes,numnodes,this->parameters,MacAyealApproximationEnum);
     3108        ElementVector* pe=new ElementVector(nodes,numnodes,this->parameters,SSAApproximationEnum);
    31093109        GaussTria*     gauss  = new GaussTria(2);
    31103110        IssmDouble*    basis = xNew<IssmDouble>(numnodes);
    … …  
    31463146}
    31473147/*}}}*/
    3148 /*FUNCTION Tria::CreatePVectorDiagnosticMacAyealFront {{{*/
    3149 ElementVector* Tria::CreatePVectorDiagnosticMacAyealFront(){
     3148/*FUNCTION Tria::CreatePVectorDiagnosticSSAFront {{{*/
     3149ElementVector* Tria::CreatePVectorDiagnosticSSAFront(){
    31503150
    31513151        /*Intermediaries */
    … …  
    31813181
    31823182        GetVerticesCoordinates(&xyz_list[0][0],vertices,NUMVERTICES);
    3183         ElementVector* pe=new ElementVector(nodes,numnodes,this->parameters,MacAyealApproximationEnum);
     3183        ElementVector* pe=new ElementVector(nodes,numnodes,this->parameters,SSAApproximationEnum);
    31843184        Input* thickness_input=inputs->GetInput(ThicknessEnum); _assert_(thickness_input);
    31853185        Input* bed_input      =inputs->GetInput(BedEnum);       _assert_(bed_input);
    … …  
    32933293
    32943294        /*Initialize Element matrix, vectors and Gaussian points*/
    3295         ElementMatrix* Ke=CreateKMatrixDiagnosticMacAyeal(); //Initialize Jacobian with regular MacAyeal (first part of the Gateau derivative)
     3295        ElementMatrix* Ke=CreateKMatrixDiagnosticSSA(); //Initialize Jacobian with regular SSA (first part of the Gateau derivative)
    32963296        IssmDouble*    dbasis = xNew<IssmDouble>(2*numnodes);
    32973297
    … …  
    37303730        switch(control_type){
    37313731                case FrictionCoefficientEnum:
    3732                         GradjDragMacAyeal(gradient,control_index);
     3732                        GradjDragSSA(gradient,control_index);
    37333733                        break;
    37343734                case MaterialsRheologyBbarEnum:
    3735                         GradjBMacAyeal(gradient,control_index);
     3735                        GradjBSSA(gradient,control_index);
    37363736                        break;
    37373737                case MaterialsRheologyZbarEnum:
    3738                         GradjZMacAyeal(gradient,control_index);
     3738                        GradjZSSA(gradient,control_index);
    37393739                        break;
    37403740                case BalancethicknessThickeningRateEnum:
    … …  
    38683868}
    38693869/*}}}*/
    3870 /*FUNCTION Tria::GradjBMacAyeal{{{*/
    3871 void  Tria::GradjBMacAyeal(Vector<IssmDouble>* gradient,int control_index){
     3870/*FUNCTION Tria::GradjBSSA{{{*/
     3871void  Tria::GradjBSSA(Vector<IssmDouble>* gradient,int control_index){
    38723872
    38733873        /*Intermediaries*/
    … …  
    39253925}
    39263926/*}}}*/
    3927 /*FUNCTION Tria::GradjZMacAyeal{{{*/
    3928 void  Tria::GradjZMacAyeal(Vector<IssmDouble>* gradient,int control_index){
     3927/*FUNCTION Tria::GradjZSSA{{{*/
     3928void  Tria::GradjZSSA(Vector<IssmDouble>* gradient,int control_index){
    39293929
    39303930        /*Intermediaries*/
    … …  
    39823982}
    39833983/*}}}*/
    3984 /*FUNCTION Tria::GradjDragMacAyeal {{{*/
    3985 void  Tria::GradjDragMacAyeal(Vector<IssmDouble>* gradient,int control_index){
     3984/*FUNCTION Tria::GradjDragSSA {{{*/
     3985void  Tria::GradjDragSSA(Vector<IssmDouble>* gradient,int control_index){
    39863986
    39873987        int        i;
    … …  
    53855385}
    53865386/*}}}*/
    5387 /*FUNCTION Tria::CreateKMatrixAdjointMacAyeal{{{*/
    5388 ElementMatrix* Tria::CreateKMatrixAdjointMacAyeal(void){
     5387/*FUNCTION Tria::CreateKMatrixAdjointSSA{{{*/
     5388ElementMatrix* Tria::CreateKMatrixAdjointSSA(void){
    53895389
    53905390        /*Constants*/
    … …  
    54045404        GaussTria  *gauss=NULL;
    54055405
    5406         /*Initialize Jacobian with regular MacAyeal (first part of the Gateau derivative)*/
     5406        /*Initialize Jacobian with regular SSA (first part of the Gateau derivative)*/
    54075407        parameters->FindParam(&incomplete_adjoint,InversionIncompleteAdjointEnum);
    5408         ElementMatrix* Ke=CreateKMatrixDiagnosticMacAyeal();
     5408        ElementMatrix* Ke=CreateKMatrixDiagnosticSSA();
    54095409        if(incomplete_adjoint) return Ke;
    54105410
    … …  
    65196519                }
    65206520                else if(stabilization==1){
    6521                         /*MacAyeal*/
     6521                        /*SSA*/
    65226522                        vxaverage_input->GetInputAverage(&vx);
    65236523                        vyaverage_input->GetInputAverage(&vy);
    … …  
    69786978                }
    69796979                else if(stabilization==2){
    6980                         /*MacAyeal*/
     6980                        /*SSA*/
    69816981                        vxaverage_input->GetInputAverage(&vx);
    69826982                        vyaverage_input->GetInputAverage(&vy);
  • issm/trunk-jpl/src/c/classes/Elements/Tria.h

    r15564 r15567  
    144144                void   GradjBGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index);
    145145                void   GradjZGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index);
    146                 void   GradjBMacAyeal(Vector<IssmDouble>* gradient,int control_index);
    147                 void   GradjZMacAyeal(Vector<IssmDouble>* gradient,int control_index);
    148                 void   GradjDragMacAyeal(Vector<IssmDouble>* gradient,int control_index);
     146                void   GradjBSSA(Vector<IssmDouble>* gradient,int control_index);
     147                void   GradjZSSA(Vector<IssmDouble>* gradient,int control_index);
     148                void   GradjDragSSA(Vector<IssmDouble>* gradient,int control_index);
    149149                void   GradjDragFS(Vector<IssmDouble>* gradient,int control_index);
    150150                void   GradjDragGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index);
    … …  
    220220
    221221                #ifdef _HAVE_DIAGNOSTIC_
    222                 ElementMatrix* CreateKMatrixDiagnosticMacAyeal(void);
    223                 ElementMatrix* CreateKMatrixDiagnosticMacAyealViscous(void);
    224                 ElementMatrix* CreateKMatrixDiagnosticMacAyealFriction(void);
     222                ElementMatrix* CreateKMatrixDiagnosticSSA(void);
     223                ElementMatrix* CreateKMatrixDiagnosticSSAViscous(void);
     224                ElementMatrix* CreateKMatrixDiagnosticSSAFriction(void);
    225225                ElementMatrix* CreateKMatrixDiagnosticSIA(void);
    226                 ElementVector* CreatePVectorDiagnosticMacAyeal(void);
    227                 ElementVector* CreatePVectorDiagnosticMacAyealDrivingStress(void);
    228                 ElementVector* CreatePVectorDiagnosticMacAyealFront(void);
     226                ElementVector* CreatePVectorDiagnosticSSA(void);
     227                ElementVector* CreatePVectorDiagnosticSSADrivingStress(void);
     228                ElementVector* CreatePVectorDiagnosticSSAFront(void);
    229229                ElementVector* CreatePVectorDiagnosticSIA(void);
    230230                ElementMatrix* CreateJacobianDiagnosticSSA(void);
    … …  
    237237                #ifdef _HAVE_CONTROL_
    238238                ElementMatrix* CreateKMatrixAdjointBalancethickness(void);
    239                 ElementMatrix* CreateKMatrixAdjointMacAyeal(void);
     239                ElementMatrix* CreateKMatrixAdjointSSA(void);
    240240                ElementVector* CreatePVectorAdjointHoriz(void);
    241241                ElementVector* CreatePVectorAdjointFS(void);
  • issm/trunk-jpl/src/c/classes/Elements/TriaRef.cpp

    r15564 r15567  
    8080}
    8181/*}}}*/
    82 /*FUNCTION TriaRef::GetBMacAyeal {{{*/
    83 void TriaRef::GetBMacAyeal(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss){
     82/*FUNCTION TriaRef::GetBSSA {{{*/
     83void TriaRef::GetBSSA(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss){
    8484        /*Compute B  matrix. B=[B1 B2 B3] where Bi is of size 3*NDOF2.
    8585         * For node i, Bi can be expressed in the actual coordinate system
    … …  
    114114}
    115115/*}}}*/
    116 /*FUNCTION TriaRef::GetBMacAyealFS {{{*/
    117 void TriaRef::GetBMacAyealFS(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss){
     116/*FUNCTION TriaRef::GetBSSAFS {{{*/
     117void TriaRef::GetBSSAFS(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss){
    118118
    119119        /*Compute B  matrix. B=[B1 B2 B3] where Bi is of size 3*NDOF2.
    … …  
    230230}
    231231/*}}}*/
    232 /*FUNCTION TriaRef::GetBprimeMacAyeal {{{*/
    233 void TriaRef::GetBprimeMacAyeal(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss){
     232/*FUNCTION TriaRef::GetBprimeSSA {{{*/
     233void TriaRef::GetBprimeSSA(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss){
    234234
    235235        /*Compute B'  matrix. B'=[B1' B2' B3'] where Bi' is of size 3*NDOF2.
    … …  
    265265}
    266266/*}}}*/
    267 /*FUNCTION TriaRef::GetBprimeMacAyealFS {{{*/
    268 void TriaRef::GetBprimeMacAyealFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss){
     267/*FUNCTION TriaRef::GetBprimeSSAFS {{{*/
     268void TriaRef::GetBprimeSSAFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss){
    269269        /*Compute Bprime  matrix. Bprime=[Bprime1 Bprime2 Bprime3] where Bprimei is of size 3*NDOF2.
    270270         * For node i, Bprimei can be expressed in the actual coordinate system
    … …  
    331331}
    332332/*}}}*/
    333 /*FUNCTION TriaRef::GetBMacAyealFriction{{{*/
    334 void TriaRef::GetBMacAyealFriction(IssmDouble* B, IssmDouble* xyz_list,GaussTria* gauss){
     333/*FUNCTION TriaRef::GetBSSAFriction{{{*/
     334void TriaRef::GetBSSAFriction(IssmDouble* B, IssmDouble* xyz_list,GaussTria* gauss){
    335335        /*Compute B  matrix. B=[B1 B2 B3] where Bi is square and of size 2.
    336336         * For node i, Bi can be expressed in the actual coordinate system
  • issm/trunk-jpl/src/c/classes/Elements/TriaRef.h

    r15564 r15567  
    2323
    2424                /*Numerics*/
    25                 void GetBMacAyeal(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss);
    26                 void GetBMacAyealFS(IssmDouble* B , IssmDouble* xyz_list, GaussTria* gauss);
    27                 void GetBprimeMacAyeal(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss);
    28                 void GetBprimeMacAyealFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss);
     25                void GetBSSA(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss);
     26                void GetBSSAFS(IssmDouble* B , IssmDouble* xyz_list, GaussTria* gauss);
     27                void GetBprimeSSA(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss);
     28                void GetBprimeSSAFS(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss);
    2929                void GetBprimePrognostic(IssmDouble* Bprime, IssmDouble* xyz_list, GaussTria* gauss);
    3030                void GetBPrognostic(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss);
    3131                void GetBHydro(IssmDouble* B, IssmDouble* xyz_list, GaussTria* gauss);
    32                 void GetBMacAyealFriction(IssmDouble* L, IssmDouble* xyz_list,GaussTria* gauss);
     32                void GetBSSAFriction(IssmDouble* L, IssmDouble* xyz_list,GaussTria* gauss);
    3333                void GetJacobian(IssmDouble* J, IssmDouble* xyz_list,GaussTria* gauss);
    3434                void GetSegmentJacobianDeterminant(IssmDouble* Jdet, IssmDouble* xyz_list,GaussTria* gauss);
  • issm/trunk-jpl/src/c/classes/Inputs/TriaInput.cpp

    r15417 r15567  
    130130
    131131        /*Get B matrix: */
    132         GetBMacAyeal(&B[0],xyz_list,gauss);
     132        GetBSSA(&B[0],xyz_list,gauss);
    133133
    134134        /*Here, we are computing the strain rate of (vx,0)*/
    … …  
    156156
    157157        /*Get B matrix: */
    158         GetBMacAyeal(&B[0],xyz_list,gauss);
     158        GetBSSA(&B[0],xyz_list,gauss);
    159159
    160160        /*Here, we are computing the strain rate of (0,vy)*/
  • issm/trunk-jpl/src/c/classes/Loads/Icefront.cpp

    r15564 r15567  
    6565        icefront_mparid = iomodel->numberofelements+1;
    6666
    67         if (in_icefront_type==MacAyeal2dIceFrontEnum || in_icefront_type==MacAyeal3dIceFrontEnum){
     67        if (in_icefront_type==SSA2dIceFrontEnum || in_icefront_type==SSA3dIceFrontEnum){
    6868                numnodes    = 2;
    6969                numvertices = 2;
    … …  
    152152//      icefront_mparid=numberofelements+1; //matlab indexing
    153153//
    154         if (in_icefront_type==MacAyeal2dIceFrontEnum || in_icefront_type==MacAyeal3dIceFrontEnum){
     154        if (in_icefront_type==SSA2dIceFrontEnum || in_icefront_type==SSA3dIceFrontEnum){
    155155//              icefront_node_ids[0]=iomodel->nodecounter+reCast<int>(*(iomodel->Data(DiagnosticIcefrontEnum)+segment_width*i+0));
    156156//              icefront_node_ids[1]=iomodel->nodecounter+reCast<int>(*(iomodel->Data(DiagnosticIcefrontEnum)+segment_width*i+1));
    … …  
    375375
    376376        switch(type){
    377                 case MacAyeal2dIceFrontEnum:
    378                 case MacAyeal3dIceFrontEnum:
     377                case SSA2dIceFrontEnum:
     378                case SSA3dIceFrontEnum:
    379379                        for(int i=0;i<NUMVERTICESSEG;i++) sidlist[i]=nodes[i]->Sid();
    380380                        return;
    … …  
    397397
    398398        switch(type){
    399                 case MacAyeal2dIceFrontEnum:
     399                case SSA2dIceFrontEnum:
    400400                        return NUMVERTICESSEG;
    401401#ifdef _HAVE_3D_
    402                 case MacAyeal3dIceFrontEnum:
     402                case SSA3dIceFrontEnum:
    403403                        return NUMVERTICESSEG;
    404404                case HOIceFrontEnum:
    … …  
    559559
    560560        switch(type){
    561                 case MacAyeal2dIceFrontEnum:
    562                         return CreatePVectorDiagnosticMacAyeal2d();
     561                case SSA2dIceFrontEnum:
     562                        return CreatePVectorDiagnosticSSA2d();
    563563        #ifdef _HAVE_3D_
    564                 case MacAyeal3dIceFrontEnum:
    565                         return CreatePVectorDiagnosticMacAyeal3d();
     564                case SSA3dIceFrontEnum:
     565                        return CreatePVectorDiagnosticSSA3d();
    566566                case HOIceFrontEnum:
    567567                        return CreatePVectorDiagnosticHO();
    … …  
    574574}
    575575/*}}}*/
    576 /*FUNCTION Icefront::CreatePVectorDiagnosticMacAyeal2d{{{*/
    577 ElementVector* Icefront::CreatePVectorDiagnosticMacAyeal2d(void){
     576/*FUNCTION Icefront::CreatePVectorDiagnosticSSA2d{{{*/
     577ElementVector* Icefront::CreatePVectorDiagnosticSSA2d(void){
    578578
    579579        /*Intermediary*/
    … …  
    595595
    596596        /*Initialize Element vector and vectors*/
    597         ElementVector* pe=new ElementVector(tria->nodes,numnodes,this->parameters,MacAyealApproximationEnum);
     597        ElementVector* pe=new ElementVector(tria->nodes,numnodes,this->parameters,SSAApproximationEnum);
    598598        IssmDouble*    basis = xNew<IssmDouble>(numnodes);
    599599
    … …  
    669669#endif
    670670#ifdef _HAVE_3D_
    671 /*FUNCTION Icefront::CreatePVectorDiagnosticMacAyeal3d{{{*/
    672 ElementVector* Icefront::CreatePVectorDiagnosticMacAyeal3d(void){
     671/*FUNCTION Icefront::CreatePVectorDiagnosticSSA3d{{{*/
     672ElementVector* Icefront::CreatePVectorDiagnosticSSA3d(void){
    673673
    674674        Icefront *icefront = NULL;
    … …  
    682682        if(!penta->IsOnBed() || penta->IsOnWater()) return NULL;
    683683
    684         /*Spawn Tria and call MacAyeal2d*/
     684        /*Spawn Tria and call SSA2d*/
    685685        tria    =(Tria*)penta->SpawnTria(0,1,2);
    686686        icefront=(Icefront*)this->copy();
    687687        icefront->element=tria;
    688         icefront->inputs->AddInput(new IntInput(IceFrontTypeEnum,MacAyeal2dIceFrontEnum));
    689         ElementVector* pe=icefront->CreatePVectorDiagnosticMacAyeal2d();
     688        icefront->inputs->AddInput(new IntInput(IceFrontTypeEnum,SSA2dIceFrontEnum));
     689        ElementVector* pe=icefront->CreatePVectorDiagnosticSSA2d();
    690690
    691691        /*clean-up and return*/
    … …  
    870870
    871871        /*How many nodes? :*/
    872         if(type==MacAyeal2dIceFrontEnum || type==MacAyeal3dIceFrontEnum)
     872        if(type==SSA2dIceFrontEnum || type==SSA3dIceFrontEnum)
    873873         numberofnodes=2;
    874874        else
  • issm/trunk-jpl/src/c/classes/Loads/Icefront.h

    r15564 r15567  
    9393                #ifdef _HAVE_DIAGNOSTIC_
    9494                ElementVector* CreatePVectorDiagnosticHoriz(void);
    95                 ElementVector* CreatePVectorDiagnosticMacAyeal2d(void);
     95                ElementVector* CreatePVectorDiagnosticSSA2d(void);
    9696                #endif
    9797        #ifdef _HAVE_3D_
    98                 ElementVector* CreatePVectorDiagnosticMacAyeal3d(void);
     98                ElementVector* CreatePVectorDiagnosticSSA3d(void);
    9999                ElementVector* CreatePVectorDiagnosticHO(void);
    100100                ElementVector* CreatePVectorDiagnosticFS(void);
  • issm/trunk-jpl/src/c/classes/Loads/Penpair.cpp

    r15564 r15567  
    299299
    300300        switch(approximation0){
    301                 case MacAyealApproximationEnum:
     301                case SSAApproximationEnum:
    302302                        switch(approximation1){
    303                                 case MacAyealApproximationEnum: return PenaltyCreateKMatrixDiagnosticMacAyealHO(kmax);
    304                                 case HOApproximationEnum:   return PenaltyCreateKMatrixDiagnosticMacAyealHO(kmax);
     303                                case SSAApproximationEnum: return PenaltyCreateKMatrixDiagnosticSSAHO(kmax);
     304                                case HOApproximationEnum:   return PenaltyCreateKMatrixDiagnosticSSAHO(kmax);
    305305                                default: _error_("not supported yet");
    306306                        }
    307307                case HOApproximationEnum:
    308308                        switch(approximation1){
    309                                 case MacAyealApproximationEnum: return PenaltyCreateKMatrixDiagnosticMacAyealHO(kmax);
    310                                 case HOApproximationEnum:   return PenaltyCreateKMatrixDiagnosticMacAyealHO(kmax);
     309                                case SSAApproximationEnum: return PenaltyCreateKMatrixDiagnosticSSAHO(kmax);
     310                                case HOApproximationEnum:   return PenaltyCreateKMatrixDiagnosticSSAHO(kmax);
    311311                                default: _error_("not supported yet");
    312312                        }
    … …  
    327327}
    328328/*}}}*/
    329 /*FUNCTION Penpair::PenaltyCreateKMatrixDiagnosticMacAyealHO {{{*/
    330 ElementMatrix* Penpair::PenaltyCreateKMatrixDiagnosticMacAyealHO(IssmDouble kmax){
     329/*FUNCTION Penpair::PenaltyCreateKMatrixDiagnosticSSAHO {{{*/
     330ElementMatrix* Penpair::PenaltyCreateKMatrixDiagnosticSSAHO(IssmDouble kmax){
    331331
    332332        const int numdof=NUMVERTICES*NDOF2;
  • issm/trunk-jpl/src/c/classes/Loads/Penpair.h

    r15564 r15567  
    6868                        /*Penpair management: {{{*/
    6969                ElementMatrix* PenaltyCreateKMatrixDiagnosticHoriz(IssmDouble kmax);
    70                 ElementMatrix* PenaltyCreateKMatrixDiagnosticMacAyealHO(IssmDouble kmax);
     70                ElementMatrix* PenaltyCreateKMatrixDiagnosticSSAHO(IssmDouble kmax);
    7171                ElementMatrix* PenaltyCreateKMatrixDiagnosticFS(IssmDouble kmax);
    7272                ElementMatrix* PenaltyCreateKMatrixPrognostic(IssmDouble kmax);
  • issm/trunk-jpl/src/c/classes/Materials/Matdamageice.cpp

    r15564 r15567  
    282282void  Matdamageice::GetViscosity3d(IssmDouble* pviscosity3d, IssmDouble* epsilon){
    283283
    284         /*Return viscosity accounting for steady state power law creep [Thomas and MacAyeal, 1982]:
     284        /*Return viscosity accounting for steady state power law creep [Thomas and SSA, 1982]:
    285285         *
    286286         *                                               B
    … …  
    353353/*FUNCTION Matdamageice::GetViscosity3dFS {{{*/
    354354void  Matdamageice::GetViscosity3dFS(IssmDouble* pviscosity3d, IssmDouble* epsilon){
    355         /*Return viscosity accounting for steady state power law creep [Thomas and MacAyeal, 1982]:
     355        /*Return viscosity accounting for steady state power law creep [Thomas and SSA, 1982]:
    356356         *
    357357         *                                          B
    … …  
    426426/*FUNCTION Matdamageice::GetViscosityComplement {{{*/
    427427void  Matdamageice::GetViscosityComplement(IssmDouble* pviscosity_complement, IssmDouble* epsilon){
    428         /*Return viscosity accounting for steady state power law creep [Thomas and MacAyeal, 1982]:
     428        /*Return viscosity accounting for steady state power law creep [Thomas and SSA, 1982]:
    429429         *
    430430         *                                                                                              1
  • issm/trunk-jpl/src/c/classes/Materials/Matice.cpp

    r15564 r15567  
    274274void  Matice::GetViscosity3d(IssmDouble* pviscosity3d, IssmDouble* epsilon){
    275275
    276         /*Return viscosity accounting for steady state power law creep [Thomas and MacAyeal, 1982]:
     276        /*Return viscosity accounting for steady state power law creep [Thomas and SSA, 1982]:
    277277         *
    278278         *                                               B
    … …  
    344344/*FUNCTION Matice::GetViscosity3dFS {{{*/
    345345void  Matice::GetViscosity3dFS(IssmDouble* pviscosity3d, IssmDouble* epsilon){
    346         /*Return viscosity accounting for steady state power law creep [Thomas and MacAyeal, 1982]:
     346        /*Return viscosity accounting for steady state power law creep [Thomas and SSA, 1982]:
    347347         *
    348348         *                                          B
    … …  
    416416/*FUNCTION Matice::GetViscosityComplement {{{*/
    417417void  Matice::GetViscosityComplement(IssmDouble* pviscosity_complement, IssmDouble* epsilon){
    418         /*Return viscosity accounting for steady state power law creep [Thomas and MacAyeal, 1982]:
     418        /*Return viscosity accounting for steady state power law creep [Thomas and SSA, 1982]:
    419419         *
    420420         *                                                                                              1
  • issm/trunk-jpl/src/c/classes/Node.cpp

    r15564 r15567  
    7777                        _assert_(iomodel->Data(MeshVertexonbedEnum));
    7878                        _assert_(iomodel->Data(FlowequationVertexEquationEnum));
    79                         if(node_type==MacAyealApproximationEnum && !reCast<int>(iomodel->Data(MeshVertexonbedEnum)[io_index])){
     79                        if(node_type==SSAApproximationEnum && !reCast<int>(iomodel->Data(MeshVertexonbedEnum)[io_index])){
    8080                                this->Deactivate();
    8181                        }
    … …  
    8383                                this->Deactivate();
    8484                        }
    85                         if(node_type==MacAyealHOApproximationEnum && reCast<int>(iomodel->Data(FlowequationBorderSSAEnum)[io_index])){
     85                        if(node_type==SSAHOApproximationEnum && reCast<int>(iomodel->Data(FlowequationBorderSSAEnum)[io_index])){
    8686                                if(!reCast<int>(iomodel->Data(MeshVertexonbedEnum)[io_index])){
    8787                                        this->Deactivate();
    8888                                }
    8989                        }
    90                         if(node_type==MacAyealFSApproximationEnum && reCast<int>(iomodel->Data(FlowequationBorderSSAEnum)[io_index])){
     90                        if(node_type==SSAFSApproximationEnum && reCast<int>(iomodel->Data(FlowequationBorderSSAEnum)[io_index])){
    9191                                if(!reCast<int>(iomodel->Data(MeshVertexonbedEnum)[io_index])){
    9292                                        for(k=1;k<=2;k++) this->FreezeDof(k);
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateConstraintsDiagnosticHoriz.cpp

    r15564 r15567  
    100100
    101101                        /*Start with adding spcs of coupling: zero at the border SSA/HO for the appropriate dofs*/
    102                         if (reCast<int,IssmDouble>(vertices_type[i]==MacAyealHOApproximationEnum)){
     102                        if (reCast<int,IssmDouble>(vertices_type[i]==SSAHOApproximationEnum)){
    103103                                /*If grionSSA, spc HO dofs: 3 & 4*/
    104104                                        if (reCast<int,IssmDouble>(nodeonHO[i])){
    … …  
    132132
    133133                                        }
    134                                         else _error_("if vertices_type is MacAyealHO, you shoud have nodeonHO or nodeonSSA");
     134                                        else _error_("if vertices_type is SSAHO, you shoud have nodeonHO or nodeonSSA");
    135135                        }
    136136                        /*Also add spcs of coupling: zero at the border HO/FS for the appropriate dofs*/
    … …  
    175175                        }
    176176                        /*Also add spcs of coupling: zero at the border HO/FS for the appropriate dofs*/
    177                         else if (reCast<int,IssmDouble>(vertices_type[i])==MacAyealFSApproximationEnum){
     177                        else if (reCast<int,IssmDouble>(vertices_type[i])==SSAFSApproximationEnum){
    178178                                /*If grion,HO spc FS dofs: 3 4 & 5*/
    179179                                        if (reCast<int,IssmDouble>(nodeonSSA[i])){
    … …  
    212212                                                }
    213213                                        }
    214                                         else _error_("if vertices_type is MacAyealFS, you shoud have nodeonSSA or nodeonFS");
     214                                        else _error_("if vertices_type is SSAFS, you shoud have nodeonSSA or nodeonFS");
    215215                        }
    216216                        /*Now add the regular spcs*/
    … …  
    294294                        if (iomodel->dim==3) if(reCast<int,IssmDouble>(nodeonbed[i]) && reCast<int,IssmDouble>(nodeonicesheet[i]) && reCast<int,IssmDouble>(nodeonFS[i])){
    295295                                 switch(reCast<int,IssmDouble>(vertices_type[i])){
    296                                         case MacAyealFSApproximationEnum:
     296                                        case SSAFSApproximationEnum:
    297297                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,0.,DiagnosticHorizAnalysisEnum));
    298298                                                count++;
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/DistributeNumDofs.cpp

    r15564 r15567  
    1818                case DiagnosticHorizAnalysisEnum:
    1919                        switch(node_type){
    20                                 case MacAyealApproximationEnum:
     20                                case SSAApproximationEnum:
    2121                                        numdofs=2;
    2222                                        break;
    … …  
    3636                                        numdofs=4;
    3737                                        break;
    38                                 case MacAyealHOApproximationEnum:
     38                                case SSAHOApproximationEnum:
    3939                                        numdofs=4;
    4040                                        doftype=xNew<int>(numdofs);
    41                                         doftype[0]=MacAyealApproximationEnum;
    42                                         doftype[1]=MacAyealApproximationEnum;
     41                                        doftype[0]=SSAApproximationEnum;
     42                                        doftype[1]=SSAApproximationEnum;
    4343                                        doftype[2]=HOApproximationEnum;
    4444                                        doftype[3]=HOApproximationEnum;
    … …  
    5454                                        doftype[5]=FSApproximationEnum;
    5555                                        break;
    56                                 case MacAyealFSApproximationEnum:
     56                                case SSAFSApproximationEnum:
    5757                                        numdofs=6;
    5858                                        doftype=xNew<int>(numdofs);
    59                                         doftype[0]=MacAyealApproximationEnum;
    60                                         doftype[1]=MacAyealApproximationEnum;
     59                                        doftype[0]=SSAApproximationEnum;
     60                                        doftype[1]=SSAApproximationEnum;
    6161                                        doftype[2]=FSApproximationEnum;
    6262                                        doftype[3]=FSApproximationEnum;
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r15564 r15567  
    311311        NoneApproximationEnum,
    312312        SIAApproximationEnum,
    313         MacAyealApproximationEnum,
    314         MacAyealHOApproximationEnum,
    315         MacAyealFSApproximationEnum,
     313        SSAApproximationEnum,
     314        SSAHOApproximationEnum,
     315        SSAFSApproximationEnum,
    316316        L1L2ApproximationEnum,
    317317        HOApproximationEnum,
    … …  
    356356        TransientParamEnum,
    357357        IceFrontTypeEnum,
    358         MacAyeal2dIceFrontEnum,
    359         MacAyeal3dIceFrontEnum,
     358        SSA2dIceFrontEnum,
     359        SSA3dIceFrontEnum,
    360360        MaticeEnum,
    361361        MatdamageiceEnum,
    … …  
    460460        VyPicardEnum,
    461461        VzEnum,
    462         VzMacAyealEnum,
     462        VzSSAEnum,
    463463        VzHOEnum,
    464464        VzPicardEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r15564 r15567  
    315315                case NoneApproximationEnum : return "NoneApproximation";
    316316                case SIAApproximationEnum : return "SIAApproximation";
    317                 case MacAyealApproximationEnum : return "MacAyealApproximation";
    318                 case MacAyealHOApproximationEnum : return "MacAyealHOApproximation";
    319                 case MacAyealFSApproximationEnum : return "MacAyealFSApproximation";
     317                case SSAApproximationEnum : return "SSAApproximation";
     318                case SSAHOApproximationEnum : return "SSAHOApproximation";
     319                case SSAFSApproximationEnum : return "SSAFSApproximation";
    320320                case L1L2ApproximationEnum : return "L1L2Approximation";
    321321                case HOApproximationEnum : return "HOApproximation";
    … …  
    356356                case TransientParamEnum : return "TransientParam";
    357357                case IceFrontTypeEnum : return "IceFrontType";
    358                 case MacAyeal2dIceFrontEnum : return "MacAyeal2dIceFront";
    359                 case MacAyeal3dIceFrontEnum : return "MacAyeal3dIceFront";
     358                case SSA2dIceFrontEnum : return "SSA2dIceFront";
     359                case SSA3dIceFrontEnum : return "SSA3dIceFront";
    360360                case MaticeEnum : return "Matice";
    361361                case MatdamageiceEnum : return "Matdamageice";
    … …  
    454454                case VyPicardEnum : return "VyPicard";
    455455                case VzEnum : return "Vz";
    456                 case VzMacAyealEnum : return "VzMacAyeal";
     456                case VzSSAEnum : return "VzSSA";
    457457                case VzHOEnum : return "VzHO";
    458458                case VzPicardEnum : return "VzPicard";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r15564 r15567  
    321321              else if (strcmp(name,"NoneApproximation")==0) return NoneApproximationEnum;
    322322              else if (strcmp(name,"SIAApproximation")==0) return SIAApproximationEnum;
    323               else if (strcmp(name,"MacAyealApproximation")==0) return MacAyealApproximationEnum;
    324               else if (strcmp(name,"MacAyealHOApproximation")==0) return MacAyealHOApproximationEnum;
    325               else if (strcmp(name,"MacAyealFSApproximation")==0) return MacAyealFSApproximationEnum;
     323              else if (strcmp(name,"SSAApproximation")==0) return SSAApproximationEnum;
     324              else if (strcmp(name,"SSAHOApproximation")==0) return SSAHOApproximationEnum;
     325              else if (strcmp(name,"SSAFSApproximation")==0) return SSAFSApproximationEnum;
    326326              else if (strcmp(name,"L1L2Approximation")==0) return L1L2ApproximationEnum;
    327327              else if (strcmp(name,"HOApproximation")==0) return HOApproximationEnum;
    … …  
    362362              else if (strcmp(name,"TransientParam")==0) return TransientParamEnum;
    363363              else if (strcmp(name,"IceFrontType")==0) return IceFrontTypeEnum;
    364               else if (strcmp(name,"MacAyeal2dIceFront")==0) return MacAyeal2dIceFrontEnum;
    365               else if (strcmp(name,"MacAyeal3dIceFront")==0) return MacAyeal3dIceFrontEnum;
     364              else if (strcmp(name,"SSA2dIceFront")==0) return SSA2dIceFrontEnum;
     365              else if (strcmp(name,"SSA3dIceFront")==0) return SSA3dIceFrontEnum;
    366366              else if (strcmp(name,"Matice")==0) return MaticeEnum;
    367367              else if (strcmp(name,"Matdamageice")==0) return MatdamageiceEnum;
    … …  
    463463              else if (strcmp(name,"VyPicard")==0) return VyPicardEnum;
    464464              else if (strcmp(name,"Vz")==0) return VzEnum;
    465               else if (strcmp(name,"VzMacAyeal")==0) return VzMacAyealEnum;
     465              else if (strcmp(name,"VzSSA")==0) return VzSSAEnum;
    466466              else if (strcmp(name,"VzHO")==0) return VzHOEnum;
    467467              else if (strcmp(name,"VzPicard")==0) return VzPicardEnum;
  • issm/trunk-jpl/src/m/classes/balancethickness.m

    r15132 r15567  
    3838                        fielddisplay(obj,'spcthickness','thickness constraints (NaN means no constraint) [m]');
    3939                        fielddisplay(obj,'thickening_rate','ice thickening rate used in the mass conservation (dh/dt) [m/yr]');
    40                         fielddisplay(obj,'stabilization','0: None, 1: SU, 2: MacAyeal''s artificial diffusivity, 3:DG');
     40                        fielddisplay(obj,'stabilization','0: None, 1: SU, 2: SSA''s artificial diffusivity, 3:DG');
    4141
    4242                end % }}}
  • issm/trunk-jpl/src/m/classes/balancethickness.py

    r15132 r15567  
    2727                string="%s\n%s"%(string,fielddisplay(self,'spcthickness','thickness constraints (NaN means no constraint) [m]'))
    2828                string="%s\n%s"%(string,fielddisplay(self,'thickening_rate','ice thickening rate used in the mass conservation (dh/dt) [m/yr]'))
    29                 string="%s\n%s"%(string,fielddisplay(self,'stabilization',"0: None, 1: SU, 2: MacAyeal's artificial diffusivity, 3:DG"))
     29                string="%s\n%s"%(string,fielddisplay(self,'stabilization',"0: None, 1: SU, 2: SSA's artificial diffusivity, 3:DG"))
    3030                return string
    3131                #}}}
  • issm/trunk-jpl/src/m/classes/flowequation.m

    r15564 r15567  
    132132                        pos=find(data==0); data(pos,end)=NoneApproximationEnum();
    133133                        pos=find(data==1); data(pos,end)=SIAApproximationEnum();
    134                         pos=find(data==2); data(pos,end)=MacAyealApproximationEnum();
     134                        pos=find(data==2); data(pos,end)=SSAApproximationEnum();
    135135                        pos=find(data==3); data(pos,end)=HOApproximationEnum();
    136136                        pos=find(data==4); data(pos,end)=FSApproximationEnum();
    137                         pos=find(data==5); data(pos,end)=MacAyealHOApproximationEnum();
    138                         pos=find(data==6); data(pos,end)=MacAyealFSApproximationEnum();
     137                        pos=find(data==5); data(pos,end)=SSAHOApproximationEnum();
     138                        pos=find(data==6); data(pos,end)=SSAFSApproximationEnum();
    139139                        pos=find(data==7); data(pos,end)=HOFSApproximationEnum();
    140140                        pos=find(data==8); data(pos,end)=L1L2ApproximationEnum();
    … …  
    143143                        pos=find(data==0); data(pos,end)=NoneApproximationEnum();
    144144                        pos=find(data==1); data(pos,end)=SIAApproximationEnum();
    145                         pos=find(data==2); data(pos,end)=MacAyealApproximationEnum();
     145                        pos=find(data==2); data(pos,end)=SSAApproximationEnum();
    146146                        pos=find(data==3); data(pos,end)=HOApproximationEnum();
    147147                        pos=find(data==4); data(pos,end)=FSApproximationEnum();
    148                         pos=find(data==5); data(pos,end)=MacAyealHOApproximationEnum();
    149                         pos=find(data==6); data(pos,end)=MacAyealFSApproximationEnum();
     148                        pos=find(data==5); data(pos,end)=SSAHOApproximationEnum();
     149                        pos=find(data==6); data(pos,end)=SSAFSApproximationEnum();
    150150                        pos=find(data==7); data(pos,end)=HOFSApproximationEnum();
    151151                        pos=find(data==8); data(pos,end)=L1L2ApproximationEnum();
  • issm/trunk-jpl/src/m/classes/flowequation.py

    r15564 r15567  
    9494                data[numpy.nonzero(data==0)]=NoneApproximationEnum()
    9595                data[numpy.nonzero(data==1)]=SIAApproximationEnum()
    96                 data[numpy.nonzero(data==2)]=MacAyealApproximationEnum()
     96                data[numpy.nonzero(data==2)]=SSAApproximationEnum()
    9797                data[numpy.nonzero(data==3)]=HOApproximationEnum()
    9898                data[numpy.nonzero(data==4)]=FSApproximationEnum()
    99                 data[numpy.nonzero(data==5)]=MacAyealHOApproximationEnum()
    100                 data[numpy.nonzero(data==6)]=MacAyealFSApproximationEnum()
     99                data[numpy.nonzero(data==5)]=SSAHOApproximationEnum()
     100                data[numpy.nonzero(data==6)]=SSAFSApproximationEnum()
    101101                data[numpy.nonzero(data==7)]=HOFSApproximationEnum()
    102102                data[numpy.nonzero(data==8)]=L1L2ApproximationEnum()
    … …  
    105105                data[numpy.nonzero(data==0)]=NoneApproximationEnum()
    106106                data[numpy.nonzero(data==1)]=SIAApproximationEnum()
    107                 data[numpy.nonzero(data==2)]=MacAyealApproximationEnum()
     107                data[numpy.nonzero(data==2)]=SSAApproximationEnum()
    108108                data[numpy.nonzero(data==3)]=HOApproximationEnum()
    109109                data[numpy.nonzero(data==4)]=FSApproximationEnum()
    110                 data[numpy.nonzero(data==5)]=MacAyealHOApproximationEnum()
    111                 data[numpy.nonzero(data==6)]=MacAyealFSApproximationEnum()
     110                data[numpy.nonzero(data==5)]=SSAHOApproximationEnum()
     111                data[numpy.nonzero(data==6)]=SSAFSApproximationEnum()
    112112                data[numpy.nonzero(data==7)]=HOFSApproximationEnum()
    113113                data[numpy.nonzero(data==8)]=L1L2ApproximationEnum()
  • issm/trunk-jpl/src/m/enum/EnumDefinitions.py

    r15564 r15567  
    41814181        return StringToEnum('SIAApproximation')[0]
    41824182
    4183 def MacAyealApproximationEnum():
    4184         """
    4185         MACAYEALAPPROXIMATIONENUM - Enum of MacAyealApproximation
    4186 
    4187         WARNING: DO NOT MODIFY THIS FILE
    4188                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    4189                                 Please read src/c/shared/Enum/README for more information
    4190 
    4191            Usage:
    4192               macro=MacAyealApproximationEnum()
    4193         """
    4194 
    4195         return StringToEnum('MacAyealApproximation')[0]
    4196 
    4197 def MacAyealHOApproximationEnum():
    4198         """
    4199         MACAYEALHOAPPROXIMATIONENUM - Enum of MacAyealHOApproximation
    4200 
    4201         WARNING: DO NOT MODIFY THIS FILE
    4202                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    4203                                 Please read src/c/shared/Enum/README for more information
    4204 
    4205            Usage:
    4206               macro=MacAyealHOApproximationEnum()
    4207         """
    4208 
    4209         return StringToEnum('MacAyealHOApproximation')[0]
    4210 
    4211 def MacAyealFSApproximationEnum():
    4212         """
    4213         MACAYEALFSAPPROXIMATIONENUM - Enum of MacAyealFSApproximation
    4214 
    4215         WARNING: DO NOT MODIFY THIS FILE
    4216                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    4217                                 Please read src/c/shared/Enum/README for more information
    4218 
    4219            Usage:
    4220               macro=MacAyealFSApproximationEnum()
    4221         """
    4222 
    4223         return StringToEnum('MacAyealFSApproximation')[0]
     4183def SSAApproximationEnum():
     4184        """
     4185        SSAAPPROXIMATIONENUM - Enum of SSAApproximation
     4186
     4187        WARNING: DO NOT MODIFY THIS FILE
     4188                                this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
     4189                                Please read src/c/shared/Enum/README for more information
     4190
     4191           Usage:
     4192              macro=SSAApproximationEnum()
     4193        """
     4194
     4195        return StringToEnum('SSAApproximation')[0]
     4196
     4197def SSAHOApproximationEnum():
     4198        """
     4199        SSAHOAPPROXIMATIONENUM - Enum of SSAHOApproximation
     4200
     4201        WARNING: DO NOT MODIFY THIS FILE
     4202                                this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
     4203                                Please read src/c/shared/Enum/README for more information
     4204
     4205           Usage:
     4206              macro=SSAHOApproximationEnum()
     4207        """
     4208
     4209        return StringToEnum('SSAHOApproximation')[0]
     4210
     4211def SSAFSApproximationEnum():
     4212        """
     4213        SSAFSAPPROXIMATIONENUM - Enum of SSAFSApproximation
     4214
     4215        WARNING: DO NOT MODIFY THIS FILE
     4216                                this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
     4217                                Please read src/c/shared/Enum/README for more information
     4218
     4219           Usage:
     4220              macro=SSAFSApproximationEnum()
     4221        """
     4222
     4223        return StringToEnum('SSAFSApproximation')[0]
    42244224
    42254225def L1L2ApproximationEnum():
    … …  
    47554755        return StringToEnum('IceFrontType')[0]
    47564756
    4757 def MacAyeal2dIceFrontEnum():
    4758         """
    4759         MACAYEAL2DICEFRONTENUM - Enum of MacAyeal2dIceFront
    4760 
    4761         WARNING: DO NOT MODIFY THIS FILE
    4762                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    4763                                 Please read src/c/shared/Enum/README for more information
    4764 
    4765            Usage:
    4766               macro=MacAyeal2dIceFrontEnum()
    4767         """
    4768 
    4769         return StringToEnum('MacAyeal2dIceFront')[0]
    4770 
    4771 def MacAyeal3dIceFrontEnum():
    4772         """
    4773         MACAYEAL3DICEFRONTENUM - Enum of MacAyeal3dIceFront
    4774 
    4775         WARNING: DO NOT MODIFY THIS FILE
    4776                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    4777                                 Please read src/c/shared/Enum/README for more information
    4778 
    4779            Usage:
    4780               macro=MacAyeal3dIceFrontEnum()
    4781         """
    4782 
    4783         return StringToEnum('MacAyeal3dIceFront')[0]
     4757def SSA2dIceFrontEnum():
     4758        """
     4759        SSA2DICEFRONTENUM - Enum of SSA2dIceFront
     4760
     4761        WARNING: DO NOT MODIFY THIS FILE
     4762                                this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
     4763                                Please read src/c/shared/Enum/README for more information
     4764
     4765           Usage:
     4766              macro=SSA2dIceFrontEnum()
     4767        """
     4768
     4769        return StringToEnum('SSA2dIceFront')[0]
     4770
     4771def SSA3dIceFrontEnum():
     4772        """
     4773        SSA3DICEFRONTENUM - Enum of SSA3dIceFront
     4774
     4775        WARNING: DO NOT MODIFY THIS FILE
     4776                                this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
     4777                                Please read src/c/shared/Enum/README for more information
     4778
     4779           Usage:
     4780              macro=SSA3dIceFrontEnum()
     4781        """
     4782
     4783        return StringToEnum('SSA3dIceFront')[0]
    47844784
    47854785def MaticeEnum():
    … …  
    61276127        return StringToEnum('Vz')[0]
    61286128
    6129 def VzMacAyealEnum():
    6130         """
    6131         VZMACAYEALENUM - Enum of VzMacAyeal
    6132 
    6133         WARNING: DO NOT MODIFY THIS FILE
    6134                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    6135                                 Please read src/c/shared/Enum/README for more information
    6136 
    6137            Usage:
    6138               macro=VzMacAyealEnum()
    6139         """
    6140 
    6141         return StringToEnum('VzMacAyeal')[0]
     6129def VzSSAEnum():
     6130        """
     6131        VZSSAENUM - Enum of VzSSA
     6132
     6133        WARNING: DO NOT MODIFY THIS FILE
     6134                                this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
     6135                                Please read src/c/shared/Enum/README for more information
     6136
     6137           Usage:
     6138              macro=VzSSAEnum()
     6139        """
     6140
     6141        return StringToEnum('VzSSA')[0]
    61426142
    61436143def VzHOEnum():
  • issm/trunk-jpl/src/m/mech/mechanicalproperties.m

    r15564 r15567  
    2121end
    2222if any(md.flowequation.element_equation~=2),
    23         disp('Warning: the model has some non SSA elements. These will be treated like MacAyeal''s elements');
     23        disp('Warning: the model has some non SSA elements. These will be treated like SSA''s elements');
    2424end
    2525
  • issm/trunk-jpl/src/m/mech/strainrateuncert.m

    r15564 r15567  
    3636end
    3737if any(md.flowequation.element_equation~=2),
    38         disp('Warning: the model has some non SSA elements. These will be treated like MacAyeal''s elements');
     38        disp('Warning: the model has some non SSA elements. These will be treated like SSA''s elements');
    3939end
    4040
  • issm/trunk-jpl/src/m/miscellaneous/issmdoc.m

    r15564 r15567  
    1111disp(sprintf('%-63s %s','       md=setmask(md,''all'','''');','%defines the glacier system as an ice shelf (no island)'));
    1212disp(sprintf('%-63s %s','       md=parameterize(md,''Square.par'');','%fills all the other fields of the model'));
    13 disp(sprintf('%-63s %s','       md=setflowequation(md,''SSA'',''all'');','%defines all elements as MacAyeal''s SSA'));
     13disp(sprintf('%-63s %s','       md=setflowequation(md,''SSA'',''all'');','%defines all elements as SSA''s SSA'));
    1414disp(sprintf('%-63s %s','       md=solve(md,DiagnosticSolutionEnum());','%solve for stress balance'));
    1515disp(sprintf('%-63s %s','       plotmodel(md,''data'',md.results.DiagnosticSolution.Vel);','%displays the velocity (type plotdoc for plotmodel help)'));
  • issm/trunk-jpl/src/m/parameterization/setflowequation.m

    r15564 r15567  
    116116end
    117117
    118 %Now take care of the coupling between MacAyeal and HO
     118%Now take care of the coupling between SSA and HO
    119119md.diagnostic.vertex_pairing=[];
    120120nodeonSSAHO=zeros(md.mesh.numberofvertices,1);
    … …  
    125125HOFSflag=zeros(md.mesh.numberofelements,1);
    126126if strcmpi(coupling_method,'penalties'),
    127         %Create the border nodes between HO and MacAyeal and extrude them
     127        %Create the border nodes between HO and SSA and extrude them
    128128        numnodes2d=md.mesh.numberofvertices2d;
    129129        numlayers=md.mesh.numberoflayers;
    … …  
    142142                %Find node at the border
    143143                nodeonSSAHO(find(nodeonSSA & nodeonHO))=1;
    144                 %SSA elements in contact with this layer become MacAyealHO elements
     144                %SSA elements in contact with this layer become SSAHO elements
    145145                matrixelements=ismember(md.mesh.elements,find(nodeonSSAHO));
    146146                commonelements=sum(matrixelements,2)~=0;
    … …  
    206206                %Find node at the border
    207207                nodeonSSAFS(find(nodeonSSA & nodeonFS))=1;
    208                 %FS elements in contact with this layer become MacAyealFS elements
     208                %FS elements in contact with this layer become SSAFS elements
    209209                matrixelements=ismember(md.mesh.elements,find(nodeonSSAFS));
    210210                commonelements=sum(matrixelements,2)~=0;
  • issm/trunk-jpl/src/m/parameterization/setflowequation.py

    r15564 r15567  
    112112                        noneflag[numpy.nonzero(numpy.logical_not(FSflag))]=True
    113113
    114         #Now take care of the coupling between MacAyeal and HO
     114        #Now take care of the coupling between SSA and HO
    115115        md.diagnostic.vertex_pairing=numpy.array([])
    116116        nodeonSSAHO=numpy.zeros(md.mesh.numberofvertices,bool)
    … …  
    121121        HOFSflag=numpy.zeros(md.mesh.numberofelements,bool)
    122122        if   strcmpi(coupling_method,'penalties'):
    123                 #Create the border nodes between HO and MacAyeal and extrude them
     123                #Create the border nodes between HO and SSA and extrude them
    124124                numnodes2d=md.mesh.numberofvertices2d
    125125                numlayers=md.mesh.numberoflayers
    … …  
    137137                        #Find node at the border
    138138                        nodeonSSAHO[numpy.nonzero(numpy.logical_and(nodeonSSA,nodeonHO))]=True
    139                         #SSA elements in contact with this layer become MacAyealHO elements
     139                        #SSA elements in contact with this layer become SSAHO elements
    140140                        matrixelements=ismember(md.mesh.elements-1,numpy.nonzero(nodeonSSAHO)[0])
    141141                        commonelements=numpy.sum(matrixelements,axis=1)!=0
    … …  
    201201                        #Find node at the border
    202202                        nodeonSSAFS[numpy.nonzero(numpy.logical_and(nodeonSSA,nodeonFS))]=True
    203                         #FS elements in contact with this layer become MacAyealFS elements
     203                        #FS elements in contact with this layer become SSAFS elements
    204204                        matrixelements=ismember(md.mesh.elements-1,numpy.nonzero(nodeonSSAFS)[0])
    205205                        commonelements=numpy.sum(matrixelements,axis=1)!=0
    … …  
    233233                        raise TypeError("type of coupling not supported yet")
    234234
    235         #Create MacAyealHOApproximation where needed
     235        #Create SSAHOApproximation where needed
    236236        md.flowequation.element_equation=numpy.zeros(md.mesh.numberofelements,int)
    237237        md.flowequation.element_equation[numpy.nonzero(noneflag)]=0
  • issm/trunk-jpl/src/m/plot/plot_elementstype.m

    r15564 r15567  
    2222        A=elements(posH,1); B=elements(posH,2); C=elements(posH,3);
    2323        p1=patch( 'Faces', [A B C], 'Vertices', [x y z],'CData',1,'FaceColor','flat','EdgeColor',edgecolor);
    24         %MacAyeal element
     24        %SSA element
    2525        posM=find(data==2);
    2626        A=elements(posM,1); B=elements(posM,2); C=elements(posM,3);
    … …  
    3030        A=elements(posP,1); B=elements(posP,2); C=elements(posP,3);
    3131        p3=patch( 'Faces', [A B C], 'Vertices', [x y z],'CData',3,'FaceColor','flat','EdgeColor',edgecolor);
    32         %MacAyealHO element
     32        %SSAHO element
    3333        posMP=find(data==5);
    3434        A=elements(posMP,1); B=elements(posMP,2); C=elements(posMP,3);
    … …  
    3838        A=elements(posS,1); B=elements(posS,2); C=elements(posS,3);
    3939        p6=patch( 'Faces', [A B C], 'Vertices', [x y z],'CData',4,'FaceColor','flat','EdgeColor',edgecolor);
    40         %MacAyealFS elements
     40        %SSAFS elements
    4141        posMS=find(data==6);
    4242        A=elements(posMS,1); B=elements(posMS,2); C=elements(posMS,3);
    … …  
    5252
    5353        legend([p1 p2 p3 p5 p6 p7 p8 p9],...
    54                 'SIA''s elements','MacAyeal''s elements','HO''s elements',...
    55                 'MacAyealHO''s elements','FS''s elements','MacAyealFS''s elements','HOFS''s elements','None element');
     54                'SIA''s elements','SSA''s elements','HO''s elements',...
     55                'SSAHO''s elements','FS''s elements','SSAFS''s elements','HOFS''s elements','None element');
    5656
    5757else
    … …  
    6464        patch( 'Faces', [B E F C],'Vertices', [x y z],'CData', 1,'FaceColor','flat','EdgeColor',edgecolor);
    6565        patch( 'Faces', [C A D F],'Vertices', [x y z],'CData', 1,'FaceColor','flat','EdgeColor',edgecolor);
    66         %MacAyeal elements
     66        %SSA elements
    6767        posM=find(data==2);
    6868        A=elements(posM,1); B=elements(posM,2); C=elements(posM,3); D=elements(posM,4); E=elements(posM,5); F=elements(posM,6);
    … …  
    8888        patch( 'Faces', [B E F C],'Vertices', [x y z],'CData', 4,'FaceColor','flat','EdgeColor',edgecolor);
    8989        patch( 'Faces', [C A D F],'Vertices', [x y z],'CData', 4,'FaceColor','flat','EdgeColor',edgecolor);
    90         %MacAyealHO elements
     90        %SSAHO elements
    9191        posP=find(data==5);
    9292        A=elements(posP,1); B=elements(posP,2); C=elements(posP,3); D=elements(posP,4); E=elements(posP,5); F=elements(posP,6);
    … …  
    104104        patch( 'Faces', [B E F C],'Vertices', [x y z],'CData', 7,'FaceColor','flat','EdgeColor',edgecolor);
    105105        patch( 'Faces', [C A D F],'Vertices', [x y z],'CData', 7,'FaceColor','flat','EdgeColor',edgecolor);
    106         %MacAyealFS elements
     106        %SSAFS elements
    107107        PosMS=find(data==6);
    108108        A=elements(PosMS,1); B=elements(PosMS,2); C=elements(PosMS,3); D=elements(PosMS,4); E=elements(PosMS,5); F=elements(PosMS,6);
    … …  
    122122
    123123        legend([p1 p2 p3 p4 p5 p6 p7 p8],...
    124                 'SIA''s elements','MacAyeal''s elements','HO''s elements','FS''s elements',...
    125                 'MacAyealHO''s elements','HOFS''s elements','MacAyealFS''s elements','None elements');
     124                'SIA''s elements','SSA''s elements','HO''s elements','FS''s elements',...
     125                'SSAHO''s elements','HOFS''s elements','SSAFS''s elements','None elements');
    126126end
    127127
  • issm/trunk-jpl/src/m/plot/plot_penalties.m

    r15564 r15567  
    4040                P2=plot3(x(md.penalties(i,:)),y(md.penalties(i,:)),z(md.penalties(i,:)),'bo-','LineWidth',2,'MarkerSize',8,'MarkerFaceColor','b');
    4141        end
    42         legend([P1 P2],'MacAyeal''s penalized nodes','HO''s penalized nodes');
     42        legend([P1 P2],'SSA''s penalized nodes','HO''s penalized nodes');
    4343end
    4444
Note: See TracChangeset for help on using the changeset viewer.