📄 ava_approximation_rueger.m
字号:
function [refl,coeff]=ava_approximation_rueger(vp,vs,rho,epsilon,delta,angles)% Compute approximate amplitude vs angle of incidence from Vp, Vs, density% and anisotropy parameters using A. Rueger's formula (Geophysics, 1997, p. 713 ff)% if these elastic parameters are vectors they must have the same length.% Written by: E. R.: April 18, 2005% Last updated:%% [refl,coeff]=ava_approximation_rueger(vp,vs,rho,epsilon,delta,angles)% INPUT% vp column vector of P-velocities% vs column vector of S-velocities% rho column vector of densities% epsilon anisotropy parameter% delta anisotropy parameter% angles row vector of angles of incidence (in degrees)% OUTPUT% refl matrix of reflectivities; one column per angle% size(refl,1) = size(vp,1)-1% coeff coefficients of the approximation a*f1(theta)+b*f2(theta)+c*f3(theta)temp=rho.*vp;r0=diff(temp)./(temp(1:end-1,:) + temp(2:end,:));temp=rho.*(vs.^2);dg=diff(temp)./(temp(1:end-1,:) + temp(2:end,:));vpbar=vp(1:end-1,:) + vp(2:end,:);vsbar=vs(1:end-1,:) + vs(2:end,:);rvp=diff(vp)./vpbar;g=rvp - 4*(vsbar./vpbar).^2.*dg + 0.5*diff(delta);g1=rvp + 0.5*diff(epsilon);ang=pi*angles/180;sinang2=sin(ang).^2;% refl=r0(:,ones(size(ang))) + (g + g1*tan(ang).^2).*sin(ang).^2;refl=r0(:,ones(size(ang))) + g*sinang2 + g1*(sinang2.*tan(ang).^2);coeff=[r0,g,g1];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -