diff --git a/Common/AdaptiveViews.cpp b/Common/AdaptiveViews.cpp index 3896ce1620d2d7d4fab046879b763072ecca1e00..c77a27715ef8c07a6aeb4b1c0bfe887f11f0be04 100644 --- a/Common/AdaptiveViews.cpp +++ b/Common/AdaptiveViews.cpp @@ -1042,6 +1042,14 @@ void Adaptive_Post_View::initWithLowResolution(Post_View * view) } else return; + // if there exists a polynomial representation + // of the geometry , then use it + if (_coefsGeom) + { + nbnod = _coefsGeom -> size1 (); + } + + minval = VAL_INF; maxval = -VAL_INF; @@ -1094,14 +1102,18 @@ void Adaptive_Post_View::initWithLowResolution(Post_View * view) setAdaptiveResolutionLevel(view, 0); } -Adaptive_Post_View::Adaptive_Post_View(Post_View * view, List_T * _c, - List_T * _pol) - :tol(1.e-3) +Adaptive_Post_View::Adaptive_Post_View(Post_View * view, + List_T * _c, + List_T * _pol, + List_T * _cGeom, + List_T * _polGeom) + :tol(1.e-3),_coefsGeom(0),_eexpsGeom(0) { _Interpolate = _Geometry = 0; _coefs = new Double_Matrix ( List_Nbr (_c) , List_Nbr (_c) ); _eexps = new Double_Matrix ( List_Nbr (_c) , 3 ); + _STvalX = _STvalY = _STvalZ =0; for(int i = 0; i < List_Nbr(_c); ++i) { @@ -1124,6 +1136,32 @@ Adaptive_Post_View::Adaptive_Post_View(Post_View * view, List_T * _c, (*_coefs) (i, j) = val; } } + + if (_cGeom && _polGeom) + { + _coefsGeom = new Double_Matrix ( List_Nbr (_cGeom) , List_Nbr (_cGeom) ); + _eexpsGeom = new Double_Matrix ( List_Nbr (_cGeom) , 3 ); + for(int i = 0; i < List_Nbr(_cGeom); ++i) { + List_T **line = (List_T **) List_Pointer_Fast(_cGeom, i); + List_T **eexp = (List_T **) List_Pointer_Fast(_polGeom, i); + + double dpowu, dpowv, dpoww; + + List_Read(*eexp, 0, &dpowu); + List_Read(*eexp, 1, &dpowv); + List_Read(*eexp, 2, &dpoww); + + (*_eexpsGeom) (i, 0) = dpowu; + (*_eexpsGeom) (i, 1) = dpowv; + (*_eexpsGeom) (i, 2) = dpoww; + + for(int j = 0; j < List_Nbr(*line); ++j) { + double val; + List_Read(*line, j, &val); + (*_coefsGeom) (i, j) = val; + } + } + } initWithLowResolution(view); } @@ -1135,6 +1173,12 @@ Adaptive_Post_View::~Adaptive_Post_View() delete _STposY; delete _STposZ; delete _STval; + + if (_coefsGeom) + delete _coefsGeom; + if (_eexpsGeom) + delete _eexpsGeom; + if(_Interpolate) delete _Interpolate; if(_Geometry) diff --git a/Common/AdaptiveViews.h b/Common/AdaptiveViews.h index fe932c5a63d44a43fd51c6d1bdb531ffea28bed3..66b24320f021b74fc074fe6d1fa73cfd9b80ef3a 100644 --- a/Common/AdaptiveViews.h +++ b/Common/AdaptiveViews.h @@ -271,6 +271,8 @@ class Adaptive_Post_View double presentTol; Double_Matrix * _eexps; Double_Matrix * _coefs; + Double_Matrix * _eexpsGeom; + Double_Matrix * _coefsGeom; Double_Matrix * _STposX; Double_Matrix * _STposY; Double_Matrix * _STposZ; @@ -282,7 +284,7 @@ class Adaptive_Post_View Double_Matrix * _Interpolate; Double_Matrix * _Geometry; public: - Adaptive_Post_View (Post_View *view, List_T *_coeffs, List_T *_eexps); + Adaptive_Post_View (Post_View *view, List_T *_coeffs, List_T *_eexps, List_T *_coeffsGeom=0, List_T *_eexpsGeom=0); ~Adaptive_Post_View (); int getGlobalResolutionLevel () const { return presentZoomLevel; } void setGlobalResolutionLevel (Post_View * view, int level) diff --git a/Common/Makefile b/Common/Makefile index 9ce6fc6de4e297a6391547ef1d9dbd05ecb60842..5b9d221ca4b3a1056704b3ad66f2036290ccdbd9 100644 --- a/Common/Makefile +++ b/Common/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.126 2007-02-27 22:01:25 geuzaine Exp $ +# $Id: Makefile,v 1.127 2007-04-12 08:47:24 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -64,93 +64,3 @@ depend: rm -f Makefile.new # DO NOT DELETE THIS LINE -Context.o: Context.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h Context.h \ - DefaultOptions.h GmshDefines.h Options.h Views.h ColorTable.h \ - VertexArray.h SmoothData.h AdaptiveViews.h GmshMatrix.h Trackball.h -AdaptiveViews.o: AdaptiveViews.cpp AdaptiveViews.h ../DataStr/List.h \ - GmshMatrix.h ../Plugin/Plugin.h ../Common/Options.h ../Common/Message.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h OS.h -Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h ../DataStr/List.h \ - ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Numeric/Numeric.h Views.h ColorTable.h \ - VertexArray.h SmoothData.h AdaptiveViews.h GmshMatrix.h Context.h \ - Options.h -ViewsIO.o: ViewsIO.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h Views.h \ - ColorTable.h VertexArray.h SmoothData.h AdaptiveViews.h GmshMatrix.h \ - Context.h -Octree.o: Octree.cpp Octree.h OctreeInternals.h -OctreeInternals.o: OctreeInternals.cpp Message.h OctreeInternals.h -OctreePost.o: OctreePost.cpp Octree.h OctreeInternals.h OctreePost.h \ - ../DataStr/List.h Views.h ColorTable.h VertexArray.h SmoothData.h \ - ../Numeric/Numeric.h AdaptiveViews.h GmshMatrix.h Message.h \ - ShapeFunctions.h -Options.o: Options.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h GmshUI.h GmshDefines.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Mesh/Generator.h \ - Context.h Options.h ../Mesh/BackgroundMesh.h ../Plugin/PluginManager.h \ - ../Plugin/Plugin.h ../Common/Options.h ../Common/Message.h \ - ../Fltk/Solvers.h ../Fltk/GUI.h ../Fltk/Opengl_Window.h \ - ../Fltk/Colorbar_Window.h ../Common/GmshUI.h ../Fltk/Popup_Button.h \ - ../Fltk/SpherePosition_Widget.h -CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h GmshUI.h GmshDefines.h \ - GmshVersion.h CommandLine.h ../Numeric/Numeric.h Context.h Options.h \ - ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ - ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h Views.h \ - ColorTable.h VertexArray.h SmoothData.h AdaptiveViews.h GmshMatrix.h \ - ../Parser/OpenFile.h ../Parser/CreateFile.h ../Parser/Parser.h \ - ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Context.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h OS.h -OS.o: OS.cpp Message.h -ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h ColorTable.h Context.h \ - ../Numeric/Numeric.h -Visibility.o: Visibility.cpp Visibility.h GmshDefines.h ../Geo/GVertex.h \ - ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ - ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/GModel.h \ - ../Geo/GVertex.h ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h \ - ../Geo/SBoundingBox3d.h ../Parser/Parser.h ../DataStr/Tree.h \ - ../DataStr/avl.h -Trackball.o: Trackball.cpp Trackball.h -VertexArray.o: VertexArray.cpp VertexArray.h Context.h ../DataStr/List.h \ - ../Numeric/Numeric.h -SmoothData.o: SmoothData.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h SmoothData.h -License.o: License.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../DataStr/List.h ../DataStr/Tree.h diff --git a/Fltk/Makefile b/Fltk/Makefile index 74ff3aca3f5d6e9508262f77edf11135062ff56c..6e97c8595f59581cde258ff350c64b2127b7f26e 100644 --- a/Fltk/Makefile +++ b/Fltk/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.127 2007-03-18 14:12:20 geuzaine Exp $ +# $Id: Makefile,v 1.128 2007-04-12 08:47:24 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -76,9 +76,43 @@ Main.o: Main.cpp GUI.h Opengl_Window.h Colorbar_Window.h \ ../Mesh/Generator.h ../Parser/CreateFile.h ../Graphics/Draw.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h ../Common/Options.h ../Parser/Parser.h \ - ../Parser/OpenFile.h ../Common/CommandLine.h Solvers.h \ - ../Plugin/PluginManager.h ../Plugin/Plugin.h ../Geo/GModel.h \ + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h ../Common/Context.h ../Common/Options.h \ + ../Parser/Parser.h ../Parser/OpenFile.h ../Common/CommandLine.h \ + Solvers.h ../Plugin/PluginManager.h ../Plugin/Plugin.h ../Geo/GModel.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ ../Geo/SBoundingBox3d.h ../Geo/MVertex.h ../Geo/SPoint3.h \ ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h \ @@ -102,9 +136,44 @@ GUI.o: GUI.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../Common/GmshDefines.h ../Numeric/Numeric.h ../Common/Context.h \ ../Common/Options.h ../Graphics/Draw.h ../Common/Views.h \ ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h GUI.h Opengl_Window.h \ - Colorbar_Window.h Popup_Button.h SpherePosition_Widget.h Callbacks.h \ - Bitmaps.h Win32Icon.h ../Parser/OpenFile.h ../Common/CommandLine.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h GUI.h Opengl_Window.h Colorbar_Window.h \ + Popup_Button.h SpherePosition_Widget.h Callbacks.h Bitmaps.h \ + Win32Icon.h ../Parser/OpenFile.h ../Common/CommandLine.h \ ../Mesh/Generator.h Solvers.h ../Plugin/PluginManager.h \ ../Plugin/Plugin.h Shortcut_Window.h GUI_Extras.o: GUI_Extras.cpp ../Common/Gmsh.h ../Common/Message.h \ @@ -114,7 +183,42 @@ GUI_Extras.o: GUI_Extras.cpp ../Common/Gmsh.h ../Common/Message.h \ Shortcut_Window.h ../Parser/CreateFile.h ../Common/Options.h \ ../Common/Context.h ../Graphics/Draw.h ../Common/Views.h \ ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h GUI_Projection.o: GUI_Projection.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ @@ -134,7 +238,41 @@ GUI_Projection.o: GUI_Projection.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Geo/projectionFace.h ../Geo/GFace.h ../Graphics/Draw.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Options.h Shortcut_Window.h + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h ../Common/Options.h Shortcut_Window.h Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ @@ -159,12 +297,46 @@ Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ ../Common/VertexArray.h ../Common/SmoothData.h \ ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Graphics/SelectBuffer.h ../Parser/CreateFile.h ../Parser/OpenFile.h \ - ../Common/CommandLine.h ../Common/Options.h GUI.h Opengl_Window.h \ - Colorbar_Window.h Popup_Button.h SpherePosition_Widget.h GUI_Extras.h \ - Callbacks.h ../Plugin/Plugin.h ../Plugin/PluginManager.h \ - ../Plugin/Plugin.h ../Common/Visibility.h ../Common/GmshDefines.h \ - Solvers.h ../Common/OS.h + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h ../Graphics/SelectBuffer.h \ + ../Parser/CreateFile.h ../Parser/OpenFile.h ../Common/CommandLine.h \ + ../Common/Options.h GUI.h Opengl_Window.h Colorbar_Window.h \ + Popup_Button.h SpherePosition_Widget.h GUI_Extras.h Callbacks.h \ + ../Plugin/Plugin.h ../Plugin/PluginManager.h ../Plugin/Plugin.h \ + ../Common/Visibility.h ../Common/GmshDefines.h Solvers.h ../Common/OS.h Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ @@ -172,14 +344,48 @@ Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ ../Common/VertexArray.h ../Common/SmoothData.h \ ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/SPoint3.h ../Common/GmshDefines.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h ../Graphics/SelectBuffer.h ../Geo/GVertex.h \ + ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ + ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ + ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ + ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ + ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ + ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ @@ -197,19 +403,53 @@ Opengl_Window.o: Opengl_Window.cpp ../Common/Gmsh.h ../Common/Message.h \ ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ ../Common/VertexArray.h ../Common/SmoothData.h \ ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h GUI.h \ - Opengl_Window.h Colorbar_Window.h Popup_Button.h \ - SpherePosition_Widget.h + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h ../Graphics/SelectBuffer.h ../Geo/GVertex.h \ + ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ + ../Geo/SBoundingBox3d.h ../Geo/MVertex.h ../Geo/SPoint3.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h \ + ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ + ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h \ + ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ + ../Geo/SVector3.h ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h \ + ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h \ + ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h \ + ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \ + ../Geo/ExtrudeParams.h GUI.h Opengl_Window.h Colorbar_Window.h \ + Popup_Button.h SpherePosition_Widget.h Colorbar_Window.o: Colorbar_Window.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ @@ -224,4 +464,38 @@ Solvers.o: Solvers.cpp ../Common/Gmsh.h ../Common/Message.h \ SpherePosition_Widget.h ../Graphics/Draw.h ../Common/Views.h \ ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h + /sw/include/gsl/gsl_linalg.h /sw/include/gsl/gsl_mode.h \ + /sw/include/gsl/gsl_permutation.h /sw/include/gsl/gsl_types.h \ + /sw/include/gsl/gsl_errno.h /sw/include/gsl/gsl_check_range.h \ + /sw/include/gsl/gsl_vector.h \ + /sw/include/gsl/gsl_vector_complex_long_double.h \ + /sw/include/gsl/gsl_complex.h /sw/include/gsl/gsl_vector_long_double.h \ + /sw/include/gsl/gsl_block_long_double.h \ + /sw/include/gsl/gsl_vector_complex.h \ + /sw/include/gsl/gsl_block_complex_long_double.h \ + /sw/include/gsl/gsl_vector_complex_double.h \ + /sw/include/gsl/gsl_vector_double.h /sw/include/gsl/gsl_block_double.h \ + /sw/include/gsl/gsl_block_complex_double.h \ + /sw/include/gsl/gsl_vector_complex_float.h \ + /sw/include/gsl/gsl_vector_float.h /sw/include/gsl/gsl_block_float.h \ + /sw/include/gsl/gsl_block_complex_float.h \ + /sw/include/gsl/gsl_vector_ulong.h /sw/include/gsl/gsl_block_ulong.h \ + /sw/include/gsl/gsl_vector_long.h /sw/include/gsl/gsl_block_long.h \ + /sw/include/gsl/gsl_vector_uint.h /sw/include/gsl/gsl_block_uint.h \ + /sw/include/gsl/gsl_vector_int.h /sw/include/gsl/gsl_block_int.h \ + /sw/include/gsl/gsl_vector_ushort.h /sw/include/gsl/gsl_block_ushort.h \ + /sw/include/gsl/gsl_vector_short.h /sw/include/gsl/gsl_block_short.h \ + /sw/include/gsl/gsl_vector_uchar.h /sw/include/gsl/gsl_block_uchar.h \ + /sw/include/gsl/gsl_vector_char.h /sw/include/gsl/gsl_block_char.h \ + /sw/include/gsl/gsl_matrix.h \ + /sw/include/gsl/gsl_matrix_complex_long_double.h \ + /sw/include/gsl/gsl_matrix_complex_double.h \ + /sw/include/gsl/gsl_matrix_complex_float.h \ + /sw/include/gsl/gsl_matrix_long_double.h \ + /sw/include/gsl/gsl_matrix_double.h /sw/include/gsl/gsl_matrix_float.h \ + /sw/include/gsl/gsl_matrix_ulong.h /sw/include/gsl/gsl_matrix_long.h \ + /sw/include/gsl/gsl_matrix_uint.h /sw/include/gsl/gsl_matrix_int.h \ + /sw/include/gsl/gsl_matrix_ushort.h /sw/include/gsl/gsl_matrix_short.h \ + /sw/include/gsl/gsl_matrix_uchar.h /sw/include/gsl/gsl_matrix_char.h \ + /sw/include/gsl/gsl_blas.h /sw/include/gsl/gsl_blas_types.h \ + /sw/include/gsl/gsl_cblas.h ../Common/Context.h diff --git a/Geo/MElement.cpp b/Geo/MElement.cpp index eb05d6946f2db50ed89f44cec97179233cfba4e6..b2b1a866f0ebacce76c1a826f29ec355bc89f44e 100644 --- a/Geo/MElement.cpp +++ b/Geo/MElement.cpp @@ -1,4 +1,4 @@ -// $Id: MElement.cpp,v 1.34 2007-04-02 08:52:39 geuzaine Exp $ +// $Id: MElement.cpp,v 1.35 2007-04-12 08:47:24 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -349,16 +349,48 @@ double MTriangle::getSurfaceXY() const return s * 0.5; } -void MTriangle::circumcenterXY(double *res) const +void MTriangle::circumcenterXYZ(double *p1, double *p2, double *p3,double *res) +{ + double v1[3] = {p2[0]-p1[0],p2[1]-p1[1],p2[2]-p1[2]}; + double v2[3] = {p3[0]-p1[0],p3[1]-p1[1],p3[2]-p1[2]}; + double vx[3] = {p2[0]-p1[0],p2[1]-p1[1],p2[2]-p1[2]}; + double vy[3] = {p3[0]-p1[0],p3[1]-p1[1],p3[2]-p1[2]}; + double vz[3]; prodve (vx,vy,vz);prodve (vz,vx,vy); + norme(vx);norme(vy);norme(vz); + double p1P[2] = {0.0,0.0}; + double p2P[2];prosca(v1,vx,&p2P[0]);prosca(v1,vy,&p2P[1]); + double p3P[2];prosca(v2,vx,&p3P[0]);prosca(v2,vy,&p3P[1]); + double resP[2]; + + circumcenterXY(p1P, p2P, p3P,resP); + +// double d1 = sqrt((p2P[0] - resP[0]) * (p2P[0] - resP[0]) + +// (p2P[1] - resP[1]) * (p2P[1] - resP[1])); + +// double d2 = sqrt((p1P[0] - resP[0]) * (p1P[0] - resP[0]) + +// (p1P[1] - resP[1]) * (p1P[1] - resP[1])) ; + +// double d3 = sqrt((p3P[0] - resP[0]) * (p3P[0] - resP[0]) + +// (p3P[1] - resP[1]) * (p3P[1] - resP[1]) ); + + + // printf("%g %g - %g %g -- %g %g %g\n",p2P[0],p2P[1],p3P[0],p3P[1],d1,d2,d3); + + res[0] = p1[0] + resP[0] * vx[0] + resP[1] * vy[0]; + res[1] = p1[1] + resP[0] * vx[1] + resP[1] * vy[1]; + res[2] = p1[2] + resP[0] * vx[2] + resP[1] * vy[2]; +} + +void MTriangle::circumcenterXY(double *p1, double *p2, double *p3, double *res) { double d, a1, a2, a3; - const double x1 = _v[0]->x(); - const double x2 = _v[1]->x(); - const double x3 = _v[2]->x(); - const double y1 = _v[0]->y(); - const double y2 = _v[1]->y(); - const double y3 = _v[2]->y(); + const double x1 = p1[0]; + const double x2 = p2[0]; + const double x3 = p3[0]; + const double y1 = p1[1]; + const double y2 = p2[1]; + const double y3 = p3[1]; d = 2. * (double)(y1 * (x2 - x3) + y2 * (x3 - x1) + y3 * (x1 - x2)); if(d == 0.0) { @@ -374,6 +406,14 @@ void MTriangle::circumcenterXY(double *res) const res[1] = (double)((a1 * (x2 - x3) + a2 * (x3 - x1) + a3 * (x1 - x2)) / d); } +void MTriangle::circumcenterXY(double *res) const +{ + double p1[2] = {_v[0]->x(),_v[0]->y()}; + double p2[2] = {_v[1]->x(),_v[1]->y()}; + double p3[2] = {_v[2]->x(),_v[2]->y()}; + circumcenterXY(p1,p2,p3,res); +} + int MTriangleN::getNumFacesRep(){ return 1; } MFace MTriangleN::getFaceRep(int num) diff --git a/Geo/MElement.h b/Geo/MElement.h index 2c50523ff8c02f9fb54469529ef39c00bb4d47fc..3b2b42581956611dfb99dbb13e4bfb7aba255b83 100644 --- a/Geo/MElement.h +++ b/Geo/MElement.h @@ -310,7 +310,9 @@ class MTriangle : public MElement { mat[1][0] = _v[1]->y() - _v[0]->y(); mat[1][1] = _v[2]->y() - _v[0]->y(); } - void circumcenterXY(double *res) const; + void circumcenterXY(double *res) const; + static void circumcenterXYZ(double *p1, double *p2, double *p3,double *res); + static void circumcenterXY (double *p1, double *p2, double *p3,double *res); double getSurfaceXY() const; bool invertmappingXY(double *p, double *uv, double tol = 1.e-8); virtual int getNumVertices(){ return 3; } diff --git a/Mesh/BDS.h b/Mesh/BDS.h index b5c5decff454c87e3eec8abb8291f3a77e7029b3..37610de5a8777a6a409b588e48e591a1959cdd15 100644 --- a/Mesh/BDS.h +++ b/Mesh/BDS.h @@ -372,6 +372,14 @@ class BDS_SwapEdgeTestParametric : public BDS_SwapEdgeTest virtual ~BDS_SwapEdgeTestParametric(){} }; +class BDS_SwapEdgeTestDelaunay : public BDS_SwapEdgeTest +{ + public: + virtual bool operator() (BDS_Point *p1,BDS_Point *p2, + BDS_Point *q1,BDS_Point *q2) const ; + virtual ~BDS_SwapEdgeTestDelaunay(){} +}; + class BDS_Mesh { public: diff --git a/Mesh/BackgroundMesh.cpp b/Mesh/BackgroundMesh.cpp index 5c05e084387da9164f39232153a01ed9d2cf1649..3df339fd56d8b3e39f6bdc324f39e32e354337f5 100644 --- a/Mesh/BackgroundMesh.cpp +++ b/Mesh/BackgroundMesh.cpp @@ -1,4 +1,4 @@ -// $Id: BackgroundMesh.cpp,v 1.17 2007-03-21 23:27:17 geuzaine Exp $ +// $Id: BackgroundMesh.cpp,v 1.18 2007-04-12 08:47:25 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -170,7 +170,7 @@ double LC_MVertex_PNTS(GEntity *ge, double U, double V) { GVertex *gv = (GVertex *)ge; double lc = gv->prescribedMeshSizeAtVertex(); - if(lc >= MAX_LC) return CTX.lc / 10.; + if(lc >= MAX_LC) {return CTX.lc / 10.;} return lc; } case 1: diff --git a/Mesh/HighOrder.cpp b/Mesh/HighOrder.cpp index 9c5ff830ba92cfe4b3151fd7f0db6bcec62162b1..b1a90cda3838ebbdbdb2aabe1ce1af761dd706f4 100644 --- a/Mesh/HighOrder.cpp +++ b/Mesh/HighOrder.cpp @@ -1,4 +1,4 @@ -// $Id: HighOrder.cpp,v 1.11 2007-03-18 12:05:16 geuzaine Exp $ +// $Id: HighOrder.cpp,v 1.12 2007-04-12 08:47:25 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -784,10 +784,9 @@ void SetOrderN(GModel *m, int order, bool linear, bool incomplete) if(CTX.mesh.smooth_internal_edges){ for(GModel::fiter it = m->firstFace(); it != m->lastFace(); ++it) for (int i = 0; i < 10; i++) smoothInternalEdges(*it, edgeVertices); + checkHighOrderTriangles(m); } - checkHighOrderTriangles(m); - double t2 = Cpu(); Msg(INFO, "Mesh second order complete (%g s)", t2 - t1); Msg(STATUS1, "Mesh"); diff --git a/Mesh/meshGFace.cpp b/Mesh/meshGFace.cpp index 25e9fa9956955340a4e473e6b73b20147e507570..fdbbc8e38b3fedf70d55de69c82db9efe891dea6 100644 --- a/Mesh/meshGFace.cpp +++ b/Mesh/meshGFace.cpp @@ -1,4 +1,4 @@ -// $Id: meshGFace.cpp,v 1.69 2007-04-01 10:29:42 geuzaine Exp $ +// $Id: meshGFace.cpp,v 1.70 2007-04-12 08:47:25 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -187,6 +187,47 @@ bool edgeSwapTest(BDS_Edge *e,GFace *gf) return q2 < 0.5*q1; } +void fourthPoint (double *p1, double *p2, double *p3, double *p4) +{ + double c[3]; + MTriangle::circumcenterXYZ(p1,p2,p3,c); + double vx[3] = {p2[0]-p1[0],p2[1]-p1[1],p2[2]-p1[2]}; + double vy[3] = {p3[0]-p1[0],p3[1]-p1[1],p3[2]-p1[2]}; + double vz[3]; prodve (vx,vy,vz); + norme(vz); + double R = sqrt((p1[0]-c[0])*(p1[0]-c[0])+ + (p1[1]-c[1])*(p1[1]-c[1])+ + (p1[2]-c[2])*(p1[2]-c[2])); + p4[0] = c[0] + R * vz[0]; + p4[1] = c[1] + R * vz[1]; + p4[2] = c[2] + R * vz[2]; +} + +bool edgeSwapTestDelaunay(BDS_Edge *e,GFace *gf) +{ + + if (CTX.mesh.algo2d == ALGO_2D_MESHADAPT) + return edgeSwapTest (e,gf); + + BDS_Point *op[2]; + + if(!e->p1->config_modified && ! e->p2->config_modified) return false; + + if(e->numfaces() != 2) return false; + + e->oppositeof (op); + + double p1x[3] = {e->p1->X,e->p1->Y,e->p1->Z}; + double p2x[3] = {e->p2->X,e->p2->Y,e->p2->Z}; + double op1x[3] = {op[0]->X,op[0]->Y,op[0]->Z}; + double op2x[3] = {op[1]->X,op[1]->Y,op[1]->Z}; + double fourth[3]; + fourthPoint(p1x,p2x,op1x,fourth); + double result = gmsh::insphere(p1x, p2x, op1x, fourth, op2x) * gmsh::orient3d(p1x, p2x, op1x, fourth); + return result > 0.; +} + + int edgeSwapTestQuality(BDS_Edge *e, double fact = 1.1) { BDS_Point *op[2]; @@ -390,9 +431,9 @@ void RefineMesh ( GFace *gf, BDS_Mesh &m , const int NIT) // result = 1 => oblige to swap because the quality is greatly improved if (!(*it)->deleted) { - int result = edgeSwapTestQuality(*it,3); + int result = edgeSwapTestQuality(*it,5); if (result >= 0) - if(edgeSwapTest(*it,gf) || result > 0) + if(edgeSwapTestDelaunay(*it,gf) || result > 0) if (m.swap_edge ( *it , BDS_SwapEdgeTestParametric())) nb_swap++; ++it; @@ -431,9 +472,9 @@ void RefineMesh ( GFace *gf, BDS_Mesh &m , const int NIT) if (NN2++ >= NN1)break; if (!(*it)->deleted) { - int result = edgeSwapTestQuality(*it,3); + int result = edgeSwapTestQuality(*it,5); if (result >= 0) - if(edgeSwapTest(*it,gf) || result > 0) + if(edgeSwapTestDelaunay(*it,gf) || result > 0) if (m.swap_edge ( *it , BDS_SwapEdgeTestParametric())) nb_swap++; ++it; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 67a78776d7c35357006c32a602b3f743dd51dbc9..f59e130bf3c3278eed7dc931ba44af7fbfd57654 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,5 +1,5 @@ %{ -// $Id: Gmsh.y,v 1.269 2007-03-24 12:42:03 geuzaine Exp $ +// $Id: Gmsh.y,v 1.270 2007-04-12 08:47:25 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -569,6 +569,14 @@ InterpolationMatrix : { View->adaptive = new Adaptive_Post_View(View, $3, $6); } + + tInterpolationScheme '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' tEND + { + View->adaptive = new Adaptive_Post_View(View, $3, $6, $9, $12); + } ; Time : diff --git a/benchmarks/step/linkrods_in_a_box.geo b/benchmarks/step/linkrods_in_a_box.geo index 85e61631ed2f5f241bf0362249c81693ebaf517a..7162a6bfcc53c3eef46f143d76e635f0af7571c3 100644 --- a/benchmarks/step/linkrods_in_a_box.geo +++ b/benchmarks/step/linkrods_in_a_box.geo @@ -24,10 +24,3 @@ Plane Surface(10006) = {10005}; tmp[] = Extrude {0, 0, (zmax - zmin) + 2 * l} { Surface{10006}; }; -Delete { Volume{tmp[1]}; } - -Surface Loop(10029) = {10027,10006,10015,10019,10023,10028}; -Surface Loop(10030) = {7,9,10,11,8,6,28,26,36,15,2,4,5,12,3,1,13,24,23,14,16,22,21,18,20,37,34,19,17,35,31,33,32,30,29,27,25}; -Volume(10031) = {10029,10030}; - -Mesh.CharacteristicLengthFactor = 0.3;