Practical Computing for Engineers:
Updated Aug 22, 2017
A one-credit supplement to CS
1112. Time commitment: 1 hr/wk in class + 2 hrs/wk out + 3 hrs
An introduction to Engineering problem solving using Matlab, supplementing CS 1112. ENGRG 1112 uses CS 1112 concepts in the service of basic numerical computation for engineering. At course completion, a student will be able to comfortably use Matlab to solve or check homework problems or project issues, in almost all other math and engineering courses, using various numerical and symbolic methods.
Throughout the semester, students will solve `word problems'. The over-arching theme, sitting above the list of topics in the applied text and in the CS 1112 syllabus, is the nature of problem solving: how to turn a question into a solvable problem, and then solving, debugging and making sense of the solution. The final project and demonstration will show competence in all of this.
Why does CS 1112 need a
So that students who want that can orient their computer science skills more in the applied direction.
What is the difference between
this (ENGRG 1112) and the CS1112 AEW workshop?
AEW is reinforcement of the material in CS1112. ENGRG 1112 builds on CS 1112 with additional applied material.
Can I take ENGERG 1112 and the CS1112 AEW workshop?
Yes. But you only have so many hours in a week.
Can I take this if I am in, or
took, CS 1110?
You are not the main target audience. But you can take ENGRG 1112 if you are willing to learn the CS 1112 material, namely basic Matlab syntax, on your own.
Can I take this if I am a sophomore?
You might be bored by the initial weeks when the freshman are just getting up to speed, but we could give you homework suitable to your level.
Prerequisites: No specific pre-requisites
Corequisites You should be taking, or have taken, Math 191 or equivalent, and CS 1112 or equivalent (exceptions w/ permission of instructor).
You should be comfortable with topics up to calculus including algebra, geometry and trigonometry.
* Strongly recommended: Matlab on a laptop computer (student edition or Cornell license).
* i-clicker, or cell phone app
that interfaces with i-clicker.
Class and lab schedule: 1 lecture per week, Friday 1:25-2:15
Office hours: Many. Students are expected to come, at least briefly, every week.
Assignments, exams, and projects
- Daily informal in-class i-clicker quizzes
- Video and/or reading prep for every lecture.
- Using-the-computer assignment(s) associated with every lecture
- No prelims or exams
- Final ``design'' project, and individual presentation of project including query of student's mastery of material
- Nominal workload is 3 hours/wk (in class and out of class). Thatís 50 hours total for the semester
Grading: Letter grade or pass/fail. Based on a weighted average of all course components.
Pass/fail: A student who credibly documents an investment of 50 hours total, passes.
Letter: 50 hours guarantees a B. The median grade will be somewhere in the B+ range, depending on overall class performance.
Typical topics covered
The course will re-inforce most of the content in CS 1112. Additional emphasis will be on such things as the Matlab user interface (managing windows, help, directories, etc); reading and writing files; Symbolic calculations; useful math functions (ode45, interpolation, curve fitting, backslash, etc);accuracy, convergence, roundoff and method errors; advanced Plotting, animation. Sample numerical problems will include finding areas and volumes, integration, differentiation, limits, series, monte-carlo population dynamics simulations, Euler's method for ODEs, etc.
Working knowledge of most of the above topics, including both programming skills and special Matlab shortcuts.
Comfort and ability to setup, solve engineering and math problems using the tools above.
Ability to and habits of doing well documented, organized and checked-for-reasonableness computer work.
Student should be comfortably able to solve, illustrate, plot, or animate some features of most homework problems in most later courses using Matlab, including projects involving multiple files and user-created functions.
Examples of detailed skills to be obtained by students:
- Go from a word problem to system of linear equations to matrix form to computer solution to interpretation of solution.
- Be able to code in Matlab, without special Matlab commands: Euler's method; numerical differentiation; numerical integration in 1-3 dimensions.
- Do algebra with the Symbolic toolbox.
- Convert symbolic expressions into expressions for numerical evaluation.
- Print using disp and fprintf; read and write files.
- Use the debugger
- Use the plot command with some sophistication in 2D and 3D
- Make simple animations.
- Use various forms of online help (help, doc, google, etc)
- Use the computer iteratively to estimate method and roundoff errors.
Suggested or entertaining
or useful links/readings:
* Kelly Black Matlab, U of Georgia. .
* Kelly Black Matlab, U of Georgia.
* TutorialsPoint Matlab. Tutorial