Posts
Mini Maker Faire Orlando Report: Hardware
I had a lot of fun at the Orlando Mini Maker Fair today! In this post I’m going to highlight some of the hardware vendors who took the time to come out and show their stuff to the community.
80/20: The Industrial Erector Set
80/20 is a company that makes modular aluminum framing systems. Their motto is “The Industrial Erector Set,” and it’s a good description of their product. Our local distributor is Florida Motion and Control. If you ever might need to build any kind of machine or robot, you need to browse the 80/20 web site and bookmark it. I have never used it, but I am desperately looking for a project that will require this!
Benchmarking BLAS Part 1: Building BLASbench with gcc
I recently installed ATLAS on my new workstation and I’ve been wondering what kind of performance gain I would get compared to the reference BLAS. After some searching, I finally found a BLAS benchmarking tool called BLASbench, which is part of the LLCbench suite. This tool has a rather strange build process, so follow the instructions on the web page. You have to create a file called sys.def which contains build instructions for your system. Here’s the sys.def file I used for my Gentoo system:
Building NumPy on a 64-bit Red Hat Cluster with Intel MKL
In a previous post I described how to build an optimized version of NumPy using the Intel compilers and Math Kernel Library (MKL). This post will update those instructions, since it has been a few years and I am now using NumPy 1.6.1, MKL 10.0.1.014 and Red Hat 4.1.1 (kernel 2.6.18-8.el5). First, copy the file site.cfg.exampletosite.cfg and open it in an editor like vim. The commented lines in the file give some explanation of how it works. You only need to add the following lines:
We won Startup Weekend Orlando!
Our team (Mole Shopper) won Startup Weekend Orlando! It was a great experience, and I highly recommend that anyone who is interested in entrepreneurship attend a Startup Weekend event. An MBA might tell you about how business is supposed to work, but launching a business in 52 hours will show you how business _actually_works. We owe a great debt to the volunteer mentors that helped us formulate our business plan and refine our pitch. We won $5,000 in seed funding from Startup Orange County (Florida), three months of incubation at the UCF Venture Lab, 4 months of internet marking and social media consulting by Pro2Go Designs, 2 months of legal services by The Entrepreneurship Law Firm, a $500 credit for VoiceBunny and a subscription to Startup Threads.
Partial derivative notation in Sage
This post will explain the notation used to denote partial derivatives in the output from Sage. It’s confusing at first, but a simple example will make it clear. Here is the input to Sage:
var('x y')
function('test', x, y)
show(test(x, y))
show(diff(test(x, y), x))
show(diff(test(x, y), x, 2))
show(diff(test(x, y), y))
show(diff(test(x, y), y, 2))I defined a function of two variables called test. When you run this in the notebook interface, you get:
Publication-quality plots with Excel
Microsoft Office tools are not the best choice for scientific publications, but sometimes you have to use them. Some journals actually require Word documents, and many of my collaborators simply don’t do LaTeX. The process outlined below is they best way that I’ve found to make high-quality plots and charts with Microsoft Excel. High-quality graphics with consistent size, aspect ratio, typeface, and font size will make your publications look much more professional. You can do this with Excel, but it requires some effort. You will need to install the free Bullzip PDF Printer before you begin. 1. Create and format the chart correctly in Excel. It’s better to insert a “floating” chart in an existing worksheet, as shown below, rather than creating a new worksheet that contains only the chart. Set the size of the chart by right-clicking near the edge of the chart and selecting Format Chart Area. Then select Size and set the actual size and aspect ratio that you want (try 3 inches by 4 inches). If you want a set of plots to have consistent formatting, it is very important that they are the exact same size in Excel! If the finished plots must be different sizes but have the same formatting, make the outer dimensions for all the charts big enough to accommodate the largest plot. Then shrink the plot within the frame, leaving whitespace which will be cropped out at a later step. Also set correct font sizes, line widths, colors, etc.
Installing PETSc and libMesh on CentOS 5
Prerequisites: boost-devel, openmpi-devel, valgrind-devel I installed PETSc and libMesh in my user directory, since I have a single-user workstation.
Installing PETSc for use with libMesh
First, ensure that OpenMPI is installed and the system paths have been configured correctly. You will need to add the directory containing OpenMPI binaries to your $PATH, and the directory containing OpenMPI libraries to $LD_LIBRARY_PATH. CentOS does not do this automatically! Type mpicc on the command line to make sure the shell can find the binary. If mpicc and mpif77 run, then you should not need to use the comnand-line flags to the configure script for PETSc. If you are going to use libMesh with PETSc, you need to enable C++ with a command-line option to the configure script. Here is the process I used (it might be a good idea to set PETSC_ARCH and PETSC_DIR in your .bashrc so they are consistent for all builds).
Paraview 3.12 on 64-bit CentOS 5.7
I finally got around to installing Paraview on my CentOS 5 box. There are no official RPMS for CentOS 5, so I was expecting a painful build process. To my great surprise, I was able to download the Paraview binary for Linux (64-bit) from Kitware, unpack the archive, and run it! As root, I placed the entire ParaView-3.12.0 directory under /opt/Paraview. You could also keep it in your home directory if you are running a single-user system. I added /opt/Paraview/ParaView-3.12.0/bin to the $PATH in the .bashrc file in my home directory. Now I can type paraview at the command line and it runs! What if you want Paraview to appear in the Applications menu in your desktop environment? Most modern desktops (I use XFCE4) construct the Applications menu “on the fly” based upon the files in a standard directory (/usr/share/applications on CentOS). The Free Desktop Project has created a standard for desktop entry files. You may also find this summary of the standard to be helpful. To add Paraview to the menu, you simply need to create a new file in the standard location. If you installed Paraview in your user directory, you may want to place the desktop file in $HOME/.local/applications. Here are the contents of a file I called paraview.desktop:
Portfolio
Past Research and Development Projects
Used nonlinear optimization tools to develop signal processing devices Modeled the effect of parasitics from bond wires and packaging on the performance of radio-frequency devices, using a combination of lumped-element and finite-element models Created a reduced-order model of the accuracy and penetration performance of armor-piercing projectiles, for use in a OneSAF tactical simulation Developed a basic flight-training scenario for the Orlando Executive Airport, including custom 3D scenery objects