Course Objectives
Students successfully completing 16.901 should have:
- A conceptual understanding of computational methods commonly used for analysis and design of aerospace systems.
- A working knowledge of computational methods including experience implementing them for model problems drawn from aerospace engineering applications.
- A basic foundation in theoretical techniques to analyze the behavior of computational methods.
Measurable Outcomes
The subject is divided into four sections:
- Integration of Systems of Ordinary Differential Equations (ODE's)
- Finite Volume and Finite Difference Methods for Partial Differential Equations (PDE's)
- Finite Element Methods for Partial Differential Equations
- Probabilistic Simulation Techniques
For each of these sections, the measurable outcomes are described below. Specifically, a student successfully completing 16.901 will be able to:
Integration Methods for ODE's
- (a) Describe the Adams-Bashforth, Adams-Moulton, and Backwards Differentiation families of multi-step methods;
(b) Describe the form of the Runge-Kutta family of multi-stage methods; and
(c) Explain the relative computational costs of multi-step versus multi-stage methods.
- (a) Explain the concept of stiffness of a system of equations, and
(b) Describe how it impacts the choice of numerical method for solving the equations.
- (a) Explain the differences and relative advantages between explicit and implicit methods to integrate systems of ordinary differential equations; and
(b) For nonlinear systems of equations, explain how a Newton-Raphson can be used in the solution of an implicit method.
- (a) Define a convergent method;
(b) Define a consistent method;
(c) Explain what (zero) stability is; and
(d) Demonstrate an understanding of the Dahlquist Equivalence Theorem by describing the relationship between a convergent method, consistency, and stability.
- Determine if a multi-step method is stable and consistent.
- (a) Define global and local order of accuracy for an ODE integration method,
(b) Describe the relationship between global and local order of accuracy, and
(c) Calculate the local order of accuracy for a given method using a Taylor series analysis.
- (a) Define eigenvalue stability, and
(b) Determine the stability boundary for a multi-step or multi-stage method applied to a linear system of ODE's.
- Recommend an appropriate ODE integration method based on the features of the problem being solved.
- Implement multi-step and multi-stage methods to solve a representative system of ODE's from an engineering application.
Finite Difference and Finite Volume Methods for PDE's
- (a) Define the physical domain of dependence for a problem,
(b) Define and determine the numerical domain of dependence for a discretization, and
(c) Explain the CFL condition and determine the timestep constraints resulting from the CFL conditions.
- Determine the local truncation error for a finite difference approximation of a PDE using a Taylor series analysis.
- Explain the difference between a centered and a one-sided (e.g. upwind) discretization.
- Describe the Godunov finite volume discretization of two-dimensional convection on an unstructured mesh.
- Perform an eigenvalue stability analysis of a finite difference approximation of a PDE using either Von Neumann analysis or a semi-discrete (method of lines) analysis.
- Implement a finite difference or finite volume discretization to solve a representative PDE (or set of PDE's) from an engineering application.
Finite Element Methods for PDE's
- (a) Describe how the Method of Weighted Residuals (MWR) can be used to calculate an approximate solution to a PDE,
(b) Describe the differences between MWR, the collocation method, and the least-squares method for approximating a PDE, and
(c) Describe what a Galerkin MWR is.
- (a) Describe the choice of approximate solutions (i.e. the test functions or interpolants) used in the Finite Element Method, and
(b) Give examples of a basis for the approximate solutions in particular including a nodal basis for at least linear and quadratic solutions.
- (a) Describe how integrals are performed using a reference element,
(b) Explain how Gaussian quadrature rules are derived, and
(c) Describe how Gaussian quadrature is used to approximate an integral in the reference element.
- Explain how Dirichlet and Neumann boundary conditions are implemented for Laplace's equation discretized by FEM.
- (a) Describe how the FEM discretization results in a system of discrete equations and, for linear problems, gives rises to the stiffness matrix; and
(b) Describe the meaning of the entries (rows and columns) of the stiffness matrix and of the right-hand side vector for linear problems.
Probabilistic Methods
Note: all students are expected to have a thorough understanding of probability, random variables, PDF's, CDF's, mean (expectation), variance, standard deviation, percentiles, uniform distributions, normal distributions, and x
2-distributions from the prerequisite coursework.
- Describe how Monte Carlo sampling from multivariable, uniform distributions works.
- Describe how to modify Monte Carlo sampling from uniform distributions to general distributions.
- (a) Describe what an unbiased estimator is;
(b) State unbiased estimators for mean, variance, and probability; and
(c) State the distributions of these unbiased estimators.
- (a) Define standard error;
(b) Give standard errors for mean, variance and probability;
(c) Place confidence intervals for estimates of the mean, variance, and probability; and
(d) Demonstrate the dependence of Monte Carlo convergence on the number of random inputs and the number of samples using the above error estimates.
- (a) Describe stratified sampling for single input and multiple inputs,
(b) Describe Latin Hypercube Sampling (LHS), and
(c) Describe the benefits of LHS for nearly linear outputs in terms of the standard error convergence of the mean with the number of samples.
- (a) Describe the Response Surface Method (RSM);
(b) Describe the construction of a response surface through Taylor series, Design of Experiments with the least-square regression, and random sampling with least-squares regression; and
(c) Describe the R2 -metric, its use in measuring the quality of a response surface, and its potential problems.
Homework Problems
A homework problem will be given at the end of most regular lectures and will be due at the beginning of the next class. These homework problems are intended to take 1-2 hours to complete. The individual homework sets will be graded on the following scale:
3: A complete solution demonstrating an excellent understanding of the concepts.
2: A complete solution demonstrating an adequate understanding of the concepts, though some minor mistakes may have been made.
1: A complete or nearly-complete solution demonstrating some understanding of the concepts, though major mistakes may have been made.
0: A largely incomplete solution or no solution at all.
Note: the individual homework grades will only be integer values. At the end of the semester, the highest 2/3's of the grades received in the homeworks will be averaged to determine an overall homework letter grade. Roughly, the following ranges will be used. A: 2.5-3; B: 2-2.5; C: 1.5-2; D: 1-1.5; F: 0-1.
Projects
Currently, three programming projects are planned for this semester (one for each section of the course except the ODE section). The projects will focus on applying numerical algorithms to aerospace applications. The programming is highly recommended to be done in Matlab®. The expected due dates for the projects are as follows.
Projects Table
PROJECTS | DUE DATES |
Project 1 | Lecture 16 |
Project 2 | Lecture 30 |
Project 3 | Lecture 38 |
The project assignments will be distributed at least one week prior to the due dates. No homeworks will be given during the week the projects are due. Each project will be assigned a letter grade based on the standard MIT letter grade descriptions (see
Course Grade).
Homework and Project Collaboration
While discussion of the homework and projects is encouraged among students, the work submitted for grading must represent your understanding of the subject matter. Significant help from other sources should be noted.
Oral Exams
There will be a mid-term and final oral exam. The mid-term oral exam will be held between Lecture 20 and Lecture 21. The final oral exam will be held during Final Exam Week. I will schedule the mid-term oral exam by the end of February based on preferences from each student. I will schedule the final oral exam once the final exam schedule for the institute has been published. Each oral exam will be assigned a letter grade based on the standard MIT letter grade descriptions (see
Course Grade).
Course Grade
The subject total grade will be based on the letter grades from the homework, projects, and oral exams. Roughly, the weighting of the individual letters grade is as follows:
Grading Criteria
ACTIVITIES | BREAKDOWN |
Homework Letter Grades | 1/8 of the Subject Total Grade |
Project Letter Grades | Each Project is 1/8 of the Total Grade |
Oral Exam Letter Grades | Each Exam is 1/4 of the Total Grade |
For the subject letter grade, I adhere to the MIT grading guidelines which give the following description of the letter grades:
A: Exceptionally good performance demonstrating a superior understanding of the subject matter, a foundation of extensive knowledge, and a skillful use of concepts and/or materials.
B: Good performance demonstrating capacity to use the appropriate concepts, a good understanding of the subject matter, and an ability to handle the problems and materials encountered in the subject.
C: Adequate performance demonstrating an adequate understanding of the subject matter, an ability to handle relatively simple problems, and adequate preparation for moving on to more advanced work in the field.
D: Minimally acceptable performance demonstrating at least partial familiarity with the subject matter and some capacity to deal with relatively simple problems, but also demonstrating deficiencies serious enough to make it inadvisable to proceed further in the field without additional work.
Textbooks
Notes will be distributed. Reference texts will be recommended for specific topics as needed.
Citable URI: http://hdl.handle.net/1721.1/36877
Projects
Special software is required to use some of the files in this section:
.m,
.mat.
There are three programming projects for the class, one for each section of the course except the ODE section. They focus on applying numerical algorithms to aerospace applications.
Project Files
Projects | Supporting Files | Solutions |
Project 1 (PDF) | CalcForces.m (M)
cyl_adaptmesh.m (M)
cyl_initmesh.m (M)
cylgeom.mat (MAT)
eulerflux.m (M)
FVM.m (M)
SetRefineList.m (M)
SetupEdgeList.m (M)
SetupMesh.m (M)
wallflux.m (M) | (PDF - 1.4 MB) |
Project 2 (PDF) | bladeheat.m (M)
bladeplot.m (M)
hpblade_coarse.mat (MAT)
hpblade_fine.mat (MAT)
hpblade_medium.mat (MAT)
findloc.m (M)
Thgas.m (M) | (PDF)
p2_matlabsol.txt (TXT) |
Project 3 (PDF) | calcblade.m (M)
DesignIntent.m (M)
hpblade_coarse.mat (MAT)
loadblade.m (M)
MCdriver.m (M)
Screen.m (M)
Thgas.m (M)
trirnd.m (M) | (PDF) |
See also
References
- ^ “IEEE Standard Glossary of Software Engineering Terminology,” IEEE std 610.12-1990, 1990, quoted at the beginning of Chapter 1: Introduction to the guide "Guide to the Software Engineering Body of Knowledge" (February 6, 2004). Retrieved on 2008-02-21.
- ^ Pecht, Michael (1995). Product Reliability, Maintainability, and Supportability Handbook. CRC Press. ISBN 0-8493-9457-0.
- ^ Pehrson, Ronald J. (January 1996). "Software Development for the Boeing 777". CrossTalk: the Journal of Defense Software Engineering. http://www.stsc.hill.af.mil/crosstalk/1996/01/Boein777.asp. , "The 2.5 million lines of newly developed software were approximately six times more than any previous Boeing commercial airplane development program. Including commercial-off-the-shelf (COTS) and optional software, the total size is more than 4 million lines of code."
- ^ Randell, Brian (10 Aug 2001). "The 1968/69 NATO Software Engineering Reports". Brian Randell's University Homepage. The School of Computer Sciences, Newcastle University. Retrieved on 2008-10-11. "The idea for the first NATO Software Engineering Conference, and in particular that of adopting the then practically unknown term "software engineering" as its (deliberately provocative) title, I believe came originally from Professor Fritz Bauer."
- ^ Table 1 in Chapter 1,"Guide to the Software Engineering Body of Knowledge" (February 6, 2004). Retrieved on 2008-02-21.
- ^ Ian Sommerville (2004). Software Engineering. 7th edition. Chapter 1. Bezien 20 Okt 2008.
- ^ Table 2 in Chapter 1,"Guide to the Software Engineering Body of Knowledge" (February 6, 2004). Retrieved on 2008-02-21.
- ^ Bureau of Labor Statistics, U.S. Department of Labor, USDL 05-2145: Occupational Employment and Wages, November 2004, Table 1.
- ^ "Software Engineering". Retrieved on 2008-02-01.
- ^ Cowling, A. J. 1999. The first decade of an undergraduate degree programme in software engineering. Ann. Softw. Eng. 6, 1-4 (Apr. 1999), 61-90.
- ^ "ABET Accredited Engineering Programs" (April 3, 2007). Retrieved on 2007-04-03.
- ^ McConnell, Steve (July 10, 2003. Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers. ISBN 978-0321193674.
- ^ Actually the ACM made an explicit decision not to continue with certification. 1
- ^ IEEE Computer Society. "2006 IEEE computer societe report to the IFIP General Assembly". Retrieved on 2007-04-10.
- ^ Canadian Information Processing Society. "I.S.P. Designation". Retrieved on 2007-03-15.
- ^ As outsourcing gathers steam, computer science interest wanes
- ^ Computer Programmers
- ^ Software developer growth slows in North America | InfoWorld | News | 2007-03-13 | By Robert Mullins, IDG News Service
- ^ Hot Skills, Cold Skills
- ^ Dual Roles: The Changing Face of IT
Further reading
- Carlo Ghezzi, Mehdi Jazayeri, Dino Mandrioli: Fundamentals of Software Engineering, 2nd (International) ed.: 2003 (1st ed.: 1991), Pearson Education @ Prentice-Hall
- Colin Hood, Simon Wiedemann, Stefan Fichtinger, Urte Pautz Requirements Management: Interface Between Requirements Development and All Other Engineering Processes Springer, Berlin 2007, ISBN 354047689X
- Jalote, Pankaj (2005) [1991]. An Integrated Approach to Software Engineering (3th ed. ed.). Springer. ISBN 0-387-20881-X. http://www.springer.com/east/home?SGWisbn=5-102-22-52090005-0&changeHeader=true.
- Pressman, Roger S (2005). Software Engineering: A Practitioner's Approach (6th ed. ed.). Boston, Mass: McGraw-Hill. ISBN 0072853182.
- Sommerville, Ian (2007) [1982]. Software Engineering (8th ed. ed.). Harlow, England: Pearson Education. ISBN 0-321-31379-8. http://www.pearsoned.co.uk/HigherEducation/Booksby/Sommerville/.
External links
[show]
Software engineering |
|
Fields | |
|
Concepts | |
|
Orientations | |
|
Models | |
|
Software
engineers | |
|
Related fields | |
|