Computers have dramatically changed the practice of many disciplines including engineering, medicine, and science. For example, it is now possible to test thousands of product designs and run thousands of trials without first building a prototype for each product or conducting an elaborate experiment for each trial. The impact of this new ability, this power to simulate the real thing, is revolutionizing the practice of engineering and science. Reliability, flexibility, efficiency, and (often attractive) costs have placed scientific computation as the keystone between theory and applications.
Basic research in scientific computing conducted at Yale is being applied to a wide range of applications. Currently the emphasis is on problems originating in the biomedical sciences. These range from high throughput genomic search engines to simulations of biological cells. Active collaborations are in place with several researchers in the Yale Biology Departments and the Yale Medical School. It is clear that high performance scientific computing is an essential component of the “genomic revolution.”
Scientific computing research at Yale emphasizes algorithm development, theoretical analysis, systems and computer architecture modeling, and programming considerations. Algorithm development is concerned with finding new, fast and/or parallel methods. Theoretical analysis evaluates such questions as rates of convergence, stability, optimality, and operation counts. Systems modeling research examines the performance implications of the interactions between computationally intensive algorithms, operating systems, and multiprocessor machines. Programming considerations include coding efficiency, numerical accuracy, generality of application, data structures, and machine independence.
One focus of work in scientific computing at Yale today is the adaptation of fast serial algorithms to parallel multiprocessor environments. Clusters or LANS of workstations and PCs are commonly used as virtual multiprocessors.
Underlying scientific computing are applied mathematical techniques for modeling physical systems. Mathematical models are widely used throughout science and engineering in fields as diverse as theoretical physics, bioinformatics, robotics, image processing, and finance. In spite of the broad range of applications, there are only a few essential techniques used in attacking most problems. Research in applied mathematics at Yale comprises mathematics and its applications in computer science, statistics, engineering, and other sciences. The area is conveniently divided into two general areas: discrete mathematics (such as discrete algorithms, combinatorics and combinatorial optimization, and graph algorithms), and continuous mathematics (comprising many traditional areas such as linear and nonlinear partial differential equations, numerical analysis, harmonic analysis, geometric algorithms, and so on).