Building Comfort With MATLAB

Slides:



Advertisements
Similar presentations
How do we work in math lessons?. Maths is taught from 1-12 forms in Lithuania. At 10 grade students must take the compulsory test of mathematical knowledge(achievements).
Advertisements

Halomda Educational Software ( Established 1988) Mathematics and Science for Primary, Intermediate and High schools Computer Aided and e-Learning Math-XPress.
Process Control: Designing Process and Control Systems for Dynamic Performance Chapter 6. Empirical Model Identification Copyright © Thomas Marlin 2013.
Teaching Courses in Scientific Computing 30 September 2010 Roger Bielefeld Director, Advanced Research Computing.
Amy Wagaman Department of Mathematics and Statistics Amherst College.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
Programming Fundamentals. Programming concepts and understanding of the essentials of programming languages form the basis of computing.
Why Program? CSE111 – Great ideas in Computer Science Clearly programming fits here Programming is a Great Idea in Computer Science. It has allowed computers.
Stability and Sensitivity of Certain Computational Methods: A Symbolic-Numeric Treatment with Mathematica Ali YAZICI Software Engineering Department Atilim.
Working with JavaScript. 2 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page Working with Variables.
XP 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial 10.
CS101- Lecture 11 CS101 Fall 2004 Course Introduction Professor Douglas Moody –Monday – 12:00-1:40 – – –Web Site: websupport1.citytech.cuny.edu.
Ways to solve problems Top down approach – Break problem up into smaller problems Bottom up approach – Solve smaller problem and then add features – Examples:
CSSE221: Software Dev. Honors Day 3 Announcements Announcements Should get in habit of checking in BigRational code as you go Should get in habit of checking.
Principles of Procedural Programming
CS190/295 Programming in Python for Life Sciences: Lecture 1 Instructor: Xiaohui Xie University of California, Irvine.
James Matte Nicole Calbi SUNY Fredonia AMTNYS October 28 th, 2011.
An innovative learning model for computation in first year mathematics Birgit Loch Department of Mathematics and Computing, USQ Elliot Tonkes CS Energy,
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
A Spreadsheet Learning Environment (SLE) For Business Math The Oswego Symposium on Learning and Teaching: A Celebration of Meaningful Learning Jack Narayan.
Algorithmic Problem Solving CMSC 201 Adapted from slides by Marie desJardins (Spring 2015 Prof Chang version)
SOME IMPORTANT FACTORS IN TEACHING SOFTWARE ENGINEERING COURSES Presenter: Jingzhou Li Depart of ECE, University of Calgary,
Introduction to Programming Lecture 1 – Overview
Analytical vs. Numerical Minimization Each experimental data point, l, has an error, ε l, associated with it ‣ Difference between the experimentally measured.
ENHANCING STUDENT ENGAGEMENT AND UNDERSTANDING THROUGH VIDEO LECTURES AND QUIZZING AMY RUTLEDGE, SPECIAL INSTRUCTOR OF MANAGEMENT INFORMATION SYSTEMS OAKLAND.
An Introduction to Programming and Algorithms. Course Objectives A basic understanding of engineering problem solving process. A basic understanding of.
XP Tutorial 10New Perspectives on Creating Web Pages with HTML, XHTML, and XML 1 Working with JavaScript Creating a Programmable Web Page for North Pole.
Applied Econometrics 1 Vincent Hogan
Copyright © 2006 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1 Chapter 2.
1 CSC 222: Computer Programming II Spring 2004 See online syllabus at: Course goals:
CPS120 Introduction to Computer Programming The Programming Process.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
The following slides provide the questions from the needs survey and the responses given by the participants taking the survey. After the questions and.
1 Programming with MATLAB ผศ. ดร. อนันต์ ผลเพิ่ม Anan Phonphoem
XP Tutorial 10New Perspectives on HTML and XHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
PROGRAM DEVELOPMENT CYCLE. Problem Statement: Problem Statement help diagnose the situation so that your focus is on the problem, helpful tools at this.
CSE 190p wrapup Michael Ernst CSE 190p University of Washington.
Computing Systems & Programming ECE Fundamental Concepts Chapter 1 Engineering Problem Solving.
Sep 13, 2006 Scientific Computing 1 Managing Scientific Computing Projects Erik Deumens QTP and HPC Center.
Halomda Educational Software ( Established 1988) Mathematics and Science for Primary, Intermediate and High schools, Colleges and Universities Computer.
How Are Computers Programmed? CPS120: Introduction to Computer Science Lecture 5.
MIT App Inventor Lesson 3 Algorithms Variables Procedures.
Text INTERNAL February 11, 2011 Problem Solving. INTERNAL Tech Republic’s railway department wants a solution Tech Republic’s railway department.
Application Development in Engineering Optimization with Matlab and External Solvers Aalto University School of Engineering.
XP Tutorial 10New Perspectives on HTML, XHTML, and DHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties.
How Computers Solve Problems Computers also use Algorithms to solve problems, and change data into information Computers can only perform one simple step.
Getting Started With Python Brendan Routledge
Laptop St Mary Star of the Sea College Mathematics Teacher’s Day University of Wollongong 2007 Gerry Sozio.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
 Problem Analysis  Coding  Debugging  Testing.
