• Nenhum resultado encontrado

SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE GEOCIENCIAS CURSO DE ESPECIALIZAÇÃO EM GEOMINAS

N/A
N/A
Protected

Academic year: 2021

Share "SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE GEOCIENCIAS CURSO DE ESPECIALIZAÇÃO EM GEOMINAS"

Copied!
25
0
0

Texto

(1)

SERVIÇO PÚBLICO FEDERAL

UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE GEOCIENCIAS

CURSO DE ESPECIALIZAÇÃO EM GEOMINAS Prof. Joaquim Carlos Barbosa Queiroz

Unidade III: Métodos de estimação. krigagem simples, ordinária e indicativa.

1. Métodos de estimação

Para estimativas de valores em localizações não amostradas, existem diversos algoritmos de interpolação, tais como: krigagem, inverso do quadrado da distância, curvatura mínima, funções de base radial, triangulação, etc. Todos esses métodos estimam o valor em um determinado local, como uma soma ponderada de valores de dados em locais adjacentes. Quase todos atribuem pesos de acordo com as funções que dão um peso diminuindo com o aumento da distância de separação. A krigagem atribui pesos de acordo com os valores de covariância espacial. Em particular:

▪ Se os dados são bastante densos e uniformemente distribuídas ao longo da área de estudo, em geral se tem boas estimativas, independentemente do algoritmo de interpolação

▪ Se os dados estão agrupados (em clusters) e com grandes lacunas entre si, pode-se obter estimativas não confiáveis, independentemente do algoritmo de interpolação.

▪ Quase todos os algoritmos de interpolação subestimam os altos valores e superestimam os baixos; isto é inerente ao cálculo da média e se um algoritmo de interpolação não considera a média não seria considerado razoável

(2)

▪ Ajuda para compensar os efeitos do agrupamento de dados, atribuindo a pontos individuais dentro de um cluster menos peso do que pontos isolados de dados (ou, tratando aglomerados mais como pontos únicos)

▪ Dá estimativa do erro de estimação (variância de krigagem), juntamente com a estimativa da variável, Z.

▪ A disponibilidade de erro de estimação fornece base para a simulação estocástica de possíveis realizações de Z(u).

▪ Considera a anisotropia do meio. 2. Krigagem

2.1. Krigagem Simples

To dos os estimadores de krigagem são variantes do estimador de regressão linear básico Z*(u) definida como (GOOVAERTS, 1997):

3.1

onde λα(u) é o peso atribuído a cada valor observado Z(uα) localizado dentro de determinada vizinhança W(u) centrado em u. Os n(u) pesos são escolhidos de forma a minimizar a estimação ou erro da variância sob a condição de não-tendenciosidade do estimador. Os pesos de krigagem, λα(u), são derivados da função de covariância ou semivariograma As diferenças entre os vários tipos de krigagem residem no modelo considerado para a tendência m(u) na expressão (3.1).

A krigagem simples (SK) considera a média m(u) conhecida e constante por toda a área de estudo, enquanto a krigagem ordinária (KO) limita o domínio de estacionaridade da média à vizinhança local W(u) e, ao contrário da KS, a média é desconhecida.

(3)

A KO considera a variação local da média limitada ao domínio de estacionaridade da média a uma vizinhança local W(u) centrada sobre a localização u a ser estimada. O estimador da krigagem ordinária pode ser escrito como

3.2

Neste caso, a média local m(u’) é constante, mas desconhecido.

A minimização da variância do erro, sujeita à restrição da soma dos pesos igual a 1, permite a determinação dos pesos λα(u) a partir do seguinte sistema de equações chamado de sistema de krigagem ordinária (equações normais com restrições):

3.3

onde C(uβ – uα) e C(u – uα) são, respectivamente, a covariância entre os pontos uβ

e uα e u e uα e μ(u) é o parâmetro de Lagrange associado com a restrição

.

Substituindo a covariância por sua expressão C(h) = Co – γ(h), o sistema (3.3) e a variância podem ser escritos em função do modelo semivariográfico γ(h).

2.3. Krigagem Indicativa (IK)

A krigagem indicativa é utilizada para o mapeamento de variáveis nas seguintes situações:

▪ Mapeamento de risco de ocorrência de uma variável contínua acima de determinado ponto de corte (cutoff)

(4)

▪ Predição da variação espacial da probabilidade da variável estar dentro de um determinado critério (mapas probabilisticos).

São utilizadas variáveis indicativas para definição dos valores limites (threshold), definidas como:

quando z(ui) é uma v.a. categórica, onde zcat é o código ou índice da categoria de

interesse, e

para v.a. quantitativas, onde zcut é uma valor de corte para v.a. quantitativa Z(u). No modelamento da variabilidade espacial são utilizados variogramas indicativos definidos como,

Os variogramas indicativos medem a proporção de pares de pontos

separados pelo vetor h, em que ocorreu o evento de interesse, no caso z(u) = zcat ou z(u) ≤ zcut.

Teoricamente, o semivariograma é zero se a distância entre o pares de pontos for zero, mas na prática, geralmente ocorre uma descontinuidade na origem do semivariograma, chamado de Efeito pepita. Ou seja, a medida que h tende a zero o semivariograma assumirá um valor positivo Co. Isto se deve a erros amostrais ou a presença de variabilidade em curtas escalas, onde amostras separadas em pequenas distância pode apresentar diferenças significantes. (ISAAKS & SRIVASTAVA, 1990, p. 143).

(5)

No caso de variáveis quantitativas o semivariograma indicativo mede o quanto dois valores z separados por um vetor h estão em lados opostos do valor de corte zk. Em outras palavras, mede a frequencia de transição entre duas classe de valores z em função de h. Quanto maior o semivariograma indicativo, menos conectados no espaço são os pequenos ou grandes valores.

Para variáveis categóricas o semivariograma indicativo mede a freqüência com que duas localizações separadas por um vetor h pertencem a diferentes categorias. Quanto menor o valor do semivariograma, melhor a conectividade espacial da categoria.

Aproximação indicativa no modelamento da incerteza local

• A função é modelada para um conjunto de K valores limites zk, que discretizam a faixa de variação de z

▪ A resolução da fdac é então aumentada pela interpolação dentro de cada classe (zk;zk+1] e extrapolação dos dois valores extremos, z1 e zk

▪ A estimação geoestatística não-paramétrica dos valores da fdac é baseada na interpretação da probabilidade condicional como a esperança condicional de uma variável aleatória indicativa:

onde

▪ Os valores da fdac podem ser obtidos por krigagem ordinária de

PROCEDIMENTO (O programa R realiza essas tarefas automaticamente ☺ ) 1. Fazer a codificação de cada observação em um vetor de K valores indicativos. O numero de classes deve ser escolhido de modo que as K+1 classes tenham

(6)

aproximadamente frequencias iguais. Recomenda-se usar mais de 5 classes e menos de 15.

2. Calcular os semivariogramas experimentais para cada ponto de corte zk e, em seguida, fazer o modelamento dos mesmos.

3. Em cada localização não amostrada u,

– Estimar os K valores da fdac usando, por exemplo, a krigagem ordinária indicativa, i.e,

– Interpolar ou extrapolar os valores da fdac para construir um modelo continuo para a fdac, que permita recuperar a probabilidade de qualquer ponto z.

3. Krigagem multivariada: co-krigagem

• A krigagem, é um caso particular do método co-krigagem • Requisitos :

– dependência espacial para cada uma das variáveis Z1 e Z2,

– dependência espacial entre Z1 e Z2

No caso de uma simples variável secundária (Y), o estimador de cokrigagem ordinária é escrito como:

condições de não-tendenciosidade

Sistema de cokrigagem para determinação dos n pesos e

Composto de (n1 + n2 + 2) equações com 2 parâmetros de Lagrange μ1 e μ2

associados às duas condições de não-tendenciosidade:

1

