diff --git a/Fltk/graphicWindow.cpp b/Fltk/graphicWindow.cpp index 4bfb2fffd1b6b0700cbdf53b3ca38490a56ccb87..625685f3fd5ef138d1d59a16eb346b06a60bf680 100644 --- a/Fltk/graphicWindow.cpp +++ b/Fltk/graphicWindow.cpp @@ -1613,12 +1613,14 @@ static std::vector<std::string> getInfoStrings(MElement *ele) } { std::ostringstream sstream; + sstream.precision(12); SPoint3 pt = ele->barycenter(); sstream << " Barycenter: (" << pt[0] << ", " << pt[1] << ", " << pt[2] << ")"; info.push_back(sstream.str()); } { std::ostringstream sstream; + sstream.precision(12); sstream << " Edge length: " << "min = " << ele->minEdge() << " " << "max = " << ele->maxEdge(); @@ -1626,6 +1628,7 @@ static std::vector<std::string> getInfoStrings(MElement *ele) } { std::ostringstream sstream; + sstream.precision(12); sstream << " Quality: " << "gamma = " << ele->gammaShapeMeasure() << " " << "rho = " << ele->rhoShapeMeasure(); @@ -1633,6 +1636,7 @@ static std::vector<std::string> getInfoStrings(MElement *ele) } { std::ostringstream sstream; + sstream.precision(12); double sICNMin, sICNMax; ele->signedInvCondNumRange(sICNMin, sICNMax); sstream << " SICN range: " << sICNMin << " " << sICNMax; @@ -1640,6 +1644,7 @@ static std::vector<std::string> getInfoStrings(MElement *ele) } { std::ostringstream sstream; + sstream.precision(12); sstream << " Inner / outer radius: " << ele->getInnerRadius() << " / " << ele->getOuterRadius(); info.push_back(sstream.str()); diff --git a/Fltk/inputRange.h b/Fltk/inputRange.h index 8425f03d571e06a0114c647dd95a8c7ba7018aef..17e350ce2bf71e04c1f03933542c722a11f3e4a5 100644 --- a/Fltk/inputRange.h +++ b/Fltk/inputRange.h @@ -32,6 +32,7 @@ class inputRange : public Fl_Group { void _values2string() { std::ostringstream tmp; + tmp.precision(12); if(_choices.size()){ // construct range string using choices for(unsigned int i = 0; i < _choices.size(); i++){ diff --git a/Geo/GEdge.cpp b/Geo/GEdge.cpp index 423db30402ad3f43180fc5fcde7fb1d7f7846add..68bd1e8b0c989275d9effbbffd305a54f636c21e 100644 --- a/Geo/GEdge.cpp +++ b/Geo/GEdge.cpp @@ -176,6 +176,8 @@ void GEdge::setVisibility(char val, bool recursive) std::string GEdge::getAdditionalInfoString() { std::ostringstream sstream; + sstream.precision(12); + if(v0 && v1) sstream << "{" << v0->tag() << " " << v1->tag() << "}"; if(meshAttributes.method == MESH_TRANSFINITE){ diff --git a/Geo/GModelIO_GEO.cpp b/Geo/GModelIO_GEO.cpp index fea9a70242a536832d5222ad1229bae977a76874..baabc9ff4c0a8209a388ab2b6a469139a31d8f53 100644 --- a/Geo/GModelIO_GEO.cpp +++ b/Geo/GModelIO_GEO.cpp @@ -491,7 +491,7 @@ int GModel::writeGEO(const std::string &name, bool printLabels, bool onlyPhysica if(meshSizeParameters.find(val) == meshSizeParameters.end()){ std::ostringstream paramName; paramName << "cl__" << ++cpt; - fprintf(fp, "%s = %.16g;\n", paramName.str().c_str(),val); + fprintf(fp, "%s = %.16g;\n", paramName.str().c_str(), val); meshSizeParameters.insert(std::make_pair(val, paramName.str())); } } diff --git a/Geo/GVertex.cpp b/Geo/GVertex.cpp index 445543c8181e290e606e4e2bdd4558b8c388c462..312b6c41676914d8779753396ac301b4a0f4ecad 100644 --- a/Geo/GVertex.cpp +++ b/Geo/GVertex.cpp @@ -61,6 +61,7 @@ SPoint2 GVertex::reparamOnFace(const GFace *gf, int) const std::string GVertex::getAdditionalInfoString() { std::ostringstream sstream; + sstream.precision(12); sstream << "{" << x() << "," << y() << "," << z() << "}"; double lc = prescribedMeshSizeAtVertex(); if(lc < MAX_LC) sstream << " (mesh size: " << lc << ")"; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index a16fe3983f8b9f042c462ee2f9d39ae40a6489d0..4d00a05d096afdfc1122daceaa669054ff1b2974 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -11754,6 +11754,7 @@ void PrintParserSymbols(bool help, std::vector<std::string> &vec) it != gmsh_yysymbols.end(); it++){ gmsh_yysymbol s(it->second); std::ostringstream sstream; + sstream.precision(12); sstream << it->first; if(s.list){ sstream << "[] = {"; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 06a407bad1a8b2439acc3bd2e01f032bcd0d1743..9c2a70342b1096e1e214c011409b384b846ca1a5 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -5554,6 +5554,7 @@ void PrintParserSymbols(bool help, std::vector<std::string> &vec) it != gmsh_yysymbols.end(); it++){ gmsh_yysymbol s(it->second); std::ostringstream sstream; + sstream.precision(12); sstream << it->first; if(s.list){ sstream << "[] = {"; diff --git a/utils/misc/package_gmsh_getdp.sh b/utils/misc/package_gmsh_getdp.sh index 556a783ed7011d49507107dc0030206455be2fb3..d6f5322b6e254888ed13187f17919da142f2d580 100755 --- a/utils/misc/package_gmsh_getdp.sh +++ b/utils/misc/package_gmsh_getdp.sh @@ -8,6 +8,9 @@ Gmsh (http://gmsh.info) and GetDP (http://getdp.info). Both Gmsh and GetDP are distributed under the terms of the GNU General Public License. See the LICENSE and CREDITS files for more information. +The Gmsh tutorial and sample GetDP models are provided in the tutorial and +models directories. + See the official websites http://gmsh.info and http://getdp.info for up-to-date versions, documentation and examples." > /tmp/README.txt @@ -17,6 +20,17 @@ GETDP=svn #GMSH=2.8.5 #GETDP=2.4.4 +MODELS='machines relay inductor indheat magnetometer antennas acoustic_scattering time_reversal shielding waveguides transfo_simple ddm_wave_simple bloch_periodic_waveguides magnets thermal_conduction' + +# get onelab models +mkdir /tmp/models +for m in ${MODELS}; do + curl -O http://onelab.info/files/${m}.zip + mkdir /tmp/models/$m + unzip -q -o ${m}.zip -d /tmp/models/$m + rm -f ${m}.zip +done + rm -rf gmsh-getdp-Windows64 mkdir gmsh-getdp-Windows64 curl -O http://geuz.org/gmsh/bin/Windows/gmsh-${GMSH}-Windows64.zip @@ -29,10 +43,12 @@ cp /tmp/README.txt gmsh-getdp-Windows64 mv /tmp/gmsh-*${GMSH}-Windows/gmsh.exe gmsh-getdp-Windows64 mv /tmp/gmsh-*${GMSH}-Windows/onelab.py gmsh-getdp-Windows64 mv /tmp/getdp-*${GETDP}-Windows/getdp.exe gmsh-getdp-Windows64 -mv /tmp/gmsh-*${GMSH}-Windows/LICENSE.txt gmsh-getdp-Windows64/LICENSE_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Windows/LICENSE.txt gmsh-getdp-Windows64/LICENSE_GetDP.txt -mv /tmp/gmsh-*${GMSH}-Windows/CREDITS.txt gmsh-getdp-Windows64/CREDITS_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Windows/CREDITS.txt gmsh-getdp-Windows64/CREDITS_GetDP.txt +mv /tmp/gmsh-*${GMSH}-Windows/LICENSE.txt gmsh-getdp-Windows64/LICENSE.txt +cat /tmp/getdp-*${GETDP}-Windows/LICENSE.txt >> gmsh-getdp-Windows64/LICENSE.txt +mv /tmp/gmsh-*${GMSH}-Windows/CREDITS.txt gmsh-getdp-Windows64/CREDITS.txt +cat /tmp/getdp-*${GETDP}-Windows/CREDITS.txt >> gmsh-getdp-Windows64/CREDITS.txt +mv /tmp/gmsh-*${GMSH}-Windows/tutorial gmsh-getdp-Windows64 +cp -R /tmp/models gmsh-getdp-Windows64 rm -rf /tmp/gmsh-* rm -rf /tmp/getdp-* zip -r gmsh-getdp-Windows64.zip gmsh-getdp-Windows64 @@ -50,10 +66,12 @@ cp /tmp/README.txt gmsh-getdp-Windows32 mv /tmp/gmsh-*${GMSH}-Windows/gmsh.exe gmsh-getdp-Windows32 mv /tmp/gmsh-*${GMSH}-Windows/onelab.py gmsh-getdp-Windows32 mv /tmp/getdp-*${GETDP}-Windows/getdp.exe gmsh-getdp-Windows32 -mv /tmp/gmsh-*${GMSH}-Windows/LICENSE.txt gmsh-getdp-Windows32/LICENSE_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Windows/LICENSE.txt gmsh-getdp-Windows32/LICENSE_GetDP.txt -mv /tmp/gmsh-*${GMSH}-Windows/CREDITS.txt gmsh-getdp-Windows32/CREDITS_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Windows/CREDITS.txt gmsh-getdp-Windows32/CREDITS_GetDP.txt +mv /tmp/gmsh-*${GMSH}-Windows/LICENSE.txt gmsh-getdp-Windows32/LICENSE.txt +cat /tmp/getdp-*${GETDP}-Windows/LICENSE.txt >> gmsh-getdp-Windows32/LICENSE.txt +mv /tmp/gmsh-*${GMSH}-Windows/CREDITS.txt gmsh-getdp-Windows32/CREDITS.txt +cat /tmp/getdp-*${GETDP}-Windows/CREDITS.txt >> gmsh-getdp-Windows32/CREDITS.txt +mv /tmp/gmsh-*${GMSH}-Windows/tutorial gmsh-getdp-Windows32 +cp -R /tmp/models gmsh-getdp-Windows32 rm -rf /tmp/gmsh-* rm -rf /tmp/getdp-* zip -r gmsh-getdp-Windows32.zip gmsh-getdp-Windows32 @@ -71,10 +89,12 @@ cp /tmp/README.txt gmsh-getdp-Linux32 mv /tmp/gmsh-*${GMSH}-Linux/bin/gmsh gmsh-getdp-Linux32 mv /tmp/gmsh-*${GMSH}-Linux/bin/onelab.py gmsh-getdp-Linux32 mv /tmp/getdp-*${GETDP}-Linux/bin/getdp gmsh-getdp-Linux32 -mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/LICENSE.txt gmsh-getdp-Linux32/LICENSE_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/LICENSE.txt gmsh-getdp-Linux32/LICENSE_GetDP.txt -mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/CREDITS.txt gmsh-getdp-Linux32/CREDITS_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/CREDITS.txt gmsh-getdp-Linux32/CREDITS_GetDP.txt +mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/LICENSE.txt gmsh-getdp-Linux32/LICENSE.txt +cat /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/LICENSE.txt >> gmsh-getdp-Linux32/LICENSE.txt +mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/CREDITS.txt gmsh-getdp-Linux32/CREDITS.txt +cat /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/CREDITS.txt >> gmsh-getdp-Linux32/CREDITS.txt +mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/tutorial gmsh-getdp-Linux32 +cp -R /tmp/models gmsh-getdp-Linux32 rm -rf /tmp/gmsh-* rm -rf /tmp/getdp-* zip -r gmsh-getdp-Linux32.zip gmsh-getdp-Linux32 @@ -92,10 +112,12 @@ cp /tmp/README.txt gmsh-getdp-Linux64 mv /tmp/gmsh-*${GMSH}-Linux/bin/gmsh gmsh-getdp-Linux64 mv /tmp/gmsh-*${GMSH}-Linux/bin/onelab.py gmsh-getdp-Linux64 mv /tmp/getdp-*${GETDP}-Linux/bin/getdp gmsh-getdp-Linux64 -mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/LICENSE.txt gmsh-getdp-Linux64/LICENSE_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/LICENSE.txt gmsh-getdp-Linux64/LICENSE_GetDP.txt -mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/CREDITS.txt gmsh-getdp-Linux64/CREDITS_Gmsh.txt -mv /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/CREDITS.txt gmsh-getdp-Linux64/CREDITS_GetDP.txt +mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/LICENSE.txt gmsh-getdp-Linux64/LICENSE.txt +cat /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/LICENSE.txt >> gmsh-getdp-Linux64/LICENSE.txt +mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/CREDITS.txt gmsh-getdp-Linux64/CREDITS.txt +cat /tmp/getdp-*${GETDP}-Linux/share/doc/getdp/CREDITS.txt >> gmsh-getdp-Linux64/CREDITS.txt +mv /tmp/gmsh-*${GMSH}-Linux/share/doc/gmsh/tutorial gmsh-getdp-Linux64 +cp -R /tmp/models gmsh-getdp-Linux64 rm -rf /tmp/gmsh-* rm -rf /tmp/getdp-* zip -r gmsh-getdp-Linux64.zip gmsh-getdp-Linux64 @@ -114,10 +136,12 @@ tar zxvf /tmp/getdp-${GETDP}-MacOSX64c.tgz -C /tmp cp /tmp/README.txt gmsh-getdp-MacOSX cp -R gmsh_mount/Gmsh.app gmsh-getdp-MacOSX mv /tmp/getdp-*${GETDP}-MacOSX/bin/getdp gmsh-getdp-MacOSX/Gmsh.app/Contents/MacOS/ -cp gmsh_mount/LICENSE.txt gmsh-getdp-MacOSX/LICENSE_Gmsh.txt -mv /tmp/getdp-*${GETDP}-MacOSX/share/doc/getdp/LICENSE.txt gmsh-getdp-MacOSX/LICENSE_GetDP.txt -cp gmsh_mount/CREDITS.txt gmsh-getdp-MacOSX/CREDITS_Gmsh.txt -mv /tmp/getdp-*${GETDP}-MacOSX/share/doc/getdp/CREDITS.txt gmsh-getdp-MacOSX/CREDITS_GetDP.txt +cp gmsh_mount/LICENSE.txt gmsh-getdp-MacOSX/LICENSE.txt +cat /tmp/getdp-*${GETDP}-MacOSX/share/doc/getdp/LICENSE.txt >> gmsh-getdp-MacOSX/LICENSE.txt +cp gmsh_mount/CREDITS.txt gmsh-getdp-MacOSX/CREDITS.txt +cat /tmp/getdp-*${GETDP}-MacOSX/share/doc/getdp/CREDITS.txt >> gmsh-getdp-MacOSX/CREDITS.txt +cp -R gmsh_mount/tutorial gmsh-getdp-MacOSX +cp -R /tmp/models gmsh-getdp-MacOSX umount gmsh_mount rm -rf /tmp/gmsh-* rm -rf /tmp/getdp-*