Rank: 183 based on 275 downloads (last 30 days) and 9 files submitted
photo

Tucker McClure

E-mail
Company/University
The MathWorks, Inc.
Lat/Long
33.857655, -118.29303

Personal Profile:

I'm an aerospace engineer and worked on air and space vehicle guidance, navigation, and control systems for four years. My work was so rapidly accelerated with tools from The MathWorks that I finally joined with the company to help others advance their own scientific and engineering endeavors.

On the side, I create music (sometimes with MATLAB) and published an album which is available from any major online service like Pandora.

Professional Interests:
autonomy, guidance, control, aerospace, machine learning, sound synthesis, music, optimization, emergent behavior

 

Watch this Author's files

 

Files Posted by Tucker View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
25 Jul 2013 Screenshot MIDI Interface for MATLAB Supports bringing incoming MIDI data into MATLAB on Windows. Author: Tucker McClure midi, audio, driver, windows sdk 23 0
23 Jul 2013 Screenshot Functional Programming Constructs A set of files for treating many operations, like "if", "for", and even "()", as functions. Author: Tucker McClure functional programmin..., anonymous function, function handle, anonymous conditional, anonymous loop 52 5
  • 5.0
5.0 | 6 ratings
25 Apr 2013 Screenshot Table Breakpoint Optimization A set of tools for finding the best way to reduce the size of a table. Author: Tucker McClure optimization, breakpoints, tables, fitting 28 0
09 Apr 2013 Screenshot Fetch (Big) Fetch command useful for SELECT queries on large data sets. Author: Tucker McClure fetch, database, query, select, big data, large data 9 4
15 Mar 2013 Screenshot Plot (Big) Makes MATLAB's line plots much faster. Author: Tucker McClure big data, line plot reducer, line plot, pick of the week, potw 38 4
  • 4.71429
4.7 | 7 ratings
Comments and Ratings by Tucker View all
Updated File Comments Rating
19 Jul 2013 Ellipsoid fit Fits an ellipsoid to data using linear least squares. Author: Yury Petrov

This is well done. I especially appreciate the multiple input methods.

The flag=0 method can easily return imaginary results for noisy data. Note that the flag=0 method is also trying to find the primary axes of the ellipsoid. For those getting imaginary results when using flat=0 (the default), if your ellipsoid is expected to already be aligned with x, y, and z, then just use flag=1. This works quite well even when flag=0 falls apart.

I see some folks are using this for magnetometer data, which has a "hard iron" offset. To convert from raw data to points on a unit sphere:

[c, r] = ellipsoid_fit(raw, 1);

% For a single point, k:
unit_sphere(:, k) = (raw(:, k) - c)./r

% For multiple points, vectorized:
unit_sphere = diag(1./r) * (m - c * ones(1, size(m, 2)));

% Just for kicks using bsxfun:
unit_sphere = bsxfun(@times, 1./r, bsxfun(@minus, m, c))

08 Jul 2013 Figure Rotator Allows a user to easily navigate around a target point in a 3D figure using a mouse. Author: Tucker McClure

Hi Mohamed,

Thanks for the feedback! Oliver's tool (the URL is in his comment below) includes panning. Panning could also be added directly to the FigureRotator, but I chose not to do this for a good reason. The FigureRotator is an "orbit a point" type motion instead of a "stand in a point and look around" type of motion. As such, if one was to pan around a bit, the point that one is "orbiting" becomes unclear, and getting it where one wants it might be difficult.

When I've created tools like this in the past for specific projects, I usually added "hotkeys" or something to change the orbit point (CameraTarget) from one object (say, a location on the ground) to another object (say, a satellite).

If you'd definitely like to add panning to this and aren't concerned about "losing" the orbit point, then just message me, and I can provide some tips!

Thanks again.

24 Jun 2013 Plot (Big) Makes MATLAB's line plots much faster. Author: Tucker McClure

Excellent point, dberm22.

Kelly, good suggestions. Plotting detailed coastlines would be a great use case for improvement! In the meantime, if you're displaying landmasses with patches, do you know about reducepatch? This could be used (pre-rendering) for multiple levels of fidelity.

Thanks to all for the ratings!

15 Mar 2013 Numerical Inverse Laplace Transform Numerical approximation of the inverse Laplace transform for use with any function defined in "s". Author: Tucker McClure

Hi Mohamed,

No, this is for continuous time only. However, Dr. Dan Ellis of Columbia University has an example of a numerical inverse z-transform written in MATLAB located here: http://www.ee.columbia.edu/~dpwe/e4810/matlab/s10/html/eval_z_transf.html

