##################################### ## ## Simulando dados com a funcao grf() ## (simulacao nao-condicional) ## ##################################### ## ## 1. Preparativos iniciais ## ------------------------ ## ## ## 1.1 Carregando o pacote geoR ## ## se necessario atualize a versao do geoR com o comando: #install.packages("geoR", contrib="http://www.est.ufpr.br/~paulojus/geoR/windows") # require(geoR) ## ## 1.2 Iniciando a ajuda no formato html (opcional) ## options(htmlhelp=TRUE) help.start() ## ## 1.3 Salvando padroes graficos iniciais e inicializando o gerador de numeros aleatorios ## par.ori <- par(no.readonly = TRUE) if(!exists(".Random.seed")) set.seed(123) ## ## 1.4 Inspecionando os argumentos da funcao grf() ## args(grf) help(grf) ## ## 2. Uma primeira simulacao com argumentos minimos usando diversas opcoes "default" ## --------------------------------------------------------------------------------- ## ## 2.1 simula dados: ## sim01 <- grf(50, cov.pars=c(1, .25)) ## ## 2.2 inspeciona objeto com dados simulados: ## sim01 ## ## 2.3 inspeciona variogramas teorico e empirico ## plot(sim01) ## ## 2.4 visualizando as localizaoes simuladas ## ## pode-se ainda visualizar as localizacoes dos dados simulados plot(sim01, plot.loc=T) ## ou usar funcoes padrao de visualizacao de dados plot.geodata(sim01) points.geodata(sim01) ## ## Nota: veja ainda opcoes destas funcoes com: ## args(plot.geodata) ## args(points.geodata) ## ## ## 3. Uma segunda simulacao em grid regular ## ---------------------------------------- ## ## 3.1 Simulando dados ## sim02 <- grf(256, cov.pars=c(1, .3), grid="reg") ## ## 3.2 Visualizando as simulacoes em grid regular ## image(sim02) persp(sim02) ## e, se desejar mude o angulo de visualizacao persp(sim02, theta=30, phi=20) ## ## Exercicio 01: Explorando as opcoes graficas ## ## - inspecione outras opcoes em help(image.grf) e help(persp.grf) ## e use estas opcoes para midoficar os graficos ## ## - use as outras funcoes de visualizacao mencionadas anteriormente ## (plot, plot.geodata, points.geodata) ## ## ## Exercicio 02: Explorando outros argumentos da funcao grf() ## ## - gere novas simulacoes usando os argumentos: nx, ny, xlims e ylims ## ## ## 4. Usando simulacoes em 1D para compreender o modelo e seus parametros ## ---------------------------------------------------------------- ## ## 4.1 Simulando com diferentes alcances ("range") definidos pelo parametro $\phi$ ## sim11 <- grf(100, ylims=c(0,0), cov.pars=c(1, 0.25)) image(sim11) image(sim11, type="l") image(sim11, type="b", cex=0.5) ## sim12 <- grf(100, ylims=c(0,0), cov.pars=c(1, 0.0)) image(sim12, type="l") ## sim13 <- grf(100, ylims=c(0,0), cov.pars=c(1, 0.5)) image(sim13, type="l") ## par(mfrow=c(3,1), mar=c(2,2,1,1)) yl <- range(c(sim11$data, sim12$data, sim13$data)) image(sim11, type="l", ylim=yl) image(sim12, type="l", ylim=yl) image(sim13, type="l", ylim=yl) par(par.ori) ## ## Exercicio 03: ## ## - gere diferentes simulacoes variando o parametro $\sigma^2$ no argumento cov.pars ## e discuta os resultados ## ## ## 4.2 Simulacoes com diferentes modelos de variograma ## sim21 <- grf(100, ylims=c(0,0), cov.pars=c(1, 0.75), cov.model="sph") image(sim21, type="l") ## sim22 <- grf(50, ylims=c(0,0), cov.pars=c(1, 0.75/sqrt(3)), cov.model="mat", kappa=2) image(sim22, type="l") ## par(mfrow=c(3,1), mar=c(2,2,1,1)) yl <- range(c(sim11$data, sim21$data, sim22$data)) image(sim11, type="l", ylim=yl) image(sim21, type="l", ylim=yl) image(sim22, type="l", ylim=yl) par(par.ori) ## ## ## Exercicio 04: Explorando os modelos de variograma ## ## - gere e compare simulacoes com o modelo de Matern ## (cov.model="mat") com diferentes valores ## no argumento kappa (tente, por exemplo valores 0.5, 2 e 5) ## ## - tente tambem com cov.model="gau" e observe se ha' ## mensagens de alerta ## ## - gere e compare simulacoes com outros modelos de variogramas ## ## ## 4.3 Simulacoes com ruido ## sim31 <- grf(50, ylims=c(0,0), cov.pars=c(1, 0.75/sqrt(3)), nugget = 0.1, cov.model="gau") ## ## repare novamente se ha' alguma mensagem de alerta (warning) ! ## image(sim31, type="l") ## ## Agora gerando simulacoes com a mesma "semente" e com ## diferentes niveis de ruido ## sim32 <- grf(100, ylims=c(0,0), cov.pars=c(1, 0.25)) sim32 <- grf(100, ny=1, cov.pars=c(1, 0.25)) ## sim33 <- grf(100, ylims=c(0,0), cov.pars=c(0.75, 0.25), nug=0.25) ## sim34 <- grf(100, ylims=c(0,0), cov.pars=c(0.5, 0.25), nug=0.5) ## par(mfrow=c(3,1), mar=c(2,2,1,1)) yl <- range(c(sim32$data, sim33$data, sim34$data)) image(sim32, type="l", ylim=yl) image(sim33, type="l", ylim=yl) image(sim34, type="l", ylim=yl) par(par.ori) ## ## ## Exercicio 05: Simulacoes com ruido ## ## - gere em compare mais simulacoes com differentes valores no argumento nugget ## ## ## 4.4 Modelos com anisotropia ## sim41 <- grf(961, grid="reg", cov.pars=c(1, .15), aniso.pars=c(pi/4, 3)) image(sim41) ## ## Exercicio 06: Simulacoes com anisotropia ## ## - gere em compare simulacoes com differentes valores no argumento aniso.pars ## ## ## Exercicio 07: Simulacoes de variaveis nao-Gaussianas ## ## - gere, explore e compare simulacoes com differentes valores no argumento lambda ## ## ## 5. Gerando simulacoes em grids muito finos (com muitos pontos) ## sim51 <- grf(40401, grid = "reg", cov.pars = c(10, .2), met = "circ") image(sim51) ## ## Para mais sobre simulacoes veja o pacote RandomFields. ##