Giter Site home page Giter Site logo

esm_tutorial's Introduction

๐ŸŽ“ Energy Systems Tutorials

๐Ÿ“š Worksheets and Material:

The tutorials include both, coding exercises and calculations done by hand.

There's a worksheet for every tutorial: tutorial-X/worksheet/X-sheet.pdf

If the tutorial includes coding exercises (some tutorials have no coding exercises), there are Jupyter Notebooks (tutorial-X/notebooks/tutorial-X-task-Y.ipynb) accompanied with required data and additional hints..

The exercises should be worked through before the tutorial. There are exercises which are covered in the tutorial and task which are for studying at home (marked with a house symbol). Questions on both types of tasks are answered in the tutorial and all tasks are relevant for the exam.

๐Ÿ“˜ Python Tutorials

In the tutorials we will repeatedly work with the programming language Python. If you are unfamiliar with the language, you might find the following tutorials useful.

The Python notebook based notes of Robert Johansson are a comprehensive kick starter.

  • Lecture 0 covers installation and getting ready.
  • Lecture 1 zooms through most basic general python control structures (only brush over it and stop reading early, i.e. if you read the word classes you already know too much).
  • Lecture 2 is the most important and closely connected to the exercises.
  • You might as well stop now, but if you are hooked, have a look at Lecture 3 for more physics and Lecture 4 for prettier graphs.

Further reference material of help is are the website-books http://python-course.eu/ (English), http://python-kurs.eu/ (German); especially of interest might be the pandas bit in the end, which will make the exercises a breeze at the expense of yet another package to learn.

๐Ÿงฎ Tutorials via Binder

You can use Binder to directly run code from the Jupyter Notebooks online without a local installation. It will create the necessary software packages and open a Jupyter Notebook from a remote server. To use binder click on the blue badge or follow the link

Binder

https://mybinder.org/v2/gh/lisazeyen/ESM_tutorial.git/master

It might take a moment, so please be patient ๐Ÿ™ƒ

You should now be ready to do the tutorials in the browser ๐Ÿฅณ

โฌ‡๏ธ Download

If you prefer to do the tutorials locally with your own Python installation, first download the tutorials with git with the following command:

cd /path/where/your/tutorial/folder/should/be
git clone https://github.com/lisazeyen/ESM_tutorial.git

or if you have ssh setup at github:

cd /path/where/your/tutorial/folder/should/be
git clone [email protected]:lisazeyen/ESM_tutorial.git

Alternatively, (not as nice as description above) you can download the tutorials as compressed zip-file from https://github.com/lisazeyen/ESM_tutorial/archive/master.zip

๐Ÿ”ง Installation Guide

To manage Python environments, we recommend to use conda to install the packages required.

Install miniconda (or Anaconda). For instructions for your operating system see https://conda.io/projects/conda/en/latest/user-guide/install/index.html.

Create a new conda environment from the provided environment.yml file with the following set of commands:

Windows:

conda env create -f environment.yml
activate esm-tutorials

macOS and Linux:

conda env create -f environment.yml
conda activate esm-tutorials

On some older Linux installations the last command can be instead

source activate esm-tutorials

For detailed instructions see https://conda.io/docs/user-guide/tasks/manage-environments.html#creating-an-environment-from-an-environment-yml-file. It will take some time!

With the conda environment installed and activated, open a Jupyter Notebook with the following command in the tutorial folder (where your notebooks are):

cd /path/where/your/tutorial/folder/should/be
cd ESM_tutorial
jupyter lab

or

cd /path/where/your/tutorial/folder/should/be
cd ESM_tutorial
jupyter notebook

esm_tutorial's People

Contributors

fneum avatar lisazeyen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  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.