# 6-23-25
## Action Items
- Reserve the classroom for office hours from 3PM to 4PM, Monday through Thursday.
- Ensure the DNS server properly links scottastrong.org to the instructor's website.
- Students to check the course web space and familiarize themselves with the syllabus and course materials.
- Students to interact with the Hi TA system for pre-lecture and post-lecture activities.
- Students to complete 75% of the generative AI interactions to pass the course.
- Students to complete six homework assignments with five questions each.
- Students to engage in micro projects for higher grades.
## Key Decisions
- The course will use specifications grading, requiring students to complete a certain percentage of tasks to pass.
- Generative AI will be integrated into the course to assist with coding and learning.
- Students can choose to use MATLAB, Python, or R for their coding assignments.
- Office hours will be held in Stratton Hall 102 and the classroom after lectures.
## Notes and Observations
- The course, MATH307A, is an introduction to scientific computing, designed for applied scientists and engineers.
- The instructor, Scott Strong, has provided a detailed overview of the course structure, including meeting times, office hours, and grading criteria.
- The course will meet Monday through Thursday from 01:15 to 3PM, consisting of two fifty-minute lectures with a five-minute break.
- Office hours will be held in Stratton Hall 102 and by appointment, with additional hours after class in the classroom.
- The course will utilize a generative AI system, Hi TA, to assist with learning and coding tasks. Students are encouraged to interact with this system for pre-lecture and post-lecture activities.
- The instructor has emphasized the importance of engaging with the course material and using the generative AI system to enhance learning.
- The course will include six homework assignments, each with five questions, and students are expected to complete 80% of the total problems.
- Micro projects will be available for students seeking higher grades, with the opportunity to design their own projects.
- The instructor shared personal anecdotes and background information to introduce himself to the class.
- Students participated in interactive activities using the Mentimeter system to share their feelings and backgrounds.
- The instructor discussed the integration of generative AI in the course and its role in assisting with coding and learning tasks.
# 6-24-25
## MATH307 Scientific Computing - Day 2 Action Items Summary
## Action Items
### For Instructor
- Research and implement proper MATLAB program termination commands (alternative to `exit` which closes entire program)
- Publish mesh visualization code and AI-generated animation scripts to course website
- Create Python equivalent of matrix multiplication implementation for students preferring Python
- Add error handling/dimension checking code to matrix multiplication algorithm
- Upload Day 2 lecture board photos to website
- Update website to split lecture materials into three sections: boards, audio summaries, and notes
- Develop additional micro-projects from brainstormed list (prioritize bolded items in queue)
- Finalize deliverable format for micro-projects that demonstrates human involvement
- Link Canvas gradebook with Hi TA system for seamless grade integration
### For Students
- Complete Hi TA lecture reflection for Day 2 (LO2 interactions due before next class)
- Export Day 2 Hi TA conversations as markdown files and submit to Canvas
- Practice matrix multiplication implementation in chosen programming language (MATLAB/Python/R)
- Begin working on Homework Problem 2 using Day 2 concepts
- Test and debug individual matrix multiplication code implementations
- Familiarize with MATLAB syntax for matrix operations and dimension checking
- Review linear transformation concepts and standard basis vector calculations
### Technical Setup
- Resolve Python matrix syntax questions for students choosing non-MATLAB environments
- Ensure all lab computers have proper MATLAB access for logged-in students
- Test Hi TA system export functionality and troubleshoot three-dots menu access
## Key Decisions
### Programming Implementation
- Matrix multiplication will be implemented from scratch using triple nested loops before using built-in functions
- Error handling for incompatible matrix dimensions will be added to student implementations
- MATLAB chosen as primary demonstration language, with Python support available
- Students encouraged to understand computational cost (O(N³)) before using optimized library functions
### Visualization Approach
- AI-generated animated visualizations will supplement static grid transformations
- Mesh plotting codes will be provided to make abstract linear transformations tangible
- Students will visualize how 2x2 matrices transform the coordinate plane through standard basis vectors
### Assessment Integration
- Hi TA interactions remain separate from Canvas initially (integration planned for future)
- Markdown export from Hi TA conversations required for Canvas submission
- Checkbox function in Hi TA activities unclear - students should verify completion through bot interaction
### Course Content Progression
- Matrix multiplication mastery required before advancing to eigenvalue/eigenvector topics
- Theoretical understanding must be paired with computational implementation
- Linear transformation properties (linearity, origin preservation, parallel line preservation) established as foundation
## Notes and Observations
### Technical Challenges Encountered
- Live coding session demonstrated real debugging process when `exit` command terminated entire MATLAB program
- Student confusion about Hi TA system navigation resolved (conversation view vs activity view for export)
- Matrix dimension compatibility errors successfully demonstrated to show importance of error checking
- Semicolon behavior in MATLAB clarified (suppresses output display but doesn't prevent execution)
### Student Engagement Patterns
- Strong interest in animated visualizations over static grid plots
- Questions about programming language choice (MATLAB vs Python) indicate thoughtful consideration
- Students successfully following along with live matrix multiplication implementation
- Active participation in geometric interpretation of linear transformations
### Pedagogical Insights
- Animated transformations significantly improved conceptual understanding compared to before/after static images
- Connection between determinant sign and geometric orientation (flip vs no flip) effectively demonstrated
- Standard basis vector approach successfully simplified understanding of plane transformations
- Real-world analogies (rotation, mirror reflection) helped contextualize abstract linear algebra
### Course Infrastructure
- Hi TA system functioning well for learning objectives but Canvas integration needed
- Website organization proving effective with embedded homework and project descriptions
- Course material progression from symbolic math to computational implementation working smoothly
- Balance between theoretical understanding and practical coding skills being maintained
### Future Session Preparation
- Eigenvalue/eigenvector introduction planned for Day 3
- More complex transformation examples needed to build toward eigenspace concepts
- Error handling implementation priority for next coding session
- Additional micro-project details to be published based on student interest areas
# 6-25-25
## Action Items
- Review lecture pictures and learning reflections.
- Prepare for discussions on matrix transformations and eigen problems.
- Get matrix multiplication code up and running with error handling.
- Start working on the matrix multiplication runtime project.
- Look into error handling in MATLAB and Python.
- Prepare for discussions on regular stochastic matrices.
## Key Decisions
- Learning objectives for Taylor series will be postponed until the matrix topics are completed.
- A new project on matrix multiplication runtime has been introduced.
## Notes and Observations
- The lecture focused on matrix transformations, eigen problems, and their applications.
- Learning objectives (LOs) for Taylor series are not yet available as the class is still covering matrix topics.
- Matrix multiplication codes are available in MATLAB and Python, with potential ports to R or Mathematica if needed.
- Discussion on computational costs and error handling in MATLAB and Python.
- Introduction to a new project on matrix multiplication runtime, comparing custom code against built-in algorithms.
- Detailed explanation of matrix transformations, including shearing and dilation, with examples.
- Discussion on eigenvalues and eigenvectors, including their calculation and significance in matrix transformations.
- Introduction to regular stochastic matrices and their properties, including the concept of a stationary vector.
- Example of a Markov chain with a radio station playing two genres, illustrating the concept of a stationary distribution.
- Use of MATLAB to calculate eigenvalues and eigenvectors, demonstrating the application of linear algebra concepts.
## Additional Topics
- The lecture included a humorous interlude with a joke to lighten the mood.
- The session concluded with a discussion on the application of matrices in real-world scenarios, such as demographics and radio station transitions.
# 6-26-25
## Action Items
- Review the two posted projects on matrix multiplication and image compression.
- Prepare a five to seven-minute video explaining the project work and code.
- Consider the feasibility of creating the video and discuss any media constraints.
- Start working on the matrix multiplication project as it is relevant to class discussions.
- Check the codes posted on HiTA and review the transformation of the grid code.
- Organize and linearize handwritten and code submissions for homework.
- Prepare for a discussion on Taylor series and related problems on Monday.
- Submit homework by next Wednesday, with a new assignment to be released on Tuesday.
## Key Decisions
- The projects will involve a mixture of mathematics and coding, with a reflection and video component.
- Homework submissions will accept multiple formats, including handwritten and code files.
- The due date for the current homework has been extended to next Wednesday.
## Notes and Observations
- Two projects have been posted: one on matrix multiplication and another on image compression using eigen information. These projects aim to build a larger code base with generative AI systems.
- Deliverables include a one-page reflection and a video walkthrough of the project and code.
- The instructor emphasized the importance of understanding the code and not relying solely on AI-generated solutions.
- Discussion on the use of blue books for exams and the shift towards ensuring human involvement in work.
- Codes related to class topics are available on HiTA, including a transformation of the grid code.
- The instructor demonstrated the process of creating Taylor polynomials and estimating errors using MATLAB.
- The class explored the use of Taylor series for approximating functions and discussed the importance of understanding the error bounds in approximations.
- The instructor provided guidance on using MATLAB for plotting and analyzing functions, emphasizing the importance of understanding vector operations in MATLAB.
- The session included a detailed walkthrough of creating and analyzing Taylor polynomials, with a focus on understanding the geometric information captured by derivatives.
- The instructor addressed questions about the projects, homework, and the use of Taylor series in scientific computing.
# 6-30-25
## Overview
Today’s class focused on:
1. **Administrative adjustments** to homework and project allocations.
2. **Taylor series fundamentals**: definition, polynomial approximations, and remainder.
3. **MATLAB coding practice** to implement Taylor series approximations for $e^x$ and $\sin(x)$.
4. **Numerical differentiation** derived from Taylor expansion, introducing first-order finite difference approximations and setting up context for future higher-order methods.
## Instructor Highlights
- Workflow streamlining for AI grading and assignment posting.
- Upcoming projects to integrate multivariable calculus, linear algebra, and visualization.
- Strong emphasis on **coding generality** and building functions modularly.
## Next Steps
- Homework 1 due Wednesday 11:59 PM (Problem 5 moved to project).
- Homework 2 to be released tomorrow.
- Continue development of numerical differentiation techniques using Taylor series expansions next class.
# 7-1-25
## Action Items
- Upload location on Canvas to be opened next Monday for project deliverables.
- Homework 1 is due tomorrow; remember there is no problem 5.
- Homework 2 will be posted tomorrow.
- Prepare for the last class on Thursday, 07/11.
## Key Decisions
- Two more projects have been posted.
- Problem 5 from Homework 1 has been moved to a project due to its length.
- The course has shifted focus to calculus earlier than usual to align with summer energy levels.
## Notes and Observations
- The lecture focused on finite difference approximations, truncation versus round-off error, and Taylor series.
- The instructor plans to provide feedback through audio transcriptions to expedite the process.
- The class is currently discussing finite difference approximations to derivatives and truncation versus round-off error.
- The instructor explained the importance of Taylor series in scientific computing, particularly in constructing derivatives computationally.
- A detailed explanation of how to derive finite difference formulas for first, second, and third derivatives was provided.
- The instructor demonstrated the use of MATLAB to construct Taylor series approximations and discussed the limitations of finite precision arithmetic.
- The lecture included a discussion on the implications of using small step sizes (h) in numerical differentiation and the potential for round-off errors.
- The instructor emphasized the importance of understanding the trade-off between truncation error and round-off error in computational mathematics.
- The class was encouraged to think about the implications of finite precision arithmetic and how it affects numerical computations.
- The instructor shared insights on the historical context of Taylor series and their application in solving complex equations before the advent of modern computational power.
## Additional Information
- The instructor plans to sync lecture objectives with Canvas, though they are currently behind.
- The class is encouraged to use High TA for lecture reflections and activities.
- The instructor mentioned the possibility of testing new features on the High TA platform.
# 7-2-25
## Action Items
- Complete Homework #1 by tonight.
- Review Homework #2, which is now posted on the website, due next Wednesday.
- Finalize and post additional projects as soon as possible.
- Check and update lecture objectives and due dates for upcoming classes.
## Key Decisions
- Homework #1 is due tonight, and Homework #2 is due next Wednesday.
- Lecture objectives and activities will be streamlined and updated regularly.
## Notes and Observations
- The lecture focused on numerical methods, particularly finite difference approximations and their implications in computational environments.
- Discussion on grading scale: A starts at 93% in the plus-minus grading system.
- Explanation of how projects are structured with two-part values for completion.
- Detailed explanation of finite difference methods, including first, second, and third derivatives, and their implementation in MATLAB.
- Emphasis on the importance of understanding machine number lines and the implications of finite precision arithmetic.
- Discussion on round-off errors and their impact on numerical calculations.
- Explanation of floating-point arithmetic, including the significance and exponent in machine numbers.
- Demonstration of MATLAB coding practices for separating functions into files for better code management.
- Discussion on the challenges of numerical integration and the importance of understanding truncation and round-off errors.
- Explanation of the limitations of machine number lines and the non-uniform gaps between machine numbers.
- Discussion on the implications of these gaps for numerical calculations, including examples with MATLAB and theoretical explanations.
- Emphasis on the importance of understanding the trade-offs between precision and scale in computational environments.
- Explanation of the conditions under which round-off errors become significant and how to estimate the point at which they overtake truncation errors.
- Encouragement to be aware of potential errors when performing numerical calculations, especially when dealing with small numbers or large scales.