Skip to content

rm1771/phys105-code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHYS 105A: Introduction to Scientific Computing

  • Spring 2024
  • Wednesday 11:00am-12:50pm
  • PAS 272 computer lab

Course Description

This lecture will provide an overview of what scientific computing is and its importance in various fields, such as physics and astronomy. The students will learn about the different applications of scientific computing, such as simulating physical phenomena, analyzing experimental data, and solving complex mathematical problems. The students will learn about the role of computers in scientific computing, including their capabilities and limitations. They will learn about the different programming languages that are commonly used in scientific computing, such as Python, C/C++, and their advantages and disadvantages. By the end of the course, the students will have a clearer sense of the role of programming in scientific computing and how it is used to solve scientific as well as daily problems.

During the first lecture, the students will be introduced to the overall structure of the course and the topics that will be covered in each lecture. They will learn about the goals and objectives of the course, the prerequisites, and the assessment methods. They will also be given a brief overview of the project that they will be working on at the end of the course. By the end of the course, students should be able to solve simple physics problems numerically, create plots to visualize their results, and document their work and communicate with other physicists. This course is prerequisite to PHYS 305 Computational Physics.

Course Prerequisites or Co-requisites

Calculus I - Math 122B

Instructor and Contact Information

Expected Learning Outcomes

Upon completion of this course, students will be able to:

  • understand the nature and application of computation methods in physical science;
  • use popular development tools (shell, Git, Jupyter, etc);
  • use good software development practices (version control, documentation);
  • use computational thinking to break down complex problems;
  • solve these problems by writing programs in python;
  • speak and write about scientific knowledge;
  • appreciate computation complexity and have a basic awareness of numerical errors;
  • use data analysis and numerical methods properly, and be aware of their common pitfalls;
  • critically analyze and interpret data and results presented in tables, graphs and charts;
  • read and understand scientific literature;
  • aware of a wide range of science use cases, and develop the skill to self-learn computation tools and methods.

Course Format and Teaching Methods

Class meets on Wednesday from 11:00am-12:50pm. It includes about 50 min of lecture and 50 min of hands-on exercises. There will be assignments and projects. Students are required to complete them on time.

Class attendance

"Attendance" includes attending class regularly, completing in-class assignments, completing projects and presentations. Students are also encouraged to participate discussions during class, seeking help during study sessions and office hours, etc.

Masks are recommended, but not required, in most indoor spaces including classrooms.
Further detail may be found at https://covid19.arizona.edu/face-coverings.

Please note that you may go to CDC and search by state and county to get the recommendation based on the community levels of infection.

Notify your instructors if you will be missing a class. Campus Health provides testing for COVID-19. Visit the UArizona COVID-19 page for regular updates.

Course Communications

Email is the official method to communicate with the instructor.

Equipments and Tools

As a course on scientific computing, students are expected to have access to a computer. Students will be asked to install popular development tools such as Git and Jupyter to their computers.

Required/Suggested Readings

The instructor will provide students additional online videos to broaden the students' knowledge on computational physics. When bundled with assignments, students are required to watch them. When provided as references, these videos are optional.

Assignments and Examinations: Schedule/Due Dates

There will be 9 assignments and 2 projects in total. There will be no quiz or exam.

The homework will be assigned approximately once a week. Students are expected to start working on their assignments during the hands-on sessions, and finish them by midnight before the day of the next sessions.

Students are expected to work on the projects in groups of two or three people. Students will have three weeks to finish their projects (see below).

Writing Requirement

Although this is not a writing intensive course, good documentation is essential in communicating science and developing software. Students are required to provide enough written explanations in their assignments.

Grading Scale and Policies

Each assignment worths 10 points and each project worths 20 points. The points for a student's worst two assignments or one project will not be counted. In Class Attendance is 10 points.

This course provides regular letter grades (A-E), which are based on a simple point system:

  • A: 90-100 points
  • B: 80-89 points
  • C: 70-79 points
  • D: 60-69 points
  • E: <60 points

