For the @CarnegieMellon computer graphics take-home final, students have to implement a basic molecular dynamics (MD) simulator.

MD is a basic tool in computational chemistry, drug discovery, and understanding diseases like COVID-19.

Give it a try here!
github.com/CMU-Graphics/m…
Disclaimer: this is a simplified exercise for a final exam and should not be used for serious scientific work! It omits important forces and uses nonphysical constants.

Visualization is provided via the excellent #Polyscope library by CMU alumn @nmwsharp: polyscope.run
Bonus question: can you identify the molecule? :-)
Here's the PDF with all the exam questions:
github.com/CMU-Graphics/m…
The full course is available online for free, including a complete set of lecture videos:

Videos: youtube.com/playlist?list=…

Course webpage: 15462.courses.cs.cmu.edu/fall2021/

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Keenan Crane

Keenan Crane Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @keenanisalive

12 Dec
Here's another fun question: given two loops around an (infinite) pole, can you remove one loop without breaking it?

Amazingly enough... yes!

This is a surprising example of what's called an "ambient isotopy": a continuous deformation of space taking one shape to another. 1/n
People have made some great drawings of this transformation over the years (sometimes using a loop rather than an infinite pole—which is equivalent), but it can still be hard to interpolate between individual drawings in your head.

(...does a movie make it any clearer?!) 2/n
What's also fun about the motion in the movie above is that it was created without* human input: instead, the computer tries to nudge the shape around so that every point is as far as possible from itself. You can read all about it in this thread:
3/n
Read 6 tweets
9 Dec
What's the nicest way to draw a shape with many "holes"?

We can use the principle of repulsion to explore this question: each point of the shape behaves like a charged particle, trying to repel all others. Surface tension prevents everything from shooting off to infinity. 1/n
For millennia people have been drawn to the question: what are the "nicest" possible shapes that exist?

This is really a basic question about nature: these shapes exist outside space and time; the same shapes can be discovered by civilizations anywhere in the universe. 2/n
"Nicest" could mean the most symmetric—for instance, the ancient Greeks discovered there were five so-called Platonic solids where every face and every vertex looks the same: the tetrahedron, cube, octahedron, dodecahedron, and icosahedron. 3/n
Read 13 tweets
8 Dec
Suppose you have a pair of handcuffs linked together. Can you pull them apart without unlocking or breaking them, or letting them pass through themselves? With real handcuffs, definitely not! But if they're made of stretchy rubber, it turns out to be possible—as shown here. 1/9
This motion provides a surprising example of what is known in mathematics as an "ambient isotopy" of two surfaces: a continuous motion where the surface is not ripped, cut, pinched, or allowed to pass through itself. 2/9
A more classic example is the "unknot problem": given a loop of string, can it be untangled into a circle without cutting? Even this simple question turns out to be very hard to answer in general. And only gets harder when you start thinking about surfaces rather than curves. 3/9
Read 10 tweets
7 Dec
Excited to share *two* papers appearing at #SIGGRAPHAsia2021, on "Repulsive Curves" and "Repulsive Surfaces."

Tons of graphics algorithms find nice distributions of points by minimizing a "repulsive" energy.

But what if you need to nicely distribute curves or surfaces? (1/14)
We take a deep dive into this question, building fast algorithms for optimizing the recently developed "tangent-point energy" from surface theory.

Talk video:

Repulsive Curves: cs.cmu.edu/~kmcrane/Proje…
Repulsive Surfaces: cs.cmu.edu/~kmcrane/Proje…

(2/14)
The basic problem? Given a collection of points, curves, or surfaces in space, find a well-distributed arrangement that avoids (self-)intersection.

To make things interesting, you also usually have some constraints—like: the geometry is contained inside a bunny!
(3/14)
Read 14 tweets
2 Aug
Think knots are easy to untangle?

As a companion to our recent paper on "Repulsive Curves," we're releasing a dataset of hundreds of *extremely* difficult knots: cs.cmu.edu/~kmcrane/Proje…

In each case, a knotted & canonical embedding is given. Can you recover the right knot? 1/5
We've already tried a few dozen methods—from classics like "KnotPlot", to baselines like L-BFGS, to bleeding-edge algorithms like AQP, BCQN, etc.

For many knots, most these methods get "stuck," and don't reach a nice embedding.

Even our method doesn't hit 100%—but is close! 2/5
But this is a pretty unique problem relative to "standard" energies in geometry processing

For one thing, it considers all O(n²) pairs of points rather than just neighbors in a mesh

For another, you can't just *avoid* collisions—you have to maximize your distance from them. 3/5
Read 6 tweets
2 Aug
New paper with Chris Yu & Henrik Schumacher: cs.cmu.edu/~kmcrane/Proje…

We model 2D & 3D curves while avoiding self-intersection—a natural requirement in graphics, simulation & visualization.

Our scheme also does an *amazingly* good job of unknotting highly-tangled curves!

[1/n]
[2/n] Here's a short movie that summarizes some of what we do:

And if you don't care *how* it works, here's the code!
github.com/icethrush/repu…

Otherwise, read on to find out more!
[3/n] A classic problem is deciding if a curve is an "unknot": can it be untangled into a circle, without passing through itself?

We don't solve this problem conclusively—but can use untangling as a stress test for our method

Typically, we can untangle crazy knots, crazy fast!
Read 43 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(