Salome HOME
[EDF24514] : GlobalNodeIds array was missing whereas a Global node array is present...
[tools/medcoupling.git] / src / ParaMEDMEMTest / test_perf.cxx
index 6a5d646eae4ed12c285b8813f868fa2d83f873f1..81c8d55f08c3d2e5af62e239f623f14ea3d8c114 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D
+// Copyright (C) 2007-2021  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 #include "ParaMESH.hxx"
 #include "ParaFIELD.hxx"
 #include "ComponentTopology.hxx"
-#include "ICoCoMEDField.hxx"
 #include "MEDLoader.hxx"
+#include "ICoCoMEDDoubleField.hxx"
+#include "MEDCouplingUMesh.hxx"
  
 #include <string>
 #include <cstring>
 
+
 // use this define to enable lines, execution of which leads to Segmentation Fault
 #define ENABLE_FAULTS
 
@@ -51,7 +53,7 @@
 #endif 
 
 using namespace std;
-using namespace ParaMEDMEM;
+using namespace MEDCoupling;
  
 void testInterpKernelDEC_2D(const string& filename1, const string& meshname1,
                             const string& filename2, const string& meshname2,
@@ -132,24 +134,24 @@ void testInterpKernelDEC_2D(const string& filename_xml1, const string& meshname1
     procs_target.insert(i);
   self_procs.insert(rank);
   
-  ParaMEDMEM::CommInterface interface;
+  MEDCoupling::CommInterface interface;
     
-  ParaMEDMEM::ProcessorGroup* self_group = new ParaMEDMEM::MPIProcessorGroup(interface,self_procs);
-  ParaMEDMEM::ProcessorGroup* target_group = new ParaMEDMEM::MPIProcessorGroup(interface,procs_target);
-  ParaMEDMEM::ProcessorGroup* source_group = new ParaMEDMEM::MPIProcessorGroup(interface,procs_source);
+  MEDCoupling::ProcessorGroup* self_group = new MEDCoupling::MPIProcessorGroup(interface,self_procs);
+  MEDCoupling::ProcessorGroup* target_group = new MEDCoupling::MPIProcessorGroup(interface,procs_target);
+  MEDCoupling::ProcessorGroup* source_group = new MEDCoupling::MPIProcessorGroup(interface,procs_source);
   
   //loading the geometry for the source group
 
-  ParaMEDMEM::InterpKernelDEC dec (*source_group,*target_group);
+  MEDCoupling::InterpKernelDEC dec (*source_group,*target_group);
   if(tri)
     dec.setIntersectionType(INTERP_KERNEL::Triangulation);
   else
     dec.setIntersectionType(INTERP_KERNEL::Convex);
 
-  ParaMEDMEM::MEDCouplingUMesh* mesh;
-  ParaMEDMEM::ParaMESH* paramesh;
-  ParaMEDMEM::ParaFIELD* parafield;
-  ICoCo::Field* icocofield ;
+  MEDCoupling::MEDCouplingUMesh* mesh = nullptr;
+  MEDCoupling::ParaMESH* paramesh = nullptr;
+  MEDCoupling::ParaFIELD* parafield = nullptr;
+  ICoCo::MEDDoubleField* icocofield = nullptr;
   
   // To remove tmp files from disk
   ParaMEDMEMTest_TmpFilesRemover aRemover;
@@ -171,7 +173,7 @@ void testInterpKernelDEC_2D(const string& filename_xml1, const string& meshname1
       meshname<< meshname1<<"_"<< rank+1;
       
     get_time( &telps, &tcpu_u, &tcpu_s, &tcpu );
-    mesh=MEDLoader::ReadUMeshFromFile(strstream.str().c_str(),meshname.str().c_str(),0);
+    mesh=ReadUMeshFromFile(strstream.str().c_str(),meshname.str().c_str(),0);
     get_time( &telps, &tcpu_u, &tcpu_s, &tcpu );
     if( rank == 0 )
       cout << "IO : Telapse = " << telps << " TuserCPU = " << tcpu_u << " TsysCPU = " << tcpu_s << " TCPU = " << tcpu << endl;
@@ -179,7 +181,7 @@ void testInterpKernelDEC_2D(const string& filename_xml1, const string& meshname1
     
     paramesh=new ParaMESH (mesh,*source_group,"source mesh");
     
-    ParaMEDMEM::ComponentTopology comptopo;
+    MEDCoupling::ComponentTopology comptopo;
     parafield = new ParaFIELD(ON_CELLS, NO_TIME, paramesh, comptopo);
 
     int nb_local=mesh->getNumberOfCells();
@@ -187,7 +189,7 @@ void testInterpKernelDEC_2D(const string& filename_xml1, const string& meshname1
     for(int ielem=0; ielem<nb_local;ielem++)
       value[ielem]=1.0;
     
-    icocofield=new ICoCo::MEDField((MEDCouplingUMesh *)paramesh->getCellMesh(),parafield->getField());
+    icocofield=new ICoCo::MEDDoubleField(parafield->getField());
      
     dec.attachLocalField(icocofield);
   }
@@ -207,19 +209,19 @@ void testInterpKernelDEC_2D(const string& filename_xml1, const string& meshname1
       meshname<< meshname2<<"_"<<rank-nproc_source+1;
       
     get_time( &telps, &tcpu_u, &tcpu_s, &tcpu );
-    mesh = MEDLoader::ReadUMeshFromFile(strstream.str().c_str(),meshname.str().c_str(),0);
+    mesh = ReadUMeshFromFile(strstream.str().c_str(),meshname.str().c_str(),0);
     get_time( &telps, &tcpu_u, &tcpu_s, &tcpu );
     mesh->incrRef();
 
     paramesh=new ParaMESH (mesh,*target_group,"target mesh");
-    ParaMEDMEM::ComponentTopology comptopo;
+    MEDCoupling::ComponentTopology comptopo;
     parafield = new ParaFIELD(ON_CELLS,NO_TIME,paramesh, comptopo);
 
     int nb_local=mesh->getNumberOfCells();
     double *value=parafield->getField()->getArray()->getPointer();
     for(int ielem=0; ielem<nb_local;ielem++)
       value[ielem]=0.0;
-    icocofield=new ICoCo::MEDField((MEDCouplingUMesh *)paramesh->getCellMesh(),parafield->getField());
+    icocofield=new ICoCo::MEDDoubleField(parafield->getField());
       
     dec.attachLocalField(icocofield);
   }