• Length:
    9 Weeks
  • Effort:
    3–5 hours per week
  • Price:

    FREE
    Add a Verified Certificate for $49 USD

  • Institution
  • Subject:
  • Level:
    Intermediate
  • Language:
    English
  • Video Transcript:
    English

Prerequisites

  • Algebra
  • Calculus

About this course

Computational thinking is becoming widely recognized as a skill necessary for every educated person in a technologically advanced society. 

We will focus on just a subset of computational thinking which concerns creating models of the physical world – something that engineers frequently need to do.  Because of that choice, this course covers many topics normally viewed as within the domain of mathematics such as algebra and calculus, but the solution procedures are algorithmic rather than symbolic.

The major themes of the course are:
  • Representation -- How do you encode information about the world in a computer?  How do your choices in representation affect the ease with which you can solve problems?
  • Decomposition -- How do you break a large and diverse problem into many simpler parts?
  • Discretization -- How do you break up space and time into a large number of relatively small pieces?  What are the alternative ways of doing this?  What are the consequences of discretization procedures for accuracy and speed?
  • Verification -- How do you build confidence in the results of a model?

What you'll learn

By the end of this course, students will be able to:
  • Select and implement methods for interpolation and understand their consequences for convergence of model results as discretization is refined.
  • Carry out a few simple methods for numerical integration
  • Implement procedures for numerical differentiation
  • Write programs to solve systems of equations, both linear and non-linear
What is Computational Thinking? (representation, discretization, error, decomposition, verification)

Interpolation (building simple surrogates for more complex functions)

Integration (processes for numerical quadrature)

Randomness (generating and using pseudorandom variables in models)

Differentiation (numerical derivatives)

Solving equations (Gaussian elimination for linear systems, Newton-Raphson for non-linear systems)

Meet your instructors

Daniel Frey
Professor of Mechanical Engineering Department; MIT D-Lab Faculty Research Director
Massachusetts Institute of Technology
Ali Talebinejad
Lecturer of Mechanical Engineering Department
Massachusetts Institute of Technology

Pursue a Verified Certificate to highlight the knowledge and skills you gain $49.00

View a PDF of a sample edX certificate
  • Official and Verified

    Receive an instructor-signed certificate with the institution's logo to verify your achievement and increase your job prospects

  • Easily Shareable

    Add the certificate to your CV or resume, or post it directly on LinkedIn

  • Proven Motivator

    Give yourself an additional incentive to complete the course

  • Support our Mission

    EdX, a non-profit, relies on verified certificates to help fund free education for everyone globally

Frequently asked questions

Q: Is computational thinking about thinking like a computer does? 
A: No.  It’s about using computers to expand your own thinking.

Who can take this course?

Unfortunately, learners from one or more of the following countries or regions will not be able to register for this course: Iran, Cuba and the Crimea region of Ukraine. While edX has sought licenses from the U.S. Office of Foreign Assets Control (OFAC) to offer our courses to learners in these countries and regions, the licenses we have received are not broad enough to allow us to offer this course in all locations. EdX truly regrets that U.S. sanctions prevent us from offering all of our courses to everyone, no matter where they live.