Monday, January 30, 2006

Design tools for nanotechnology

I've thought a lot about nanotechnology design systems over the past ten years. First I read a beautiful description of a virtual reality system for studying molecular machines up close. It was feasible but not economical; some day that will change. Next I read a little about molecular mechanics, and realized that the principles involved were well within my mathematical and programming abilities.

So I wrote some code (first C, then Lisp, finally Java) that allowed you to put together a little structure with carbon, hydrogen, oxygen, and nitrogen. You could energy-minimize it, and theoretically I could have done equations of motion, but at some point I got busy with other things.

On mailing lists and Usenet, I continued to think more about design systems for nanotech.
  • In the electronics world there is a language for design and simulation called VHDL, which offers a lot of great facilities for managing the complexity of very large projects. Some day nanotech will have its own version of VHDL. Developing it will require learning which details can be safely ignored to give a really terse description of a useful structure.

  • When simulating, you don't want to model every single atom in a huge structure. Frequently you want to say that these million atoms just act like a big block, with a little rubberiness or sponginess, but I don't care about their individual vibrations inside the block.

  • It would be extraordinarily cool if I could put on VR goggles and force-feedback gloves and physically interact with the structures I design.

  • If we accept the premise that real nanotech hardware may be potentially dangerous, we should develop design and simulation software first, so that we're familiar with the dangerous things before they actually exist.
With nanoENGINEER-1, all these ideas and more are much closer to being implemented, or becoming much easier to implement. This whole collection of ideas will become much more accessible to many more people, and many will have much better ideas than I've had.

No comments: