Giter Club home page Giter Club logo

numericalpython's Introduction

Introduction to Numerical Python for Engineers, YouTube

Hello! Numerical programming is becoming a key skill for modern engineers and you will need to use Python in some of your modules for labs and coursework. This is a quick introduction to numerical programming in Python using a set of interactive Jupyter notebooks.

  1. Python Basics
  2. Conditionals and Lists
  3. Numerical Python and Plotting
  4. Example: Potential flow plot
  5. Scientific Python library

How to complete this introduction?

You can use these notebooks in two ways:

  • You can run the notebooks on google colab. This is extremely convenient, requiring nothing but a Google account! Just click the links above to get started.
  • Alternatively, you can run the notebooks on your own machine. To do this, you need to download this github repository using the green code button above; for example as a zip file or using github desktop. If you haven't already, you should also install Anaconda. This will install Python and the Jupyter notebook environment, letting you run the notebooks locally.

I've also made a playlist on youtube going through the notebooks. You won't learn much from watching the videos alone! Make sure to complete the exercises by running the notebooks in one of the two ways described above.

Why use programming for analysis?

The programming approach is highly preferred to using spreadsheets (like Excel) which are extremely dangerous to use for important work. Well documented spreadsheet errors have led to catastrophes in business, economic policy and health care. This is because:

  • Spreadsheets hide their methodology behind the data. This makes it difficult and error-prone to transfer methods to new data. In contrast, a program is the methodology, making testing and reproduction much easier.
  • Spreadsheets are not extensible. Their limited numerical methods make them inappropriate for any advanced engineering analysis.

Why use Python?

Python is growing like wildfire

Python has a few important advantages as a numerical programming language:

  • Python is in high demand. This means learning Python is a good way to improve your job prospects; particularly for engineering positions related to data-science and machine learning.
  • Python has the largest community of users and developers. The figure above indicates that Python is around five times larger than any other programming language used for numerical work. This means Python is being continuously developed and tested, and it is very easy to get help.
  • It is open-source and free to use. This helps the community grow and also ensures future employers can use your skills - no need to pay for a Matlab license.
  • Python is easy to learn and the lessons are generally transferable to other languages. A basis in Python will help make other growing numerical languages like Julia and R more approachable.

What if I need more help?

This introduction is meant to get you familiar with numerical Python as quickly as possible. It assumes very little knowledge of programming, but accelerates quickly up to fairly advanced examples. If you are a complete beginner or if you prefer a slower pace then you might try these additional resources:

numericalpython's People

Contributors

weymouth avatar grace-ta 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.