Our research at PPL is focused on application of object-based parallel programming paradigms for computational science and engineering. Past research in our group allows building multi-paradigm adaptive parallel programs based on the Converse runtime system and Charm++ load-balancing framework. We have adapted this framework to procedural languages such as Fortran 90, and message passing programming paradigms. Detailed performance analysis of Adaptive MPI, an implementation of MPI standard on top of Charm++, has been done, and has been optimized to have minimal overhead as compared to native MPI on several machines. Various components of the integrated rocket simulation codes, ROCFLO, ROCSOLID, and ROCFACE have been ported to Adaptive MPI with minimal changes and with little effort, providing them with automatic load balancing capabilities. The AMPI implementation also enhances the modularity of rocket codes by using separate sets of virtual processors for ROCFLO and ROCSOLID. Based on a similar programming paradigm, a prototype finite element method (FEM) framework has been developed. Although originally designed for finite element applications, it is general enough for unstructured mesh applications. Using the FEM framework, code developers write only sequential code that implements the node and element-specific computations of the FEM solver, while the details of parallelism such as partitioning, communication, and load balancing is taken care of by the framework. A 2-D pressure-driven crack propagation application (originally developed by P. Geubelle et al) has been ported to use this framework.
An inverted pendulum (also called a cart and pole) consists of a thin rod attached at its bottom to a moving cart. Whereas a normal pendulum is stable when hanging downwards, a vertical inverted pendulum is inherently unstable, and must be actively balanced in order to remain upright, typically by moving the cart horizontally as part of a feedback system.
An inverted pendulum (also called a cart and pole) consists of a thin rod attached at its bottom to a moving cart. Whereas a normal pendulum is stable when hanging downwards, a vertical inverted pendulum is inherently unstable, and must be actively balanced in order to remain upright, typically by moving the cart horizontally as part of a feedback system.