source: issm/oecreview/Archive/15392-16133/ISSM-15656-15657.diff@ 16134

Last change on this file since 16134 was 16134, checked in by Mathieu Morlighem, 12 years ago

Added Archive/15392-16133

File size: 4.2 KB
  • TabularUnified ../trunk-jpl/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateConstraintsDiagnosticHoriz.cpp

     
    138138                        iomodel->FetchData(&vertices_type,NULL,NULL,FlowequationVertexEquationEnum);
    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++;
     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                                                }
    146150                                        }
    147                                 }
     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);
    150166                        iomodel->DeleteData(surface,SurfaceEnum);
  • TabularUnified ../trunk-jpl/src/c/modules/ModelProcessorx/CreateNodes.cpp

     
    168168                        EdgesPartitioning(&my_edges,iomodel);
    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                                }
    173174                        }
    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                                }
    178180                        }
     
    180182                        /*P1 pressure*/
    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                                }
    185188                        }
  • TabularUnified ../trunk-jpl/src/c/classes/Elements/Penta.cpp

     
    33323332                        penta_node_ids[18]=iomodel->nodecounter+iomodel->numberofvertices+iomodel->numberofedges+iomodel->elements[6*index+3];
    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:
    33383337                        _error_("Finite element "<<EnumToStringx(finiteelement_type)<<" not supported yet");
Note: See TracBrowser for help on using the repository browser.