Purpose: This was a final project for Mechanical Engineering 018A. It was designed to assess students' ability to use MATLAB and their understanding of differential equations, matrix operations, programming fundamentals, and systems of unknowns. In addition, this project was specifically centered on saturated steam in a turbine at the request of the head of the Department of Mechanical Engineering at UC Riverside to aid in his research.
Goal: Develop a program and user interface that can take any of the given properties of steam within an enclosed turbine and calculate all other stated properties of that steam with an allowed 1% error. The program must produce a table with all required properties of the steam across a temperature range of 273.15 K to 373.15 K. The list of properties that the steam calculator needed to calculate and report on was as follows: temperature (kelvin); pressure (kPa); specific volume (m3/kg); internal energy (kJ/kg); specific enthalpy (kJ/kg); specific entropy (kJ/kg). In addition, the program must take into account the saturation of the steam. Therefore, it returns the internal energy, enthalpy, and entropy concerning the whole system and the vapor and liquid water, respectively.
Restrictions: MATLAB was designed to handle multiple variable operations, matrix operations, calculus, and root finding. Thus, it has an extensive database of prebuilt functions. To properly showcase our abilities and understanding of the underlying math, physics, and programming of the steam calculator, students were not allowed to use any of the aforementioned functions and had to build their own. Meaning, while there is a root-finding function provided in MATLAB, students must incorporate and develop their own root-finding functions using the bisection method taught in class. .