Instructor: Jiaxin Du
Office: D-2-240 MAK
Office Hours:
- Mondays 10:00am - 11:00pm
- Wednesdays 10:00am - 11:00pm
- Fridays 10:00am - 11:00am
Contact:
- Github discussion preferred
- dujia@gvsu.edu ^^^in almost all cases use Github to post your questions
Computational science is the field of study concerned with using computers to analyze, model, simulate, and solve problems in various mathematical and scientific disciplines.
Prerequisite: MTH 201
Credits: 3
We will be using Github all class related communication. In particular, note that important announcements will be posted to Github and you are responsible for monitoring it and that all questions and concerns should be posted to Github (instead of emailed). Emails will likely be redirected to be posted to Github and then answered there.
No official textbook - the Jupyter notebooks are meant to replace a traditional textbook. If you prefer to run the Jupyter notebooks in the videos on Google CoLab, the "Run Online" links posted on Python for Applied Computing Github will open them automatically in CoLab.
- Introduce computer science:
- Learn simple and structured data types, program control structures, and logic.
- Perform problem analysis, algorithm design, implementation in a high-level language.
- Write programs that employ selection, repetition, and functions and that use libraries of numerical and scientific utilities
- Introduce computational science:
- Understand the field of study concerned with using computers to analyze, mathematically model, simulate, and solve problems in various scientific disciplines
- Conduct abstract modeling of complex scientific problems
Activity | Percentage | Pairs or Individual? |
---|---|---|
Labs | 20% | Pairs |
Activities | 20% | Individual, but okay to discuss in general with others |
Course Project | 35% | HuMob Challenge 2024 |
Exams | 25% | Individual |
Because this course has a mix of undergraduate and graduate students, there are two different grading scales.
% Range | Grade | % Range | Grade | % Range | Grade |
---|---|---|---|---|---|
[93, 100] | A | [90, 93) | A- | ||
[87, 90) | B+ | [83, 87) | B | [80, 83) | B- |
[77, 80) | C+ | [73, 77) | C | [70, 73) | C- |
[67, 70) | D+ | [63, 67) | D | [0, 63) | F |
% Range | Grade | % Range | Grade | % Range | Grade |
---|---|---|---|---|---|
[95, 100] | A | [93, 95) | A- | ||
[90, 93) | B+ | [87, 90) | B | [83, 87) | B- |
[81, 83) | C+ | [79, 81) | C | [77, 79) | C- |
[76, 77) | D+ | [75, 76) | D | [0, 75) | F |
Extra credit will be awarded for good questions (as marked by the instructor) and good answers (as endorsed by the instructor). The exact formula is not yet determined, but the extra credit will be capped at 1% of the overall course grade.
This course is subject to the GVSU policies listed at http://www.gvsu.edu/coursepolicies/.
- All activities must be completed on PrairieLearn. Emailed code will not be accepted.
- All assignments should be turned in on PrairieLearn.
- Late assignments will not be accepted, except in very extenuating circumstances (e.g. extremely severe illness, etc.). This is done as the goal of these is to make sure you are keeping up with the material. Any work done on an assignment after the posted due date and time will not be counted for credit.
- If health issues for you or someone you care for, longer term internet issues, childcare issues, etc. arise, please email the instructor ASAP so we can work together to identify a solution.
- There may be a need for changes to happen midsemester, so this information is tentative and the instructor reserves the right to modify course policies, the course calendar, due dates, number of assignments, etc.
This course will be run as a flipped classroom. You will be responsible for watching lecture videos before coming to class. In-class time will be used for discussion over topics covered in the videos and completing activities, and working on labs.
The goal of the flipped classroom is so that you can get help when you need it. With coding, often student's do not realize their misunderstandings until it comes time to apply the material. So, rather than using class time for lectures, class time will be devoted to applying the material so that students can get help when they need it.
PrairieLearn will be used for regular, short activities. The idea of these activities is to allow you to try out and check your understanding of the material covered in the lecture videos. PL is an online system that will allow you to submit your code for autograding. You will be able to submit, see whether or not you got it correct, and resubmit prior to the due date/time to improve your grade without penalty as many times as you wish. Unless otherwise stated, all activities are due at the end of the week on Friday at 11:59pm.
You should keep trying these activities until you are able to get them correct. My goal is that everyone will be able to get full credit for all of these activities -- the autograder is meant to be a positive that helps your understanding and grade, not a negative.
Friday will be dedicated to completing labs. The lab task will be available on PrairieLearn at the beginning of the lab class period. Other lab policies:
- Labs must be completed with your assigned partner. Partners will be assigned in the first week based on the results of a survey.
- Most labs are designed to be finished during the dedicated lab time, assuming you come prepared and have watched the video lectures and completed the activities for the week. Labs must be completed within 1 week (e.g., before the start of the next lab class day).
- When you finish the lab task, let the instructor know so you can demo it. If you do not complete it in the lab session it is assigned, you may demo during office hours, during other activity time during class periods, or during the next lab.
There will be multiple midterm exams (tentatively week 5 and week 11) that will be taken on PrairieLearn and consist of both non-coding (multiple choice, fill-in-the-blank, etc.) questions and one or more coding questions.
The room will be recorded during exams to ensure academic integrity. By taking the exams you consent to being recorded. Please reach out to the professor no later than the end of the first week of class if you have concerns.
In lieu of a final exam, each student (individually or with a partner) will complete a culminating project of your choice. The default choice is the HuMob Challenge 2024. Please discuss with the instructor before September if you intended to choose a project of your own.
All students are expected to adhere to the academic honesty standards set forth by Grand Valley State University. In addition, students in this course are expected to adhere to the academic honesty guidelines as set forth by the School of Computing and Information Systems.
Academic honesty is taken seriously. Penalties may be different for undergraduate and graduate students. If you have any questions about what is allowed, it is your responsibility to check with the instructor first.
For this course:
- Activities: are to be completed individually. You may discuss the activities in general with others, but you should not sharing/copying code.
- Labs: your lab should be completed with your assigned partner. Code should not be shared among members of different lab groups. Each partner should fully understand the code that is turned in for the lab.
- Projects: may be completed individually or with a partner. While you can discuss your project idea in general with others, fundamentally the work you submit for you project must be your own. If working with a partner, both partners are expected to understand the project and be capable of explaining it.
- Exams: Exams are to be completed individually. Exams are open-book, open-note, open general internet resources (for something like python documentation). You are free to look at the class demos, lectures, labs, and activities while taking the exam. You may not attempt to find or use a full solution to the problem (or a solution to a large component of the problem) online. Additionally, you can not discuss or share any portion of the exam with another individual (whether or not they are taking this class). You are also not allowed to benefit from any other student that may have sought outside help. Using any unauthorized resource on exams will be considered an academic integrity violation and will result in a grade penalty (up to failure in the course) as well as be reported to the Office of Student Conduct and Conflict Resolution.
- Can I use ChatGPT, Github Co-pilot, or similar AI/ML based technologies? No, for in-class activities, labs, and exams. The work you submit must be your own, and all code should be written by you. Using AI tools in these contexts would be considered an academic integrity violation.Special case: For the course project, you are encouraged to use AI tools but must take full responsibility for the AI-generated content.
- Can I seek help through sites like upwork? No, this would generally be considered an academic integrity violation
- Can I have help from a tutor? You may seek help from a tutor, but the work you submit for projects/labs/activities in the end must be your own. You may not consult tutors when taking exams.
- Can I use sites like stackoverflow? Yes, this is allowed in this course, so long as you are not simply posting your entire problem and asking for a solution and that you do not look for or use a full solution to a large portion of the problem (regardless of whether or not you were the one asking). Fundamentally the work you submit must be your own.
- Can I use sites like Chegg? No, this would be considered an academic integrity violation, even if you were not the one posting the question
- Can I just piece together existing code found online for my project? No, this would be considered an academic integrity violation. Fundamentally the work you submit must be your own.
I recognize that courses can be stressful and occasional lapses of judgement occur where students commit an academic integrity violation and regret it shortly after. In order to create an environment where you can take responsibility for your actions, this course will have a "regret policy". Within 48 hours of the due date for an activity/lab or within 48 hours of completing an exam, you can withdraw your submission if after contemplation you believe you may have committed academic misconduct. To do so, you must inform me in via email within 48 hours of the due date / late deadline including the following text:
I wish to invoke the regret clause for [ASSESSMENT NAME].
Upon invoking the regret clause
- You will need to meet with me so we can talk through what happened. Maybe there are bigger issues outside of class that need to be dealt with, maybe this wouldn't have actually been an academic integrity violation. The point of this meeting is not to be scary or a punishment, it's to talk through what happened.
- You will be withdrawing your submission and as such will receive a 0 on the entire assessment.
- Because you made this decision of your own accord and withdrew your submission, this instance will not be considered an academic integrity violation and will not be reported to OSCCR (except when there is a clear pattern of repeated invocations of this clause).
I will not look at any submissions until 48 hours after the due date / late deadline / exam completion time. If the 48 hours have passed and you have not informed me of your desire to invoke the "regret clause" and I detect academic misconduct, it will result in disciplinary action, up to failure in the course, and will be reported to the Office of Student Conduct and Conflict Resolution.
If there is any student in this class who has special needs because of learning, physical or other disability, please contact me and Disability Support Services (DSS) at 616.331.2490.