X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHOMARD%2FHOMARD_DriverTools.cxx;h=b95893e8d2cbaa246223950c78f2e01e8d39108d;hb=refs%2Ftags%2FV9_13_0b1;hp=64ccd34bebbded8970cb846709d6e6ab613cea0e;hpb=65cf5e33a70609ffd748452d23f957dfeb625b75;p=modules%2Fhomard.git diff --git a/src/HOMARD/HOMARD_DriverTools.cxx b/src/HOMARD/HOMARD_DriverTools.cxx index 64ccd34b..b95893e8 100644 --- a/src/HOMARD/HOMARD_DriverTools.cxx +++ b/src/HOMARD/HOMARD_DriverTools.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2011-2014 CEA/DEN, EDF R&D +// Copyright (C) 2011-2024 CEA, EDF // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -112,6 +112,7 @@ namespace HOMARD os << cas.GetName(); os << separator() << cas.GetDirName(); os << separator() << cas.GetConfType(); + os << separator() << cas.GetExtType(); std::vector coor = cas.GetBoundingBox(); os << separator() << coor.size(); @@ -238,7 +239,7 @@ namespace HOMARD os << separator() << hypothesis.GetNivMax(); os << separator() << hypothesis.GetDiamMin(); os << separator() << hypothesis.GetAdapInit(); - os << separator() << hypothesis.GetLevelOutput(); + os << separator() << hypothesis.GetExtraOutput(); saux = os.str(); // MESSAGE( ". Fin avec "< coor = boundary.GetCoords() ; @@ -380,6 +385,10 @@ namespace HOMARD if ( !ok ) return false; cas.SetConfType( atoi( chunk.c_str() ) ); + chunk = getNextChunk( stream, start, ok ); + if ( !ok ) return false; + cas.SetExtType( atoi( chunk.c_str() ) ); + chunk = getNextChunk( stream, start, ok ); if ( !ok ) return false; @@ -637,7 +646,7 @@ namespace HOMARD chunk = getNextChunk( stream, start, ok ); if ( !ok ) return false; - hypothesis.SetLevelOutput( strtod( chunk.c_str(), 0 ) ); + hypothesis.SetExtraOutput( strtod( chunk.c_str(), 0 ) ); return true; } @@ -739,12 +748,20 @@ namespace HOMARD // Si analytique, les coordonnees des frontieres : le nombre depend du type // Si discret, le maillage + // Si CAO, la géométrie int lgcoords ; - if ( BoundaryType == 1 ) { lgcoords = 7 ; } + if ( BoundaryType == -1 ) { lgcoords = -1 ; } + else if ( BoundaryType == 1 ) { lgcoords = 7 ; } else if ( BoundaryType == 2 ) { lgcoords = 4 ; } else { lgcoords = 0 ; } // - if ( lgcoords == 0 ) + if ( lgcoords == -1 ) + { + chunk = getNextChunk( stream, start, ok ); + if ( !ok ) return false; + boundary.SetDataFile( chunk.c_str() ); + } + else if ( lgcoords == 0 ) { chunk = getNextChunk( stream, start, ok ); if ( !ok ) return false; @@ -752,7 +769,7 @@ namespace HOMARD chunk = getNextChunk( stream, start, ok ); if ( !ok ) return false; - boundary.SetMeshFile( chunk.c_str() ); + boundary.SetDataFile( chunk.c_str() ); } else { std::vector coords;