Skip to content

Projects

Qiang Zhu edited this page Nov 25, 2019 · 5 revisions

Project 1, Animation of Wave propagation

Lec04 Write an python code to provide an interactive interface to simulate the propagation of waves due to the dropped pebbles in a pool. This interface should allow the user to do the following

  • drop pebble button to set up the position of the first pebble
  • start buttion to initiate the animation of the wave propogation
  • drop pebble button to pause the animation and set up the position of the second pebble
  • continue button to continue to model the wave proprogations due to two pebbles
  • terminate button to terminate this simulation

Project 2, Mandelbrot set

Lec04 Write a wiki page to introduce Mandelbrot set and its application to some specific domain.

Project 3, Gaussian Quardrature

Lec05 Write a wiki page to introduce Gaussian Quardrature from the fundamental of mathematics, and give some applications.

Project 4, Numerical derivatives

Lec06 Write a wiki page to introduce different approaches to compute the derivative and describe their applications to some specific problems.

  • Finite difference
  • Complex step
  • Cauchy integral formula

Project 4, B-spline Interpolation

Lec07 Write a wiki page to introduce different approaches to compute the derivative and describe their applications to some specific problems.

  • Finite difference
  • Complex step
  • Cauchy integral formula

Project 5, Generalized Linear regression

Lec08 Write a wiki page to derive the math for linear regression and generalize it to polynomial regression. Choose a dataset to test the performance of regressions with order 1, 2, 3.

Project 6, Simulation of Powder X-ray diffraction

Lec08 Write a wiki page to explain how to compute the X-ray diffraction and write a code to compute the powder XRD pattern for FCC, BCC, HCP crystals.

Project 7, Random numbers generation

Lec13 Introduce the modern approach to generate the random numbers on computer.

Project 8, Local optimization

Lec15 Introduce the ideas of at Least two optimization methods from the following

  • Gradient Descent
  • Conjugate Gradient
  • BFGS
  • Quasi Newton
  • L-BFGS

Write the numpy code to solve the minima for the Rosenbrock function, and compare the results with scipy.minimize library.

Project 9, Global optimization on LJ clusters

Lec19 Introduce the basin hopping algorithm and apply the code to do the following

  • choose three numbers between 10 - 30
  • find the parameters which could lead to the global minimum.
  • plot the energy evolution as a function of steps
  • Speed up the code based on vectorization, numba, explicit gradient functions

Project 10, Machine Learning

Lec24 Write a code based on numpy to solve either the classification or regression problem for one of the datasets.

  • classification
  • regression

By choosing one of the following methods:

  • Artificial Neural Networks
  • Random Forest
  • Support Vector Machine
  • Gaussian Process

Compare the results with sklearn.