CSC 270
INTRODUCTION TO SCIENTIFIC COMPUTING
SYLLABUS
Current version 8/21/2019
Our main Objective is the learn to use the C++ program language in the context of solving Engineering scientific problems which in the most part use mathematical techniques. The mathematical techniques we cover are ones that you will see in future courses and in your career as an Engineer, Physicist or Scientist.
Be diligent in assignments and you will have no difficulty learning to use the C++ language presented in this course. Do not fall very far behind on due dates. We use the C++ language in a IDE (integrated software environment). Two we use are Microsoft Visual Studio environment for this course in school and you can use that or CODEBLOCKS at home Both are free. Supplemental to the course are excellent, very popuar, video lessons for C++ on YOUTUBE by Mike Danes link at MIKE DANES CODE academy for all lessons. Check out lessons 1 to 4 for getting started at home on PCs and MACs.
As we cover each chapter be sure to run Mike Danes appropriate lesson at the link above. You will master the language much more rapidly using this valuable resource. Mike is an excellent presenter!
HOW TO USE THE IDE MSVS IN OUR LABS WILL BE COVERED IN CLASS!
SEE BELOW FOR SOME OF THE COURSE REQUIREMENTS AND GRADING POLICY.
Engineering majors take note that additional advanced mathematical use of C++ and the MATLAB Language will be covered in your 5th semester in the ENS 336 Computer-Aided Engineering II The MATLAB programming environment is presented below for free and your use and I suggest when you have time you play with it. See information at the end of this Syllabus which includes MATLAB Lessons for you to learn.
: To mail me: Prof. Irv Robbins (CSI-CUNY) to Email click Galaxy pic
Recommendations
1 Bookstore has this. Also possibly the internet prices could be cheaper
by Delores Etter and Jeanine Ingber Pearson publishing
BUT 3rd edition is ok and can be obtained cheaper on the web.
2. REFERENCE TEXT (for those wanting a deeper approach to computing in C++ in general)
C++ Programming by D.S. Malik Cengage Learning publisher
3. C++ LECTURE NOTES By Prof Irv Robbins Found at this web site.
SEE C++ CHAPTER REVIEW BELOW!
4. FLASH DRIVE to class to save your work to bring home to finish. Emailing your work can introduce problems in the program.
5. ON YOUR WORK!
WHEN YOU CONSTRUCT OR MODIFY A PROGRAM, MAKE COPIES OF THE PROGRAM AND THE LAST VERSION USED. FLASH DRIVES TO COPY YOUR WORK IS RECOMMENDED, OR EMAIL COPIES TO YOURSELF.
KEEP ALL GRADED MATERIAL! FOR DOUBLE CHECKS IN CASE MY RECORDS GET MESSED UP AS WELL AS PROOF YOU DID THE WORK!
6. C++ Software Environments for you to get: See chapter 1 lecture notes LINK BELOW "C++ LECTURE REVIEW for detailed instructions to get the MSVS and CODEBLOCKS for home use.
NOTE: THERE ARE OTHER C++ COMPILERS FOR IPHONE AND A NUMBER OF DIFFERENT ONES FOR YOUR COMPUTER. I DON'T CARE WHAT YOU USE IF IT HELPS YOU LEARN THE MATERIAL AND BE ABLE TO FINISH LAB ASSIGNMENTS AT HOME! TO learn C++ in an easy manner, Watch and study videos RECOMMENDED ON YOUTUBE
GRADING POLICY
you will be handing in Home Work (HW) assignments and laboratory assignments and have to pass two major exams (midterm and final).
Grade AVERAGE = +20% HAND IN HW + 25% ALL HAND IN PROGRAMMING OR LABORATORY EXERCISES + 25%Midterm Exam + 30%Comprehensive Final EXAM) + Extra Credit 5 PTS MAX (ADDITIONAL ASSIGNMENTS) . - POINTS FOR EXCESSIVE ABSENCE (GREATER THAN 15% OF THE TOTAL CLASS HOURS)( OVER 13 HRS WILL CUT YOUR GRADE AVERAGE). IE overcutting cuts your grade!
Warning: Leaving class early (before being dismissed) will constitute an absence!
On the EXAMS ???? NO CELL PHONES!!!! Exams change regularly don't waste your time on the web looking for answers, better STUDY and LEARN! Engineers and Scientist today must know programming!
ASSIGNMENTS and THEIR GRADING POLICY AND WARNINGS!
When you are instructed to finish a laboratory exercises or HW exercise, hand them in for grading on the due date. DO NOT EMAIL THEM, PAPER COPIES ONLY TO BE SUBMITTED
HW (paper copy, no emails) is due at the next meeting of the class with a grace period usually one session when the Answer Key will be handed out. These are graded on a point basis, the value of which is listed in the assignment. Once an Answer key is handed out, HW has no value (=0).
Laboratory exercises are usually due one week from the assignment. These are letter graded with numerical value as follows A (95), B(85), C(75), D(65), F( 55 TO 20) , R (REPEAT =20) AND adjustments with + and - in the grades. LATE EXERCISES HAVE THE GRADES REDUCED AS FOLLOWS
LATE REDUCTION EXAMPLE (ASSUMES "A" GRADE IF ON TIME)
ONE WEEK ONE GRADE "B"
TWO WEEKS TWO GRADES "C"
THREE WEEKS THREE GRADES "D"
FOUR WEEKS FAILURE "F" FOR ALL (ESPECIALY LAST DAY HAND IN OF LOTS OF LABS)
REMEMBER LABORATORY EXERCISE AVERAGE IS 20% OF YOUR GRADE
ALL COPIED LABORATORY EXERCISES OR HW WILL HAVE NO VALUE.
Handing in most of your work near the end of the term from panicking about not passing the course is not a good idea since the work will count very little in your term average. So do your work on time as best as you can.
Ideally for each hour in class you should do a minimum of 2 hrs at home.. we meet 6 hrs a week so IDEALLY you should do at least 12 hrs of Homework per week, AT LEAST, BE SURE TO READ THE TEXT AND DO THE ASSIGNMENTS TO GET A GOOD GRADE If you have study or time management problems please explore the following the SURVIVAL GUIDE LINK BELOW.
Some LABORATORY exercises MIGHT BE EASIER FOR you to finish them at home RATHER THAN ONE OF OUR COMPUTER LABS! Thus, the option to download these environments above! ALL SCHOOL LABORATORIES HAVE THE NECESSARY SOFTWARE ENVIRONMENTS FOR YOU TO DO YOUR WORK IF YOU HAVE NOT OBTAINED THE SOFTWARE RECOMMENDED ABOVE.
SINCE SO MANY FIND THE ENGINEERING AND SCIENCE CURRICULUMS VERY DIFFICULT I HAVE PREPARED THE FOLLOWING GUIDE TO HELP YOU STUDY AND TIME MANAGE ETC TO BE MORE SUCCESSFUL IN YOUR CHOSE CAREER. WORK HARD, GOOD LUCK, REWARD IS SIGNIFICANT!
Some words to the wise found in this SURVIVAL GUIDE
C++ LESSONS
LECTURE PRESENTATION: FOLLOW THE NEXT LINK (ADOBE READER NEEDED) ALL HOMEWORK AND PROJECT DUE ARE IN THE CURRENT CHAPTER POSTED IN THE LECTURE REVIEW. ONLY DO THE REQUESTED PROBLEMS GIVEN OUT IN CLASS. YOU MAY JUMP AHEAD FOR YOUR OWN EDUCATIONAL PREROGATIVE BUT DO NOT HAND IN MATERIAL NOT IMMEDIATELY ASSIGNED IN CLASS.
EACH TIME YOU RUN A C++ PROGRAM YOU DID, COPY THE OUTPUT (THE INSTRUCTOR WILL DEMONSTRATE HOW TO DO THIS) AS A // COMMENT AT THE END OF THE PROGRAM.. THUS WHEN NECESSARY YOU CAN RUN THE PROGRAM WITH CHANGES FOR ADDITIONAL OUTPUT.
WHEN WORKING AT SCHOOL AND YOU HAVE NOT FINISHED, COPY THE C++ SOURCE PROGRAM (CPP) AND SAVE (WORD PROCEESOR, ETC) AND EMAIL IT TO YOURSELF AS AN ATTACHMENT OR JUST COPY INTO THE EMAIL THE CODE. THUS YOU CAN FINISH AT HOME. Having a Flash drive does help also.
C++ CHAPTER REVIEW This link has all my class notes in pdf format.
We cover the main topics and any left out you can do latter in future courses and later in your career if your employer uses C++. Many Engineering firms use MATLAB which you were introduced to in your calculus class at CSI. You find below MATLAB topics and notes on the language that includes many numerical technique examples, which you should find as a very useful reference in your courses and future employment. Those of you who will take ENS 336 might cover many of these topics.
HOMEWORK AND LABORATORY RESOURCES
For special projects and extra credit assignments source code of text book examples can be found via the next link
MIDTERM REPORT:
To understand your grades at Midterm and your final grade I will produce a detailed performance report below. Be sure you understand the worth of HW, Lab assignments and Midterm and Final exams which will determine your grades. Obviously not doing HW or studying well will earn you a low grade. Keep the latter in mind!
THIS WILL BE POSTED ON BLACKBOARD SO YOU CAN REVIEW YOUR PROGRESS OR LACK OF!.
Final grades will not be report like the midterm but you can see me after you get your grade for details.
sOME ADDITIONAL C++ video
SOURCES
EDUCATIONAL VIDEOS ON YOUTUBE.
1. QUICK 1 HR COURSE USING A G++ COMPILER A review of a lot of C++ concepts https://www.youtube.com/watch?v=Rub-JsjMhWY
2. BUCKY ROBERTS C++ PROGRAMMING TUTORIALS DETAILED 73 LESSONS ON EACH CONCEPT USING "CODEBLOCKS" ENVIRONMENT
Bucky goes into advanced topics we will not cover in the class but is a very useful reference for you to use in the future.
BUCKY ROBERTS TUTORIALS STARTING PAGE: https://www.youtube.com/watch?v=tvC1WCdV1XU&list=PLAE85DE8440AA6B83
MATLAB and lessons
Those of you interested in the MATLAB environment I recommend
which as of the spring 2016 semester's CUNY deal to supply MATLAB
free to students the following. Please note that you can only install this on ONE machine at
home, since it will be locked to the machine of your choice.
This is the license key that you will need to install its:
14317-60551-55097-39870-91449
You will use this package latter in your studies and career .
Instructions to install are at the following link but
note its a little involved so follow the instructions carefully. This is a great
deal to get MATLAB free for home use saince many engineering firms use it and it is found in a WINDOWS version and
MAC version at the install site.
Instructions to install MATLAB at home THIS IS A PDF FILE
The MATLAB LESSONS, which are more detailed info and have exercises to help you learn the language.. The main emphasis is to how to build programs and functions in MATLAB as will as familiarize some of the functions in the MATLAB library that cover numerical techniques. Functions explore are for: interpolation, linear modeling (regression), root finding, numerical integration, solutions to simultaneous equations, graphing, and signal processing. You will see the use of these mathematical techniques in future courses and thus you will have a quick way to solve such by mastering the functions and techniques presented.
MATLAB LESSON NOTES By Prof. Irv Robbins Found at this NEXT LINK