Changeset 15657


Ignore:
Timestamp:
07/31/13 16:42:02 (12 years ago)
Author:
Mathieu Morlighem
Message:

BUG: fixing pressure spc for TaylorHood

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

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r15656 r15657  
    33333333                        penta_node_ids[19]=iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofedges+iomodel->elements[6*index+4];
    33343334                        penta_node_ids[20]=iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofedges+iomodel->elements[6*index+5];
    3335                         printarray(penta_node_ids,1,21);
    33363335                        break;
    33373336                default:
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateNodes.cpp

    r15656 r15657  
    169169                        for(i=0;i<iomodel->numberofvertices;i++){
    170170                                if(iomodel->my_vertices[i]){
     171                                        if(IssmComm::GetRank()==0) printf("Creating node id %i\n",iomodel->nodecounter+i+1);
    171172                                        nodes->AddObject(new Node(iomodel->nodecounter+i+1,i,i,iomodel,analysis,FSvelocityEnum));
    172173                                }
     
    174175                        for(i=0;i<iomodel->numberofedges;i++){
    175176                                if(my_edges[i]){
     177                                        if(IssmComm::GetRank()==0) printf("Creating node id %i\n",iomodel->nodecounter+iomodel->numberofvertices+i+1);
    176178                                        nodes->AddObject(new Node(iomodel->nodecounter+iomodel->numberofvertices+i+1,iomodel->numberofvertices+i,0,iomodel,analysis,FSvelocityEnum));
    177179                                }
     
    181183                        for(i=0;i<iomodel->numberofvertices;i++){
    182184                                if(iomodel->my_vertices[i]){
     185                                        if(IssmComm::GetRank()==0) printf("Creating node id %i\n",iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofedges+i+1);
    183186                                        nodes->AddObject(new Node(iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofedges+i+1,iomodel->numberofvertices+iomodel->numberofedges+i,i,iomodel,analysis,FSpressureEnum));
    184187                                }
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateConstraintsDiagnosticHoriz.cpp

    r15656 r15657  
    139139                        iomodel->FetchData(&surface,NULL,NULL,SurfaceEnum);
    140140                        iomodel->FetchData(&z,NULL,NULL,MeshZEnum);
    141                         for(i=0;i<iomodel->numberofvertices;i++){
    142                                 if(iomodel->my_vertices[i]){
    143                                         if (reCast<int,IssmDouble>(vertices_type[i])==NoneApproximationEnum){
    144                                                 constraints->AddObject(new SpcStatic(count+1,iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofelements+i+1,1,g*rho_ice*(surface[i]-z[i])/FSreconditioning,DiagnosticHorizAnalysisEnum));
    145                                                 count++;
    146                                         }
    147                                 }
     141                        switch(finiteelement){
     142                                case P1bubbleEnum:
     143                                        for(i=0;i<iomodel->numberofvertices;i++){
     144                                                if(iomodel->my_vertices[i]){
     145                                                        if (reCast<int,IssmDouble>(vertices_type[i])==NoneApproximationEnum){
     146                                                                constraints->AddObject(new SpcStatic(count+1,iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofelements+i+1,1,g*rho_ice*(surface[i]-z[i])/FSreconditioning,DiagnosticHorizAnalysisEnum));
     147                                                                count++;
     148                                                        }
     149                                                }
     150                                        }
     151                                        break;
     152                                case P2Enum:
     153                                        for(i=0;i<iomodel->numberofvertices;i++){
     154                                                if(iomodel->my_vertices[i]){
     155                                                        if (reCast<int,IssmDouble>(vertices_type[i])==NoneApproximationEnum){
     156                                                                constraints->AddObject(new SpcStatic(count+1,iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofedges+i+1,1,g*rho_ice*(surface[i]-z[i])/FSreconditioning,DiagnosticHorizAnalysisEnum));
     157                                                                count++;
     158                                                        }
     159                                                }
     160                                        }
     161                                        break;
     162                                default:
     163                                        _error_("not implemented yet");
    148164                        }
    149165                        iomodel->DeleteData(vertices_type,FlowequationVertexEquationEnum);
Note: See TracChangeset for help on using the changeset viewer.