联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2021-10-19 09:33

Assignment_2

October 14, 2021

1 Lab Assignment 2

1.0.1 Hossein Kafiabad, s1234567

1.1 Presentation and coding style (3 marks)

In this assignment, some marks are allocated to your coding style and presentation. Try to make

your code more readable using the tips given in your computer lab 2. Make sure your figures have

good quality, right size, good range and proper labels.

1.2 Task 1 (4 marks)

In this task we try to use several method from Lab 2 to solve the initial value problem

y

′ = 3y − 4t, y(0) = 1, (1)

Set the step size to h = 0.05 and numerically solve this ODE from t = 0 to 0.5 using the following

methods:

• Forward Euler

• Adams–Bashforth order 2

• Adams–Bashforth order 3 (we did not code this method in the computer lab, but you can

find the formula on this wikipedia page). For this method, you need to build the very first

two steps using other methods. For the first step, use the Euler scheme. For the second step,

use Adams–Bashforth order 2.

Plot the three different approximations, and display the values in a table.

[ ]: # Import packages

import math

import numpy as np

import matplotlib.pyplot as plt

[ ]: # defining the function in the RHS of the ODE given in the question

[ ]: from pandas import DataFrame

# plot the results

1

[ ]: # printing the solution in a table

1.3 Task 2 (3 marks)

Use SymPy to solve the differential equation y

′ = 3y − 4t, with y(0) = 1, present the analytical

solution, and check the exact value of y(0.5).

Compare the result with the approximations from the three methods in Task 1. You may use a

table to show the results of each method at y(0.5). Which method is the most/least accurate?

Why?

[ ]: # standard setup

import sympy as sym

sym.init_printing()

from IPython.display import display_latex

import sympy.plotting as sym_plot

Write you answer here!

2


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp