/[escript]/trunk/finley/src/Mesh_readGmsh.cpp
ViewVC logotype

Diff of /trunk/finley/src/Mesh_readGmsh.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 5206 by jduplessis, Mon Oct 20 06:59:57 2014 UTC revision 5207 by jduplessis, Tue Oct 21 00:51:22 2014 UTC
# Line 382  int getElements(esysUtils::JMPI& mpi_inf Line 382  int getElements(esysUtils::JMPI& mpi_inf
382                  msg[2] = contact_element_type;                  msg[2] = contact_element_type;
383              } else {              } else {
384                  msg[0] = 0;                  msg[0] = 0;
385                    msg[1] = 0;
386                  msg[2] = 0;                  msg[2] = 0;
                 msg[3] = 0;  
387              }              }
388              MPI_Bcast(msg, 3, MPI_INT,  0, mpi_info->comm);              MPI_Bcast(msg, 3, MPI_INT,  0, mpi_info->comm);
389              final_element_type = static_cast<ElementTypeId>(msg[0]);              final_element_type = static_cast<ElementTypeId>(msg[0]);
# Line 422  int getElements(esysUtils::JMPI& mpi_inf Line 422  int getElements(esysUtils::JMPI& mpi_inf
422    
423              chunkElements=0;              chunkElements=0;
424              chunkFaceElements=0;              chunkFaceElements=0;
 #pragma omp parallel for private (i) schedule(static)  
   
425              for(e = 0; e < chunkSize; e++) {              for(e = 0; e < chunkSize; e++) {
426                 if (element_type[e] == final_element_type) {                 if (element_type[e] == final_element_type) {
427                    mesh_p->Elements->Id[chunkElements]=id[e];                    mesh_p->Elements->Id[chunkElements]=id[e];
# Line 588  Mesh* Mesh::readGmsh(esysUtils::JMPI& mp Line 586  Mesh* Mesh::readGmsh(esysUtils::JMPI& mp
586  {  {
587      double version = 1.0;      double version = 1.0;
588      bool nodesRead=false, elementsRead=false;      bool nodesRead=false, elementsRead=false;
589      int format = 0, size = sizeof(double), scan_ret, flags[2], errorFlag=0, logicFlag=0;      int format = 0, size = sizeof(double), scan_ret,  errorFlag=0, logicFlag=0;
590      int numNames=0;      int numNames=0;
591      int i, tag_info[2], itmp;      int i, tag_info[2], itmp;
592      char line[LenString_MAX+1], name[LenString_MAX+1];      char line[LenString_MAX+1], name[LenString_MAX+1];
593      char error_msg[LenErrorMsg_MAX];      char error_msg[LenErrorMsg_MAX];
594            
     flags[0]=0; //error flag  
     flags[1]=0; //logic flag  
   
595  #ifdef Finley_TRACE  #ifdef Finley_TRACE
596      double time0=timer();      double time0=timer();
597  #endif  #endif
# Line 654  Mesh* Mesh::readGmsh(esysUtils::JMPI& mp Line 649  Mesh* Mesh::readGmsh(esysUtils::JMPI& mp
649              }              }
650          }          }
651  #ifdef ESYS_MPI  #ifdef ESYS_MPI
652            int flags[2];
653          // Broadcast line          // Broadcast line
654          if (mpi_info->size > 1) {          if (mpi_info->size > 1) {
655              if (mpi_info -> rank==0) {              if (mpi_info -> rank==0) {
# Line 734  Mesh* Mesh::readGmsh(esysUtils::JMPI& mp Line 729  Mesh* Mesh::readGmsh(esysUtils::JMPI& mp
729                      MPI_Bcast(&name, tag_info[1], MPI_CHAR,  0, mpi_info->comm); //strlen + 1 for null terminator                      MPI_Bcast(&name, tag_info[1], MPI_CHAR,  0, mpi_info->comm); //strlen + 1 for null terminator
730                  }                  }
731  #endif          #endif        
                 MPI_Barrier(mpi_info->comm);  
732                  mesh_p->addTagMap(&name[1], tag_info[0]);                  mesh_p->addTagMap(&name[1], tag_info[0]);
733                  //fprintf(stderr,"elements errorFlag:%d on rank %d \n",errorFlag,mpi_info->rank);                  //fprintf(stderr,"elements errorFlag:%d on rank %d \n",errorFlag,mpi_info->rank);
734    

Legend:
Removed from v.5206  
changed lines
  Added in v.5207

  ViewVC Help
Powered by ViewVC 1.1.26