1 2 2 2 1 1 = =1 ' ' * ) ( ) ( + ) ( ) ( = ) ( n α n α α α α α COK λ Z λ Y Z 2 1 u u u u u

1 1 1 = 1 = ) ( n α α λ u

2 2 2 1 = ' =1 n α α λ 1 α λ λα2

(7)

Este sistema de cokrigagem apresenta uma e somente uma solução se: (i) não há dois dados totalmente redundantes, isto é:

u  u se: = 1,..., n.

u’  u’ se: ’  ’ = 1,..., n’.

(ii) a matriz de funções de covariância é positiva-definida.

Ensaio 3 (Script: Unidade 3):

• krigagem ordinária isotrópica para o Niquel e anisotrópica para o Cobalto • Krigagem indicativa

o mapas probabilistiscos e temáticos para o uso da terra

o mapas de riscos para o cádmio (valor máximo permitido ou ponto de corte: 0.8 ppm)

a) Variáveis selecionadas: Niquel, Cobalto e Cadmio (quantitativas) b) landuse (qualitativas)          = = = = + + = = + + = = = = = 1 1 ,..., 1 ' ) -( ) -( ) -( ) ( ,..., 1 ) -( ) -( ) -( ) (

' ' ' 1 1 ' '1 ' ' ' 2 ' 2 1 '1 ' ' 1 1 1 1 2 1 2 n n n n ZY Y ZY n n Z ZY Z n para C C C n para C C C                                 u u u u u u u u u u u u u u ) ( ) ( ) ( ) ( h h h h Y ZY ZY Z C C C C

(8)

PROGRAMA R

1. krigagem ordinária:

1.1 Isotrópica para o Niquel

#Definir a área de trabalho

setwd("D:/PPGCA/Hidrogeo")

#dados de entrada podem ser no formato ASCII (.txt) #Carregar dados

jura.pred <- read.table("jura.txt", head=T) jura.pred[1:5,]

## lendo arquivo com bordas da área

bor <- read.table("jurabor.txt", head=T) bor[1:5,] # mostrar 5 linhas do aqrquivo x y 1 2.1497 4.3352 2 2.1151 4.2197 3 2.1151 4.0927 4 2.1728 3.9888 5 2.1843 3.8849

####### Krigagem Ordinária usando o geoR ####### ### Analise semivariografica: Niquel

jura.pred<-read.table("jura.txt",head=T)

Ni<-as.geodata(jura.pred,coords.col = 1:2, data.col = 9)

Ni #mostrar a variavel Niquel area de trabalho

varNi <- variog(Ni, uvec = seq(0, 2, length = 20), option = "bin")

varNi

#Semivariograma unidirecional experimental #par(mfrow = c(1,2)) # set up the graphics

plot(varNi, xlab = "Distância", ylab = "Semivariância", type="l")

title("Semivariograma Experimental: Niquel")

#Semivariograma unidirecional e modelo ajustado

plot(varNi, xlab = "Distância", ylab = "Semivariância") lines.variomodel(cov.model = "spherical" , cov.pars = rbind(c(9,0.12),c(64,1.4)), nugget = 11, max.dist = 2, lwd = 2, col = "red")

text(1,0.1,"MODELO:11+9,0 Sph(h/0,12) + 64 Sph (h/1,4)") title("Semivariograma Experimental e modelo ajustado: Niquel")

(9)

### Mapa de Krigagem do Niquel

locNi <- expand.grid(seq(0,5.5,l=100), seq(0,6,l=120)) kcNi<-ksline(Ni,locations=locNi,cov.model= "spherical", cov.pars=rbind(c(9,0.12),c(64,1.4)),nugget = 11) contour(kcNi,filled=TRUE,bor=bor,col=terrain.colors(20), nlevels = 13)

(10)

# definindo uma palleta de cores require(maptools) bluepal<-colorRampPalette(c=terrain.colors(20)) brks <- c(0,5,10,15,20,25,30,35,40,45) cols <- bluepal(length(brks) - 1) names(kcNi)

image(kcNi, border=bor, loc=locNi, val=kcNi$predict, col = terrain.colors(20))

legend(-0.5,6, fill = cols, legend = leglabs(brks,"<", ">="),bty = "n", cex = 0.8,col=terrain.colors(20)) title("Krigagem Ordinaria Ni")

(11)

1.2 Anisotrópica para o Cobalto

###### 1.2 Krigagem ordinária com anisotropia #####

### 2.3. Analise semivariografica: Cobalto

#Semivariogramas experimentais nas duas direções (anisotropia) coordinates(Geo) = ~ x + y;

vCo <- variogram(Co~1, Geo, alpha=c(67.5,157.5)) plot(vCo,type="b", lty=2,pch=19,

col="black",main="Cobalto") # Modelo anisotropico ajustado # Procedimento para fazer a

# anisotropia Combinada (Geométrica e ZONAL)

# 1. Fazer a Anisotropia geometrica # Procedimento

# 1. Alcance na direção 67.5 (eixo maior) = 1.5 # 2. Alcance na direção 157.5 (eixo menor) = 1.0

# 3. Razão de anisotropia = 1.0/1.5 = 0.67 ( deve ser < 1 )

vm.Co <- vgm(11.5, # sill "Sph", # modelo 1.5, # alcance 2.0, # nugget anis=c(67.5,0.67)) # anisotropia plot(vCo,vm.Co,type="p",pch=19,

col=c("black"),main="Cobalto (Modelo geométrico)") # 2. Fazer a Anisotropia Zonal:

# Procedimento

# 1. Alcance (range) na direção 157.5 = 100000 #(efetivamente infinito)

# 2. Alcance na direção 157.5 = 100000/1e5 = 1.0 # 100000 = 1e05

# 3. Acrescentar no sill 2.5 (na direção 157.5)

zonal = vgm(2.5, "Sph", 100000, anis = c(67.5, 1/1e5)) # Somar 11.5 + 2.5 = 14

vm = vgm(11.5,"Sph",1.5,add.to = zonal, nugget = 2) plot(vCo, vm,pch=19, col="black",

main = "Cobalto (Anisotropia Zonal)") vm # modelo de anisotropia combinada

(12)

### 2.4. Mapa de Krigagem do Cobalto

### OBS: para incluir o modelo de anisotropia #(geometrico e zonal) é

### necessário utilizar a livraria gstat ## Krigagem do Cobalto com o gstat

Coi <- gstat(id = "Co", formula = Co ~ 1, data = Geo) gCo <- gstat(Coi, id = "Co", model = vm) # vm : modelo anisotropico do Cobalto

jura.grid <- expand.grid(seq(0,5.5,l=105), seq(0,6,l=120))

names(jura.grid) <- c("x","y") gridded(jura.grid) = ~x+y

koCo <- predict(gCo, newdata = jura.grid) names(koCo)

summary(koCo)

koCo[1] # estimativas (predict) obtidas pela krigagem

spplot(koCo)

spplot(koCo[1]) # Mapa de krigagem # Esse mapa não inclui as bordas

# Mudando os dados para plotar com auxilio do geoR # para incluir as bordas

loc <- expand.grid(seq(0,5.5,l=105), seq(0,6,l=120)) bor <- read.table("jurabor.txt", head=T)

kCo <- as.data.frame(koCo[1]) # estimativas da krigagem kCo[1:5,]

class(kCo) <- "kriging" kCo$predict <- kCo$Co.pred

kCo$coords <- cbind(kCo$x,kCo$y) names(kCo)

contour(kCo, locations = loc, val=kCo$Co.pred, borders = bor, filled = TRUE,

col=terrain.colors(30),main="Krigagem Ordinaria Cobalto \n (Anisotropia Combinada)",cex=0.5)

# definindo uma palleta de cores

(13)

bluepal <-

colorRampPalette(c("blue","cyan","green","yellow","orang e","red"), space = "rgb")

brks <- c(0,2,4,6,8,10,12,14,16) cols <- bluepal(length(brks) - 1)

image(kCo, border=bor, loc=loc, val=kCo$predict, col = bluepal(50))

legend(0.2,6, fill = cols, legend = leglabs(brks,"<", ">="),bty = "n", cex = 0.8,col=bluepal(50))

title("Krigagem Ordinaria Cobalto \n (Anisotropia Combinada)")

(14)

2. Krigagem indicativa

3.1 Mapas probabilistiscos e temáticos para o uso da terra

###### 3. Krigagem Indicativa ######### ###### 3.1 Mapas de proabilidades

###### para gerar os mapas temáticos ######### # LER NOVAMENTE O ARQUIVO DE ENTRADA jura.txt

Geo <- read.table("jura.txt", head=T)

Geo[1:5,] #mostrar os dados (variáveis) na area de trabalho

#1. Acrescenta no arquvo Geo variáveis "dummy" # para identificar cada uso da terrs (Landuse) Geo[1:5,]

# Uso da Terra Nome da variavel # Floresta: Flore(1) # Pasto : Pasto(2) # Prado : Prado(3) # lavoura : Lavoura(4) Geo$Flore <- ifelse(Geo$Landuse==1,1,0) Geo$Pasto <- ifelse(Geo$Landuse==2,1,0) Geo$Prado <- ifelse(Geo$Landuse==3,1,0) Geo$Lavoura <- ifelse(Geo$Landuse==4,1,0) Geo[1:5,] Geo[1:5,13:16] # Flore coluna 13 # Pasto coluna 14 # Prado coluna 15 # Lavoura coluna 16

### 1. Semivariograma indicativo experimental:Floresta Flore <-as.geodata(Geo,coords.col=1:2,data.col = 13) par(mfrow = c(1,2)) # set up the graphics

v.flor <- variog(Flore, uvec = seq(0, 2, length = 20), option = "bin")

plot(v.flor,pch=19, xlab = "Distância", ylab = "Semivariância", main = "Semivariograma Floresta",

(15)

#Semivariograma unidirecional e modelo ajustado

plot(v.flor,pch=19, xlab = "Distância", ylab = "Semivariância")

lines.variomodel(cov.model = "spherical" , cov.pars = rbind(c(0.04,0.5),c(0.08,1.4)), nugget = 0.01, max.dist = 2, lwd = 2, col = "red")

text(1,0, "MODELO: 0.01+0.04Sph(h/0,5)+ \n 0.08Sph (h/1,4)",cex=0.6)

title("Semivariograma Experimental \n e modelo ajustado",cex.main = 0.8)

# Ajuste usando mínimos quadrados ponderados par(mfrow = c(1,1))

locin <- matrix(c(0.04,0.08,0.5,1.4), ncol=2)

flor.ols <- variofit(v.flor, ini=locin, nugget=0.01, min="optim")

plot(v.flor,pch=19)

lines(flor.ols, lty=1, lwd=2, col="red") title("Semivariograma ajustado Floresta")

### 2. Semivariograma experimental da variavel Pasto Pasto <-as.geodata(Geo,coords.col =1:2,data.col = 14) par(mfrow = c(1,2)) # set up the graphics

v.pas <- variog(Pasto, uvec = seq(0, 2, length = 20), option = "bin")

plot(v.pas,pch=19, xlab = "Distância", ylab = "Semivariância",

main="Semivariograma Pasto", type = "b", col = "black",cex.main=0.8)

#Semivariograma unidirecional e modelo ajustado

plot(v.pas,pch=19, xlab = "Distância", ylab = "Semivariância")

lines.variomodel(cov.model = "spherical" , cov.pars = rbind(c(0.17,0.4)), nugget = 0.01, max.dist = 2, lwd = 2, col = "red")

text(1,0, "MODELO:0.01+0.17Sph(h/0,4)",cex=0.6)

title("Semivariograma Experimental \n e modelo ajustado",cex.main = 0.8)

# Ajuste usando mínimos quadrados ponderados par(mfrow = c(1,1)) # set up the graphics

(16)

pas.ols <- variofit(v.pas, ini=c(0.17,0.4), nugget=0.01, min="optim")

plot(v.pas, pch=19)

lines(pas.ols, lty=1, lwd=2,col="red") title("Semivariograma ajustado Pasto")

### 3. Semivariograma experimental da variavel Prado Prado <-as.geodata(Geo,coords.col=1:2, data.col = 15) par(mfrow = c(1,2))

v.pra <- variog(Prado, uvec = seq(0, 2, length = 20), option = "bin")

plot(v.pra,pch=19, xlab = "Distância", ylab = "Semivariância",

main = "Semivariograma Prado", type = "b", col = "black",,cex.main = 0.8)

#Semivariograma unidirecional e modelo ajustado

plot(v.pra,pch=19, xlab = "Distância", ylab = "Semivariância")

lines.variomodel(cov.model = "spherical" , cov.pars = rbind(c(0.23,0.4)), nugget = 0.01, max.dist = 2, lwd = 2, col = "red")

text(1,0.01, "MODELO: 0.01 + 0.23 Sph(h/0,4)",cex=0.6) title("Semivariograma Experimental \n e modelo ajustado",cex.main = 0.8)

## Ajuste usando mínimos quadrados ponderados par(mfrow = c(1,1)) # set up the graphics

pra.ols <- variofit(v.pra, ini=c(0.23,0.4), nugget=0.02,min="optim")

plot(v.pra,pch=19)

lines(pra.ols, lty=1,lwd=2, col="red") title("Semivariograma ajustado: Prado")

### 4. Semivariograma experimental da variavel Lavoura Lavoura<-as.geodata(Geo,coords.col=1:2,data.col = 16) par(mfrow = c(1,2))

v.lav <- variog(Lavoura, uvec = seq(0, 2, length = 20), option = "bin")

plot(v.lav, pch=19,xlab = "Distância", ylab = "Semivariância",

(17)

main = "Semivariograma Lavoura",type = "b", col = "black",cex.main = 0.8)

#Semivariograma unidirecional e modelo ajustado

plot(v.lav,pch=19, xlab = "Distância", ylab = "Semivariância")

lines.variomodel(cov.model = "spherical" , cov.pars = rbind(c(0.020,0.4)), nugget = 0.001, max.dist = 2, lwd = 2, col = "red")

text(1,0, "MODELO: 0.001+0.020Sph(h/0,4)",cex=0.6)

title("Semivariograma Experimental \n e modelo ajustado",cex.main = 0.8)

# Ajuste usando mínimos quadrados ponderados par(mfrow = c(1,1)) # set up the graphics

lav.ols <- variofit(v.lav, ini=c(0.020,0.4), nugget=0.00,min="optim")

plot(v.lav,pch=19)

lines(lav.ols, lty=1,lwd=2, col="red") title("Semivariograma ajustado: Lavoura")

## Krigagem indicativa para os mapas probabilisticos #Definir grid (malha)

x <- seq(0,5.5,l=100) y <- seq(0, 6, l=120)

locn <- expand.grid(x=x,y=y)

kc.flor <- krige.conv(Flore, loc=locn, krige=krige.control(obj=flor.ols))

kc.pas <- krige.conv(Pasto, loc=locn, krige=krige.control(obj=pas.ols))

kc.pra <- krige.conv(Prado, loc=locn, krige=krige.control(obj=pra.ols))

kc.lav <- krige.conv(Lavoura, loc=locn, krige=krige.control(obj=lav.ols))

# Mapas probabilisticos para cada categoria par(mfrow = c(1,1))

#1. Floresta (mapa de probabilidades)

contour(kc.flor, locations = locn, val=kc.flor$predict, borders = jbor, filled = TRUE, col=bluepal1(22))

(18)

title("Floresta") flor<-kc.flor$predict

image(kc.flor, border=bor, loc=locn, val=flor,col=bluepal1(22))

legend.krige(x.leg=c(0.1,0.5), y.leg=c(3,5.5), val=flor,col=bluepal1(22), vert=TRUE)

title("Floresta") pas<-kc.pas$predict

image(kc.pas, border=bor, loc=locn, val=pas,col=bluepal1(22))

legend.krige(x.leg=c(0.1,0.5), y.leg=c(3,5.5), val=pas,col=bluepal1(22), vert=TRUE)

title("Pasto")

pra<-kc.pra$predict

image(kc.pra, border=bor, loc=locn, val=pra,col=bluepal1(22)) legend.krige(x.leg=c(0.1,0.5), y.leg=c(3,5.5), val=pra,col=bluepal1(22), vert=TRUE) title("Prado") lavo<-kc.lav$predict image(kc.lav, loc=locn,border=bor,val=lavo,col=bluepal1(22)) legend.krige(x.leg=c(0.1,0.5), y.leg=c(3,5.5), val=lavo,col=bluepal1(22), vert=TRUE) title("Lavoura")

### Construçao de mapas temáticos com uso de Mapas de ### probabilidade

#Construção das tabelas com valores preditos prob <- cbind(kc.flor$predict,kc.pas$predict, kc.pra$predict,kc.lav$predict)

colnames(prob) <- c("Floresta", "Pasto", "Prado", "Lavoura") #Renomeando as colunas de cada categoria

max <- max.col(prob) # categoria com valor máximo de probabilidade

mapa <- cbind(locn,max) # Tabela com localização e valor máximo

colnames(mapa) <- c("X","Y","Prob") #Renomeando as colunas

(19)

class(mapa) <- "kriging" # classe das variaveis

mapa$predict <- mapa$Prob # redefinindo o valor "Prob" mapa$coords <- cbind(mapa$X,mapa$Y) #coordenadas

#Mapa de probabilidades por classes par(mfrow = c(1,1))

par(cex = 1.1) #definfindo o tamanho dos caracteres

image(mapa, locations = locn, borders=bor, xlab="W-E", ylab="S-N",

col = bluepal1(4))

legend(0.25, 5.75,c("Floresta", "Pasto", "Prado","Lavoura"), fill = bluepal1(4)) title("Uso da terra")

(20)

3.2 Mapa de riscos para o Cádmio (valor máximo permitido (Zc : 0.8 ppm))

###### 3.2 Mapas de riscos

###### Variável selecionada: Cadmio

###### Valor máximo permitido (Zc = 0.8 ppm) ### Selecionar a variavel Cadmio

jura.pred <- read.table("jura.txt", head=T)

Cd<-as.geodata(jura.pred,coords.col = 1:2, data.col = 5)

# Analise variografica

par(mfrow = c(1,2)) # set up the graphics

variogCd <- variog(Cd, uvec = seq(0, 2, length = 20), option = "bin")

plot(variogCd,type="l",main="Semivariograma experimental")

#Semivariograma unidirecional e modelo ajustado (geoR)

plot(variogCd, xlab = "Distância", ylab = "Semivariância",main="Modelo ajustado")

lines.variomodel(cov.model = "spherical" , cov.pars = rbind(c(0.35,0.2),c(0.26,1.3)), nugget = 0.25, max.dist = 2, lwd = 2, col = "red")

text(1,0.1, "MODELO: 0,25 + 0,35 Sph(h/0,2) + 0,26 Sph (h/1,3)")

## Ajuste usando mínimos quadrados ponderados

par(mfrow = c(1,1)) # set up the graphics locin <- matrix(c(0.35,0.26,0.2,1.3), ncol=2)

Cd.ols <- variofit(variogCd, ini=locin, nugget=0.25, min="optim")

Cd.ols

plot(variogCd)

(21)

##Execução com um grid (50x60:menos tempo de computação ##Krigagem indicativa

#Definir grid (malha)

x <- seq(0,5.5,l=50) y <- seq(0, 6, l=60)

locCdi <- expand.grid(x=x,y=y) summary(locCdi)

## Krigagem Indicativa: predição de probabilidades e quantis

## Probabilidade de Cd ser maior que 0.8 ppm em cada um dos pontos

OC <- output.control(thres=0.8,

quan=c(0.34,0.50,0.60,0.80,0.90)) Cd.kc <- krige.conv(Cd, loc=locCdi,

krige=krige.control(obj=Cd.ols),output=OC)

# examinando o objeto retornado pela função

names(Cd.kc)

Zp<-Cd.kc$pred # valores preditos Zv<-Cd.kc$krige.var # variancia

Zprob=Cd.kc$prob # probabilidades estimados do valor ser menor que 0.8 nos pontos selecionados

(22)

Zc=1-Cd.kc$prob # probabilidades estimados do valor ser maior que 0.8 nos pontos selecionados

Ztype=Cd.kc$mean # E-type (médias) Zq=Cd.kc$quant # quantis

#Salvando os resultados em uma tabela

ki <- cbind(Zp,Zv,Zc,Zprob,Ztype,Cd.kc$quant) kind<-cbind(locCdi,ki) names(kind) write.table(kind,"tkind0.dat") ###Mapas #Mapa de probabilidades Zc>0.8

image(Cd.kc, border=jbor, loc=locCdi, val=Zc,col=terrain.colors(30))

legend.krige(x.leg=c(-0.4,-0.05),

y.leg=c(3,6),Zc,col=terrain.colors(30), vert=TRUE) title("Cadmio: Prob Zc>0.8")

(23)

# Mapa dos valores médios (E-type)

image(Cd.kc, border=bor, loc=locCdi, val=Cd.kc$Ztype,col=terrain.colors(30)) legend.krige(x.leg=c(-0.4,-0.05),

y.leg=c(3,6),Cd.kc$Ztype,col=terrain.colors(30), vert=TRUE)

(24)

## Mapeando quantis

names(Cd.kc$quant)

# Mapa dos valores medianos (quantil-0.5)

Zmed=Cd.kc$q50

image(Cd.kc, border=bor, loc=locCdi, val=Zmed,col=terrain.colors(30)) legend.krige(x.leg=c(-0.4,-0.05),

y.leg=c(3,6),Zmed,col=terrain.colors(30), vert=TRUE) title("Cadmio: Mediana")

(25)

Exercício 3: Escolher uma ou duas variáveis quantitativas (Cu, Pb, Co, Cr e Zn ) do banco jura.txt

a) Construir o mapa da variável com uso da krigagem ordinaria

b) Com uso da krigagem indicativa, construir o mapa temático para a variável tipo de rocha e o mapa de risco para a variável escolhida em a). As tolerâncias máximas permitidas se encontram na Tabela 1 (Unidade 1)

Referências

Documentos relacionados

Janaína Oliveira, que esteve presente em Ouagadougou nas últimas três edições do FESPACO (2011, 2013, 2015) e participou de todos os fóruns de debate promovidos

O objetivo principal deste estudo de caso era verificar o grau de valorização da medicina popular de plantas entre o próprio povo, tendo por base uma comunidade com diferentes

Pretendo, a partir de agora, me focar detalhadamente nas Investigações Filosóficas e realizar uma leitura pormenorizada das §§65-88, com o fim de apresentar e

intitulado “O Plano de Desenvolvimento da Educação: razões, princípios e programas” (BRASIL, 2007d), o PDE tem a intenção de “ser mais do que a tradução..

O Fórum de Integração Estadual: Repensando o Ensino Médio se efetiva como ação inovadora para o debate entre os atores internos e externos da escola quanto às

Além desta verificação, via SIAPE, o servidor assina Termo de Responsabilidade e Compromisso (anexo do formulário de requerimento) constando que não é custeado

Muito embora, no que diz respeito à visão global da evasão do sistema de ensino superior, o reingresso dos evadidos do BACH em graduações, dentro e fora da

Para Azevedo (2013), o planejamento dos gastos das entidades públicas é de suma importância para que se obtenha a implantação das políticas públicas, mas apenas