Transform between a cube’s surface and a square

I plan to add this transformation to my upcoming book on computational geometry. This mapping was originally conceived to provide a one-to-one correspondence between RGB color and locations on a dance floor for a positioning correction in a project on robotic square dancers, but then we realized that simply laying down QR codes with coordinate and orientation data would be far more accurate.

So what might be a good application for this transformation? It essentially maps the surface of the RGB cube (i.e., all fully saturated colors) to a square. One possibility would be to extend color plots that are conventionally used to depict one one variable to instead show two variables. In mechanics, for example, engineers typically show two different color plots for pressure and temperature, each with its own a linear legend bar ranging from a logical coordinate eta from 0 to 1, which is mapped to a selected linear color scheme (such as “hue” to range over the rainbow). In the single-variable color plots, the value of eta is set in proportion to the variable being plotted. To avoid needing two separate color plots for pressure and temperature a square color legend could be used with coordinates (eta1, eta2) associated with the two variables. While a “poor man’s” color plot mapping could be RGB[0,eta1,eta2], the one shown here would be far more spectacular because it would represent the full range of fully saturated colors (without “muddy” colors in the interior of the RGB cube) and, furthermore, values outside the range of interest would show as black.

Simulation of sand/soil/clay thrown explosively into obstacles

Here are a couple of cool movies created by CSM researcher, Biswajit Banerjee, in preparation for our project review this week:

  1. Clods of soil impact a plate:  A major advantage of the Material Point Method (developed as part of this research effort) is that it automatically allows material interaction without needing a contact algorithm.
  2. Extrapolated buried explosive ejecta. The sample is in a centrifuge to get higher artificial gravity, so the particles move to the side because of the Coriolis effect!

PUBLICATION: Continuum effective-stress approach for high-rate plastic deformation of fluid-saturated geomaterials with application to shaped-charge jet penetration


AUTHORS: Michael A. Homel · James E. Guilkey · Rebecca M. Brannon

ABSTRACT: A practical engineering approach for modeling the constitutive response of fluid-saturated porous geomaterials is developed and applied to shaped-charge jet penetration in wellbore completion. An analytical model of a saturated thick spherical shell provides valuable insight into the qualitative character of the elastic– plastic response with an evolving pore fluid pressure. However, intrinsic limitations of such a simplistic theory are discussed to motivate the more realistic semi-empirical model used in this work. The constitutive model is implemented into a material point method code that can accommodate extremely large deformations.Consistent with experimental observations, the simulations of wellbore perforation exhibit appropriate dependencies of depth of penetration on pore pressure and confining stress.


@article{  year={2015},  issn={0001-5970},  journal={Acta Mechanica},  doi={10.1007/s00707-015-1407-2},  title={Continuum effective-stress approach for high-rate plastic deformation of fluid-saturated geomaterials with application to shaped-charge jet penetration},  url={},  publisher={Springer Vienna},  author={Homel, Michael A. and Guilkey, James E. and Brannon, Rebecca M.},  pages={1-32},  language={English}  }

Undergraduate researcher applies binning to study aleatory uncertainty in nonlinear buckling foundation models


Sophomore undergraduate, Katharin Jensen, has developed an easily understood illustration of the effect of aleatory uncertainty, which means natural point-to-point variability in systems. She has put statistical variability on the lengths of buckling elements in the following system:


Continue reading

Linux file navigation aide (MSSwan python3 script)

If you have a lot of places that you routinely visit in your file system, often with ludicrously long path names, then click here to download a tar file that will alleviate the problem (once downloaded, execute `tar -xvf pyfsmem.tar` to obtain the python 3.x script).

Follow instructions in the script’s prolog (especially adding aliases to your bashrc). Then you can “remember” frequently visited directories and return to them with only a couple of keystrokes.

IMO, this is far better than pushd and popd because favorite places are remembered indefinitely (even with power failures).

Thanks to M. Scot Swan for providing this gem!

Publication (Abstract and Erratum): Second-order convected particle domain interpolation (CPDI2) with enrichment for weak discontinuities at material interfaces


Convected particle domain interpolation (CPDI) is a recently developed extension of the material point method, in which the shape functions on the overlay grid are replaced with alternative shape functions, which (by coupling with the underlying particle topology) facilitate efficient and algorithmically straightforward evaluation of grid node integrals in the weak formulation of the governing equations. In the original CPDI algorithm, herein called CPDI1, particle domains are tracked as parallelograms in 2-D (or parallelepipeds in 3-D). In this paper, the CPDI method is enhanced to more accurately track particle domains as quadrilaterals in 2-D (hexahedra in 3-D). This enhancement will be referred to as CPDI2. Not only does this minor revision remove overlaps or gaps between particle domains, it also provides flexibility in choosing particle domain shape in the initial configuration and sets a convenient conceptual framework for enrichment of the fields to accurately solve weak discontinuities in the displacement field across a material interface that passes through the interior of a grid cell. The new CPDI2 method is demonstrated, with and without enrichment, using one-dimensional and two-dimensional examples.

Bib data:

Sadeghirad, A., R. M. Brannon, J.E. Guilkey (2013) Second-order convected particle domain interpolation (CPDI2) with enrichment for weak discontinuities at material interfaces, Int. J. Num. Meth. Engr., vol. 95, 928-952


Bibtex entry:

author = {A. Sadeghirad and R.M. Brannon and J.E. Guilkey},
title = {Second-order convected particle domain interpolation ({CPDI2}) with
enrichment for weak discontinuities at material interfaces},
journal = {Intl. J. Num. Meth. Engng.},
year = {2013},
volume = {95},
pages = {928–952}

Erratum:  Eq. 33 should be

Corrected Eq. 33