skip to navigation skip to content
- Select training provider - (Showing all providers)
Providers & themes
Find theme:
Select provider / theme

Theme: Scientific Computing

Show:
Show only:

11 matching courses


Using the Parallel Computing capabilities in MATLAB allows you to take advantage of additional hardware resources that may be available either locally on your desktop or on clusters and clouds. By using more hardware, you can reduce the cycle time for your workflow and solve computationally- and data-intensive problems faster.

In this seminar, we will discuss a range of workflows available to scale MATLAB applications with minimal changes to your MATLAB code and without needing to learn any shell or scheduler programming syntax.

C++: Programming in Modern C++ Wed 4 Jan 2017   09:30 Finished

This is an introduction to programming in modern C++, based on the book "'Programming: Principles and Practice using C++"' (2nd ed.) by Bjarne Stroustrup. The aim is to teach participants how to write non trivial, practical programs that are comprehensible and portable. Participants should also be able to understand and modify most well-written C++ applications, though not necessarily every aspect of them.

C++ is a large and complicated language, which is reflected in the length of this course. The creator of C++, Prof. Stroustrup, estimates that newcomers to programming will have to devote in excess of 200 hours' of work to learn how to program in C++ properly. Please bear that in mind if signing up for the course. It would also be of help (though not essential) if attendees have some prior programming experience in another language, e.g. Python.

High Performance Computing: An Introduction Tue 6 Jun 2017   09:30 Finished

The course aims to give an introductory overview of High Performance Computing (HPC) in general, and of the facilities of the High Performance Computing Service (HPCS) in particular.

Practical examples of using the HPCS clusters will be used throughout, although it is hoped that much of the content will have applicability to systems elsewhere.

This course aims to provide a basic knowledge of GPU programming using OpenACC directives. The course is very hands-on oriented, aiming to give to you the opportunity to practice and experiment from the very beginning.

This course is part of the Scientific Computing series.

This course is aimed at those new to programming, or who have never been formally taught the principles and basic concepts of programming. It provides an introduction to the basic concepts common to most high level languages (including Python, Java, Fortran, C, C++, Visual Basic). The aim of the course is to equip attendees with the background knowledge and confidence necessary to tackle many on-line and printed programming tutorials. It may also help attendees in deciding which programming language is suitable for their programming task.

Knowledge of the concepts presented in this course is a pre-requisite for many of the other courses in the Scientific Computing series of courses (although not for the "Python for Absolute Beginners" course).

Python 3: Advanced Topics (Self-paced) Fri 19 May 2017   09:30 Finished

This course is part of the Scientific Computing series and is suitable for people who have Python experience equivalent to either of the introductory courses: Introduction for Absolute Beginners or Introduction for Programmers

These sessions consist of a selection of self-paced mini-courses, each taking at most a half-day. Python expert(s) from the UCS will be present to answer questions or address difficulties with these. Attendees can select from the available topics to most closely meet their individual needs. Attendees are welcome to attend more than one session to work through multiple topics. If an attendee finishes a topic with time to spare they may select another, and so on.

Python 3: Introduction for Absolute Beginners Mon 3 Jul 2017   09:30 Finished

This course is part of the Scientific Computing series.

This course is aimed at those new to programming and provides an introduction to programming using Python, focussing on scientific programming. This course is probably unsuitable for those with programming experience, even if it is just in shell scripting or Matlab-like programs. By the end of this course, attendees should be able to write simple Python programs and to understand more complex Python programs written by others.

As this course is part of the Scientific Computing series, the examples chosen are of most relevance to scientific programming.

This course is part of the Scientific Computing series.

This full-day course introduces the Python programming language to those who are already familiar with another high level programing language such as C/C++, Fortran, Java, Perl or Visual Basic. The aim of this course is to give such programmers sufficient familiarity with Python that they can attend any of the more advanced Python courses organised by the Computing service and easily follow any of the widely available Python tutorials on the more complex aspects of the language.

This course covers all the material contained in the "Programming: Python for Absolute Beginners" course, but in a more abbreviated fashion suitable for those who already have significant programming experience. This course does NOT cover the more complex aspects of the language (for such topics see the other Computing Service Python courses), nor is there much explicit discussion of the object oriented features of Python.

If you are an accomplished and experienced programmer you may find this course too slow, you may prefer to self-teach the course rather than attend in person, the full set of notes can be downloaded.

Unix: Building, Installing and Running Software Mon 27 Feb 2017   14:00 Finished

This course is part of the Scientific Computing series.

It is common for a student or researcher to find a piece of software or to have one thrust upon them by a supervisor which they must then build, install and use. It is a myth that any of this requires system privilege. This course demonstrates the building, installation and use of typical software ranging from trivially easy examples (the "configure, make, install" scheme) through to the evils of badly written Makefiles. Common errors and what they mean will be covered and by the end of the course the student should be able to manage their own software without needing to pester their system administrator.

The course is designed to take someone from having no knowledge of the Unix command line to being able to navigate around directories, and doing simple file manipulation. Then some of the more basic commands, will be introduced, including information on how to get more help from the system itself. Finally accessing remote computers by ssh and the most basic of shell scripts will be introduced.

Unix: Simple Shell Scripting for Scientists Mon 12 Jun 2017   14:00 Finished

This course is part of the Scientific Computing series.

No previous experience of shell scripting is required for this course; however some knowledge of the interactive use of the bash shell is a prerequisite (see Simple Shell Scripting for Scientists: Prerequisites for details).

This course introduces shell scripting in bash for scientific computing tasks. Day one introduces very basic shell scripts in bash which process the command line in a simple fashion. Day two covers how to write more advanced shell scripts in bash. Day three covers how to make one's shell scripts more robust.

At the end of each day one or more exercises are set. It is VERY IMPORTANT that attendees attempt these exercises before the next day of the course. Attendees should make sure that they have allowed themselves sufficient study time for these exercises between each day of the course.

[Back to top]