Rank: 5 based on 3108 downloads (last 30 days) and 51 files submitted
photo

John D'Errico

E-mail
Company/University
Retired

Personal Profile:

Mainly retired from Eastman Kodak. (Of course, Kodak itself is now semi-retired. I don't think I had any influence in that.) I still write MATLAB code as I find something interesting, but I DON'T answer your questions, and I do NOT do homework. Your homework is YOUR problem, not mine. Do NOT e-mail me with your homework problems or student projects. When I'm not doing something with MATLAB, you might find me playing bridge.

Professional Interests:
Bridge, MATLAB, numerical analysis, mathematical modeling

 

Watch this Author's files

 

Files Posted by John View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
27 Feb 2013 Screenshot distance2curve Find the closest point on a (n-dimensional) curve to any given point or set of points Author: John D'Errico arclength, interpolant, distance, interpolation, curve, space curve 68 6
  • 5.0
5.0 | 3 ratings
02 Jan 2013 Inverse (integrated) gradient Vectorized & fully sparse 1-d, 2-d, & 3-d integrated gradients Author: John D'Errico integration, simpsons rule, gradient, cumulative, trapezoidal rule, numerical integration 37 4
  • 5.0
5.0 | 4 ratings
10 Dec 2012 HPF - a big decimal class High precision floating point arithmetic, a new class written in MATLAB Author: John D'Errico hpf, multiple precision, big decimal, floating point, arithmetic, mathematics 50 5
  • 5.0
5.0 | 6 ratings
06 Sep 2012 Screenshot Inhull Efficient test for points inside a convex hull in n dimensions Author: John D'Errico convex hull, inhull, hull, tsearch, tsearchn 59 33
  • 4.57143
4.6 | 22 ratings
16 Aug 2012 Screenshot IPDM: Inter-Point Distance Matrix An efficient and accurate Inter-Point Distance Matrix Author: John D'Errico distance, interpoint, distances, euclidean, metrics, nearest neighbor 39 11
  • 4.57143
4.6 | 7 ratings
Comments and Ratings by John View all
Updated File Comments Rating
24 Apr 2013 Tree-Ring MATLAB Toolbox Utility functions for analyzing tree-ring data with MATLAB. Author: David Meko

This file has been on the FEX for a while without much attention, so let me take a look.

It is a pretty specialized area, where I am not an expert, so I would not rate this tool on its intended usage. (Some of the pieces are pretty generic, so the eigen.m code is something I could talk about. It was well written.)

However, I can talk about the overall tool itself, in terms of the code. Every part I looked at had excellent documentation. There were internal comments, H1 lines, all things I like to see. Where appropriate, I found matrix operations instead of loops, etc.

16 Apr 2013 Covariance matrix Return covariance matrix for given data matrix X (row = object, column = feature) Author: Kardi Teknomo

This is not badly written. It does use array operations to do the job. It does have some meager help, although not an H1 line.

The problem is that an existing code already exists in MATLAB, that is faster, better written, with better help, and more options.

X = randn(1000000,10);
timeit(@() Covariance(X))
ans =
0.1096

timeit(@() cov(X))
ans =
0.0771

X = randn(100000,3);
timeit(@() cov(X))
ans =
0.0012

timeit(@() Covariance(X))
ans =
0.0035

02 Apr 2013 MAX WIDTH CALCULATING MAX WIDTH FROM A SERIES Author: Cesar Manuel Diez Chirinos

Note that:

- Fully half the code is commented out.
- It starts with a clear all, that is commented out, but is unnecessary in a function.
- There is NO documentation, except for the trivial line: "How does it work", which does not actually tell how it works!!!!!
- The line "for i = 1" effectively executes "i = 1", but takes more programming effort, and confuses things. Why add an end statement when none is needed?

%clear all;
function widthA(d)

%how does it work?
%widthA(d)
%d=[2 2 4 3 6 4 3 2 7 9 5 7 18];
% where d is your data
N=length(d);

%i=1;
%SD1 = d(:,i:N-1)
%SD2 = d(:,i+1:N)
%d1=SD1-SD2

for i = 1
SD1 = d(:,i:N-1);
SD2 = d(:,i+1:N);
d1=(abs(SD1))-(abs(SD2));
%corr(SD1(:,i:N-1),SD2(:,i:N-1))
%plot(ds)
end
df = max(d1)
%ad = min(d1)

[r,c,v] = find(d1==df);
%d1n = find(min(d1))
fl1=d(1,c)
fl2=d(1,c+1)

27 Mar 2013 Straightforward COPY and PASTE functions Allows very simple manual exchange with other applications through the clipboard. Author: Yvan Lengwiler

Nice. useful. Well done.

27 Mar 2013 Straightforward COPY and PASTE functions Allows very simple manual exchange with other applications through the clipboard. Author: Yvan Lengwiler

Comments and Ratings on John's Files View all
Updated File Comment by Comments Rating
30 Apr 2013 Variable Precision Integer Arithmetic Arithmetic with integers of fully arbitrary size. Arrays and vectors of vpi numbers are supported. Author: John D'Errico Reasoner, Thomas

I used it for prime number factorization. Works great!

24 Apr 2013 Consolidator Consolidates common elements in x (may be n-dimensional), aggregating corresponding y. Author: John D'Errico Suti

16 Apr 2013 SLM - Shape Language Modeling Least squares spline modeling using shape primitives Author: John D'Errico J, C

09 Apr 2013 Eigenshuffle Consistently sorted eigenvalue and eigenvector sequences Author: John D'Errico Laura

This is exactly what I needed. Unfortunately, it doesn't seem to work on eigenvalue problems where the crossings happen over a wide range, or where they cross and then cross back. For my system, this really only worked for small crossings.

04 Apr 2013 inpaint_nans Interpolates (& extrapolates) NaN elements in a 2d array. Author: John D'Errico Betters, Chris

Top Tags Applied by John
interpolation, curve, distance, modeling, regression
Files Tagged by John View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
27 Feb 2013 Screenshot distance2curve Find the closest point on a (n-dimensional) curve to any given point or set of points Author: John D'Errico arclength, interpolant, distance, interpolation, curve, space curve 68 6
  • 5.0
5.0 | 3 ratings
02 Jan 2013 Inverse (integrated) gradient Vectorized & fully sparse 1-d, 2-d, & 3-d integrated gradients Author: John D'Errico integration, simpsons rule, gradient, cumulative, trapezoidal rule, numerical integration 37 4
  • 5.0
5.0 | 4 ratings
10 Dec 2012 HPF - a big decimal class High precision floating point arithmetic, a new class written in MATLAB Author: John D'Errico hpf, multiple precision, big decimal, floating point, arithmetic, mathematics 50 5
  • 5.0
5.0 | 6 ratings
06 Sep 2012 Screenshot Inhull Efficient test for points inside a convex hull in n dimensions Author: John D'Errico convex hull, inhull, hull, tsearch, tsearchn 59 33
  • 4.57143
4.6 | 22 ratings
16 Aug 2012 Screenshot IPDM: Inter-Point Distance Matrix An efficient and accurate Inter-Point Distance Matrix Author: John D'Errico distance, interpoint, distances, euclidean, metrics, nearest neighbor 39 11
  • 4.57143
4.6 | 7 ratings

Contact us