An algorithm with linear complexity for interactive, physically-based modeling of large proteins

Physically-based modeling applications usually require batch processing for each frame of an animation or simulation. This paper describes a graphics modeling system, called Sculpr, that maintains physically-valid protein properties while a user interactively moves atoms. Sculpt models stiff properties such as bond lengths and angles as rigid constraints and models weak properties such as non-bonded interactions as potential energies. Sculpr continually satisfies the constraints and maintains a local energy minimum throughout user interaction. On a Silicon Graphics 240-GTX, Sculpt maintains 1,9 updates per second on a molecular model with 355 atoms ( 1065 variables, 1027 constraints, and 3465 potential energies). Performance decreases /r’nearly with increased problem size. This paper presents a Lagrange multiplier method with linear computational complexity that finds a constrained minimum for articulated figures with many more joints in their spines than in any limb (e.g. reptiles, mammals, and proteins). The method computes the Jacobian matrix of the constraints and solves a system of linear equations that results from muhiplying the Jacobian by its transpose. The paper proves that a sort of the Jacobian yields a band-diagonal pattern of nonzeros. The pattern does not change during a modeling session, so the sort can run during a pre-processing step. Multiplication and solution of band-diagonal matrices require computation that increases linearly with problem size. Previous applications of Lagrange multipliers to constrained, physically-based modeling did not take advantage of the constraint connectivity in the spine. They either required many iterations of a linear algorithm or few iterations of a quadratic algorithm for each frame of a simulation. This application finds a constrained minimum with a linear algorithm in a few iterations. Additionally, most of the algorithm’s steps execute in parallel for increased performance, CR

[1]  Demetri Terzopoulos,et al.  Modeling inelastic deformation: viscolelasticity, plasticity, fracture , 1988, SIGGRAPH.

[2]  J. Richardson,et al.  De novo design, expression, and characterization of Felix: a four-helix bundle protein of native-like sequence. , 1990, Science.

[3]  Andrew P. Witkin,et al.  Fast animation and control of nonrigid structures , 1990, SIGGRAPH.

[4]  Mark C. Surles,et al.  Techniques for interactive manipulation of graphical protein models , 1992 .

[5]  John C. Platt,et al.  Constraint methods for neural networks and computer graphics , 1990 .

[6]  Jon Louis Bentley,et al.  Data Structures for Range Searching , 1979, CSUR.

[7]  R. J. Paul,et al.  Optimization Theory: The Finite Dimensional Case , 1977 .

[8]  C. Levinthal Molecular model-building by computer. , 1966, Scientific American.

[9]  U. Singh,et al.  A NEW FORCE FIELD FOR MOLECULAR MECHANICAL SIMULATION OF NUCLEIC ACIDS AND PROTEINS , 1984 .

[10]  Donald Ervin Knuth,et al.  The Art of Computer Programming, 2nd Ed. (Addison-Wesley Series in Computer Science and Information , 1978 .

[11]  R. Fletcher Practical Methods of Optimization , 1988 .

[12]  Philip E. Gill,et al.  Practical optimization , 1981 .

[13]  John C. Platt,et al.  Constraints methods for flexible models , 1988, SIGGRAPH.

[14]  I. Duff,et al.  Direct Methods for Sparse Matrices , 1987 .

[15]  K. D. Ikramov Sparse matrices , 2020, Krylov Subspace Methods with Application in Incompressible Fluid Flow Solvers.

[16]  E. Polak Introduction to linear and nonlinear programming , 1973 .

[17]  Mark C. Surles Interactive modeling enhanced with constraints and physics with applications in molecular modeling , 1992, I3D '92.

[18]  M. Karplus,et al.  CHARMM: A program for macromolecular energy, minimization, and dynamics calculations , 1983 .

[19]  Georg E. Schulz,et al.  Principles of Protein Structure , 1979 .

[20]  Alex Pentland,et al.  Good vibrations: modal dynamics for graphics and animation , 1989, SIGGRAPH.

[21]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[22]  Michael Gleicher,et al.  Interactive dynamics , 1990, I3D '90.