"...how it differs from the rocks"

Tag: openlab

OpenLab #2: Numerical methods PROJECT – Part 1

Numerical methods provide a way to compute (approximate) values of solutions to differential equations, even when we cannot solve the equations exactly.  The drawback is the large number of numerical calculations required to obtain a desired value and level of precision.  In this project, you will use technology to implement the various numerical methods and use your technological solution to solve differential equations problems.

Assignment (Due Tuesday, April 4th).  Create a numerical methods calculator.  You can choose your technology tool for this job – use any one of the following:

  1. a spreadsheet (Excel, Google Sheets, or other spreadsheet)
    • if you choose to create a spreadsheet, you should have columns forx, y, f(x,y) , and so on, and each stage should appear in its own row
  2. a programming language (Java, Perl, or other programming language)
    • if you choose to write code, your program should output the values of x, y, f(x,y) and so on at each stage
  3. mathematical software (MatLab, Maple, Mathematica, or other mathematical software)
    • if you choose to use mathematical software, your program should output the values of x, y, f(x,y) and so on at each stage

How to submit. Part 2 of this project will talk about how to submit your project – you will be asked to upload your solution (spreadsheet, or code, or mathematical software document) and to write  about what you did.  For now, focus on getting your solution working.

Requirements:

  1. Your solution should allow you to solve problems of this type:

Example.  Given the differential equation dy/dx=x^2-0.5xy and initial condition y(1.5)=2.2, approximate the value of y(2.5) using step size h=0.05

  1. Your solution must be able to carry out Euler’s Method, Improved Euler’s Method, and Runge-Kutta (you may implement these as three separate spreadsheets or programs if you wish).
  2. Your solution should display all the points (x,y) found along the way, not just the final point.
  3. Your solution should also display other values found while carrying out each method:
    1. Euler’s Method: display the slope f(x,y) at each stage
    2. Improved Euler’s: display the values of k1, k2 at each stage
    3. Runge-Kutta: display the values of k1, k2, k3, k4 at each stage
    4. You can display other values as well, if you wish (for example, the intermediate y-value in the Improved Euler method that we refer to as z).
  4. Your solution may NOT use any built-in version of these methods (for example, most mathematical software contains a built-in command for Euler’s Method – you can use this to check your work, but you need to create your own solution).
  5. You should be able to relatively easily change the initial condition, step size, and target value.
  6. You should be able to relatively easily change the differential equation (it is ok if the equation is hard-coded into your program).

Test your project.  Solution data for the above example using Euler, Improved Euler, and Runge-Kutta will be posted this weekend so you can test your project.  You can also use examples from class to test your work, since you know what the solutions are.

 

Welcome and Getting Started

This course is MAT 2680, Differential Equations, taking place in the Spring 2019 semester with Professor Reitz.  We will be using this website in a variety of ways this semester – as a central location for information about the course (assignments, review sheets, policies, and so on), a place to ask and answer questions, to post examples of our work, and to talk about  mathematics, physics, reality and so on.

Getting Started

Anyone on the internet can look around the site and see what we are doing, and even leave a comment on one of the pages.  However, only registered users can create new posts and participate in the discussion boards.

How do I register?

You will need to do two things:

  1. If you have not used the OpenLab before, you must first create an account.  You will need access to your citytech email address  for this.  Detailed instructions for signing up on the OpenLab can be found here.
  2. Once you have created an account on the OpenLab, log in and then join this particular course, 2019 Spring – MAT 2680 Differential Equations – Reitz.  To do this, first click the “Course Profile” link at the top left of this page (just above the picture).  Then click the “Join Now” button, which should appear just underneath the square picture of a peaceful natural scene.

Problems with the OpenLab or with your CityTech email:

Please let me know if you run into any problems registering or joining our course (send me an email, jreitz@citytech.cuny.edu).  I also wanted to give you two resources to help out in the process:

1.  For problems with your citytech email account, contact the Student Helpdesk, either in person, by phone, or by email:

Student Helpdesk

Library (Atrium) Building 114
718-260-4900
Monday – Wednesday: 8:30am – 6:00pm
Thursday: 8:30am – 5:00pm
StudentHelpDesk@citytech.cuny.edu

2. For problems registering for the OpenLab, contact the OpenLab admin team, either by email at openlab@citytech.cuny.edu, or by following this link.