SPRING 2012: PHY 277
Computation for Physics and Astronomy Majors
The class will meet in the Math SINC Site Room SL-235
(in the Sub-level of the MATH Tower) , MWF 8:30-9:25 am
Scope of the Course
This course is designed to provide sophomore Physics and Astronomy majors with computational resources and algorithmic thinking. Computational physics has become the third cornerstone of modern physics, sitting in between experimental and theoretical physics and serving as a bridge in between and complement to both of these areas. the purpose of this course is to introduce students to programming in fortran and to provide them with computational resources in order to make the numerical solution of physics problems a natural and alternative way to the analytical methods that students learn throughout their majors.The course will focus on developing the skills needed carry out core tasks on modern computers running linux or Unix-based operating systems. This course will cover the following core topics:
- Using Unix-based computer systems running X-windows.
- The core of the course will be dedicated to learn FORTRAN 95 programming language.
- We will also learn basic Matlab programming.
- Essentials on C++ programming language.
In complement to the programing language learning we will also focus on :
- Elementary numerical methods.
- An introduction to the LaTeX typesetting system.
- An introduction to MATLAB
- An introduction to gnuplot and xmgrace plotting software.
A brief outline for each lecture will be published on this web page before each lecture. The programming assignments will be graded on the basis of accuracy, completeness, originality and programming style.
What to Expect
This course will require you to carry out numerous programming or other computing tasks on the MATHLAB linux machines located in S235 of the math tower. It is likely you will have to spend a substantial amount of time writing and debugging programs in this laboratory setting. It may be possible in some cases for you to carry out some assignments on other computers however the Instructor and Teaching Assistants for this course will not offer any formal support for such efforts. The bottom line is that you should plan to carry out your work on the MATHLAB machines or other machines specified by the instructor. The instructor may require you to turn in your assignments electronically, via web pages that you develop, or in the form of hardcopy. The course T.A. will hold office hours in the MATHLAB in order to assist you with problems that you may encounter in carrying out your assignments. Lecture outlines will be provided via the course web site.Required Texts
- FORTRAN 95/2003 for Scientists and Engineers, 3rd ed., by Stephen J. Chapman, Mc Graw Hill, ISBN 978-0-07-319157-7 (Required)
- Numerical Methods for Engineers. Steven C. Chapra.Mc Graw Hill (Required)
- Absolute C++,3rd ed., by Walter Savitch, Addison-Wesley, ISBN 978-0-321-46893-2 (Recommended)
Course Grading
This course requires important continuous work and dedication. The majority of the grade weight in this course will be put on the homework assignments rather than on the exams. If you work on these assignments and finish them on time every week you will certainly pass the course without problems. There will be a a midterm and a final exam. The grading policy will be:- Assignments : 30 %
- Midterm: 25%
- Final: 40%
- Attendance: 5 %
The course T.A. will hold office hours in the MATHLAB in order to assist you with problems that you may encounter in carrying out your assignments. Lecture outlines will be provided via the course web site.
Important University Policies If you have a physical, psychological, medical or learning disability that may impact your ability to carry out assigned course work, contact the staff in the Disabled Student Services office (DSS), 128 Educational Communications Center, 632-6748/9. DSS will review your concerns and determine with you what accommodations are necessary and DSS will advise me. All information and documentation of disability is confidential.
Stony Brook University expects students to maintain standards of personal integrity that are in harmony with the educational goals of the institution; to observe national, state, and local laws and University regulations; and to respect the rights, privileges, and property of other people. Faculty are required to report to the Office of Judicial Affairs any disruptive behavior that interrupts their ability to teach, compromises the safety of the learning environment, and/or inhibits students' ability to learn.
Each student must pursue his or her academic goals honestly and be personally accountable for all submitted work. Representing another person's work as your own is always wrong. Any suspected instance of academic dishonesty will be reported to the Academic Judiciary. For more comprehensive information on academic integrity, including categories of academic dishonesty, please refer to the academic judiciary website.
SPECIAL NOTE REGARDING PLAGIARISM AND DISHONESTY: All instances of plagiarised work or academic dishonesty will be brought before the Academic Judiciary Committee. All parties involved (both the copier and the person who produced the original work) will be held accountable for any instance of plagarism or dishonesty. You are responsible for protecting the security of your programming assignments by making sure that your directories are not world readable. If you are unsure how to secure your home directory see the instructor immediately.
Additional Course Policies
- Student Responsibilities : You will be expected to abide by by all University regulations, procedures, requirements, and deadlines as described in the Undergraduate Student Bulletin.
- Attendance : As per the University policy outlined in the Undergraduate Student Bulletin, students are expected to regularly attend all classes.
- Assignment : All work on class assignments is to be carried out independently. There will be no collaborative assignments. Computer programs developed for this course should be developed exclusively by you alone. Late assignments will not be accepted.
- Computer Use : All use of University owned computers and networks must be in accordance with the University Information Technology Policy.
- Passwords : You are responsible for maintaining your MATHLAB computer account password. Lost or forgotten passwords will under no circumstances be accepted as an excuse for turning in homework assignments. If you loose or forget your password your password the instructor is unable to reset it for you. Your only recourse for a lost or forgotten password is to appeal for help from the MATHLAB administrator at help@mathlab.sunysb.edu
- Classroom Behavior and Conduct : You are expected to conduct yourself in accordance with the minimal undergraduate student responsibilities described in the Undergraduate Student Bulletin including: You are expected to arrive for class promptly. Avoid behavior that is disruptive to the classroom especially the use of cell phones. Avoid web surfing during class, unless required.
Lecturer contact information: Prof. Marivi Fernandez-Serra
Email :mvfernandez at ms.cc.sunysb.eduOffice :Room B-139, Physics Building.
Office Hours : M,W,F 9:30-10:30AM or by appt.
Phone :631-632-8244
Teaching Assistant contact information: TBA
Email : TBA at stonybrook.eduOffice Hours : W 1:00-2:00 (Math SINC site) and by appt.
Useful Links :
- SSH java applet:SSH
- SFTP java applet:SFTP
- The Unix Operating System : University of Utah Unix Tutorial
- The Unix Operating System : University of Surrey Unix Tutorial
Useful Linux files :
Dislpay vi editor with colors: save this file in you home directory (with the same name, including the period . at the beginning)..vimrc