Não foi possível enviar o arquivo. Será algum problema com as permissões?
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Próxima revisão Ambos lados da revisão seguinte | |||
cursos:rlavras:compilado [2008/11/02 12:54] paulojus criada |
cursos:rlavras:compilado [2008/11/02 13:22] paulojus |
||
---|---|---|---|
Linha 1: | Linha 1: | ||
====== Interface do R com códigos compilados ====== | ====== Interface do R com códigos compilados ====== | ||
- | * {{:cursos:rlavras:clavras01.c|}} | + | Códigos escritos e compilados em linguagens ''C'', ''C++'' ou ''Fortran'' podem ser chamados de dentro do R conforme ilustramos nos exemplos a seguir. Os passos básicos para tal procedimento são: |
+ | - Escrever o código na linguagem desejada (''C'', ''C++'' ou ''Fortran'') | ||
+ | - Compilar o código como o comando (linux) <code bash>R CMD SHLIB</code> (No Windows deve-se usar o comando análogo). | ||
+ | - Carregar o código compilado no R com o comando <code R>dyn.load()</code> | ||
+ | - Usar a(s) função(ões) do código compilado com os comandos <code R>.C()</code>, <code R>.Call()</code> ou <code R>.Fortran()</code>. | ||
+ | |||
+ | ==== Exemplo 1 ==== | ||
+ | Considere escrever uma função em ''C'' para calcular valores da função de correlação de Matèrn. Esta função tem como argumento ''u'' e parâmetros <latex>$(\phi, \kappa)$</latex> e é dada pela seguinte expressão:\\ | ||
+ | <latex>$\rho(u) = \{2^{\kappa-1} \Gamma(\kappa)\}^{-1} (u/\phi)^\kappa K_\kappa(u/\phi).$</latex> | ||
+ | No arquivo {{:cursos:rlavras:clavras01.c|}} encontra-se um código ''C'' para calcular valores de uma versão padronizada desta função onde <latex>$\phi=1$</latex>. | ||
+ | |||
* {{:cursos:rlavras:clavras02.c|}} | * {{:cursos:rlavras:clavras02.c|}} | ||
* {{:cursos:rlavras:clavras.r|}} | * {{:cursos:rlavras:clavras.r|}} | ||