Git Product home page Git Product logo

uq-course's Introduction

Introduction to Uncertainty Quantification

This version of the course is being taught at Purdue University during Spring 2016. The code for the course is ME 59700. The instructors are Prof. Ilias Bilionis and Prof. Guang Lin. The class meets every Tuesday and Thursday 1:30pm-2:45pm at ME 3021.

The goal of this course is to introduce the fundamentals of uncertainty quantification to advanced undergraduates or graduate engineering and science students with research interests in the field of predictive modeling. Upon completion of this course the students should be able to:

  • Represent mathematically the uncertainty in the parameters of physical models.
  • Propagate parametric uncertainty through physical models to quantify the induced uncertainty on quantities of interest.
  • Calibrate the uncertain parameters of physical models using experimental data.
  • Combine multiple sources of information to enhance the predictive capabilities of models.
  • Pose and solve design optimization problems under uncertainty involving expensive computer simulations.

Student Evaluation

  • 10% Participation
  • 60% Homework
  • 30% Final Project

Lectures

Homework Sets

Installation of Required Software for Viewing the Notebookes

Find and download the right version of Anaconda for Python 2.7 from Continuum Analytics. This package contains most of the software we are going to need.

OS Specific Instructions

Microsoft Windows

  • We need C, C++, Fortran compilers, as well as the Python sources. Start a command line (look for cmd) and type:
conda install mingw libpython
  • Finally, you need git. As you install it, make sure you select that you want to use it from the Windows command prompt.

Apple OS X

  • Download and install Xcode
  • Agree to the license of Xcode by opening a terminal and typing:
sudo xcrun cc
  • Install your favorite version of the GNU compiler suite. You can do this with Homebrew (after you install it of course), by typing in the terminal:
brew install gcc

Alternatively, you may use the MacPorts.

Linux

Nothing special is required.

Installation of Required Python Packages

Independently of the operating system, use the command line to install the following Python packages:

conda install seaborn
  • PyMC for MCMC sampling:
conda install pymc
  • GPy for Gaussian process regression:
pip install GPy
  • py-design for generating designs for computer codes:
pip install py-design
  • py-orthpol for generating orthogonal polynomials with respect to arbitrary probability measures:
pip install py-orthpol

Running the notebooks

  • Open the command line.
  • cd to your favorite folder.
  • Then, type:
git clone https://github.com/PredictiveScienceLab/uq-course.git
  • This will download the contents of this repository in a folder called uq-course.
  • Enter the uq-course folder:
cd uq-course
  • Start the jupyter notebook by typing the command:
jupyter notebook
  • Use the browser to navigate the course, experiment with code etc.
  • If the course contented is updated, type the following command (while being inside uq-course) to get the latest version:
git pull origin master

Keep in mind, that if you have made local changes to the repository, you may have to commit them before moving on.

uq-course's People

Contributors

ebilionis avatar rohitkt10 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.