In this article we demonstrate a general and efficient metaprogramming implementation of concerted rotations using Mathematica. Concerted rotations allow the movement of a fixed portion of a polymer backbone with fixed bending angles, like a protein, while maintaining the correct geometry of the backbone and the initial and final points of the portion fixed. Our implementation uses Mathematica to generate a C code which is then wrapped in a library by a Python script. The user can modify the Mathematica notebook to generate a set of concerted rotations suited for a particular backbone geometry, without having to write the C code himself. The resulting code is highly optimized, performing on the order of thousands of operations per second.
Implementing efficient concerted rotations using Mathematica and C code ⋆ / Tubiana, L.; Jurasek, M.; Coluzza, I.. - In: THE EUROPEAN PHYSICAL JOURNAL. E, SOFT MATTER. - ISSN 1292-8941. - 41:7(2018), p. 87. [10.1140/epje/i2018-11694-7]
Implementing efficient concerted rotations using Mathematica and C code ⋆
Tubiana L.;
2018-01-01
Abstract
In this article we demonstrate a general and efficient metaprogramming implementation of concerted rotations using Mathematica. Concerted rotations allow the movement of a fixed portion of a polymer backbone with fixed bending angles, like a protein, while maintaining the correct geometry of the backbone and the initial and final points of the portion fixed. Our implementation uses Mathematica to generate a C code which is then wrapped in a library by a Python script. The user can modify the Mathematica notebook to generate a set of concerted rotations suited for a particular backbone geometry, without having to write the C code himself. The resulting code is highly optimized, performing on the order of thousands of operations per second.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione