matlab griddata,MATLAB 中有关griddata的计算原理,看不懂,求详解! – 程序语言 – 小木虫 – 学术 科研 互动社区…

matlab griddata,MATLAB 中有关griddata的计算原理,看不懂,求详解! – 程序语言 – 小木虫 – 学术 科研 互动社区…>>typegriddatafunction[xi,yi,zi]=gdatav4(x,y,z,xi,yi)%GDATAV4MATLAB4GRIDDATAinterpolation%Reference:DavidT.Sandwell,Biharmonicspline%interpolationofGEOS-3andSEASATaltime…

大家好,又见面了,我是你们的朋友全栈君。

>>type griddata

function [xi,yi,zi] = gdatav4(x,y,z,xi,yi)

%GDATAV4 MATLAB 4 GRIDDATA interpolation

%   Reference:  David T. Sandwell, Biharmonic spline

%   interpolation of GEOS-3 and SEASAT altimeter

%   data, Geophysical Research Letters, 2, 139-142,

%   1987.  Describes interpolation using value or

%   gradient of value in any dimension.

xy = x( + y(*sqrt(-1);

% Determine distances between points

d = xy(:,ones(1,length(xy)));

d = abs(d – d.’);

n = size(d,1);

% Replace zeros along diagonal with ones (so these don’t show up in the

% find below or in the Green’s function calculation).

d(1:n+1:numel(d)) = ones(1,n);

non = find(d == 0, 1);

if ~isempty(non),

% If we’ve made it to here, then some points aren’t distinct.  Remove

% the non-distinct points by averaging.

[r,c] = find(d == 0);

k = find(r < c);

r = r(k); c = c(k); % Extract unique (row,col) pairs

v = (z(r) + z(c))/2; % Average non-distinct pairs

rep = find(diff(c)==0);

if ~isempty(rep), % More than two points need to be averaged.

runs = find(diff(diff(c)==0)==1)+1;

for i=1:length(runs),

k = (c==c(runs(i))); % All the points in a run

v(runs(i)) = mean(z([r(k);c(runs(i))])); % Average (again)

end

end

z(r) = v;

if ~isempty(rep),

z(r(runs)) = v(runs); % Make sure average is in the dataset

end

% Now remove the extra points.

z(c) = [];

xy(c, = [];

xy(:,c) = [];

d(c, = [];

d(:,c) = [];

% Determine the non distinct points

ndp = sort([r;c]);

ndp(ndp(1:length(ndp)-1)==ndp(2:length(ndp))) = [];

warning(‘MATLAB:griddata:NonDistinctPoints’,[‘Averaged %d non-distinct ‘ …

‘points.\n         Indices are: %s.’],length(ndp),num2str(ndp’))

end

% Determine weights for interpolation

g = (d.^2) .* (log(d)-1);   % Green’s function.

% Fixup value of Green’s function along diagonal

g(1:size(d,1)+1:numel(d)) = zeros(size(d,1),1);

weights = g \ z(;

[m,n] = size(xi);

zi = zeros(size(xi));

jay = sqrt(-1);

xy = xy.’;

% Evaluate at requested points (xi,yi).  Loop to save memory.

for i=1:m

for j=1:n

d = abs(xi(i,j)+jay*yi(i,j) – xy);

mask = find(d == 0);

if ~isempty(mask), d(mask) = ones(length(mask),1); end

g = (d.^2) .* (log(d)-1);   % Green’s function.

% Value of Green’s function at zero

if ~isempty(mask), g(mask) = zeros(length(mask),1); end

zi(i,j) = g * weights;

end

end

if nargout<=1,

xi = zi;

end

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/141324.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 抓包工具Charles使用教程

    抓包工具Charles使用教程文章目录一、什么是Charles?二、下载安装:三、http抓包:一、什么是Charles?Charles,因产品Icon为青花瓷造型,俗称青花瓷。主要是用来抓取网络流量包,可以分析产生的网络请求、可以配置代理来抓取手机流量包数据。二、下载安装:1、官方渠道,收费版;2、安装破解版,百度网盘地址:https://pan.baidu.com/s/1_ApnyPqoN5EQ6JvHMjnCTQ三、http抓包:1、开始代理配置:目录:Proxy-ProxySettings2、查看电

    2022年5月7日
    52
  • android之实现打开相册、拍照录像、播放视频、保存图片到系统相册\指定位置、图片压缩[通俗易懂]

    android之实现打开相册、拍照录像、播放视频、保存图片到系统相册\指定位置、图片压缩[通俗易懂]———照相录像——//实现照相、录像的功能publicvoidcameraForphoto(){Intentintent=newIntent(MediaStore.ACTION_IMAGE_CAPTURE);Filefile=newFile(Environment.getExternalStorageDirecto…

    2022年9月16日
    2
  • jumpserver win终端无法添加

    jumpserver win终端无法添加

    2021年6月19日
    118
  • clion永久激活码2021_在线激活

    (clion永久激活码2021)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月21日
    233
  • 服务器不支持ssl怎么回事,客户端和服务器不支持一般 SSL 协议版本或加密套件 解决方法…

    服务器不支持ssl怎么回事,客户端和服务器不支持一般 SSL 协议版本或加密套件 解决方法…今天谷歌、火狐、QQ等相关浏览器打开网站,突然提示如下错误:此网站无法提供安全连接www.huichengff.com使用了不受支持的协议。协议不受支持客户端和服务器不支持一般SSL协议版本或加密套件用火狐浏览器打开网站却提示如下错误:连接到www.huichengff.com时发生错误。无法安全地与对等端通信:没有双方共用的加密算法。错误代码:SSL_ERROR_NO_CYPHER…

    2022年6月2日
    331
  • 热拔插概念[通俗易懂]

    热拔插概念[通俗易懂]我们日常经常用到的电脑外设日益增多,如键盘、鼠标、耳机或音箱、U盘或移动硬盘、无线移动上网卡、显示器、笔记本电池、打印机、摄像头、数码相机、手机,还有无线路由器、宽带猫等,哪些可以热插拔,哪些必须关机

    2022年8月2日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号