A course was developed to teach aspects of materials science, numerical methods, and programming in an integrated fashion. During the second teaching of the course, it was modified to enhance its delivery by focusing on the aspects which gave the students the most difficulty in its first offering: syntax and organization of operations in programming. This was achieved through the use of Matlab as a meta-language platform, development of Matlab tutorials for the course, and an emphasis on algorithmic thinking. In this paper, algorithmic thinking involves developing a complete understanding of the operations required via hand calculations and block diagrams before attempting to generate any code. Students were graded on their ability to relate what the program/algorithm should do next verbally and pictorially and then tasked with translating those known operations into Matlab code using Matlab's extensive help menus. The help menus allow users to employ keyword searches to find descriptions and examples of commands with the needed functionality. Results of student projects show improvement from the first to second years. Student response to the course also shows an increased respect for Matlab as a useful engineering tool. In both years, students who were unable to verbally describe the needed operations in the programs generated less efficient or inoperable code.
|Original language||English (US)|
|Journal||ASEE Annual Conference and Exposition, Conference Proceedings|
|State||Published - 2006|
All Science Journal Classification (ASJC) codes