Begin Python with TCLab
Main.CourseProjects History
Hide minor edits - Show changes to output
Deleted lines 9-10:
%width=30px%Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
Added lines 8-9:
%width=30px%Attach:zip.png [[Attach:begin_python.zip|Begin Python π with TCLab (Zip Archive)]]
Changed line 66 from:
speedup = 100
to:
speedup = 100 # Emulator (digital twin) speed-up
Added lines 53-83:
!!!! TCLab Digital Twin
If no hardware is available, use ''TCLabModel()'' in the place of ''TCLab()''. The emulator (digital twin) can be run faster than real-time as shown below:
(:source lang=python:)
import tclab
import numpy as np
tclab_hardware = False
if tclab_hardware:
mlab = tclab.TCLab # Physical hardware
else:
speedup = 100
mlab = tclab.setup(connected=False, speedup=speedup)
n = 500
tm = np.linspace(0,2*n,n+1)
# Connect to TCLab
with mlab() as lab:
# set heater values
lab.Q1(70)
lab.Q2(20)
for t in tclab.clock(tm[-1]+1, 2):
print('Time: ' + str(t) + \
' T1: ' + str(round(lab.T1,2)) + \
' T2: ' + str(round(lab.T2,2)))
(:sourceend:)
Change ''tclab_hardware'' from ''False'' to ''True'' to use the physical hardware.
Changed line 11 from:
%height=22px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270: Introduction to Python π with AIChE Academy]]
to:
%height=20px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270: Introduction to Python π with AIChE Academy]]
Changed line 11 from:
%height=25px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270: Introduction to Python π with AIChE Academy]]
to:
%height=22px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270: Introduction to Python π with AIChE Academy]]
Changed line 11 from:
%height=20px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270 π with AIChE Academy]]
to:
%height=25px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270: Introduction to Python π with AIChE Academy]]
Changed line 11 from:
%width=30px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270 π with AIChE Academy]]
to:
%height=20px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270 π with AIChE Academy]]
Added lines 10-11:
%width=30px%Attach:aiche.png [[https://www.aiche.org/academy/courses/ela270/introduction-python-chemical-engineers|ELA270 π with AIChE Academy]]
Changed lines 7-9 from:
%width=35px%Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
to:
%width=30px%Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
%width=30px%Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
%width=30px%Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
Changed lines 7-9 from:
Attach:classroom.png [[https://classroom.google.com/c/NDQ2NDkyNDA0NjE3?cjc=rwkkdax|Data Engineering in Google Classroom]]
to:
%width=35px%Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
Changed lines 7-9 from:
Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π
to:
Attach:classroom.png [[https://classroom.google.com/c/NDQ2NDkyNDA0NjE3?cjc=rwkkdax|Data Engineering in Google Classroom]]
Changed line 7 from:
%width=40px%Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
to:
%width=35px%Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
Changed line 7 from:
Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
to:
%width=40px%Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
Changed line 7 from:
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
to:
Attach:github.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
Added lines 8-9:
Attach:classroom.png [[https://classroom.google.com/c/NDM2MTQ5NjEyODc4?cjc=xhdzu2z|Begin Python π in Google Classroom]]
Deleted lines 46-64:
----
(:html:)
<div id="disqus_thread"></div>
<script type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_shortname = 'apmonitor'; // required: replace example with your forum shortname
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'https://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="https://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
(:htmlend:)
Changed line 7 from:
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab]]
to:
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab (GitHub)]]
Changed lines 30-34 from:
[[Main/DataScience|π Introduction to Data Science]]
[[https://apmonitor.com/pdc|π Process Dynamics and Control]]
[[https://apmonitor.com/do|π Machine Learning and Dynamic Optimization]]
[[https://apmonitor.com/pdc|π Process Dynamics and Control]]
[[https://apmonitor.com/do|π Machine Learning and Dynamic Optimization]]
to:
-> [[Main/DataScience|π Introduction to Data Science]]
-> [[https://apmonitor.com/pdc|π Process Dynamics and Control]]
-> [[https://apmonitor.com/do|π Machine Learning and Dynamic Optimization]]
-> [[https://apmonitor.com/pdc|π Process Dynamics and Control]]
-> [[https://apmonitor.com/do|π Machine Learning and Dynamic Optimization]]
Changed lines 28-32 from:
After completing this course, there are more advanced courses including:
* [[Main/DataScience|Introduction to Data Science]]
*[[https://apmonitor.com/pdc|Process Dynamics and Control]]
* [[https://apmonitor.com/do|Machine Learning and Dynamic Optimization]]
* [[Main/DataScience|Introduction to Data Science]]
*
to:
After completing this course, there are next courses that build upon the basic Python programming experience.
[[Main/DataScience|π Introduction to Data Science]]
[[https://apmonitor.com/pdc|π Process Dynamics and Control]]
[[https://apmonitor.com/do|π Machine Learning and Dynamic Optimization]]
[[Main/DataScience|π Introduction to Data Science]]
[[https://apmonitor.com/pdc|π Process Dynamics and Control]]
[[https://apmonitor.com/do|π Machine Learning and Dynamic Optimization]]
Changed lines 5-6 from:
The '''Begin Python with TCLab''' is an introduction and review of basic Python programming and a tutorial on using the TCLab with 12 lessons that can be completed in 2-3 hours (15-20 minutes each). It has a challenge project to design temperature control for an egg incubator.
to:
The '''Begin Python with TCLab''' is an introduction and review of basic Python programming with 12 lessons that can be completed in 2-3 hours (15-20 minutes each).
Changed lines 13-14 from:
The egg incubator simulator is a preliminary project in preparation for the [[Main/DataScience|Data Science]] material.
to:
The course is designed to start from no programming experience and guide a self-paced learner through the basics of Python. The 12 modules are IPython notebooks that are run from a Jupyter Notebook. The tutorials start with how to install Anaconda and use the hands-on lab kit. The exercises are interactive and there are solution videos for each module for those who need additional help.
# [[https://github.com/APMonitor/begin_python/blob/master/01.%20Overview.ipynb|Overview]]
# [[https://github.com/APMonitor/begin_python/blob/master/02.%20Debugging.ipynb|Debugging]]
# [[https://github.com/APMonitor/begin_python/blob/master/03.%20Variables.ipynb|Variables]]
# [[https://github.com/APMonitor/begin_python/blob/master/04.%20Printing.ipynb|Printing]]
# [[https://github.com/APMonitor/begin_python/blob/master/05.%20Classes%20and%20Objects.ipynb|Classes and Objects]]
# [[https://github.com/APMonitor/begin_python/blob/master/06.%20Functions.ipynb|Functions]]
# [[https://github.com/APMonitor/begin_python/blob/master/07.%20Loops.ipynb|Loops]]
# [[https://github.com/APMonitor/begin_python/blob/master/08.%20Input.ipynb|Input]]
# [[https://github.com/APMonitor/begin_python/blob/master/09.%20If%20Statements.ipynb|If Statements]]
# [[https://github.com/APMonitor/begin_python/blob/master/10.%20Lists%20and%20Tuples.ipynb|Lists and Tuples]]
# [[https://github.com/APMonitor/begin_python/blob/master/11.%20Dictionaries.ipynb|Dictionaries]]
# [[https://github.com/APMonitor/begin_python/blob/master/12.%20Plotting.ipynb|Plotting]]
After completing this course, there are more advanced courses including:
* [[Main/DataScience|Introduction to Data Science]]
* [[https://apmonitor.com/pdc|Process Dynamics and Control]]
* [[https://apmonitor.com/do|Machine Learning and Dynamic Optimization]]
# [[https://github.com/APMonitor/begin_python/blob/master/01.%20Overview.ipynb|Overview]]
# [[https://github.com/APMonitor/begin_python/blob/master/02.%20Debugging.ipynb|Debugging]]
# [[https://github.com/APMonitor/begin_python/blob/master/03.%20Variables.ipynb|Variables]]
# [[https://github.com/APMonitor/begin_python/blob/master/04.%20Printing.ipynb|Printing]]
# [[https://github.com/APMonitor/begin_python/blob/master/05.%20Classes%20and%20Objects.ipynb|Classes and Objects]]
# [[https://github.com/APMonitor/begin_python/blob/master/06.%20Functions.ipynb|Functions]]
# [[https://github.com/APMonitor/begin_python/blob/master/07.%20Loops.ipynb|Loops]]
# [[https://github.com/APMonitor/begin_python/blob/master/08.%20Input.ipynb|Input]]
# [[https://github.com/APMonitor/begin_python/blob/master/09.%20If%20Statements.ipynb|If Statements]]
# [[https://github.com/APMonitor/begin_python/blob/master/10.%20Lists%20and%20Tuples.ipynb|Lists and Tuples]]
# [[https://github.com/APMonitor/begin_python/blob/master/11.%20Dictionaries.ipynb|Dictionaries]]
# [[https://github.com/APMonitor/begin_python/blob/master/12.%20Plotting.ipynb|Plotting]]
After completing this course, there are more advanced courses including:
* [[Main/DataScience|Introduction to Data Science]]
* [[https://apmonitor.com/pdc|Process Dynamics and Control]]
* [[https://apmonitor.com/do|Machine Learning and Dynamic Optimization]]
Changed line 36 from:
The project is a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
to:
The final project is a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
Changed line 17 from:
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
to:
The project is a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
Changed lines 1-8 from:
(:title Course Projects:)
(:keywordshomework, nonlinear, optimization, engineering optimization, Excel, Mathcad, Visual Basic, Python, MATLAB, differential, algebraic, modeling language, university course:)
(:descriptionProjects for Problem-Solving Techniques for Chemical Engineers at Brigham Young University:)
The purpose of the projects is to help integrate the individual programming skills learned this semester to solve engineering problems.
!!!! Project 1: Begin Python with TCLab
(:keywords
(:description
The purpose of the projects is to help integrate the individual programming skills learned this semester to solve engineering problems
!!!! Project 1
to:
(:title Begin Python with TCLab:)
(:keywords python, beginner, introduction, newbie, engineer, start, basic, Jupyter, notebook, IPython, course:)
(:description Introduction to Python with an Arduino Temperature Control Lab. The hands-on exercises reinforce programming skills with the computer controlling heaters, an LED, and measuring temperature.:)
(:keywords python, beginner, introduction, newbie, engineer, start, basic, Jupyter, notebook, IPython, course:)
(:description Introduction to Python with an Arduino Temperature Control Lab. The hands-on exercises reinforce programming skills with the computer controlling heaters, an LED, and measuring temperature.:)
Changed lines 13-31 from:
The egg incubator simulator is a preliminary project for the engineering data analysis project below.
!!!!Project 2: Data Science
The second project is an introduction to data science. The final project of the short course is to do the data analysis to estimate thermal conductivity.
Attach:download.png [[https://github.com/APMonitor/begin_python|Data Science π with Python]]
(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/videoseries?list=PLLBUgWXdTBDg1Qgmwt4jKtVn9BWh5-zgy" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
(:htmlend:)
The 12 modules step through the basics of data science. They give the skills needed to work on the final project. In the final project, metal coins, plastic, and cardboard are inserted in between the two heaters so that there is a conduction path for heat between the two sensors. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor {`(T_1)`} to the other temperature sensor {`(T_2)`}.
%height=125px%Attach:tclab_copper.jpg %height=125px%Attach:tclab_plastic.jpg %height=125px%Attach:tclab_cardboard.jpg
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be assessed not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
!!!!
The second project is an introduction to data science. The final project of the short course is to do the data analysis to estimate thermal conductivity.
Attach:download.png [[https://github.com/APMonitor/begin_python|Data Science π
(:html:)
<iframe width="560" height="315" src="
(:htmlend:)
The 12 modules step through the basics of data science
%height=125px%Attach:tclab_copper.jpg %height=125px%Attach:tclab_plastic.jpg %height=125px%Attach:tclab_cardboard.jpg
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be assessed not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
to:
The egg incubator simulator is a preliminary project in preparation for the [[Main/DataScience|Data Science]] material.
!!!! Temperature Control Lab
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
!!!! Temperature Control Lab
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
Added lines 21-24:
The second project is an introduction to data science. The final project of the short course is to do the data analysis to estimate thermal conductivity.
Attach:download.png [[https://github.com/APMonitor/begin_python|Data Science π with Python]]
Attach:download.png [[https://github.com/APMonitor/begin_python|Data Science π with Python]]
Changed lines 29-38 from:
The second project is an introduction to data science. The final project of the short course is to do the data analysis to estimate thermal conductivity.
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A: Build Loops, Plots, and Regressions]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolate and Solve Equations]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C.ipynb|TCLab C: Determine Thermal Conductivity]]
Metal coins, plastic, and cardboard are inserted in between the two heaters so that there is a conduction path for heat between the two sensors. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor {`(T_1)`} to the other temperature sensor {`(T_2)`}.
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A: Build Loops, Plots, and Regressions]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolate and Solve Equations]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C.ipynb|TCLab C: Determine Thermal Conductivity]]
Metal
to:
The 12 modules step through the basics of data science. They give the skills needed to work on the final project. In the final project, metal coins, plastic, and cardboard are inserted in between the two heaters so that there is a conduction path for heat between the two sensors. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor {`(T_1)`} to the other temperature sensor {`(T_2)`}.
Changed line 35 from:
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
to:
You will be assessed not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
Changed line 22 from:
<iframe width="560" height="315" src="https://www.youtube.com/embed/EO_YpBs8cs0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
to:
<iframe width="560" height="315" src="https://www.youtube.com/embed/videoseries?list=PLLBUgWXdTBDg1Qgmwt4jKtVn9BWh5-zgy" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
Changed lines 21-25 from:
to:
(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/EO_YpBs8cs0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
(:htmlend:)
The second project is an introduction to data science. The final project of the short course is to do the data analysis to estimate thermal conductivity.
<iframe width="560" height="315" src="https://www.youtube.com/embed/EO_YpBs8cs0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
(:htmlend:)
The second project is an introduction to data science. The final project of the short course is to do the data analysis to estimate thermal conductivity.
Changed line 19 from:
!!!! Project 2: Introduction to Data Science
to:
!!!! Project 2: Data Science
Changed line 47 from:
%width=450px%Attach:arduino_lab_kit2.png
to:
%width=550px%Attach:arduino_lab_kit3.png
Changed line 47 from:
%width=550px%Attach:arduino_lab_kit2.png
to:
%width=450px%Attach:arduino_lab_kit2.png
Deleted lines 40-41:
Added lines 46-47:
%width=550px%Attach:arduino_lab_kit2.png
Changed line 39 from:
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
to:
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]].
Changed lines 17-26 from:
The egg incubator simulator is a preliminary project for the engineering data analysis project below. Labs A-C are a review of all course material with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
%width=550px%Attach:arduino_lab_kit2.png
(:html:)
<a href='https://apmonitor.com/pdc/index.php/Main/PurchaseLabKit'>
<button class="button"><span>Get Lab Kit</span></button>
</a>
(:htmlend:)
%width=550px%Attach:arduino_lab_kit2.png
(:html:)
<a href='https://apmonitor.com/pdc/index.php/Main/PurchaseLabKit'>
<button class="button"><span>Get Lab Kit</span></button>
</a>
(:htmlend:)
to:
The egg incubator simulator is a preliminary project for the engineering data analysis project below.
Added lines 36-47:
!!!! Temperature Control Lab
The projects are a review of all course material with real data from temperature sensors in the Temperature Control Lab (TCLab). The temperatures are adjusted with heaters that are adjusted with the TCLab. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
%width=550px%Attach:arduino_lab_kit2.png
(:html:)
<a href='https://apmonitor.com/pdc/index.php/Main/PurchaseLabKit'>
<button class="button"><span>Get Lab Kit</span></button>
</a>
(:htmlend:)
Changed line 27 from:
!!!! Project 2:
to:
!!!! Project 2: Introduction to Data Science
Changed lines 5-6 from:
The purpose of the project is to help integrate the individual programming skills learned this semester to solve engineering problems. The '''Begin Python with TCLab''' is an introduction and review of basic Python programming and a tutorial on using the TCLab with 12 lessons that can be completed in 2-3 hours (15-20 minutes each). It has a challenge project to design temperature control for an egg incubator.
to:
The purpose of the projects is to help integrate the individual programming skills learned this semester to solve engineering problems.
!!!! Project 1: Begin Python with TCLab
The '''Begin Python with TCLab''' is an introduction and review of basic Python programming and a tutorial on using the TCLab with 12 lessons that can be completed in 2-3 hours (15-20 minutes each). It has a challenge project to design temperature control for an egg incubator.
!!!! Project 1: Begin Python with TCLab
The '''Begin Python with TCLab''' is an introduction and review of basic Python programming and a tutorial on using the TCLab with 12 lessons that can be completed in 2-3 hours (15-20 minutes each). It has a challenge project to design temperature control for an egg incubator.
Changed lines 27-29 from:
to:
!!!! Project 2:
The second project is a review of the course material. The final part of the project is to do the data analysis to estimate thermal conductivity.
The second project is a review of the course material. The final part of the project is to do the data analysis to estimate thermal conductivity.
Changed line 1 from:
(:title Course Project:)
to:
(:title Course Projects:)
Changed line 13 from:
The egg incubator simulator is a warm-up project for the engineering data analysis project below. Labs A-C are a review of all course material with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
to:
The egg incubator simulator is a preliminary project for the engineering data analysis project below. Labs A-C are a review of all course material with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
Changed line 7 from:
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python with TCLab]]
to:
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python π with TCLab]]
Added lines 8-11:
(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/EO_YpBs8cs0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
(:htmlend:)
Changed lines 5-7 from:
The purpose of the project is to help integrate the individual programming skills learned this semester to solve engineering problems. Because these projects are meant to help develop problem-solving skills, the tasks are more involved than typical homework problems.
The project is a review of all course material but with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
The project is a review of all course material but
to:
The purpose of the project is to help integrate the individual programming skills learned this semester to solve engineering problems. The '''Begin Python with TCLab''' is an introduction and review of basic Python programming and a tutorial on using the TCLab with 12 lessons that can be completed in 2-3 hours (15-20 minutes each). It has a challenge project to design temperature control for an egg incubator.
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python with TCLab]]
The egg incubator simulator is a warm-up project for the engineering data analysis project below. Labs A-C are a review of all course material with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
Attach:download.png [[https://github.com/APMonitor/begin_python|Begin Python with TCLab]]
The egg incubator simulator is a warm-up project for the engineering data analysis project below. Labs A-C are a review of all course material with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
Added lines 6-7:
The project is a review of all course material but with real data from temperature sensors. The temperatures are adjusted with heaters that are adjusted with an Arduino micro-controller. This lab hardware is also used in the [[https://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl|Process Dynamics and Control Course]] and the [[https://apmonitor.com/do/index.php/Main/AdvancedTemperatureControl|Dynamic Optimization Course]] but for automatic control.
Added lines 7-8:
%width=550px%Attach:arduino_lab_kit2.png
Changed lines 10-20 from:
<table>
<tr>
<td>
<a target="_blank" href="https://www.amazon.com/gp/product/B07GMFWMRY/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B07GMFWMRY&linkCode=as2&tag=apmonitor-20&linkId=240e25095dffdf5a68ecc98a1b707e2f"><img border="0" src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&MarketPlace=US&ASIN=B07GMFWMRY&ServiceVersion=20070822&ID=AsinImage&WS=1&Format=_SL250_&tag=apmonitor-20" ></a><img src="//ir-na.amazon-adsystem.com/e/ir?t=apmonitor-20&l=am2&o=1&a=B07GMFWMRY" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
</td>
<td>
<iframe style="width:120px;height:240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="//ws-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&OneJS=1&Operation=GetAdHtml&MarketPlace=US&source=ac&ref=tf_til&ad_type=product_link&tracking_id=apmonitor-20&marketplace=amazon®ion=US&placement=B07GMFWMRY&asins=B07GMFWMRY&linkId=ef7e3c8c25c02a504ef84d62a51f77d9&show_border=false&link_opens_in_new_window=true&price_color=333333&title_color=0066c0&bg_color=ffffff">
</iframe>
</td>
</tr>
</table>
<tr>
<td>
<
</td>
<td>
<iframe style="width:120px;height:240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="//ws-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&OneJS=1&Operation=GetAdHtml&MarketPlace=US&source=ac&ref=tf_til&ad_type=product_link&tracking_id=apmonitor-20&marketplace=amazon®ion=US&placement=B07GMFWMRY&asins=B07GMFWMRY&linkId=ef7e3c8c25c02a504ef84d62a51f77d9&show_border=false&link_opens_in_new_window=true&price_color=333333&title_color=0066c0&bg_color=ffffff">
</iframe>
</td>
</tr>
</table
to:
<a href='https://apmonitor.com/pdc/index.php/Main/PurchaseLabKit'>
<button class="button"><span>Get Lab Kit</span></button>
</a>
<button class="button"><span>Get Lab Kit</span></button>
</a>
Added lines 48-90:
(:htmlend:)
(:html:)
<style>
.button {
border-radius: 4px;
background-color: #0000ff;
border: none;
color: #FFFFFF;
text-align: center;
font-size: 28px;
padding: 20px;
width: 300px;
transition: all 0.5s;
cursor: pointer;
margin: 5px;
}
.button span {
cursor: pointer;
display: inline-block;
position: relative;
transition: 0.5s;
}
.button span:after {
content: '\00bb';
position: absolute;
opacity: 0;
top: 0;
right: -20px;
transition: 0.5s;
}
.button:hover span {
padding-right: 25px;
}
.button:hover span:after {
opacity: 1;
right: 0;
}
</style>
(:html:)
<style>
.button {
border-radius: 4px;
background-color: #0000ff;
border: none;
color: #FFFFFF;
text-align: center;
font-size: 28px;
padding: 20px;
width: 300px;
transition: all 0.5s;
cursor: pointer;
margin: 5px;
}
.button span {
cursor: pointer;
display: inline-block;
position: relative;
transition: 0.5s;
}
.button span:after {
content: '\00bb';
position: absolute;
opacity: 0;
top: 0;
right: -20px;
transition: 0.5s;
}
.button:hover span {
padding-right: 25px;
}
.button:hover span:after {
opacity: 1;
right: 0;
}
</style>
Added lines 6-19:
(:html:)
<table>
<tr>
<td>
<a target="_blank" href="https://www.amazon.com/gp/product/B07GMFWMRY/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B07GMFWMRY&linkCode=as2&tag=apmonitor-20&linkId=240e25095dffdf5a68ecc98a1b707e2f"><img border="0" src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&MarketPlace=US&ASIN=B07GMFWMRY&ServiceVersion=20070822&ID=AsinImage&WS=1&Format=_SL250_&tag=apmonitor-20" ></a><img src="//ir-na.amazon-adsystem.com/e/ir?t=apmonitor-20&l=am2&o=1&a=B07GMFWMRY" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
</td>
<td>
<iframe style="width:120px;height:240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="//ws-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&OneJS=1&Operation=GetAdHtml&MarketPlace=US&source=ac&ref=tf_til&ad_type=product_link&tracking_id=apmonitor-20&marketplace=amazon®ion=US&placement=B07GMFWMRY&asins=B07GMFWMRY&linkId=ef7e3c8c25c02a504ef84d62a51f77d9&show_border=false&link_opens_in_new_window=true&price_color=333333&title_color=0066c0&bg_color=ffffff">
</iframe>
</td>
</tr>
</table>
(:htmlend:)
Changed line 17 from:
%height=125px%Attach:tclab_copper.png %height=125px%Attach:tclab_plastic.png %height=125px%Attach:tclab_cardboard.png
to:
%height=125px%Attach:tclab_copper.jpg %height=125px%Attach:tclab_plastic.jpg %height=125px%Attach:tclab_cardboard.jpg
Changed line 15 from:
Metal (coin), plastic, and cardboard are inserted in between the two heaters. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor {`(T_1)`} to the other temperature sensor {`(T_2)`}.
to:
Metal coins, plastic, and cardboard are inserted in between the two heaters so that there is a conduction path for heat between the two sensors. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor {`(T_1)`} to the other temperature sensor {`(T_2)`}.
Changed line 15 from:
Metal (coin), plastic, and cardboard are inserted in between the two heaters. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from one temperature heat sink {`(T_1)`} to the other {`(T_2)`}.
to:
Metal (coin), plastic, and cardboard are inserted in between the two heaters. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from heater 1 and temperature sensor {`(T_1)`} to the other temperature sensor {`(T_2)`}.
Added lines 14-15:
Metal (coin), plastic, and cardboard are inserted in between the two heaters. The temperature difference and temperature levels are affected by the ability of the material to conduct heat from one temperature heat sink {`(T_1)`} to the other {`(T_2)`}.
Changed line 15 from:
%height=100px%Attach:tclab_copper.png %height=100px%Attach:tclab_plastic.png %height=100px%Attach:tclab_cardboard.png
to:
%height=125px%Attach:tclab_copper.png %height=125px%Attach:tclab_plastic.png %height=125px%Attach:tclab_cardboard.png
Changed lines 15-17 from:
%height=100px%Attach:tclab_copper.png
%height=100px%Attach:tclab_plastic.png
%height=100px%Attach:tclab_cardboard.png
%height=100px%Attach:tclab_cardboard.png
to:
%height=100px%Attach:tclab_copper.png %height=100px%Attach:tclab_plastic.png %height=100px%Attach:tclab_cardboard.png
Changed lines 15-19 from:
%width=200px%Attach:tclab_copper.png Metal
%width=200px%Attach:tclab_plastic.png Plastic
%width=200px%Attach:tclab_cardboard.png Cardboard
to:
%height=100px%Attach:tclab_copper.png
%height=100px%Attach:tclab_plastic.png
%height=100px%Attach:tclab_cardboard.png
%height=100px%Attach:tclab_plastic.png
%height=100px%Attach:tclab_cardboard.png
Changed lines 15-19 from:
%width=200px%Attach:tclab_copper.png
%width=200px%Attach:tclab_plastic.png
%width=200px%Attach:tclab_cardboard.png
to:
%width=200px%Attach:tclab_copper.png Metal
%width=200px%Attach:tclab_plastic.png Plastic
%width=200px%Attach:tclab_cardboard.png Cardboard
%width=200px%Attach:tclab_plastic.png Plastic
%width=200px%Attach:tclab_cardboard.png Cardboard
Changed lines 15-19 from:
Attach:tclab_copper.png
Attach:tclab_plastic.png
Attach:tclab_cardboard.png
Attach:tclab_plastic.png
Attach:tclab_cardboard.png
to:
%width=200px%Attach:tclab_copper.png
%width=200px%Attach:tclab_plastic.png
%width=200px%Attach:tclab_cardboard.png
%width=200px%Attach:tclab_plastic.png
%width=200px%Attach:tclab_cardboard.png
Added lines 14-19:
Attach:tclab_copper.png
Attach:tclab_plastic.png
Attach:tclab_cardboard.png
Changed lines 9-11 from:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A: Loops, Plotting, and Regression]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B:Interpolation and Solve Equations]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B:
to:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A: Build Loops, Plots, and Regressions]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolate and Solve Equations]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolate and Solve Equations]]
Changed line 11 from:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolation, Solve Equations (Linear, Nonlinear, Differential)]]
to:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolation and Solve Equations]]
Changed line 11 from:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolation and Solve Equations (Linear, Nonlinear, Differential)]]
to:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolation, Solve Equations (Linear, Nonlinear, Differential)]]
Changed lines 11-13 from:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B: Linear / Nonlinear Equations and Differential Equations]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C: Determine Thermal Conductivity]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C: Determine Thermal Conductivity]]
to:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B.ipynb|TCLab B: Interpolation and Solve Equations (Linear, Nonlinear, Differential)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C.ipynb|TCLab C: Determine Thermal Conductivity]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C.ipynb|TCLab C: Determine Thermal Conductivity]]
Changed lines 11-13 from:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B: Linear / Nonlinear Equations and Differential Equation Solutions]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C:Estimate Thermal Conductivity]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C:
to:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B: Linear / Nonlinear Equations and Differential Equations]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C: Determine Thermal Conductivity]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C: Determine Thermal Conductivity]]
Deleted lines 6-9:
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code.
Changed lines 9-13 from:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A (Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B(Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C (Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B
Attach:download.png [[https
to:
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A: Loops, Plotting, and Regression]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B: Linear / Nonlinear Equations and Differential Equation Solutions]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C: Estimate Thermal Conductivity]]
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B: Linear / Nonlinear Equations and Differential Equation Solutions]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C: Estimate Thermal Conductivity]]
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help you and others when reviewing your code.
Changed lines 9-61 from:
----
!!!! Candidate Project - Heat Exchanger Design
A sample project is a program for the design of heat exchangers to transfer heat between process streams. The equations are contained in the problem statement and data should be retrieved from the DIPPR database or the tables below.
* [[Attach:heat_exchanger_project.pdf|Heat Exchanger Project]]
** [[Attach:project_thermophysical_properties.zip|Thermophysical Property Information (Excel)]]
!!!! Project Help Resources
* [[Attach:heat_exchanger_sample_solution.pdf|Project Sample Solution]]
* [[Attach:heat_exchanger_report_solution.zip|Report at 7 Test Conditions (Excel)]]
Because the project is well-defined, students who choose the heat exchanger project will have a maximum of B grade for this project.
!!!! Student Defined Project
The second option for a project is that it is selected by the students. The project should consist of retrieving data from an external source or [[PythonWidgets|from a user]], processing that data into useful information, and presenting the results in an actionable form. In most cases, students are too ambitious with the project scope. To help manage expectations and limit the amount of work to a reasonable time, each project should be approved by the instructor or TA. The heat exchanger project listed above is an example of an appropriate scope for a programming project.
!!!! Final Report (2 page) and Video (5 min)
The final report is an executive summary with the following recommended sections:
* Abstract (overview of the entire project, summarized in one paragraph)
* Introduction (1-2 paragraphs introducing the problem)
* Results (present program features with details on inputs and outputs)
* Discussion (why is the program innovative or significant?)
* Conclusion (summarize the results, what future work can be done?)
The final report should be accompanied by a 5 minute video. Please include a link to the video in the 2 page report.
(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/S1ayo1n7AsM" frameborder="0" allowfullscreen></iframe>
(:htmlend:)
----
!!!! Leadership Assessments
You are also required to individually generate a leadership evaluation that will be turned in with your project. This leadership assessment is composed of individual goals and an assessment on improvement. Instructions and examples are provided below.
* [[Attach:leadership_assessment.pdf|Leadership Assessment]]
The leadership evaluation is for the project team work. Below is an overview of the timeline:
# Solicit feedback from your team members during the project
# Summarize the feedback and write an improvement statement by the first progress report
# Implement changes and report back on improvements by the project due date
Submit the leadership assessment to Learning Suite (see Leadership Assessment Assignment) when the project is due.
to:
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code.
The final project is divided into multiple parts that are turned in apart from the regularly scheduled homework and are due every week on Friday.
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A (Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B (Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C (Jupyter Notebook)]]
----
The final project is divided into multiple parts that are turned in apart from the regularly scheduled homework and are due every week on Friday.
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_A.ipynb|TCLab A (Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_B|TCLab B (Jupyter Notebook)]]
Attach:download.png [[https://nbviewer.jupyter.org/url/apmonitor.com/che263/uploads/Main/TCLab_C|TCLab C (Jupyter Notebook)]]
----
Changed line 55 from:
The leadership evaluation is for both projects. Below is an overview of the timeline:
to:
The leadership evaluation is for the project team work. Below is an overview of the timeline:
Deleted lines 26-27:
Added lines 30-31:
!!!! Final Report (2 page) and Video (5 min)
Added lines 42-45:
(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/S1ayo1n7AsM" frameborder="0" allowfullscreen></iframe>
(:htmlend:)
Changed line 1 from:
(:title Course Projects in Computational Tools for Engineers:)
to:
(:title Course Project:)
Added lines 32-41:
The final report is an executive summary with the following recommended sections:
* Abstract (overview of the entire project, summarized in one paragraph)
* Introduction (1-2 paragraphs introducing the problem)
* Results (present program features with details on inputs and outputs)
* Discussion (why is the program innovative or significant?)
* Conclusion (summarize the results, what future work can be done?)
The final report should be accompanied by a 5 minute video. Please include a link to the video in the 2 page report.
Changed line 31 from:
The second option for a project is that it is selected by the students. The project should consist of retrieving data from an external source, processing that data into useful information, and presenting the results in a useful form. In most cases, students are too ambitious with the project scope. To help manage expectations and limit the amount of work to a reasonable time, each project should be approved by the instructor or TA. The heat exchanger project listed above is an example of an appropriate scope for a programming project.
to:
The second option for a project is that it is selected by the students. The project should consist of retrieving data from an external source or [[PythonWidgets|from a user]], processing that data into useful information, and presenting the results in an actionable form. In most cases, students are too ambitious with the project scope. To help manage expectations and limit the amount of work to a reasonable time, each project should be approved by the instructor or TA. The heat exchanger project listed above is an example of an appropriate scope for a programming project.
Deleted line 16:
Changed line 5 from:
The purpose of the project is to help integrate the individual programming skills learned this semester to solve engineering problems. Because these project are meant to help develop problem-solving skills, the tasks are more involved than typical homework problems.
to:
The purpose of the project is to help integrate the individual programming skills learned this semester to solve engineering problems. Because these projects are meant to help develop problem-solving skills, the tasks are more involved than typical homework problems.
Changed line 26 from:
Because the project is well-defined, students who choose the heat exchanger project will have a maximum of 90% of the total credit for this project.
to:
Because the project is well-defined, students who choose the heat exchanger project will have a maximum of B grade for this project.
Changed lines 5-8 from:
The purpose of these projects are to help you integrate the individual programming skills that you have learned this semester to solve engineering problems. You can solve the problems within the constraints of the requirements of the assignment in any programming language. Because these project are meant to help you develop problem-solving skills, the tasks are more involved than typical homework problems. You will find that you do not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help menus, online resources, textbooks, etc.
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code. You will work in teams of 2-3 people. On the first project you should not consult with any other students except the TA and the instructor. For the second project you will be able to select your own programming assignment.
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code. You will work in teams of 2-3 people. On the first project you should not consult with any other students except the TA and the instructor. For the second project you will be able to select your own programming assignment
to:
The purpose of the project is to help integrate the individual programming skills learned this semester to solve engineering problems. Because these project are meant to help develop problem-solving skills, the tasks are more involved than typical homework problems.
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code. You will work in teams of 2-3 people.
You may not always know how to solve the problems initially or how to construct the algorithms. You may not know the function that you need or the name of the property associated with an object. This is by design. You are to search out the information that you might need using help resources, online resources, textbooks, etc.
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code. You will work in teams of 2-3 people.
Changed lines 13-16 from:
!!!! Project #1 - Heat Exchanger Design
The first project takes the place of an exam on programming. It is a program for the design of heat exchangers to transfer heat between process streams. The equations are contained in the problem statement and data should be retrieved from the DIPPR database or the tables below.
to:
!!!! Candidate Project - Heat Exchanger Design
A sample project is a program for the design of heat exchangers to transfer heat between process streams. The equations are contained in the problem statement and data should be retrieved from the DIPPR database or the tables below.
A sample project is a program for the design of heat exchangers to transfer heat between process streams. The equations are contained in the problem statement and data should be retrieved from the DIPPR database or the tables below.
Added lines 26-31:
Because the project is well-defined, students who choose the heat exchanger project will have a maximum of 90% of the total credit for this project.
!!!! Student Defined Project
The second option for a project is that it is selected by the students. The project should consist of retrieving data from an external source, processing that data into useful information, and presenting the results in a useful form. In most cases, students are too ambitious with the project scope. To help manage expectations and limit the amount of work to a reasonable time, each project should be approved by the instructor or TA. The heat exchanger project listed above is an example of an appropriate scope for a programming project.
!!!! Student Defined Project
The second option for a project is that it is selected by the students. The project should consist of retrieving data from an external source, processing that data into useful information, and presenting the results in a useful form. In most cases, students are too ambitious with the project scope. To help manage expectations and limit the amount of work to a reasonable time, each project should be approved by the instructor or TA. The heat exchanger project listed above is an example of an appropriate scope for a programming project.
Deleted lines 33-38:
The second project is selected by the group. The project should consist of retrieving data from an external source, processing that data into useful information, and presenting the results in a useful form. In most cases, students are too ambitious with the project scope. To help manage expectations and limit the amount of work to a reasonable time, each project should be approved by the instructor or TA.
----
Changed lines 36-37 from:
You are also required to individually generate a leadership evaluation that will be turned in with your projects. This leadership assessment is composed of individual goals and an assessment on improvement. Instructions and examples are provided below.
to:
You are also required to individually generate a leadership evaluation that will be turned in with your project. This leadership assessment is composed of individual goals and an assessment on improvement. Instructions and examples are provided below.
Changed lines 42-53 from:
# Solicit feedback from your team members
#
For Project 2
# Implement changes for
# Redo the leadership assessment for project 2 (solicit feedback from team members and write a summary and improvement plan).
For the first project, turn in the leadership assessment with the project (zipped archive) to Learning Suite. For the second project, submit the leadership assessment to Learning Suite (see Leadership Assessment Assignment)
to:
# Solicit feedback from your team members during the project
# Summarize the feedback and write an improvement statement by the first progress report
# Implement changes and report back on improvements by the project due date
Submit the leadership assessment to Learning Suite (see Leadership Assessment Assignment) when the project is due.
# Summarize the feedback and write an improvement statement by the first progress report
# Implement changes and report back on improvements by the project due date
Submit the leadership assessment to Learning Suite (see Leadership Assessment Assignment) when the project is due.
Changed lines 7-9 from:
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code. You will work in teams of 2-3 people.
As part of your grade, please sent an email to the TA by the due date and rate each student (including yourself) in your group by contribution from 0 to 10 (donβt forget to include the group number in your email). With 0 being no contribution, 5 being expected contribution where the student was a good contributor and performed their part, and 10 being this student did the project themselves. Also explain in your email any special circumstances or reasons why someone is below 5 or above 5. As a clarification you are not grading their competency, but that they tried equally hard and performed their responsibility. There is no outsourcing of the project and it must be completed by your group members. On the first project you may not consult with any other students except the TA and the instructor. For the second project you will be able to select your own programming assignment.
As part of your grade, please sent an email to the TA by the due date and rate each student (including yourself) in your group by contribution from 0 to 10 (donβt forget to include the group number in your email). With 0 being no contribution, 5 being expected contribution where the student was a good contributor and performed their part, and 10 being this student did the project themselves. Also explain in your email any special circumstances or reasons why someone is below 5 or above 5. As a clarification you are not grading their competency, but that they tried equally hard and performed their responsibility. There is no outsourcing of the project and it must be completed by your group members. On the first project you may
to:
You will be graded not only on the ability of the program to give the correct output, but also on good programming practices such as ease of use, code readability and simplicity, modular programming, and adequate, useful comments. Just remember that comments, indentation, and modular programming can really help others when reviewing your code. You will work in teams of 2-3 people. On the first project you should not consult with any other students except the TA and the instructor. For the second project you will be able to select your own programming assignment.
Deleted lines 20-25:
* [[Attach:leadership_assessment.pdf|Leadership Assessment]]
The leadership evaluation is only required for the first project.
Added lines 31-53:
----
!!!! Leadership Assessments
You are also required to individually generate a leadership evaluation that will be turned in with your projects. This leadership assessment is composed of individual goals and an assessment on improvement. Instructions and examples are provided below.
* [[Attach:leadership_assessment.pdf|Leadership Assessment]]
The leadership evaluation is for both projects. Below is an overview of the timeline:
For Project 1
# Solicit feedback from your team members
# Summarize the feedback and write a statement of what you'd like to do differently on the next project
For Project 2
# Implement changes for the second project
# Redo the leadership assessment for project 2 (solicit feedback from team members and write a summary and improvement plan).
For the first project, turn in the leadership assessment with the project (zipped archive) to Learning Suite. For the second project, submit the leadership assessment to Learning Suite (see Leadership Assessment Assignment).
Added line 30:
* [[Attach:heat_exchanger_report_solution.zip|Report at 7 Test Conditions (Excel)]]
Added line 17:
* [[Attach:hw10_class_exercise.pdf|Preliminary Assignment (HW 10, Problem 1)]]
Deleted line 29:
Changed line 29 from:
* [[Attach:hw10_class_exercise.pdf|Preliminary Assignment (HW 10)]]
to:
* [[Attach:hw10_class_exercise.pdf|Preliminary Assignment (HW 10, Problem 1)]]
Changed lines 29-84 from:
(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/ouyg_TQGI2Q" frameborder="0" allowfullscreen></iframe>
(:htmlend:)
!!!! Source Code
import sys
import time
import numpy as np
import matplotlib.pyplot as plt
units = raw_input("Inputs units (F, R, C, K): ")
units = units.upper()
u = units # to shorten the name
if not(u=="F" or u=="R" or u=="C" or u=="K"):
print("Invalid units: " + u)
print("Terminating program...")
sys.exit()
print("Enter temperatures, blank when done")
stime = np.array([])
stemp = np.array([])
while True:
# ask for new temperature
temp=raw_input("Input temperature in "+u+": ")
# validate temperature input
try:
temp = float(temp)
except:
break
# convert the units to K
if units == "C":
temp = temp + 273.15
elif units == "F":
temp = (temp-32.0) * 5.0/9.0 + 273.15
elif units == "R":
temp = (temp-32.0) * 5.0/9.0
newTime = time.clock()
# store the values
stime = np.append(stime,newTime)
stemp = np.append(stemp,temp)
plt.plot(stime,stemp,'ro')
plt.xlabel("Time (sec)")
plt.ylabel("Temperature (K)")
plt.show()
print("Max: " + str(np.max(stemp)))
print("Min: " + str(np.min(stemp)))
print("Avg: " + str(np.mean(stemp)))
to:
* [[Attach:hw10_class_exercise.pdf|Preliminary Assignment (HW 10)]]
Changed line 32 from:
to:
<iframe width="560" height="315" src="https://www.youtube.com/embed/ouyg_TQGI2Q" frameborder="0" allowfullscreen></iframe>
Changed lines 44-45 from:
print(
to:
u = units # to shorten the name
if not(u=="F" or u=="R" or u=="C" or u=="K"):
print("Invalid units: " + u)
if not(u=="F" or u=="R" or u=="C" or u=="K"):
print("Invalid units: " + u)
Changed lines 55-56 from:
temp = raw_input("Input temperature in " + units + ": ")
to:
temp=raw_input("Input temperature in "+u+": ")
Deleted lines 84-88:
Added lines 20-25:
You are also required to individually generate a leadership evaluation that will be turned in with your project. This leadership assessment is composed of individual goals and an assessment on improvement. Instructions and examples are provided below.
* [[Attach:leadership_assessment.pdf|Leadership Assessment]]
The leadership evaluation is only required for the first project.
* [[Attach:leadership_assessment.pdf|Leadership Assessment]]
The leadership evaluation is only required for the first project.
Added line 28:
* [[Attach:heat_exchanger_sample_solution.pdf|Project Sample Solution]]
Changed lines 31-40 from:
* [[Attach:heat_exchanger_sample_solution.pdf|Project Sample Solution]]
You are also required to individually generate a leadership evaluation that will be turned in with your project. This leadership assessment is composed of individual goals and an assessment on improvement. Instructions and examples are provided below.
* [[Attach:leadership_assessment.pdf|Leadership Assessment]]
The leadership evaluation is only required for the first project.
to:
(:html:)
(:htmlend:)
!!!! Source Code
import sys
import time
import numpy as np
import matplotlib.pyplot as plt
units = raw_input("Inputs units (F, R, C, K): ")
units = units.upper()
if not(units=="F" or units=="R" or units=="C" or units=="K"):
print("Invalid units: " + units)
print("Terminating program...")
sys.exit()
print("Enter temperatures, blank when done")
stime = np.array([])
stemp = np.array([])
while True:
# ask for new temperature
temp = raw_input("Input temperature in " + units + ": ")
# validate temperature input
try:
temp = float(temp)
except:
break
# convert the units to K
if units == "C":
temp = temp + 273.15
elif units == "F":
temp = (temp-32.0) * 5.0/9.0 + 273.15
elif units == "R":
temp = (temp-32.0) * 5.0/9.0
newTime = time.clock()
# store the values
stime = np.append(stime,newTime)
stemp = np.append(stemp,temp)
plt.plot(stime,stemp,'ro')
plt.xlabel("Time (sec)")
plt.ylabel("Temperature (K)")
plt.show()
print("Max: " + str(np.max(stemp)))
print("Min: " + str(np.min(stemp)))
print("Avg: " + str(np.mean(stemp)))
(:htmlend:)
!!!! Source Code
import sys
import time
import numpy as np
import matplotlib.pyplot as plt
units = raw_input("Inputs units (F, R, C, K): ")
units = units.upper()
if not(units=="F" or units=="R" or units=="C" or units=="K"):
print("Invalid units: " + units)
print("Terminating program...")
sys.exit()
print("Enter temperatures, blank when done")
stime = np.array([])
stemp = np.array([])
while True:
# ask for new temperature
temp = raw_input("Input temperature in " + units + ": ")
# validate temperature input
try:
temp = float(temp)
except:
break
# convert the units to K
if units == "C":
temp = temp + 273.15
elif units == "F":
temp = (temp-32.0) * 5.0/9.0 + 273.15
elif units == "R":
temp = (temp-32.0) * 5.0/9.0
newTime = time.clock()
# store the values
stime = np.append(stime,newTime)
stemp = np.append(stemp,temp)
plt.plot(stime,stemp,'ro')
plt.xlabel("Time (sec)")
plt.ylabel("Temperature (K)")
plt.show()
print("Max: " + str(np.max(stemp)))
print("Min: " + str(np.min(stemp)))
print("Avg: " + str(np.mean(stemp)))
Changed lines 19-21 from:
*
to:
!!!! Project Help Resources
* [[Attach:project_preliminary_assignment.pdf|Preliminary Assignment]]
* [[Attach:heat_exchanger_sample_solution.pdf|Project Sample Solution]]
Added lines 20-21:
** [[Attach:project_preliminary_assignment.pdf|Preliminary Assignment]]