-   Forums
     -   Articles and Whitepapers
     -   Downloads
     -   Courses and Events
     -   Course Registration
     -   Distance learning
     -   Courses for Universities
     -   Books
     -   Audios and Demos
     -   Testimonials

Share this page:  Tweet

Distance Learning - Numerical Methods for Computational Finance, Engineering and Science - (code DL-NMCF)

Including C++, STL and Boost Code
The goal of this course is to introduce, analyse and design numerical methods that are used in many applications in engineering, computational finance and other quantitative disciplines. The topics covered and depth correspond to a senior undergraduate level Numerical Analysis course in universities. In addition, the course also focuses on those numerical methods that are of use in real-life applications. This course covers the all issues, ranging from the analysis of numerical methods through to their algorithmic design and implementation using standard C++ libraries such as STL, Boost and GSL.  Finally, we discuss some applications such as partial differential equations (PDE) and the finite difference method (FDM).
In short, this unique integrated course is the foundation for other application areas in many quantitative domains.
Subjects Covered
We cover all topics that we expect from a senior honours undergraduate degree course in mathematics as well as more advanced and relevant topics that are used in industry and business. Furthermore, we ‘put the icing on the cake’ by providing C++ code and discussing how to use C++ numerical libraries in real life applications.
We discuss the following methods in detail:
  • How computers store numbers and the IEEE754 standard.
  • Numerical accuracy and floating point computations.
  • A complete overview of matrix theory and related numerical concepts and methods.
  • Interpolation and numerical differentiation.
  • Polynomial and rational function interpolation.
  • Numerical quadrature.
  • Numerical solution of nonlinear equations.
  • Linear and nonlinear optimisation.
  • The Finite Difference Method (FDM) for ordinary and partial differential equations.
  • Fourier and Complex analysis.
  • Time series and probability distributions.
  • Discussion of C++ libraries.
  • Coding topics.
Each module contains approximately 6-8 sections and each section deals with a self-contained topic and lasts between 45 and 60 minutes. There are approximately 6-10 questions per section.
The structure of each module is unique in the sense that it describes the related topic starting with the analysis of numerical methods through to algorithmic design and implementation in C++. This approach ensures that you get a complete understanding of the topic. Then you can do the exercises to test the new knowledge.
Course Benefits
This self-contained course discusses the most important numerical methods are used in real-life applications. The major benefits for the student are:
  • A full treatment of essential numerical methods that are needed in many applications.
  • Practical, relevant, and up to date. Lifelong access to the online resources.
  • Second year/third year university mathematics degree level.
  • Extensive exercises and end-of-term project (leading to a certificate).
  • Each module discussed from mathematical foundations to C++ implementation.
  • Interaction with, and feedback from mentor (using email or on the forum).
  • A ‘mini-course’ PDE/FDM is included!
  • This is one of the few courses dealing with this range of topics in this way.
  • WYSIWYG (all topics in this outline are discussed in detail)
  • Student exercises, project and certificate on successful completion of course
Course Originator
This course was originated, developed and is supported by Daniel J. Duffy. He has a BA degree in Mathematics as well as MSc and PhD in Numerical Analysis (the numerical solution of partial differential equations). He has many years industrial and business experience and is author of several books on numerical methods, C++ and applications to engineering and computational finance.
This course is also available as a regular scheduled course.

Course Contents

Module 1 Numerical Accuracy
  • IEEE754           
  • Numerical Accuracy   
  • Sequences and Series              
Module 2 Matrices
  • Vector Spaces              
  • An introduction to Matrices   
  • Linear Transformations            
  • Patterned Matrices   
  • Essential Matrix Types             
  • Linear Systems Direct Methods           
  • Linear Systems Iterative Methods    
  • Eigenvalues and Eigenvectors            
  • Overdetermined Systems    
  • Conjugate Gradient Method (CGM)
Module 3 Interpolation
  • Polynomials and Rational Functions
  • Introduction to Interpolation              
  • Advanced Interpolation        
  • Numerical Differentation     
  • Orthogonal Polynomials        