Note that this type of inversion is notoriously tricky to do numerically, as it requires very precise numbers. Working with the Symbolic Toolbox allows you to request arbitrary precision (e.g., 64 digits of precision).

Hope that helps!

- Tucker

13 Mar 2013 Functional Programming Constructs A set of files for treating many operations, like "if", "for", and even "()", as functions. Author: Tucker McClure

Hey, thanks for all the good feedback everyone. I appreciate your taking the time to leave a rating!

Comments and Ratings on Tucker's Files View all
Updated File Comment by Comments Rating
08 Jul 2013 Figure Rotator Allows a user to easily navigate around a target point in a 3D figure using a mouse. Author: Tucker McClure McClure, Tucker

Hi Mohamed,

Thanks for the feedback! Oliver's tool (the URL is in his comment below) includes panning. Panning could also be added directly to the FigureRotator, but I chose not to do this for a good reason. The FigureRotator is an "orbit a point" type motion instead of a "stand in a point and look around" type of motion. As such, if one was to pan around a bit, the point that one is "orbiting" becomes unclear, and getting it where one wants it might be difficult.

When I've created tools like this in the past for specific projects, I usually added "hotkeys" or something to change the orbit point (CameraTarget) from one object (say, a location on the ground) to another object (say, a satellite).

If you'd definitely like to add panning to this and aren't concerned about "losing" the orbit point, then just message me, and I can provide some tips!

Thanks again.

08 Jul 2013 Figure Rotator Allows a user to easily navigate around a target point in a 3D figure using a mouse. Author: Tucker McClure Aissiou, Mohamed

Hi Tucker,
Do you have an idea how panning (using the mouse) can be added?

I tried to work with 'Cameratarget','Cameraposition' and 'Cameraupvector'.... but no way.

24 Jun 2013 Plot (Big) Makes MATLAB's line plots much faster. Author: Tucker McClure McClure, Tucker

Excellent point, dberm22.

Kelly, good suggestions. Plotting detailed coastlines would be a great use case for improvement! In the meantime, if you're displaying landmasses with patches, do you know about reducepatch? This could be used (pre-rendering) for multiple levels of fidelity.

Thanks to all for the ratings!

24 Jun 2013 Plot (Big) Makes MATLAB's line plots much faster. Author: Tucker McClure dberm22

I did my own testing on this for speed, and at first I was tempted to give this 1 star because the tic-toc results show that reduce_plot() takes twice as long to create the plot than the regular plot() does. Don't be fooled by this! tic-toc does not take into account how long it takes to show the plot on the screen, for which reduce_plot() is extremely efficient. Also, with the such large amount of numbers I was using, zooming was rendered impossible with the normal plot() function. reduce_plot() was a life-saver in those scenarios.

plot() = 1.66s (create plot) + 7.54s (show on screen) = 9s total (& cannot zoom)
reduce_plot = 3.65s (create plot) + .8s (show on screen) = 4.45s total + .7s (zooming) = priceless

18 Jun 2013 Plot (Big) Makes MATLAB's line plots much faster. Author: Tucker McClure Kearney, Kelly

Very useful function. However, it currently only works if your data describes a function (in the mathematical sense of one y per x). It would be great if it could be extended to work when the y axis is the independent variable, or for lines defining polygons (for example, I originally stumbled on this looking for a more efficient way to plot high-resolution coastlines while allowing lots of efficient zooming and panning).

Top Tags Applied by Tucker
audio, big data, camera, midi, 2d probability distribution
Files Tagged by Tucker View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
25 Jul 2013 Screenshot MIDI Interface for MATLAB Supports bringing incoming MIDI data into MATLAB on Windows. Author: Tucker McClure midi, audio, driver, windows sdk 23 0
23 Jul 2013 Screenshot Functional Programming Constructs A set of files for treating many operations, like "if", "for", and even "()", as functions. Author: Tucker McClure functional programmin..., anonymous function, function handle, anonymous conditional, anonymous loop 52 5
  • 5.0
5.0 | 6 ratings
25 Apr 2013 Screenshot Table Breakpoint Optimization A set of tools for finding the best way to reduce the size of a table. Author: Tucker McClure optimization, breakpoints, tables, fitting 28 0
09 Apr 2013 Screenshot Fetch (Big) Fetch command useful for SELECT queries on large data sets. Author: Tucker McClure fetch, database, query, select, big data, large data 9 4
15 Mar 2013 Screenshot Plot (Big) Makes MATLAB's line plots much faster. Author: Tucker McClure big data, line plot reducer, line plot, pick of the week, potw 38 4
  • 4.71429
4.7 | 7 ratings

Contact us