The Computational Methods Hub provides education, training and support in computational science though direct course provision, through supporting excellence in computational science training in individual CDTs, and by providing ongoing support for CDT students over the course of their PhD.

The Hub is a part of a of the Centre for Computational Methods in Science and Engineering that facilitates interaction between engineers, scientists, industries and society to provide a focus for development of foundational tools and methods that cut across individual disciplines.

The centre strives to facilitate cross-disciplinary research, for example by capitalizing on current and future multicore and multithreaded hardware architectures. Above all, it promotes strong computational methods training for scientists.

Courses & Info

Upcoming courses

 

 

autumn 2017

 

 

OFFICE HOURS

We will hold weekly office hours during term on Mondays (Katerina, 3-4pm) in the CDT space (4th floor Sherfield, entrance via the 2nd floor). CDT students are encouraged to attend for help with computational aspects of their work.

 

 

News & events (updated 27/07/17)

 Check the HPC wiki for a wider range of upcoming external classes at the College.

27 July 2017

Details for our new Data analysis with Python course have been announced. See the course description here.

13 July, 2017

Pain Relief for Scientific Computing

CM Hub and students from CDTs in Fluid Dynamics across Scales, Mathematics of Planet Earth, Theory and Simulation of Materials and High Performance Embedded Distributed Systems are inviting everyone to a  scientific computing fair.  Pain Relief for Scientific Computing is held on October 11th and it will feature exhibits and short talks on useful practices essential for scientific computing novices.

SCIENTIFIC COMPUTING support Network

We are also launching a support network for students and scientists.  The Network will connect those new to computing (or a particular problem) with their more experienced counterparts in order to improve and accelerate individual learning experiences.  Contact us if you need help with selecting the right tool, deciding how to tackle a complex problem or if you just need a sounding board. 


20 April, 2017

NGCM Summer Academy organised by the EPSRC CDT in Next Generation Computational Modelling at the University of Southampton, June 26 - 30, 2017.

The NGCM Summer Academy is a one-week event bringing together PhD students from across the UK who work on computer simulation of science and engineering problems, and want to extend their training through the workshops available at the Summer Academy. The training is delivered by world-leading experts and key developers of the relevant software tools, and includes 2-day courses on IPython and Jupyter NotebookVTK and MayaVi, GPU programming using CUDAPandas Python library for data handling, Scikit learn, and Programming the Intel Knights Landing.

Prior to the main programme outlined above, we offer three courses aimed at those just starting with computational work. These courses provide a basic or intermediate introduction to Python, version control and testing and can be attended separately as a one-day event. In parallel, there will be a course on Scientific Programming run by a fellow of the Software Sustainability Institute, Alice Harpole.

Registration is now open.


22 December, 2016

Research software management, sharing and sustainability workshop

will be held at the British Library on January 12th, 2017

Jisc, in collaboration with SSI, University of Cambridge, University of Sheffield, University of Bath, University of Leicester, University of Birmingham, the British Library and STFC are inviting all researchers interested and passionate about developing or using research software to join a workshop on this subject.

The purpose of the workshop is to:

  • Bring a range of experts who can answer and guide you with your most critical issues
  • Provide you with a list of available resources on the subject and tailored to the problems that you are encountering when managing research code
  • Listen and collate the most common problems that you are having in this area


Neil P. Hue Chong from the Software Sustainability Institute will be presenting the keynote talk.

Registration site


19 October, 2016


No office hour on 20 and 27 October:  Katerina will be teaching on 20th and away on the 27th.  Please email if you have any questions.  The next office hour is on November 3rd.


12 September, 2016

 

HPC summer school 2016

September 26 - 30, 2016

The second instalment of the HPC summer school starts on Monday September 26th and lasts one week.

The programme includes a code optimisation tutorial, one day of performance tuning for cx2 (helen) and a two day MPI class.  On Friday, we'll host six community sessions on imaging, research software engineering, computational molecular sciences, genomics, research data management and simulation methods. The event concludes with a keynote lecture on compilers, HPC prize announcement and a reception.

You can register for separate workshops or community sessions.  All are welcome!


12 September, 2016

 

ARCHER (UK National Supercomputing Service) training for this autumn includes GPU programming, performance optimisation, practical software development, advanced MPI and Intel Knight's landing workshops. Registration for the classes is open to all academics and students.  ARCHER training page and registration.


10 June, 2016

Interscale interactions in fluid mechanics and beyond: 11-15 July 2016

Summer school organised by the Centre for Doctoral Training in Fluid Dynamics across Scales

