Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Verlet Method Here is what I have tried but I can't find the mistake Thanks! dt2d2x(t)=GMr3x,dt2d2y(t)=GMr3y, where r=x2+y2 Task: Calculate the orbit of the Earth

Verlet Method

image text in transcribed

Here is what I have tried but I can't find the mistake

image text in transcribedimage text in transcribed

Thanks!

dt2d2x(t)=GMr3x,dt2d2y(t)=GMr3y, where r=x2+y2 Task: Calculate the orbit of the Earth around the Sun in steps of one hour for a total period of four years. Use the solution for the orbit, r(t), and the velocity, v(t), to calculate additionally the potential and kinetic energy of Earth at each evaluation point. Create a function potentialEnergy( r, par) and a function kineticEnergy( v, par) which implement these requested calculations separately from solving the ODE's and can be called from tests. Also create a function solve(par) which returns the value arrays for r(t) and v(t) as a tuple such that the tests can call solve(par) and obtain the results. Note that the potential energy depends only on the Earth location, r(t), and its kinetic energy only on its velocity, v(t). The variable par should be a tuple containing the required constant values in order (G,M,m), see Data below. Data: Use G=6.67381011m3kg1s2 as Newton's gravitational constant, M=1.98911030kg as mass of the Sun. For Earth mass, use m=5.97221024kg. The initial conditions should be r0=(1.5211011,0)m and v0=(0,2.9291104)ms1. Time evaluation points are in the task description and note that you work in SI units. Create two plots: (a) draw the kinetic energy, potential energy and total energy, superimposed on a single canvas and observe how the kinetic and potential energies change as a function of time while the total energy appears to be constant. (b) Plot only the total energy as a function of time and observe the oscillating character while the mean remains constant to high precision which demonstrates the inherent energy conservation of the Verlet method. Note: you may wish to solve the problem using solve_ivp() but that is not recommended. It is entirely possible and possibly illuminating in comparison(!) to the Verlet method but effectively similar effort for worse results. The tests are likely to fail and deduct marks for this case. def solve(par): r_list = [ro] v_list = [v0] for i in range(1, len(t_eval)): dt = t_eval[i] - t_eval[i-1] r, v = verlet(r_list[-1], v_list[-1], dt) r_list.append(r) v_list.append(v) r_array = np.array(r_list) v_array = np.array(v_list) return r_array, v_array \# solve the orbit r, v = solve((G, M, m)) \# calculate potential and kinetic energy potential_energy = [potentialenergy(r[i], (G, M, m)) for i in range(len(r))] kinetic_energy = [kineticEnergy(v[i], (G, M, m)) for i in range(len(v))] total_energy = potential_energy + kinetic_energy \# Plot kinetic, potential, and total energy as a function of time plt.plot(t_eval, kinetic_energy, label="Kinetic energy") plt.plot(t_eval, potential_energy, label="Potential energy") plt.plot(t_eval, total_energy, label="Total energy") plt.xlabel("Time (s)") plt.ylabel("Energy ( J)") plt.show()

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Big Data With Hadoop MapReduce A Classroom Approach

Authors: Rathinaraja Jeyaraj ,Ganeshkumar Pugalendhi ,Anand Paul

1st Edition

1774634848, 978-1774634844

More Books

Students also viewed these Databases questions

Question

Summarize stereotypical child abduction data.

Answered: 1 week ago

Question

Are my points each supported by at least two subpoints?

Answered: 1 week ago