FACTS TO HELP STUDENT'S SELECT OPTION OF CSCE 150 (FORTRAN OR MATLAB) (PROGRAMMING AND COMPILING FORTRAN 90 OR USING MATLAB TOOLS ON PROBLEMS) Depending on your department, your professor's bias, your personal interests and objectives, you have the option of choosing course section 250 introducing a variant of the CSCE 150 course to learn MATLAB*, or section 150, the regular FORTRAN 90 based version. The course is being split into two sections as part of an experiment begun this past fall semester. The regular section will focus on inventing basic computer programs tailored to solve unanticipated problems. The other section will rely primarily on higher level tools where generic modules are to be applied to instances of problems that have been solved generally by others and then programmed for computers by professionals. Important differences in the objectives of the two proposed course versions are sketched below: -=-=-=-=-=-=-=-=-=-=-=- Objectives of the MATLAB section (sect. 250, limited to 28 students): To develop an understanding or familiarization with concepts currently popular for computer solution of numerical problems and techniques for displaying input data and the resulting solutions obtained with the aid of a computer. Learning to plan and devise sequences of higher-level steps that are sufficient for mechanistically-automating algorithmic and/or procedural problem solving. Learning how to get computers to accept data and display generated results in forms of numbers, character strings, cellular arrays and/or graphic images. Identifying problems that are more amenable to solution by numerical calculation and applying graphic tools available through MATLAB and from other compatible auxiliary, already-available programs. Such programs may be accessed through execution interfaces. The may be added later by students who want the improved solutions possible from writing programs for original or new problems by using other high-level computing languages. Examples of Problems that are already being solved with standard programs: 1) Formula evaluation with expressions written in well-formed compiled or interpreted languages, for example: the computation of the inverse of a matrix. 2) Iterative improvement of solutions from approximate initial or trial starting solutions Examples of new problems requiring novel or customized solutions: 1) Building a personalized data base manager from programs specialized to store and retrieve data 2) Building a program that generates original art. Alternately, a program may be required to direct a robot to find one satisfactory path. This path may have to be through a newly confronted and unanticipated configuration of obstacles. -=-=-=-=-=-=-=-=-=-=-=- * Objectives of the Programming with FORTRAN section 150 * (class size will be limited to about 120 and adequate compilers are highly available) This course will aim to introduce problem solving and computer programming with Fortran relying on parallelized versions 90, 95 or higher that have were developed from and remain compatible with version 77. The main objective is to inspire students invent algorithms and devise solution steps of rigid and fully defined procedures that are able to produce solutions to problems in ways that are independent of whether the steps of the solution are performed manually or blindly executed by a computer. Students are to learn how to define and create storage and executable statements that are a part of the Fortran language. Also, students must learn to avoid and remove errors from these codes so that a compiler program can convert them unambiguously to binary (0 and 1) machine executable modules that will direct a computer to perform those steps of each algorithm or procedure with extremely great speed. -=-=-=-=-=-=-=-=-=-=-=-=- *Nature of the MatLab Problem Solving Environment * (This section 250 of the CSCE 150 course wi11 have its laboratory session limited to 28 students) Matlab is a computing environment supports PC-terminal computation, visualization, and application specific tool boxes (these are specialized support program packages). Mainly, there is a built-in commands designed to invoke standard algorithms. To a large extent these have been formulated in a matrix notation. As a result they provide a virtual matrix laboratory. This works with numbers or text or with expressions in cells or elements of vectors or arrays. Matrix-oriented language features have been borrowed from other computer languages to help streamline the organization of large scale data analysis and computation. *Capabilities of MatLab* MatLab's display features produce 2-D and 3-D renditions of images. These may aid in the analysis, transformation and visualization of data and computed results. MatLab has dynamic links to C and Fortran programs. Available are over 20 specialized program packages (called toolboxes). These are designed for addressing special application areas such as: signal and image processing, control systems design, frequency domain identification of patterns, designs of robust controllers, mathematics, statistics, data analysis, neural networks, fuzzy logic, optimization and interpolating splines. The University pays for 30 license of MatLab. Personal student CDs are available at the bookstore for $99. *TEXTBOOK*: Intro. to Matlab 7 for Engineers - Palm III, William J ISBN: 0072922427 $51.25 USD McGraw-Hill**