yubo56 / 2021-workshop

REU Programming Workshop 2021

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cornell Astronomy 2021 REU - Python Workshop

Welcome to the GitHub repository for the Cornell Astronomy Summer 2021 Python workshop! Much of this is reused with generous permission from the 2020 REU Python Workshop, located here.

Conveners: Stella Koch Ocker, Yubo Su, Jonathan Davis

Info
Zoom link sent via email
Tuesday, 8th June 2021 / 11:00 - 12:00
Dates and time Tuesday, 15th June 2021 / 11:00-12:00
Wednesday, 16th June 2021 / 2:00-3:00

Description

Our goal is to provide an introduction and overview of the Python programming language and ecosystem, including the base python languare features and some libraries which are widely used both inside and outside of astronomy.

We will be using jupyter notebooks throughout, which are a great tool to interactively write python code, and easily do things such as plotting and visualization all in one place.

We have some info on installing python, along with an introductory jupyter notebook to cover some basics, which are linked in the 'Before the Workshop' section below. Along with these introductory concepts, we will introduce you to:

  • The python ecosystem, and jupyter notebooks.
  • The basic libraries of numerical and scientific computing, NumPy and SciPy.
  • How to visualise and plot data using matplotlib
  • Libraries for easily working with data, such as Pandas.

We hope for this workshop to be a springboard from which you can learn much more about python, programming and working with software in astronomy and the sciences.

Learning Objectives

  • Gain awareness of Jupyter notebook - a tool that can help you organize research notes and code in one place.
  • Obtain basic proficiency in popular python packages frequently used in astronomy research.

Agenda

We have included excellent and thorough materials from the 2020 edition of this workshop, which you may find useful. The ipynb files can be found in the 2020_materials folder.

Day 1

  • Introduction to the Anaconda + Python + Jupiter ecosystem.
  • Use Google Colab to attain basic familiarity with Python syntax and features.
  • Introduction to NumPy.
  • notebook: day1.ipynb (Google Colab version)

Day 2

  • Introduction to a few more major scientific computing libraries:
    • matplotlib
    • scipy
    • astropy
    • sympy
  • day2.ipynb or the Google Colab version)

Day 3

  • Setting up local environment
  • Working from the command line
  • PyCharm and Anaconda
  • Goal: run the script here on your local computer.

Before the workshop

If you would like to follow along interactively during the workshop, please do the following before the course starts:

  • Download and install Anaconda (official installation instructions are here). Use the latest version of Python 3 and be sure to check the box that says "Add Anaconda to my PATH environment variable" if on Windows.

AnacondaPath

  • Please go through the notebook CrashCourseInPython.ipynb in the 'intro' folder. It will help you review the basic functionalities and concepts within Python.
  • The CrashCourseInPython.ipynb file is a Jupyter notebook: an open-source web application that allows one to create and share documents that contain live code, equations, visualizations and narrative text. It comes pre-installed with package distributions like Anaconda. However, if you don't have access to Jupyter/Python on your computer (or run into issues installing Anaconda/Python), you can find an online interactive version of the notebook here!

After the workshop

Further reading

About

REU Programming Workshop 2021


Languages

Language:Jupyter Notebook 99.9%Language:Python 0.1%