244-1: INTRODUCTION TO PROGRAMMING
CSC 222: Computer Programming II
Learning outcomes 2 Developing Code – Input Output Model
Music Editing Software
3.5 General feeling that knowledge of hydrology has improved … but more is needed.
Computer Application in Engineering Design
Computational Reasoning in High School Science and Math
1-1 Logic and Syntax A computer program is a solution to a problem.
Adventures in teaching and learning data analysis with R
Computation teaching problems
Computational Thinking in the Classroom
Prepared by Kimberly Sayre and Jinbo Bi
Statistical Computation Tools in Pharmaceutical Drug Development and Manufacturing Life Cycle Fasheng Li Ke Wang Pharmaceutical Statistics Worldwide.
CS190/295 Programming in Python for Life Sciences: Lecture 1
Lecture 1: Introduction
CIS16 Application Development – Programming with Visual Basic
Net 222: Communications and networks fundamentals (Practical Part)
Communication and Coding Theory Lab(CS491)
Course page: CSE/Math 1560: Introduction to Computing for Mathematics and Statistics Winter 2011 Suprakash Datta.
Presentation transcript:

Building Comfort With MATLAB Wendy Thomas Associate Professor of Bioengineering University of Washington

My Teaching Experience Bioen 201 (2008 – 2010) sophomore core: intro to mathematical programming (5 weeks) and circuits (5 weeks) Bioen 485/585 (2004 – 2016) senior + graduate elective: computational differential equation modeling for bioengineering Bioen 503 (2010 – 2013) graduate core: systems bioengineering (analytic and computational systems models) Disclaimer: All my classes teach scientific computing in disciplinary context, not disciplinary content enhanced by computing

Keys to Building Comfort With MATLAB SOFTWARE SUPPORT hands-on support in front of the computer (lab, class or office hours with laptops or in computer lab) Peer tutoring/workshops are great! tutorials (linked online or made just for the course, but should get student from ground zero to the first assignment) Practice

Keys to Building Comfort With MATLAB Each activity requires: MOTIVATION Task should be easier to perform in MATLAB than in common alternatives (calculator, EXCEL), even at this stage of experience. Task should relate to something of value (course content or common experiences) LIMITED LEARNING OBJECTIVES Identify a limited set of computing concepts and MATLAB tools that are easy to learn at this stage of experience Don’t let students spend hours on something unrelated to the objectives. Jump start by providing needed resources such as: Pseudo-code activity to help design algorithm sample commented code for related problem Tutorial-like part 1 followed by independent part 2

Comfort With What? Key scientific computing skills: INTRODUCTORY SKILLS: Arrays & algebra Scripts & functions, Plots Flow control Basic input/output Intermediate Skills: Use documentation to learn new skills Debugging More input and output common functions: fminsearch, ODEs, statistics, visualization tools, etc, Advanced skills: Algorithm design Data structures (e.g. Structures(1).awesome) GUI design Advanced visualization tools Reliability tools (version control, visual checks of analysis, etc.) One lesson One course While I use many of these in my research, I have not taught them

Set Expectations Designing algorithms … Debugging Test hypotheses to divide and conquer Much more efficient than experiments to teach logic Move from cook book labs to independent thinking

Lesson 1 Motivation: MATLAB is easier and more reliable for moderately complex calculations and for plotting functions. Learning Objectives: command line and scripts Simple syntax Arrays Plot command Maybe: Input (load) Activity examples: plot how an algebraic expression changes with one or more parameter values to explore an equation from class Plot and analyze data from a wet lab Plot and analyze a provided data set

Lesson 2 Motivation: MATLAB helps with data analysis Learning Objectives: Input and output data Flow control Look up and call functions Activity Process long data set obtained in a lab to make calculations. Long time series data are great for this. My class: calculate viscoelastic properties of material from repeated stress cycle data.

Lesson 3 Motivation: MATLAB provides flexible fitting of models to data Learning Objectives: Write functions fminsearch Activity Test hypotheses to relate experimental data to concepts in class. My class: drug delivery nanoparticles