Giter Club home page Giter Club logo

ep476's Introduction

EP476 - Introduction to Scientific Computing for Engineering Physics

Welcome to EP476, "Scientific Computing for Engineering Physics". This course will focus on bringing important scientific software development skills to students primarily in the Engineering Physics department.

Location: M1053 Engineering Centers Building
Class times: TR 1:00-2:30 PM
Instructor: Prof. Paul Wilson
Office: 419 Engineering Research Building
Email: paul.wilson _at_ wisc.edu
Phone: 608-263-0807

Description

Scientific software development has transitioned from a field devoted almost entirely to numerical methods to one that increasingly relies on more advanced management of data and development of analysis workflows that involve multiple tools strung together in a sequence, and also numerical methods.

This course is designed to introduce a variety of concepts that will make engineers and scientists more effective at developing software that facilitates modern engineering analysis.

Textbook

"Effective Computation in Physics", Anthony Scopatz & Kathryn Huff, O'Reilly, 2015

Assessment

Homework: 60%

  • approximately weekly
  • continuation of in-class exercises
  • develop skills and proficiency

Project: 40%

  • implement your own software and/or contribution to an open source software project
  • should use a variety of skills learned in class

Syllabus

Week 1
Jan 19 & 21
Intro, Shell, Filesystem & Environment
Lecture #1 Lecture #2
Week 2
Jan 26 & 28
Managing your Environment & Intro to Version Control
Lecture #3 Homework #1
Week 3
Feb 2 & 4
Version control: Local & Remote; Python Intro, Types
Lecture #4 Lecture #5 , Project Intro
Week 4
Feb 9 & 11
Python: Strings, Modules, Documentation, Containers
Lecture #6 , Lecture #7 Homework #2
Week 5

Feb

16 & 18

Python: flow control, modularity with functions
Lecture #8 , Lecture #9
Week 6
Feb 23 & 25
Python: Classes & Modules
Week 7
Mar 1 & 3
Python: Debugging & Unit testing
Week 8
Mar 8 & 10
Python: Integration & regression testing, Validation
Week 9
Mar 15 & 17
Profiling & Compiled languages & Mixed languages
Mar 22 & 24: Spring Break
Week 10
Mar 29 & 31
Make files & build systems
Week 11
Apr 5 & 7
Deployment & Collaboration
Week 12
Apr 12 & 14
Continuous integration & Automation
Week 13
Apr 19 & 21
Data management & metadata
Week 14
Apr 26 & 28
String handling & Regular expressions
Week 15
May 3 & 5
Numerical tools: Numpy, SciPy, Matplotlib
BONUS Parallelism: HTCondor, MPI, OpenMP

ep476's People

Contributors

gonuke avatar

Watchers

 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.