No scaling will be applied.

Incomplete (I) or Withdrawal (W): Incomplete (I) or withdrawal (W) grades must be made in accordance with University policies, which are available at http://catalog.arizona.edu/policy/grades-and-grading-system#incomplete and http://catalog.arizona.edu/policy/grades-and-grading-system#Withdrawal, respectively.

Dispute of Grade Policy: If a student disagrees on his or her grade on an assignment or project, the student must send the instructor a formal request through email to re-evaluate the grade within a week from the time that the student receives the grade. Because no scale will be applied in the final grade, the final grade cannot be re-evaluated. The student is expected to know of their own performance throughout the course.

Scheduled Topics/Activities

Topics

Tentative plan (subject to change depending on progress):

# Lecture Hands-on
1 Overview Sign up for accounts and set up development environment
2 Essential tools for scientific computing Unix shells, vim editor, Git (assignment 10pts)
3 The python programming language Jupyter and python programming (assignment 10pts)
4 python module, class, package python programming (assignment 10pts)
5 File handling, Data processing Data processing (assignment 10pts)
6 Random numbers and Monte Carlo methods Monte Carlo (assignment 10pts); project planning
7 Root finding Root finders (assignment 10pts); project
8 Numerical integration of functions work on project
9 project presentations
10 Minimization or maximization Optimizer (assignment 10pts)
11 Animation Animation (assignment 10pts)
12 ODE integration ODE integrator (assignment 10pts)
13 Graph and network project planning
14 Machine-learning work on project
15 The C/C++ programming language work on project
16 project presentations

Schedule

Tentative schedule (subject to change):

Week of Monday Tuesday Wednesday Thursday Friday
Jan 10 #1
Jan 17 #2
Jan 24 HO #2 due #3
Jan 31 HO #3 due #4
Feb 7 HO #4 due #5
Feb 14 HO #5 due #6 (project)
Feb 21 HO #6 due #7
Feb 28 #8
Mar 6 spring recess
Mar 13 project due #9 (present)
Mar 20 HO #9 due #10
Mar 27 HO #10 due #11
Apr 3 HO #11 due #12
Apr 10 HO #12 due #13(project)
Apr 17 #14
Apr 24 #15
May 1 project due #16(present) Reading Day

Policies and Code of Conduct

Classroom Behavior Policy

To foster a positive learning environment, students and instructors have a shared responsibility. We want a safe, welcoming, and inclusive environment where all of us feel comfortable with each other and where we can challenge ourselves to succeed. To that end, our focus is on the tasks at hand and not on extraneous activities (e.g., texting, chatting, reading a newspaper, making phone calls, web surfing, etc.).

Threatening Behavior Policy

The UA Threatening Behavior by Students Policy prohibits threats of physical harm to any member of the University community, including to oneself. See http://policy.arizona.edu/education-and-student-affairs/threatening-behavior-students.

Code of Academic Integrity

Students are encouraged to share intellectual views and discuss freely the principles and applications of course materials. However, graded work/exercises must be the product of independent effort unless otherwise instructed. Students are expected to adhere to the UA Code of Academic Integrity as described in the UA General Catalog. See: http://deanofstudents.arizona.edu/academic-integrity/students/academic-integrity.

Nondiscrimination and Anti-harassment Policy

The University of Arizona is committed to creating and maintaining an environment free of discrimination. In support of this commitment, the University prohibits discrimination, including harassment and retaliation, based on a protected classification, including race, color, religion, sex, national origin, age, disability, veteran status, sexual orientation, gender identity, or genetic information. For more information, including how to report a concern, please see http://policy.arizona.edu/human-resources/nondiscrimination-and-anti-harassment-policy.

Our classroom is a place where everyone is encouraged to express well-formed opinions and their reasons for those opinions. We also want to create a tolerant and open environment where such opinions can be expressed without resorting to bullying or discrimination of others.

Confidentiality of Student Records