This Summer School is an attempt at cross-fertilisation and will include a number of topics where dynamics at disparate scales and their interactions are involved: moving contact lines, derivation of hydrodynamic from kinetic theory equations, large-eddy simulations of turbulent flows, order-disorder transitions in incompressible active fluids, and collective dynamics of large numbers of motile organisms, from bacteria to birds.

Postgraduate students and Post Docs are welcome to attend.  Register here for free before Friday 24 June.

Summer school web pages.


16 May, 2016

No office hour today: There will not be an office hour today, please email Prasun if you have any questions or would like to arrange a meeting.

 


7 April, 2016

NGCM Summer Academy organised by the EPSRC CDT in Next Generation Computational Modelling at the University of Southampton, June 20 - 24, 2016.

The NGCM Summer Academy is a one-week event bringing together PhD students from across the UK who work on computer simulation of science and engineering problems, and want to extend their training through the workshops available at the Summer Academy. The training is delivered by world-leading experts and key developers of the relevant software tools, and includes 2-day courses on IPython and the IPyton NotebookVTK and MayaVi, and GPU programming using CUDAPandas Python library for data handling, Azure Cloud Computing, Programming the Intel Xeon Phi and Fenics and Dolfin multiphysics finite element suite.

Prior to the main programme, the Academy offers Python courses aimed at those just starting with computational work. These courses provides a basic or intermediate introduction to Python, version control and testing.


Registration is now open.


4 April, 2016

So far, we have scheduled two classes for the summer term: 

These classes, together with the upcoming Introduction to the command line (April 21st), are well suited to those students who are just starting to use the HPC resource at the College.


14 March, 2016

Hub Courses

Office Hours

Office hours will be held during term on Mondays (Prasun, 5-6pm) and Thursdays (Katerina, 3-4pm) in the CDT space (4th floor Sherfield, entrance via the 2nd floor). CDT students are encouraged to attend for help with computational aspects of their work. Outside of term, we are often available via email.

External courses

A Software Carpentry workshop will be held at Imperial 23-24 March.


 

About us

People

Prasun Ray, Teaching Fellow in Computational Methods
Email: p.ray@imperial.ac.uk

Katerina Michalickova, HPC systems training specialist
Email: kmichali@imperial.ac.uk

CM Hub at Imperial

We recognize that PhD students come from various backgrounds and have received a varied IT education. To promote excellence in graduate programs at the College, we offer computational method courses for all PhD students from the CDTs.

If you need to learn the basis of command line or shell scripting or if you need to start programming, we will provide a thorough introduction to the topic and get you started. For the more advanced users, we teach parallel methods, parallel programming, good programming practice and more.

The Hub is also closely affiliated with the high performance computing resource at the College and we can provide an introduction and advise on using the clusters. Check out our course list and/or contact us with questions.

Computational science requirements

A survey of computational science skill requirements was conducted in CDTs and the summary is presented below.

The required topic range from the basic command line, through programming skills to advanced topics in numerical methods and algorithms. To reflect the varied needs, we have started to develop short courses that provide a solid introduction to individual topics, followed by guided exercises.

List of required skills: matlab and maths, profiling and performance, programming, MPI and OpenMP, numerical methods and algorithms, computer architecture, best practice in software engineering, data analysis, scripting, software licensing, LaTex, Reference Management

Our vision

Our long term vision is to provide courses organized into three logical levels, each building on the previous one.

First,  we introduce essential computational tools. Second, principles of proper use of tools is covered. Finally, tools and good practices lay the groundwork for computational methods classes.

Our vision

Additional courses and links

HPC wiki - relevant classes at Imperial and all you need to know about using College's HPC resources.

ARCHER - the UK national supercomputing service offers free training courses on an array of topics.

Software carpentry - short introductory courses on Unix, Python, git, R, and a few other topics.

Programming in Fortran 95 Concise, thorough self-study guide for Fortran 90/95

The Not So Short Introduction to Latex Well-established, widely-used introduction to Latex

C++ Notes for short course offered by Theory and Simulation of Materials CDT at Imperial

Past Courses

 

SUMMER 2017

 

SPRING 2017

AUTUMN 2016

 

 

SUMMER 2016

 

 

SPRING 2016

 

AUTUMN 2015

 

 

2014-2015

Activities List

The Computational Methods Hub at Imperial

Supporting excellence in computational science at Imperial’s Centres for Doctoral Training

Computational science provides essential tools, methods, and principles that underpin research in all areas of science and engineering. The Computational Methods Hub facilitates computational science education for CDT students via a wide array of courses and services. Over the past 3 years, the Hub has developed and delivered a broad range of computational courses. Additionally, external experts have been regularly invited to deliver workshops on specialised topics. These courses and workshops are supplemented with weekly office hours where individual students receive assistance with computational aspects of their work. This document presents the full scope of the CM Hub’s offerings and outlines directions for future growth.

Computational science courses

CDT students arrive at Imperial with varying levels of experience with scientific computing, and we have accordingly designed a suite of courses that range from ‘the basics’ to more advanced topics such as parallel computing. At the introductory level, we offer three short courses well-suited for students who are relatively new to scientific computing:

Our intermediate-level short courses that require some prior experience with relevant computational tools are:

We also offer a ten-week Masters-level module via the Mathematics Department:

This course starts with relatively simple material (Unix, git), however by the end of the term, students are writing Python code, which drives Fortran modules that they have parallelised with MPI (while managing their codes with software version control).

A key advantage of the short courses is flexibility. These courses can be offered throughout the year (with customised content) in response to demand from the CDTs. With the semester high performance scientific computing course, an important benefit is coherence. We can emphasise general principles, and students gain valuable perspective on scientific computing as a discipline while also acquiring proficiency with a number of powerful tools.

 

Office hours

We hold weekly office hours during term on in the CDT space in the Central Library. CDT students are welcome to attend for help with computational aspects of their work.  Out of office hours, we can be contacted via email.

 

Student activities coordination

We work directly with students from several CDTs in order to find better ways to promote basic computational skills training. This activity also facilitates valuable cross-CDT interactions.

  • Pain relief for scientific computing: We helped students from Fluid Dynamics across Scales, Mathematics of Planet Earth, Theory and Simulation of Materials and High Performance Embedded and Distributed Systems to prepare a Scientific Computing fair. The event was held in October 2017 and featured informal exhibits dedicated to various tools essential to completing a successful scientific computing project. For the next instalment, we welcome new participants who recognise that sharing hard-won computing experience with fellow students makes a difference.
  • Scientific Computing Support Network: SCSN was launched in October 2107 as a peer support network for students.  More experienced students will act as mentors to their younger counterparts.  If you’re interested in participating, sign up on the website.
  • Build your own computational course: A group of CDT students are designing and developing a new short course on "Scientific Computing Fundamentals" this term to be offered later this summer. If you are interested in some combination of teaching, numerical methods, and computer science and would like to be involved, please send us an email.

 

Training coordination - advanced and specialist classes

In conjunction with Imperial’s Research Computing Service, the CM Hub organises workshops, drop-in sessions and specialist classes.

  • HPC Summer School: One-week programme of tutorials, workshops, and seminars covering all areas of high-performance computing held in September just before the term start. This year’s edition included a three-day class on GPU programming and deep learning, a two-day intensive Python class, a variety of community sessions and a quantum computing day. 

  • Research data and software management workshop: Hands-on workshop on developing and implementing a data management plan.
  • Regular HPC Clinics: Drop-in sessions for new and experienced HPC users.
  • Software and Data Carpentry workshops: Software and Data Carpentry foundations are volunteer organisations whose goal is to make scientists more productive, and their work more reliable, by teaching them basic computing skills and fundamental data skills. They run short, intensive workshops that cover program design, version control, testing, task automation and data management. The College is a member organisation and we will organise local workshops in 2018.
  • EPCC specialist classes at Imperial: We host regular specialist classes delivered by experienced instructors from the Edinburgh Parallel Computing Centre.

 

Bespoke classes

If your CDT needs a quick primer on, for example, using the command line and the HPC resource before students begin a course, let us know and we can provide a customised class. 


 

Getting the most out of the CM Hub

The courses and workshops outlined above provide each CDT with the opportunity to design a customised programme of study that matches its students’ needs. We can provide assistance with the development of such a programme, and we always welcome feedback on our current classes. Moving forward, a point of emphasis is to expand our offerings to ensure that we cover emerging areas of computational science (e.g. machine learning and data science), and again, we welcome suggestions on what the CDTs would like to see. Ultimately, our goal is to provide CDT students with a foundation in computational science that allows them to: 1) select the right computational tool for a particular problem and 2) use that tool in an efficient, intelligent manner. We look forward to continued growth in parallel with the CDTs which ensures that we continue to meet this goal. 


 

Contact us 


Please email to Katerina Michalickova and Prasun Ray at cmhub@imperial.ac.uk.