Module 4 Numerical Integration
  • The Riemann Integral             
  • Riemann-Stieltjes Integral   
  • Introduction to Numerical Quadrature           
  • Advanced Numerical Integration      
Module 5 Non Linear Equations
  • Introduction to Non Linear Equations             
  • Newton Raphson Method   
Module 6 Optimisation
  • Optimisation Overview         
  • Optimisation
  • Least Squares and Datafitting             
Module 7 FDM
  • PDE FDM A-Z Overview         
  • Fundamentals FDM
  • Boundary Value Problems   
  • Finite Difference for the Heat Equation         
  • Time-dependent PDE
Module 8 Other Methods
  • Time Series 
  • Fourier Analysis        
  • Probability Distributions        
  • Complex Analysis (Basic Theory)
Module C++ Support and Libraries
  • C++ in a numerical environment
  • STL containers and algorithms
  • Boost libraries
  • GSL, Eigen and Alglib


We assume that the student has reached a certain level of mathematical sophistication in order to follow and understand this course. For example, a good knowledge of integral and differential calculus of one variable is certainly a prerequisite. This is sufficient in order to follow this course. For those students who feel that they do not have the necessary background please do not hesitate to contact me dduffy AT datasim.nl. Another possibility is to follow the course Mathematics Foundations for Computational Disciplines (code DL-MQCF) where underlying algebra and analysis topics are introduced.

Who should attend?

The course should appeal to a wide range of professionals who need to understand, apply and adapt numerical methods to suit the needs of their applications. In particular, the course should appeal to:
  • Financial engineers, risk analysts and validators.
  • Scientists and engineers.
  • Econometricians.
  • Software developers wishing to understand and apply numerical methods in their daily work.
In short, this course is suitable for anyone wishing to improve and apply their computational and numerical skills.

Duration, price, date, locations and registration

Course duration: Distance learning.
You study in your own pace. Under normal circumstances, this should take you between 1 and 1.5 years to complete.
Dates and location: (click on dates to print registration form)

Date(s) Location Price Language
Any time Distance Learning See below English

Click here to register.

Course Resources
The course consists of approximately 60 hours of videos (that you get lifelong access to), 200 exercises as well as the hard-copies (in pdf format) of the videos.
Books provided with this course:
Matrix Operations by R. Bronson Schaum Series.
Numerical Methods by A. Bjoerck and G. Dahlquist Prentice-Hall.
Demming, Robert & Duffy, Daniel J. (2010). Introduction to the Boost C++ Libraries. Volume 1 - Foundations. Datasim. ISBN 978-94-91028-01-4.  (e-book)
Demming, Robert & Duffy, Daniel J. (2012). Introduction to the Boost C++ Libraries. Volume 2 - Advanced Libraries. Datasim. ISBN 978-94-91028-02-1. (e-book)
The optimal way to learn in our opinion is by executing the following steps. This discussion pertains to studying and learning the contents of a single module:
1.       Listen to the audio show and use the printed PowerPoint slides as printed backup
2.       Read the relevant material in the provided book(s)
3.       Do the exercises; compile and run the programs
4.       If you are having problems, go back to one of more of steps 1, 2, 3
5.       If step 4 has been unsuccessful then post your problem on the Datasim forum
6.       Go to next module
Prices and when to start etc.
You can start the course any time and you receive lifelong access to the resources. You decide the pace that is most appropriate for you. The price per student category is (all prices exclude VAT if applicable (no VAT paid if you live outside the EU)):
1.       Full-time employee Euro 2435
2.       Full-time student at a recognised university 40% discount
3.       Between jobs? contact dduffy AT datasim.nl
4.       For groups of employees in a company, contact info AT datasim.nl

For private persons/students inside the EU we need to calculate 21% VAT. Companies inside the EU need to provide a VAT number, else VAT will be calculated too. For companies and private persons situated outside the EU, no VAT will be charged.

Payment is by means of (electronic) bank transfer. We do not accept checks or credit-cards.
Because of the special student price, students must supply evidence that shows you are a full-time student and will need to supply a university email address in order to login to the audio shows and forums.

Share this page:  Tweet