Testimonials from recent graduates
"Pursuing the certificate in computational and information science during my Ph.D. empowered me to developed novel research methods and to employ state-of-the-art parallel paradigms in my workflow. Thanks to the excellent training on high-performance computing and the support of PICSciE staff, my research is now at the forefront of what is done in my field." - Noemi Vergopolan, Civil and Environmental Engineering
I would recommend the PICSciE certificate program for anyone in the sciences or engineering who uses computation in their research, even an experimentalist who only uses it for data processing. The skills you learn, including good programming practice, numerical methods, and big data analysis, are highly transferable regardless of what your plans are after graduation. In one instance, discussing a coarse project from the program with a company representative at a conference was enough to get me an interview at the company!" - Bruce Perry, Mechanical and Aerospace Engineering
"I was very fortunate and received Wallace Memorial Fellowship from the Princeton Graduate School in 2014, and I think Kevin Chen was awarded this last year which is interesting since both were in the graduate certificate program! I think this is directly testament to the quality of the program aiding us in our computational pursuits. It was an excellent training for my post-graduate career plans as an engineer/scientist." - George Khoury, Chemical and Biological Engineering
Introduction and Rationale
Computation is now a crucial tool for discovery in the sciences, engineering, and increasingly so in the humanities. Scientific computation is also a diverse field. It requires a working knowledge of numerical analysis (to develop new and more accurate algorithms), best-practices in software engineering (to implement and maintain ever-growing scientific software systems), computer science (to exploit emerging trends in hardware and programming practices), and domain-specific expertise.
The graduate certificate in computational science and engineering is only open to Princeton University graduate students who are currently enrolled. It is designed to recognize the achievements of students who have undertaken comprehensive training in these topics, both through formal course work and through research in their subject area.
The certificate program was originally proposed and designed to be part of the Program in Integrative Information, Computer and Application Sciences (PICASso) by Professor J.P. Singh, with the resources required to administer the program now provided by the Princeton Institute for Computational Science and Engineering (PICSciE).
In February 2021, the graduate certificate has been approved by the Graduate School as a formal credential and will appear in the students' records starting with degrees being conferred in June 2021.
With the certificate now officially credentialed, the only significant change to the existing certificate program requirements will be a more formal colloquium each spring at which the program participants will present their research. Each certificate student will be required to present one 20-minute presentation during their program, ostensibly during their final non-DCE year.
To earn the certificate, students must complete four requirements: (1) take for credit and earn a grade of B or better in two core courses; (2) take for credit and earn a grade of B or better in one approved elective course, usually specific to the student’s research area; (3) give a research seminar as part of a colloquium with other program participants at the conclusion of the program; and (4) write a dissertation with a significant computational component, as judged by the dissertation advisor who must write a short letter to certify this requirement. See the FAQ page for additional information.
Online application is available, and is on-going throughout the year.
Students must take two course courses. This requirement is designed to ensure that all students who earn the certificate have a solid foundation in the basic principles of scientific computing including numerical analysis, software engineering, and computer science. A grade of B or better is required in both core courses.
APC 524: Software Engineering for Scientific Computing (Fall). The course covers the tools and techniques that are crucial for effective use of computation in any discipline. Topics include programming in compiled and scripting languages, software management tools and software design, debugging and testing, profiling and optimization, and parallel programming for both shared and distributed memory systems.
APC 523: Numerical Algorithms for Scientific Computing (Spring). The course covers a broad introduction to numerical algorithms used in scientific computing beginning with a review of the basic principles of numerical analysis including sources of error, stability, and convergence. The theory and implementation of technical for linear and nonlinear systems of equations and ordinary and partial differential equations are covered in detail. Issues related to the implementation of efficient algorithms on modern high-performance computing systems are discussed.
Students are also required to take one elective course. This requirement is designed to give students expert training in their respective subject areas. Elective courses can be selected from any graduate-level course on campus as long as the course contains a significant computational component. Each elective course must be approved by the Director, through information submitted in the certificate program enrollment application, and the elective course will generally be offered by the student’s home department. Courses dealing exclusively with statistics and/or machine learning cannot be used to satisfy the elective course requirement. A grade of B or better is required in the elective course.
Examples of suitable elective courses include but are not limited to:
- AOS 575: Numerical Prediction of the Atmosphere and Ocean
- AST 560: Computational Methods in Plasma Physics
- CBE 508: Numerical Methods for Engineers
- CBE 535: Computational Biology of Cell Signaling Networks
- CBE 554 / APC 544: Topics in Computational Nonlinear Dynamics
- CEE 513: Introduction to Finite-Element Methods
- CEE 525: Applied Numerical Methods
- CEE 532: Advanced Finite-Element Methods
- CEE 535/CBE 525: Statistical Mechanics II: Methods
- COS 522/MAT578: Computational Complexity
- COS 551 / MOL 551: Introduction to Genomics & Computational Molecular Biology
- COS 557 / MOL 557: Analysis & Visualization of Large-Scale Genomics Data Sets
- ELE 585: Parallel Computation
- GEO 422: Data, Models & Uncertainty in the Natural Sciences
- GEO 441 / APC 441: Computational Geophysics
- MAE 557: Simulation and Modeling of Fluid Flows
- MAT 586/APC 511/MOL 511/QCB 513: Computational Methods in Cryo-Electron Microscopy
- MSE 504 / CHM 560 / PHY 512 / CBE 520: Monte Carlo and Molecular Dynamics Simulation in Statistical Physics & Materials Science
- MSE 512/CHM 511: Phase Transformation in Materials: Theory and Simulation
- NEU 537/ MOL 537 / PSY 517: Computational Neuroscience & Computing Networks
- ORF 522: Linear and Nonlinear Optimization
- ORF 523: Convex and Conic Optimization
- ORF 531 / FIN 531: Computational Finance in C++
- ORF 538: Analytical and Computational Methods of Financial Engineering
- ORF 544: Stochastic Optimization
- SOC 596: Computational Social Science
This is not an exhaustive list.
The ability to communicate research to a broad audience, as well as interaction with researchers across disciplines on shared tools and challenges, is an important skill for all students to develop. To encourage the development of these skills, students are required to give a research seminar on their dissertation research before graduation, typically in the last year once significant results can be reported. This research seminar occurs as part of a colloquium with other program participants and is organized by PICSciE.
The colloquium will occur once per year, typically toward the end of the spring semester. The frequency of the colloquium may be increased to once per semester if needed in a given year if the number students intending to graduate is large. Students are required to coordinate with the Program Administrator to ensure participation before graduation, and, to help facilitate planning, students are asked to communicate to the Program Administrator any changes to the timeline for completion of degree requirements after submission of the initial online application. Each research seminar is approximately 20 minutes in length with additional time for questions from the audience; the research seminar must be accessible to the broader University community with an interest in computational science and engineering.
The University community is invited to participate as audience members in the colloquium. Students enrolled in the program are highly encouraged but not explicitly required to attend the annual (or biannual) colloquium in years when not participating as a presenter.
The final requirement for the certificate is that the student’s dissertation research must include a significant computational component. Since the role of computation differs across disciplines, the program will rely on the judgment of experts in the specific discipline to certify whether the “significant computational component” requirement has been satisfied. Therefore, the student’s dissertation advisor is asked to write a short letter outlining the role of computation in the dissertation and to certify that the dissertation research has included a “significant computational component” as judged relative to the discipline. In cases where the student’s dissertation advisor does not feel that they can certify the computational component of the dissertation, the advisor can request that a member of the PICSciE Executive Committee or Associated Faculty review the dissertation and submit a letter certifying the computational component of the dissertation. In all cases, the Director will review the certification letter and confirm that this requirement has been met.
Note on Overlapping Course Requirements in Home Department
If the student’s home department has a required set of core courses (either specific courses or courses distributed across specifically designated areas), none of these courses may be used to fulfill the certificate elective course requirement. If the student’s home department requires a certain number of courses (either in total or in addition to core course requirements), then no more than two courses used to fulfill the requirements in the home department may be used to fulfill course requirements of the certificate. In other words, in all cases, students must take at least one additional course beyond the student’s home department requirements.
Michael E. Mueller, Associate Professor, Department of Mechanical and Aerospace Engineering
Associated Faculty, Princeton Institute for Computational Science and Engineering
Associated Faculty, Andlinger Center for Energy and the Environment
A significant fraction of the faculty relies on computation for their research, and all faculty are potential advisers for students in the program. The list of faculty, which includes the PICSciE Executive Committee and Associated Faculty and instructors of elective/key courses, is not exhaustive.
- Ryan Adams, Computer Science
- David August, Computer Science
- Ian Bourg, Civil and Environmental Engineering
- Venkatramani Balaji, Atmospheric and Oceanic Science
- Ravin Bhatt, Electrical Engineering
- Adam Burrows, Astrophysical Sciences
- Roberto Car, Chemistry
- Rene Carmona, Operations Research & Financial Engineering
- Jonathan Cohen, Psychology
- Peter Constantin, Mathematics
- Pablo Debenedetti, Chemical & Biological Engineering
- Luc Deike, Mechanical and Aerospace Engineering
- Mohamed Abou Donia, Molecular Biology
- Barbara Engelhardt, Computer Science
- Stephen Fueglistaler, Geosciences
- Steve Jardin, Plasma Physics
- Antoine Kahn, Electrical Engineering
- Matthew Kunz, Astrophysical Sciences
- Laura Landweber, Ecology & Evolutionary Biology
- Naomi E. Leonard, Mechanical & Aerospace Engineering
- Simon Levin, Ecology & Evolutionary Biology
- Kai Li, Computer Science
- John Londregan, Politics
- Sharad Malik, Electrical Engineering
- Meredith Martin, English
- Luigi Martinelli, Mechanical & Aerospace Engineering
- Reed Maxwell, Civil & Environmental Engineering
- Michael Mueller, Mechanical and Aerospace Engineering
- Isobel Ojalvo, Physics
- Eve Ostriker, Astrophysical Sciences
- Athanassios Panagiotopoulos, Chemical & Biological Engineering
- Jonathan Pillow, Princeton Neuroscience Institute
- Warren B. Powell, Operations Research & Financial Engineering
- Frans Pretorius, Physics
- Eliot Quataert, Astrophysical Sciences
- Peter Ramadge, Electrical Engineering
- Laure Resplandy, Geosciences
- Jennifer Rexford, Computer Science
- Alejandro Rodriguez, Electrical Engineering
- Clarence Rowley, Mechanical & Aerospace Engineering
- Olga Russakowsky, Computer Science
- Szymon Rusinkiewicz, Computer Science
- Matthew Salganik, Sociology
- Annabella Selloni, Chemistry
- Kaushik Sengupta, Electrical Engineering
- H. Sebastian Seung, Princeton Neuroscience Institute
- Amit Singer, Mathematics
- Mona Singh, Computer Science
- Jaswinder Singh, Computer Science
- David Spergel, Astrophysical Sciences
- Anatoly Spitkovsky, Astrophysical Sciences
- Brandon Stewart, Sociology
- John Storey, Molecular Biology
- William Tang, Astrophysical Sciences/Plasma Physics
- Robert Tarjan, Computer Science
- Jeroen Tromp, Geosciences
- Olga Troyanskaya, Computer Science
- Christopher Tully, Physics
- Hakan Tureci, Electrical Engineering
- Janet Vertesi, Sociology
- Gabriel Vecchi, Geosciences
- Bridgett vonHoldt, Ecology and Evolutionary Biology
- Michael Webb, Civil and Biological Engineering
- David Wentzlaff, Electrical Engineering
- Claire White, Civil and Environmental Engineering
- Ned Wingreen, Molecular Biology