均匀球体模型的重力异常正演

前言:理论知识可以阅读相关书籍和论文,本文只涉及代码和结果,建议先理解重力异常理论知识再看代码。那我们先来看结果,代码在后面。最早发布在知乎。
知乎:球形模型的重力异常正演

1、结果

均匀球体模型的重力异常正演_第1张图片

2、代码

function [gravity]=problem1(D,R,u)
% author:Hecok  address:Beijing UCAS  Time:2022/12/20
% 均匀球体模型下的重力异常
% D-埋藏深度;R-球体半径;u-剩余密度(σ)
% 万有引力常数G=6.67e-11 m^3/(kg∙s^2)

% 万有引力常数
G=6.67e-11;

% 采样区间
x=(-500:1:500);
y=(-500:1:500);

% 计算重力异常
[X,Y]=meshgrid(x,y);
r=X.^2+Y.^2+D.^2;
gravity=((4/3)*pi*R^3*u*G*D)./power(r,3/2);

% 绘图
% 三维图
subplot(2,2,1);
mesh(X,Y,gravity.*1000); % 最终以 毫伽 为单位
colorbar;
xlabel("x");
ylabel("y");
title("Spherical Bouguer Gravity Anomaly");
grid on;

% 等值线图 
subplot(2,2,2);
contour(X,Y,gravity*1000,20);
axis([-200,200,-200,200]); % 设置x、y坐标轴的范围
colorbar;
xlabel("x");
ylabel("y");
title("Contour Map of Gravity Anomaly");
grid on;

% 剖面图(沿x轴方向)
subplot(2,2,3);
plot(X,gravity*1000);
xlabel("x");
ylabel("gravity");
title("Gravity anomaly profile");
grid on;

% 等值线图 
subplot(2,2,4);
contourf(X,Y,gravity*1000,20); % 填充的二维等值线图 
axis([-200,200,-200,200]);
colorbar;
xlabel("x");
ylabel("y");
title("Filled Contour Map of Gravity Anomaly");
grid on;

end

你可能感兴趣的:(地球物理,重力异常,地球物理,matlab)