Isogeometric Analysis Library

Today, I make my Isogeometric Analysis library available to you.

Written in Matlab, it reflects the time and effort that I spent in graduate school. It also shows unfortunate age, as B-splines and NURBS are fully supported, but not T-splines and other basis that are state-of-the-art. One day, I hope to return.

You can find my Isogeometric Analysis library here:
Download from GitHub

If you like regular, vanilla Finite Element Analysis:
Download from GitHub


Hearing Perturbation Theory

In numerical linear algebra, we create ways for a computer to solve a linear system of equations A\vec{x} = \vec{b}. In doing so, we analyze how efficiently and accurately we can find the solution \vec{x}.

Perturbation theory concerns how much error we incur in the solution \vec{x} when we perturb (spoil) the data A and \vec{b}. A classic statement tells us that the amount of error depends on the condition number of the matrix A.

I will define and prove the statement, and help you understand it by “hearing” it.

Continue reading “Hearing Perturbation Theory”

Math in Cross-Stitch

This year, I took up cross-stitching to decorate my place. I picked a complex design for the heck of it, too. Shortly after I inserted three strands into the fabric, I realized that we could cast cross-stitch as an optimization problem (shortest path).

See, if your strands haphazardly jump from one block to another, you will suffer a shortage of strands. The key is to, whenever possible, move from one block to an adjacent one horizontally or vertically by 1 unit. If that is not possible, then move diagonally in the fewest units possible.

By following these procedures, we get x’s on the front and a neat array of l’s on the back. I even saved enough strands to create a full border.

This slideshow requires JavaScript.