X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FParaMEDMEMTest%2FParaMEDMEMTest_OverlapDEC.cxx;h=5969e2be045dd6abf0e4323310cbcc06d827cb73;hb=9a3f48daeedcc6e06bcc731f1c885d07cb15a1be;hp=de962c3df6bcfae72b493eb437382c1da4830174;hpb=e8f616a523471bd47f2eb60e6fded7b2b6363639;p=tools%2Fmedcoupling.git diff --git a/src/ParaMEDMEMTest/ParaMEDMEMTest_OverlapDEC.cxx b/src/ParaMEDMEMTest/ParaMEDMEMTest_OverlapDEC.cxx index de962c3df..5969e2be0 100644 --- a/src/ParaMEDMEMTest/ParaMEDMEMTest_OverlapDEC.cxx +++ b/src/ParaMEDMEMTest/ParaMEDMEMTest_OverlapDEC.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D +// Copyright (C) 2007-2016 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 @@ -35,7 +35,7 @@ using namespace std; -#include "MEDCouplingAutoRefCountObjectPtr.hxx" +#include "MCAuto.hxx" #include "MEDLoader.hxx" #include "MEDLoaderBase.hxx" #include "MEDCouplingFieldDouble.hxx" @@ -44,9 +44,9 @@ using namespace std; using namespace MEDCoupling; -typedef MEDCouplingAutoRefCountObjectPtr MUMesh; -typedef MEDCouplingAutoRefCountObjectPtr MFDouble; -typedef MEDCouplingAutoRefCountObjectPtr DADouble; +typedef MCAuto MUMesh; +typedef MCAuto MFDouble; +typedef MCAuto DADouble; //void ParaMEDMEMTest::testOverlapDEC_LMEC_seq() //{ @@ -59,16 +59,16 @@ typedef MEDCouplingAutoRefCountObjectPtr DADouble; // string tgt_mesh_nam(rep + string("T_SC_Trio_dst.med")); //// string src_mesh_nam(rep + string("h_TH_Trio_src.med")); //// string tgt_mesh_nam(rep + string("h_TH_Trio_dst.med")); -// MUMesh src_mesh=MEDLoader::ReadUMeshFromFile(src_mesh_nam,"SupportOf_",0); -// MUMesh tgt_mesh=MEDLoader::ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_T_SC_Trio",0); -//// MUMesh tgt_mesh=MEDLoader::ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_h_TH_Trio",0); +// MUMesh src_mesh=ReadUMeshFromFile(src_mesh_nam,"SupportOf_",0); +// MUMesh tgt_mesh=ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_T_SC_Trio",0); +//// MUMesh tgt_mesh=ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_h_TH_Trio",0); // // MFDouble srcField = MEDCouplingFieldDouble::New(ON_CELLS, ONE_TIME); // srcField->setMesh(src_mesh); // DataArrayDouble * dad = DataArrayDouble::New(); dad->alloc(src_mesh->getNumberOfCells(),1); // dad->fillWithValue(1.0); // srcField->setArray(dad); -// srcField->setNature(ConservativeVolumic); +// srcField->setNature(IntensiveMaximum); // // MEDCouplingRemapper remap; // remap.setOrientation(2); // always consider surface intersections as absolute areas. @@ -76,7 +76,7 @@ typedef MEDCouplingAutoRefCountObjectPtr DADouble; // MFDouble tgtField = remap.transferField(srcField, 1.0e+300); // tgtField->setName("result"); // string out_nam(rep + string("adrien.med")); -// MEDLoader::WriteField(out_nam,tgtField, true); +// WriteField(out_nam,tgtField, true); // cout << "wrote: " << out_nam << "\n"; // double integ1 = 0.0, integ2 = 0.0; // srcField->integral(true, &integ1); @@ -128,9 +128,9 @@ typedef MEDCouplingAutoRefCountObjectPtr DADouble; // { // // string src_mesh_nam(rep + string("h_TH_Trio_src.med")); // // string tgt_mesh_nam(rep + string("h_TH_Trio_dst.med")); -// MUMesh src_mesh=MEDLoader::ReadUMeshFromFile(src_mesh_nam,"SupportOf_",0); -// MUMesh tgt_mesh=MEDLoader::ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_T_SC_Trio",0); -// // MUMesh tgt_mesh=MEDLoader::ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_h_TH_Trio",0); +// MUMesh src_mesh=ReadUMeshFromFile(src_mesh_nam,"SupportOf_",0); +// MUMesh tgt_mesh=ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_T_SC_Trio",0); +// // MUMesh tgt_mesh=ReadUMeshFromFile(tgt_mesh_nam,"SupportOf_h_TH_Trio",0); // // // **** SOURCE // srcField = MEDCouplingFieldDouble::New(ON_CELLS, ONE_TIME); @@ -138,18 +138,18 @@ typedef MEDCouplingAutoRefCountObjectPtr DADouble; // DataArrayDouble * dad = DataArrayDouble::New(); dad->alloc(src_mesh->getNumberOfCells(),1); // dad->fillWithValue(1.0); // srcField->setArray(dad); -// srcField->setNature(ConservativeVolumic); +// srcField->setNature(IntensiveMaximum); // // ComponentTopology comptopo; // parameshS = new ParaMESH(src_mesh,*dec.getGroup(),"source mesh"); // parafieldS = new ParaFIELD(ON_CELLS,ONE_TIME,parameshS,comptopo); -// parafieldS->getField()->setNature(ConservativeVolumic);//IntegralGlobConstraint +// parafieldS->getField()->setNature(IntensiveMaximum);//ExtensiveConservation // parafieldS->getField()->setArray(dad); // // // **** TARGET // parameshT=new ParaMESH(tgt_mesh,*dec.getGroup(),"target mesh"); // parafieldT=new ParaFIELD(ON_CELLS,ONE_TIME,parameshT,comptopo); -// parafieldT->getField()->setNature(ConservativeVolumic);//IntegralGlobConstraint +// parafieldT->getField()->setNature(IntensiveMaximum);//ExtensiveConservation // parafieldT->getField()->getArray()->fillWithValue(1.0e300); //// valsT[0]=7.; // } @@ -170,7 +170,7 @@ typedef MEDCouplingAutoRefCountObjectPtr DADouble; // tgtField->integral(true, &integ2); // tgtField->setName("result"); // string out_nam(rep + string("adrien_para.med")); -// MEDLoader::WriteField(out_nam,tgtField, true); +// WriteField(out_nam,tgtField, true); // cout << "wrote: " << out_nam << "\n"; // CPPUNIT_ASSERT_DOUBLES_EQUAL(integ1,integ2,1e-8); // } @@ -360,10 +360,10 @@ void prepareData2(int rank, ProcessorGroup * grp, NatureOfField nature, if(rank==0) { const double tr1[] = {1.5, 0.0}; - MEDCouplingUMesh *meshS_1 = static_cast(meshS_0->deepCpy()); + MEDCouplingUMesh *meshS_1 = static_cast(meshS_0->deepCopy()); meshS_1->translate(tr1); const double tr2[] = {3.0, 0.0}; - MEDCouplingUMesh *meshS_2 = static_cast(meshS_0->deepCpy()); + MEDCouplingUMesh *meshS_2 = static_cast(meshS_0->deepCopy()); meshS_2->translate(tr2); std::vector vec; @@ -390,7 +390,7 @@ void prepareData2(int rank, ProcessorGroup * grp, NatureOfField nature, // const double tr3[] = {0.0, -1.5}; - MEDCouplingUMesh *meshT_3 = static_cast(meshT_0->deepCpy()); + MEDCouplingUMesh *meshT_3 = static_cast(meshT_0->deepCopy()); meshT_3->translate(tr3); vec.clear(); vec.push_back(meshT_0);vec.push_back(meshT_3); @@ -405,10 +405,10 @@ void prepareData2(int rank, ProcessorGroup * grp, NatureOfField nature, if(rank==1) { const double tr3[] = {0.0, -1.5}; - MEDCouplingUMesh *meshS_3 = static_cast(meshS_0->deepCpy()); + MEDCouplingUMesh *meshS_3 = static_cast(meshS_0->deepCopy()); meshS_3->translate(tr3); const double tr4[] = {1.5, -1.5}; - MEDCouplingUMesh *meshS_4 = static_cast(meshS_0->deepCpy()); + MEDCouplingUMesh *meshS_4 = static_cast(meshS_0->deepCopy()); meshS_4->translate(tr4); std::vector vec; @@ -429,13 +429,13 @@ void prepareData2(int rank, ProcessorGroup * grp, NatureOfField nature, // const double tr5[] = {1.5, 0.0}; - MEDCouplingUMesh *meshT_1 = static_cast(meshT_0->deepCpy()); + MEDCouplingUMesh *meshT_1 = static_cast(meshT_0->deepCopy()); meshT_1->translate(tr5); const double tr6[] = {3.0, 0.0}; - MEDCouplingUMesh *meshT_2 = static_cast(meshT_0->deepCpy()); + MEDCouplingUMesh *meshT_2 = static_cast(meshT_0->deepCopy()); meshT_2->translate(tr6); const double tr7[] = {1.5, -1.5}; - MEDCouplingUMesh *meshT_4 = static_cast(meshT_0->deepCpy()); + MEDCouplingUMesh *meshT_4 = static_cast(meshT_0->deepCopy()); meshT_4->translate(tr7); vec.clear(); @@ -481,7 +481,7 @@ void testOverlapDEC_generic(int workSharingAlgo, double bbAdj) OverlapDEC dec(procs); MEDCouplingFieldDouble * mcfieldS=0, *mcfieldT=0; - prepareData1(rank, ConservativeVolumic, mcfieldS, mcfieldT); + prepareData1(rank, IntensiveMaximum, mcfieldS, mcfieldT); // See comment in the caller: dec.setBoundingBoxAdjustmentAbs(bbAdj); @@ -580,7 +580,7 @@ void ParaMEDMEMTest::testOverlapDEC3() ParaMESH* parameshS=0, *parameshT=0; ParaFIELD* parafieldS=0, *parafieldT=0; - prepareData2(rank, grp, ConservativeVolumic, meshS, meshT, parameshS, parameshT, parafieldS, parafieldT); + prepareData2(rank, grp, IntensiveMaximum, meshS, meshT, parameshS, parameshT, parafieldS, parafieldT); dec.attachSourceLocalField(parafieldS); dec.attachTargetLocalField(parafieldT); @@ -590,7 +590,7 @@ void ParaMEDMEMTest::testOverlapDEC3() MEDCouplingFieldDouble * resField = parafieldT->getField(); if(rank==0) { - CPPUNIT_ASSERT_EQUAL(8, resField->getNumberOfTuples()); + CPPUNIT_ASSERT_EQUAL(8, (int)resField->getNumberOfTuples()); for(int i=0;i<4;i++) CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0,resField->getArray()->getIJ(i,0),1e-12); for(int i=4;i<8;i++) @@ -598,7 +598,7 @@ void ParaMEDMEMTest::testOverlapDEC3() } if(rank==1) { - CPPUNIT_ASSERT_EQUAL(12, resField->getNumberOfTuples()); + CPPUNIT_ASSERT_EQUAL(12, (int)resField->getNumberOfTuples()); for(int i=0;i<4;i++) CPPUNIT_ASSERT_DOUBLES_EQUAL(2.0,resField->getArray()->getIJ(i,0),1e-12); for(int i=4;i<8;i++) @@ -641,7 +641,7 @@ void ParaMEDMEMTest::testOverlapDEC4() ParaFIELD* parafieldS=0, *parafieldT=0; // As before, except than one of the source cell is removed, and that the field now has 2 components - prepareData2(rank, grp, ConservativeVolumic, meshS, meshT, parameshS, parameshT, parafieldS, parafieldT, + prepareData2(rank, grp, IntensiveMaximum, meshS, meshT, parameshS, parameshT, parafieldS, parafieldT, true, 2); // if (rank == 1) // { @@ -660,7 +660,7 @@ void ParaMEDMEMTest::testOverlapDEC4() MEDCouplingFieldDouble * resField = parafieldT->getField(); if(rank==0) { - CPPUNIT_ASSERT_EQUAL(8, resField->getNumberOfTuples()); + CPPUNIT_ASSERT_EQUAL(8, (int)resField->getNumberOfTuples()); for(int i=0;i<4;i++) { CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0,resField->getArray()->getIJ(i*2,0),1e-12); @@ -674,7 +674,7 @@ void ParaMEDMEMTest::testOverlapDEC4() } if(rank==1) { - CPPUNIT_ASSERT_EQUAL(12, resField->getNumberOfTuples()); + CPPUNIT_ASSERT_EQUAL(12, (int)resField->getNumberOfTuples()); for(int i=0;i<4;i++) { CPPUNIT_ASSERT_DOUBLES_EQUAL(2.0,resField->getArray()->getIJ(i*2,0),1e-12);