How to plot the Gravitational Potential vs Radius of earth plot?

23 views (last 30 days)
vimal kumar chawda on 6 May 2020
Commented: James Tursa on 17 May 2020
clc;
clear all;
close all;
format long g;
G=6.6743015*10^-11;
Density=5.510;
M= (4*pi*G*Density)*10^6/3;
R=[10 20 50 100 6370];
%% for the calculation for the gravitational potential
for i =1:length(R)
Gravitational_Potential(:,i) = (M*R(:,i));
i=i+1;
end
figure()
plot(R,Gravitational_Potential);
ylabel('Gravitational Potential');
grid on
I have to plot as curve plot as attached
Hint : - consider you have a function y = x^2. And now you have points x=1,2,4,8, from this you can get the corresponding y values: y=1^2,2^2,4^2,8^2. How do you visualize these values?
Now you have the same with a function V=GM/R, and R=10k,… you got V for all these values, you can visualize your results the same way you did above.
James Tursa on 17 May 2020
I don't have any code for this, but the equations look farily straightforward so I don't think you should have much trouble writing this.

Ameer Hamza on 6 May 2020
Edited: Ameer Hamza on 6 May 2020
You are using wrong values of constants and wrong formula for Gravitational potential. Try this code
clc;
clear all;
close all;
format long g;
G=6.6743015e-11;
Density=5510;
R = 6.4e6; % radius of earth
M = 4*pi*R^3*Density/3;
r = linspace(R, 15*R);
%% for the calculation for the gravitational potential
Gravitational_Potential = zeros(size(r));
for i =1:length(r)
Gravitational_Potential(i) = -G*M/r(i);
end
figure()
ax = axes();
plot(r, Gravitational_Potential);
ax.XLim(2) = max(r);
ylabel('Gravitational Potential');
grid on
Ameer Hamza on 6 May 2020
I am glad to be of help.

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!