Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Ajuda Scilab >> Interpolação > cshep2d

cshep2d

bidimensional cubic shepard (scattered) interpolation

Seqüência de Chamamento

tl_coef = cshep2d(xyz)

Parâmetros

xyz

uma matriz n x 3 dos pontos de interpolação interpolação (sem grid), a i-ésima linha dadas as coordenadas (x,y) e então a altitude z do i-ésimo ponto de interpolação

tl_coef

uma estrutura tlist do Scilab (do tipo cshep2d)

Descrição

Esta função é útil para definir uma função de interpolação 2d quando os pontos não estão em um grid (você pode usá-la para este caso, mas splin2d é melhor para este propósito). O interpolante é do tipo cúbico de Shepard e é uma função de duas variáveis de classe C2 (duas vezes continuamente diferenciável) s(x,y) tal que : s(xi,yi)=zi para todo i=1,..,n ( (xi,yi,zi) sendo a i-ésima linha de xyz).

A avaliação de s em alguns pontos deve ser feita pela função eval_cshep2d.

Observação

A função operea se n>= 10, se os nós não são todos colineares (i.e. as coordenadas (x,y) dos pontos de interpolação não estão na mesma reta) e se não há nós duplicados (i.e. dois ou mais pontos de interpolação com as mesmas coordenadas (x,y) ). Há erro se essas condições não são respeitadas.

Exemplos

// interpolação de cos(x)cos(y) com pontos de interpolação escolhidos aleatoriamente
n = 150; // número de pontos de interpolação
xy = grand(n,2,"unf",0,2*%pi);
z = cos(xy(:,1)).*cos(xy(:,2));
xyz = [xy z];
tl_coef = cshep2d(xyz);

// avaliação em um grid
m = 30;
xx = linspace(0,2*%pi,m);
[X,Y] = ndgrid(xx,xx);
Z = eval_cshep2d(X,Y, tl_coef);
clf()
plot3d(xx,xx,Z,flag=[2 6 4])
param3d1(xy(:,1),xy(:,2),list(z,-9), flag=[0 0])
xtitle("Interpolação cúbica de Shepard de cos(x)cos(y) com pontos de interpolação escolhidos aleatoriamente")
legends("pontos de interpolação",-9,1)
show_window()

Ver Também

  • splin2d — interpolação por spline bicúbico em grides 2d
  • eval_cshep2d — avaliação por interpolação cúbica bidimensional de Shepard

Autores

  • Robert J. Renka
  • B. Pincon (interface do Scilab)
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Oct 01 17:39:44 CEST 2012