See http://www.registrar.arizona.edu/personal-information/family-educational-rights-and-privacy-act-1974-ferpa?topic=ferpa.

Absence and Class Participation Policy

The UA's policy concerning Class Attendance, Participation, and Administrative Drops is available at: http://catalog.arizona.edu/policy/class-attendance-participation-and-administrative-drop. The UA policy regarding absences for any sincerely held religious belief, observance or practice will be accommodated where reasonable, http://policy.arizona.edu/human-resources/religious-accommodation-policy. Absences pre-approved by the UA Dean of Students (or Dean Designee) will be honored. See: https://deanofstudents.arizona.edu/absences.

Participating in the course and attending lectures and other course events are vital to the learning process. As such, attendance is required at all lectures and discussion section meetings. Absences may affect a student's final course grade. If you anticipate being absent, are unexpectedly absent, or are unable to participate in class activities, please contact me as soon as possible. To request a disability-related accommodation to this attendance policy, please contact the Disability Resource Center at (520) 621-3268 or go to https://drc.arizona.edu for further information. If you are experiencing unexpected barriers to your success in your courses, the Dean of Students Office is a central support resource for all students and may be helpful. The Dean of Students Office is located in the Robert L. Nugent Building, room 100, or call 520-621-7057.

Honors Credit

This course typically does not provide honors credit. For more information, please discuss directly with the instructor.

Accessibility and Accommodations

At the University of Arizona, we strive to make learning experiences as accessible as possible. If you anticipate or experience barriers based on disability or pregnancy, please contact the Disability Resource Center (520-621-3268, https://drc.arizona.edu/) to establish reasonable accommodations.

Additional Resources for Students

UA Academic policies and procedures are available at http://catalog.arizona.edu/policies.

Campus Health

  • http://www.health.arizona.edu/
  • Campus Health provides quality medical and mental health care services through virtual and in-person care.
  • Phone: 520-621-9202

Counseling and Psych Services (CAPS)

The Dean of Students Office's Student Assistance Program

  • https://deanofstudents.arizona.edu/support/student-assistance
  • Student Assistance helps students manage crises, life traumas, and other barriers that impede success. The staff addresses the needs of students who experience issues related to social adjustment, academic challenges, psychological health, physical health, victimization, and relationship issues, through a variety of interventions, referrals, and follow up services.
  • Email: DOS-deanofstudents@email.arizona.edu
  • Phone: 520-621-7057

Survivor Advocacy Program

  • https://survivoradvocacy.arizona.edu/
  • The Survivor Advocacy Program provides confidential support and advocacy services to student survivors of sexual and gender-based violence. The Program can also advise students about relevant non-UA resources available within the local community for support.
  • Email: survivoradvocacy@arizona.edu
  • Phone: 520-621-5767

Additional Information

Academic Advising

If you have questions about your academic progress this semester, or your chosen degree program, please note that advisors at the Advising Resource Center can guide you toward university resources to help you succeed.

Life Challenges

If you are experiencing unexpected barriers to your success in your courses, please note the Dean of Students Office is a central support resource for all students and may be helpful. The Dean of Students Office can be reached at 520-621-2057 or DOS-deanofstudents@email.arizona.edu.

Physical and Mental-Health Challenges

If you are facing physical or mental health challenges this semester, please note that Campus Health provides quality medical and mental health care. For medical appointments, call (520-621-9202. For After Hours care, call (520) 570-7898. For the Counseling & Psych Services (CAPS) 24/7 hotline, call (520) 621-3334.

Campus Pantry

Any student who has difficulty affording groceries or accessing sufficient food to eat every day, or who lacks a safe and stable place to live and believes this may affect their performance in the course, is urged to contact the Dean of Students for support. In addition, the University of Arizona Campus Pantry is open for students to receive supplemental groceries at no cost. See their website at: https://campuspantry.arizona.edu for open times.

Subject to Change Statement

Information contained in the course syllabus may be subject to change with advance notice, as deemed appropriate by the instructor.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •  

Languages