| Date | File | Comment by | Comment | Rating |
|---|---|---|---|---|
| 18 Oct 2009 | MESH2D - Automatic Mesh Generation Generates unstructured triangular meshes for general 2D geometry. | Karaoulis, Marios | ||
| 18 Oct 2009 | MESH2D - Automatic Mesh Generation Generates unstructured triangular meshes for general 2D geometry. | Karaoulis, Marios | Do you have any thoughts going 3D? |
|
| 14 Oct 2009 | MESH2D - Automatic Mesh Generation Generates unstructured triangular meshes for general 2D geometry. | Engwirda, Darren | Author comment: v24 was posted to resolve a licence conflict. The Mathworks no longer allows code to be released under a GNU GPL, so this has been removed for v24. There are some (minor) revisions to the code, based on user feedback. Specifically, v24 may be slightly slower than v23, but should generally produce higher quality meshes, especially for complex geometries. Comments/feedback is always welcome - d_engwirda@hotmail.com |
|
| 14 Oct 2009 | MESH2D - Automatic Mesh Generation Generates unstructured triangular meshes for general 2D geometry. | Karaoulis, Marios | Hi, thanks again for your software. What's new in this version ( i am using v23). |
|
| 07 Sep 2009 | tinterp - an alternative to griddata Linear and quadratic interpolation for scattered data | lopez, carlos | I would like to have more information of the theory behind this. What it means that it is "quadratic"? Should it be exact for 2nd. degree functions? I tried this
Apparently from this example the interpolant is C0 (i.e. continuous but not differentiable), but it is a little bit misleading what is meant by "quadratic". I tried to contact the author before posting, but apparently changed addres. Thank you anyway for his contribution. |
|
| 01 Sep 2009 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Kohoutek, Jack | ||
| 14 May 2009 | tinterp - an alternative to griddata Linear and quadratic interpolation for scattered data | Williams, Jo | ||
| 19 Apr 2009 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | F, Nik | ||
| 13 Mar 2009 | Fast sparse matrix vector product sparse matrix vector product | Becker, Stephen | There's actually a very important point here. Because of how Matlab stores a sparse matrix (see Tim Davis' book, or read the help on, say, mxGetIc), and because a major bottleneck for these computations is loading data into the CPU's cache, it is MUCH faster to store a matrix by row, instead of column, when doing matrix-vector multiples. In Matlab, this is easy to remedy: simply take the transpose. So, this cool trick can save you time. If you want to do this repeatedly:
But, this trick only works on newer versions of Matlab. On, say, R2006b, a call like
On older versions of Matlab, it's likely that this SMVP code will really help, but it might not be as helpful on R2008, for example. On linux, non-multithreaded R2006a, I found that SMVP took about 60% the time of Matlab's own multiply. So, good work! |
|
| 03 Feb 2009 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Moser, Clemens | Works very well, there is just a minor issue: the contours are not interpolated at the boundaries of the surface . |
|
| 23 Nov 2008 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Giaccari, Luigi | Thank You,
If I can suggest an improvement:
|
|
| 07 Nov 2008 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Lindbo, Dag | Very nice routine! Is it reasonable to look for more efficient method for the particular case when the points to query at can be assumed to lie on a cartesian grid? E.g. imagine in = inpoly(p,node); with p = {X, Y}, where [X Y] = meshgrid(x,y) Thanks! |
|
| 18 Sep 2008 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Wan, Lili | It is a good job, but I still find some problems when detecting a point of a polygon lies on the polygon edge. My test run in Matlab R2006a. Suppose node be the points of a polygon,
|
|
| 06 Aug 2008 | Fast Sparse LU substitution A dedicated mex-file for use with UMFPACK to complete the forward and back substitution quickly | Xu, Donghua | It appears to work in the x32 but not the x64 version of Matlab. In the latter, it is actually slower than the built-in method, particularly for large sparse matrices. I recommend the cs_lu or klu methods by TA Davis which are very efficient in the x64 version. |
|
| 03 Apr 2008 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Müller, Armin | Very fast, very accurate. Good jobb, Darren! |
|
| 25 Mar 2008 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Marks, Joseph | My review below is too harsh. After examining several runs on many different "ultra-concave" polygons, I have found inpoly to be very good. If the error problem I reported earlier is real, it is very rare. It could have been due to some other factor in my software including my own bug. inpoly is very much faster than inpolygon for large test vectors. |
|
| 19 Mar 2008 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Marks, Joseph | inpoly provides a very large speed increase for large polygon problems! Unfortunately, I too noticed a bug. I am checking a very large rectangle grid's points to see if they are in a "massively concave polygon" -- think the outline of a "robot with arms, legs, etc." The inpoly algorithm "incorrectly" *ADDS* a "shock of hair" to the "robot" -- obviously I am speaking metaphorically here -- and hence I am stuck using the *MUCH SLOWER* "inpolygon". Has anyone reported an error like this to you? Is there anything I can do? Is there some middle ground between the two -- for example, by and large, I am dealing with concave polygons that just have an outside boundary -- no hole or anything. |
|
| 07 Feb 2008 | tinterp - an alternative to griddata Linear and quadratic interpolation for scattered data | M., Craig | I make hundreds of 2D interpolations for a given triangulation. This function is exactly what I need. Thx. |
|
| 16 Apr 2007 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Engwirda, Darren | Small bug (as noted below) fixed. Users don't beware, inpoly should work in all cases. Further bugs can be emailed if necessary... |
|
| 12 Apr 2007 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Storer, Alex | Very fast, but fails on some cases. Users beware! Perhaps older versions are more robust? |
|
| 08 Apr 2007 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | M, Michael | It's an incredible speed up compared with the poor inpolygon function delivered with MATLAB! Must be O(M*log(N)) ;-) |
|
| 21 Feb 2007 | Fast sparse matrix vector product sparse matrix vector product | Davis, Tim | Regarding the comment on checking for NULL return of mxCreateDoubleMatrix: it's not necessary. If the allocation fails, MATLAB will automatically terminate the mexFunction and clean up any allocated memory. If it was malloc, then yes, you would need to check for NULL. This is a fine example of how to use mxCreateDoubleMatrix. The only design issue that should be corrected is the "nlhs!=1" test (a minor point). If you simply do >> smvp(A,b) with no output arguments, then nlhs is set to zero. You can still write to plhs[0], and the result will go in the "ans" variable. |
|
| 20 Feb 2007 | Fast sparse matrix vector product sparse matrix vector product | S., Martin | Works but offers almost very minor 8% speedup as of Matlab 2006.
2) The routine fails to check that the matrix allociation succeeded (may run out of memory). Need to add a NULL check to plhs[0] = mxCreateDoubleMatrix(mxGetM(prhs[0]), 1, mxREAL); 3) Change if (nlhs!=1) to if (nlhs > 1) Summary: works but very limited speedup. |
|
| 12 Feb 2007 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | K., Matt | Perfectly suited for my needs of finding points on the boundary of a polygon |
|
| 13 Jan 2007 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Groh, Friedemann | ||
| 20 Dec 2006 | Fast sparse matrix vector product sparse matrix vector product | Lee, Shelley | It would be excellent if it can support
|
|
| 01 Dec 2006 | tinterp - an alternative to griddata Linear and quadratic interpolation for scattered data | D'Errico, John | An alternative to griddata - similar in speed when you add in the time for the triangulation. The advantage of this code is if you already have a triangulation, then this saves the time to regenerate it. It also allows you to use a custom, non-delaunay triangulation - not an option at all for griddata. A disadvantage of this code is it forces you to do the triangulation to call it. Its an unnecessary step for many people, so I'd probably be tempted to allow the user to not supply the triangulation, so if t is empty it could just call delaunay. This code offers properties similar to griddata. It will not extrapolate beyond the convex hull of the data, Extrapolation is risky business of course, so thats not necessarily bad. Good help, examples. The quadratic interpolant is an interesting idea. |
|
| 08 Aug 2006 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Tahir, Rabi | Works well... seems to be a bit slow, but I may be showing a bias (comparing with traditional fortran generated machine code) |
|
| 28 Jul 2006 | Fast Sparse LU substitution A dedicated mex-file for use with UMFPACK to complete the forward and back substitution quickly | Lee, Shelley | It's really faster. Unfortunately, it does
|
|
| 05 May 2006 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | sundhararaju, prabhakaran | it's very usefull for chemical, mechanical and civil. to analysis critical domain. i wish to develop 3D domain also |
|
| 30 Apr 2006 | Fast sparse matrix vector product sparse matrix vector product | Beardmore, Robert | I had no problems using this file and it is around 5 times quicker than matlab's A*b for the problems I tried. |
|
| 01 Apr 2006 | Fast sparse matrix vector product sparse matrix vector product | Kvasnicka, Michal | The zip file is corrupted. The matrix.mat file can not be extracted. |
|
| 29 Mar 2006 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Asghari, Babak | ||
| 21 Mar 2006 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Zuor, Kong | This is what I have been looking for since I start using Matlab. Great job well done! I wish to see this code in the next Matlab release. I find this code very useful to those who solve CFD problems with matlab. The author deserve my five star ranking. I would encourage the author to advance this code for 3D case. I am free at last!
|
|
| 21 Mar 2006 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | Oswald, M. | Very good contribution. I wish the author could extend the tricontour function to handle 3D triangle meshes as well. |
|
| 20 Mar 2006 | Contours for triangular grids Generate smooth contours for functions defined on unstructured triangular grids | D'Errico, John | Very nice. This is a function that should have been in Matlab itself since the day they provided trisurf and trimesh. It handled some troublesome cases I tried when I tried to break it. I'll give it a 5 rating because it deserves that rating. My only wish is that it was even more compatible with the contour functionality of matlab. For example, no handles are returned, in case you wish to set a line color or style. It might also be nice to provide a way to label the contours via clabel. |
|
| 19 Mar 2006 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | (us) Schwarz, Urs | QUOTE
|
|
| 17 Mar 2006 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | Engwirda (The author), Darren | The reason that cnect is defined on its own is so that the domain can be multiply connected (polygon with "islands"). If you assume that cnect can be built by taking consecutive nodes this is no longer possible. Thanks though, I will update it to flag boundary points as us mentioned. |
|
| 17 Mar 2006 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | D'Errico, John | While I prefer the edge list implementation this code uses as opposed to Matlab's polygon, it would be easy enough to generate the connectivity assuming consecutive points on the polygon as us points out.
|
|
| 17 Mar 2006 | Fast points-in-polygon test Fast test to determine points located inside general polygon regions. Should be significantly faster | (us) Schwarz, Urs | very nice (and indeed fast) snippet with a good help section and economic implementation of the crossing number test
|
|
NOTICE: Any content you submit to MATLAB Central, including personal information, is not subject to the protections which may be afforded information collected under other sections of The MathWorks, Inc. Web site. You are entirely responsible for all content that you upload, post, e-mail, transmit or otherwise make available via MATLAB Central. The MathWorks does not control the content posted by visitors to MATLAB Central and, does not guarantee the accuracy, integrity, or quality of such content. Under no circumstances will The MathWorks be liable in any way for any content not authored by The MathWorks, or any loss or damage of any kind incurred as a result of the use of any content posted, e-mailed, transmitted or otherwise made available via MATLAB Central. Read the complete Terms prior to use.
Contact us at files@mathworks.com